Martin Gairing
University of Liverpool
Univ Liv » Comp Sci » Ec Co » Martin Gairing » COMP211
Internet Principles


Martin Gairing
Ashton Building
Room 3.03
m.gairing [at]

If you wish to see us, please talk to us after class or send an email to make an appointment.

Meeting Times

Lecture Times and Locations:

  • Monday 16:00 - 17:00: JSM-SR4

  • Tuesday 15:00 - 16:00: LIFS-LT1

  • Thursday 15:00 - 16:00: MATH-106

Demonstration Times and Locations:

Demonstrations will be led by Mr Paul Gainer (p.gainer [at], starting from Wednesday, 4 October.

  • Wednesdays 9:00 - 11:00: GHOLD-H116 (Lab 2).

Labs and Assignments


Course Aims and Objectives

Course Philosophy:

The Internet is one of mankind's supreme achievements, certainly no less magnificant than the Great Pyramid at Giza or the Apollo Space Program. In this module, we aim to introduce you to the Internet, its architecture and features, and its main protocols. The Internet's protocols enable it to be used for communications between distributed entities, and we will explore some of these in depth, seeking to understand how they work, and why they take the form they do. In doing so, we will draw on Shannon's Theory of Communication, itself an impressive achievement.

This module will provide an important foundation for the third-year module COMP315: Technologies for e-Commerce.


To introduce networked computer systems in general, and the Internet in particular:

  • The basic principles that govern their operation,
  • The design and organisation principles of successful computer networks,and
  • The key protocols and technologies that are used in the contemporary Internet.

Learning Outcomes:

Upon completing this module, you should:

  • Understand the basic theoretical principles of computer communications networks (eg the notion of bandwidth, Shannon's law, etc)
  • Understand how the notion of layering and abstraction apply to the design of computer communication networks
  • Understand the structure and function of the OSI/ISO seven layer model of computer networks
  • Understand the organisation of the Internet, and how this organisation relates to the OSI seven layer model
  • Understand the principles of the key protocols that govern the Internet.

While we will mention the OSI/ISO 7-Layer model, most of our focus will be on the simpler North American 5-Layer model.

Course Outline

This table presents the provisional structure for the course, and may change as the semester progresses. We will be following a top-down approach to the protocol stack, as presented in the text book by Kurose and Ross. Most other textbooks, including Tanenbaum, follow a bottom-up approach.

Lectures Topics ISO Layer Textbook
Key Sections
1-3 Introduction   KR1, T1 KR1.1, 1.2, 1.3, 1.4, 1.5, 1.7
4-8 Application Layer
(Presentation Layer)
(Session Layer)
KR2, T7 KR2.1, 2.2, 2.4, 2.5, 2.7
9-13 Internet Security   KR8, T8  
14-19 Transport Layer ISO-4 KR3, T6 KR3.1, 3.2, 3.4, 3.5, 3.6, 3.7
20-23 Network Layer ISO-3 KR4, T5 KR4.1, 4.4, 4.6
24-27 Data Link Layer ISO-2 KR5, KR6, T2.1, T3.2 KR5.1 - 5.6, 6.2 - 6.3
28-30 Physical Layer and
Communications Theory
ISO-1 T2  

Key to textbooks:
KR = Kurose and Ross
T = Tanenbaum

Text Books

The main textbook for the course is:

  • James F. Kurose and Keith W. Ross (2016): Computer Networking: A Top-Down Approach, 7/e. (Pearson).

In addition, some material to be presented will follow:

I encourage you to visit the web-sites for these textbooks, and make use of the student resources you find there.


  • Coursework: 20 %
    The coursework will consist of 2 programming assignments worth 10% each.

  • Final Exam: 80 %
    The exam will be 2 hours long. Calculators will not be necessary and will not be permitted. the exam consists of two parts:
    • Part A is multiple choice and accounts for 25% of your exam mark.
    • In part B, you will be asked to answer 3 questions out of 4. Each question will be worth 25% of the total marks for the exam. Questions will include a mix of book-work and problem-solving, as in last year's exam paper.


Old Exams and Solutions
Year Exam Solution
2017 Exam (MC questions are ommited) Discussed in revision.
2016 Exam (MC questions are ommited) Solutions
2015 Exam (MC questions are ommited) Solutions
2014 Exam (MC questions are ommited) Solutions

Lecture Notes

Other Resources

  • (3 Oct 2017)
    Server Program used to demonstrate socket programming. To use: tell your browser to use an http proxy on localhost port 8888, start the server, and go to any url in your browser.

Please refer to this web-page frequently. Further information about the course will be added in due course.

last modified: 11 January 2018 | yummy built with TT | Layout by Christian Kreibich (cc)