Computer Networks

Instructor(s): Prof. Periklis Chatzimisios
Teaching Hours and Credit Allocation: 30 Hours, 6 Credits
Course Assessment: Exam & Coursework

 

Aims

This course will examine computer networks within the context of the Internet. We will study the fundamental principles, elements, and protocols of computer networks. We will investigate how the different protocols work, why they work that way, and their performance trade-offs. Using this knowledge, we will try to examine the way applications are deployed on the Internet and their performance trade-offs. In particular, we will try to examine some strategies that are commonly used to accelerate application level performance in the context of the operation of the Internet.

 

Learning Outcomes

On completing the course students will be able to:

  • Explain the operation of a range of computer networking applications such as email, web, and peer-to-peer file-sharing
  • Relate the architecture of the Internet to the underlying design principles
  • Illustrate the operation of common routing protocols, queuing mechanisms, and congestion control mechanisms
  • Develop elements of a network such as gateways and routers that conform to IETF standards with acceptable levels of simplification
  • Explain the performance of a given set of routing protocols, queuing mechanisms, and congestion control mechanisms on an example network.

 

Content

  • Introduction to Computer Networks
  • Sockets Programming
  • Protocol Stacks and Layering: Application Layer, Physical Layer, Link Layer Basics.
  • Switching & Flow Control
  • Ethernet and Bridging
  • IP forwarding & addressing
  • IP Packets & Routers
  • Routing: RIP & OSPF, Routing: BGP, Multicast, DNS, IPv6, tunnelling, NAT, VPN, Virtual circuits, ATM, MPLS, Transport Intro.
  • TCP & Congestion Control.
  • TCP Performance
  • Multimedia/QoS, QoS & Mobile (IP & TCP)
  • Ad-hoc networks
  • Web + CDNs + Caching, P2P
  • Security - SSL, Security - firewalls, DoS
  • Broadband access networks (xDSL,UWB, DOCSIS)

 

Reading

Kurose J. F., Ross K. W. (2007) Computer Networking: A Top-Down Approach, Addison Wesley, 6th edition.

Peterson L. L., Davie B. S. (2007) Computer Networks ISE: A Systems Approach, Morgan Kaufmann; 4th edition.

Stallings W. (2008) Data and Computer Communications, Pearson Education, 8th edition.