CS435 Midterm Review
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:
- Application Layer (servers, clients, network programming in general, client project)
- IPv4 as related to network programming
- TCP as related to network programming
- 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 Question. 40 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 server. It's worth quite a few points, and the client and server are 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.