Skip to main content

Computer Networking


  • Credit value: 15 credits at Level 5
  • Convenor: Dr Andrea Calì
  • Assessment: a programming task and report (50%) and two-hour examination (50%)

Module description

In this module we provide you with 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 tools to understand and design network hardware and software.

Indicative syllabus

  • Basic notions of the physical layer and their significance to computer networks
  • The data link layer (including the Medium Access Control layer and Ethernet)
  • The network layer and IP
  • The transport layer and TCP (including Python network programming)
  • The application layer (including a basic understanding of DNS, email and FTP)
  • Network security and cryptography

Learning objectives

By the end of this module, you will be able to:

  • understand the fundamental network protocols and interfaces at all network layers
  • understand basic design and performance issues in computer networks
  • handle software tools that make use of network protocols at various layers
  • write simple Python networking code with sockets.