CS435 Midterm Review
The test will be on Monday, October 11.
10 pages of notes is allowed, 8.5 by 11 both sides but the test is closed book and closed computer.
Be prepared for detailed questions on the following:
- Physical Layer
- Data Link Layer
- IPv4 as related to network programming, not routing
- TCP and UDP as related to network programming
- Application Layer (servers, clients, network programming in general, client project)
- How to write servers and clients, but mostly servers!
- TCP server and client setup: socket, bind, listen, accept, connect
- Reading and writing from TCP sockets (especially sizes, and need for MSG_WAITALL)
- Multithreaded servers, race conditions, etc
- DNS
Question Types
- Multiple choice. There are 8 of these, on general stuff, worth three points each (24 points total)
- Short Answer Questions, some of which might require coding
- Programming Questions. 30-50 or so points total, requires a short client and server.
Notes about Specific Questions
Client/Server Programming: There is a question that presents you with a simple protocol for client/server communication, and requires you to implement the client and/or server. It's worth quite a few points, and the client and server, if both are required, will be in separate questions. You can use any programming language you like. The protocol is designed to not require a lot of code to parse, but you'll have to be ready for some network programming. The protocol might be either text or binary.