CS435 Midterm Review
A page 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!
- 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, unless I don't actually end up covering that demo
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. 30 points total, requires coding.
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 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.