Module 23640 (2013)

Syllabus page 2013/2014

06-23640
Networks and Distributed Systems (Extended)

Level 4/M

Mirco Musolesi
20 credits in Semester 2

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus


The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)

Relevant Links

Module web page


Outline

This module will explore the basic concepts, technologies and standards in the areas of Computer Networks and Distributed Systems. It will cover topics related to the Internet architecture and protocols, networking technologies, distributed systems and algorithms. It will also introduce the students to the recent trends in network technologies and systems, such as wireless networks, mobile computing, cloud computing and online social network applications. The module will be based on the discussion of real-world case studies, research papers and standardisation documents.


Aims

The aims of this module are to:

  • Provide a sound understanding of the Internet architecture, protocols and technologies
  • Introduce the key concepts at the basis of the design of distributed algorithms and systems
  • 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: Assessed by:
1demonstrate an understanding of the fundamental concepts and issues involved in computer networking Examination
2demonstrate an understanding of the engineering principles of network and protocol design Examination, Continuous Assessment
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 Examination, Continuous Assessment
4recognise and appreciate fundamental characteristics of distributed systems: geographical distribution, concurrency, lack of global time, delay in communication, heterogeneity and existence of failures Examination, Continuous Assessment
5explain the main types of architectures and mechanisms of communication, such as client-server and communication protocols Examination, Continuous Assessment
6demonstrate an understanding of fundamental issues in distributed systems design such as timing, coordination and consensus Examination, Continuous Assessment
7apply 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 Examination, Continuous Assessment
8explain and analyze the design, organization and operation of state of the art technologies and systems such as cloud computing, mobile computing and online social networks Examination, Continuous Assessment
9apply state-of-the-art techniques and technologies, including those recently presented in research papers and standardisation documents, in the development of networked and distributed systems Examination, Continuous Assessment

Restrictions, Prerequisites and Corequisites

Restrictions:

May not be taken by anyone who has taken or is taking 06-23644 (Networks and Distributed Systems).

Prerequisites:

-Very good programming skills (including concurrency/multi-threading) in an object-oriented programming language or C in a *nix environment.
-Very good knowledge of data structures and algorithms (including algorithm complexity), operating systems fundamentals, computer architecture, and hardware-software interface issues.

Co-requisites:

None


Teaching

Teaching Methods:

3 hours lectures a week, plus exercise classes

Contact Hours:

55


Assessment

  • Sessional: 2 hour examination (80%), continuous assessment (20%)
  • Supplementary (where allowed): 2 hour examination (100%)

Recommended Books

TitleAuthor(s)Publisher, Date
Computer Networking. A Top-Down Approach. 5th EditionJames F. Kurose and Keith W. RossPearson, 2010
Distributed Systems. Concepts and Design. 5th EditionGeorge Coulouris, Jean Dollimore, Tim Kindberg and Gordon BlairAddison Wesley, 2011
Computer Networks. 5th EditionLarry L. Peterson and Bruce S. DavieMorgan and Kaufmann, 2011
Patterns in Network ArchitectureJohn DayPrentice-Hall, 2008
An Engineering Approach to Computer NetworkingSrinivasan KeshavAddison-Wesley, 1997
Distributed Systems: Principle and Paradigms. 2nd EditionAndrew S. Tanenbaum and Marteen Van SteenPrentice Hall, 2006
Distributed Systems. 2nd EditionSape MullenderAddison-Wesley, 1993
Research papers and standardisation documents (see module web page)

Detailed Syllabus

  1. Intro to Distributed Systems and Networking
    • Basic Concepts and System Models
    • Protocols Layers and Service Models
    • Design Patterns of Networked Systems
    • The Internet Architecture
    • Delay Loss and Throughput in Packet-Switched Networks
  2. Application Layer
    • Principles of Network Applications
    • Web and HTTP
    • Electronic Mail
    • DNS
    • P2P Applications
  3. Transport Layer
    • UDP
    • Principles of Reliable Data Transfer
    • TCP
  4. Network Layer
    • Forwarding and Routing
    • Router Design
    • IP
  5. Routing in the Internet
    • The Link State Routing Algorithm
    • The Distance Vector Routing Algorithm
    • Intra-AS Routing in the Internet: RIP
    • Inter-AS Routing: BGP
  6. Link Layer
    • Link Layer Services
    • Examples of Multiple Access Protocols
    • Link Layer Addressing
  7. Wireless and Mobile Networks
    • WiFi
    • Cellular Networks
    • Cellular Internet Access
  8. Designing Distributed Applications
    • Interprocess Communication
    • Client-server Communication
    • Distributed Objects
    • Middleware Systems
    • Group Communication
    • Time and Global States
    • Clocks, Events and Process States
  9. Coordination and Agreement
    • Distributed Mutual Exclusion
    • Elections
    • Coordination and Agreement in Group Communication
    • Consensus
    • Replication
  10. Current Trends in Distributed and Networked Systems
    • Mobile and Ubiquitous Computing
    • Cloud Computing
    • Dealing with Big Data
    • Online Social Networks

Last updated: 22 August 2013

Source file: /internal/modules/COMSCI/2013/xml/23640.xml

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus