The module covers several fundamental aspects of modern computer networks, especially the Internet and its protocols. Foundations are given for networking at all layers, from the physical layer to applications, and the course topics are presented together with their real-world applications.
The module aims at providing the student the tools for understanding and building network applications, by analysing Internet protocols, the interaction among them, and their applications. There is an emphasis on real-world applications, so as to provide the basic tools to understand and design network hardware and software.
- Understand the fundamental network protocols and interfaces at any network layer
- Know basic design and performance issues in computer networks
- Write simple Java networking code with sockets
- Computer Networks and their applications
- The physical layer
- The data link layer, LAN and WAN
- The network layer and IP
- The transport layer and TCP
- The application layer, DNS, email, and FTP
- Network security and cryptography
AssessmentA two-hour written examination (90%) and coursework (10%).
- Andrew Tanenbaum, Computer Networks (fourth edition), Prentice Hall, Upper Saddle River, NJ, 2003, ISBN 0-13-038488-7. http://www.phptr.com/tanenbaumcn4/
- (Optional reading) Douglas Comer, Computer Networks and Internets with Internet Applications (fourth edition), Prentice Hall, Upper Saddle River, NJ, 2004, ISBN 0-13-143351-2. http://netbook.cs.purdue.edu