## Network Software

## Background Necessary

- Strong Programming skills.
- Unix (user) skills
- Systems programming experience.
- Ability to survive in an environment which does not include the spoon feeding of every detail.
- Knowledge of the Internet

## Grading

## Tests

- Each test will be 1 hour
- No books or notes
- Tests will cover concepts, not details

## Programming Projects

- Will use the C programming language
- Unix
- Can work in teams
- Source code -and- written report due.
- Electronic Submission

## Case Study Presentation

- Become an expert on an existing network service or protocol
- Share your knowledge with the class
- 10 minute prepared presentation.
- Topic can be (almost) anything !!!

## Term Project

- Pick something you would like to learn about.
- Typically a programming project, but can be almost anything.
- Can work in teams.
- Plan topic ahead - can be related to your case study!

## Classroom Activities

- Lectures
- Problem solving, brainstorming.
- Code Reviews
- Case Studies
- Questions

## Academic Integrity

- No cheating tolerated !!!
- Document use of source code you did not write.
- Team projects must include a list of who did what.
- Request for HW extensions must be made in advance !!!

## Topics

- Networking
- Unix
- OSI Reference Model
- TCP/IP
- Client/Server Programming
- Bridges & Routers
- Sockets Programming
- RPC Programming
- Existing Network services
- Security
- Performance
- Protocol suites
- Internet software