School of Computer Science

Module 06-26951 (2019)


Level 3/H

Ian Batten Semester 1 20 credits
Co-ordinator: Ian Batten
Reviewer: David Oswald

The Module Description is a strict subset of this Syllabus Page.


This module introduces the basic concepts, technologies, architecture and standards involved in computer networks, together with methods for their design and implementation. This will include discussion of data transmission protocols, TCP/IP, LANs and WANs, communication mechanisms and synchronization issues.The module will be based on the discussion of real-world case studies, research papers and standardisation documents.


The aims of this module are to:

  • Provide a sound understanding of the Internet architecture, protocols and technologies.
  • Review the state-of-the-art of networked systems and analyse the current trends in research and industry.

Learning Outcomes

On successful completion of this module, the student should be able to:

  1. Demonstrate an understanding of the fundamental concepts and issues involved in computer networking.
  2. Demonstrate an understanding of the engineering principles of network and protocol design.
  3. Demonstrate an understanding of the layered organization and structuring of computer networks, distinguish the problems involved at each layer and understand the techniques and algorithms that have been devised to address these problems.
  4. Explain the main types of architectures and mechanisms of communication, such as client-server and communication protocols.
  5. Apply the theoretical concepts and abstractions discussed in the module to the analysis of real-world case studies and design of novel and innovative networked systems.
  6. Explain and analyse the design, organization and operation of state of the art technologies and systems such as cloud computing, mobile and ubiquitous computing, and online social networks.


  • Students must have very good programming skills in an object-oriented programming language or C in a *nix environment.
  • Students must have very good knowledge of data structures and algorithms (including algorithm complexity), operating systems fundamentals, computer architecture, and hardware-software interface issues.

Taught with

Teaching methods

Group Lectures and Supervised Lab Work

Contact Hours:



Sessional: 2 hr Examination (80%) Continuous Assessment (20%)

Supplementary (where allowed): 2 hr Examination (100%)

Programmes containing this module