Athens University of Economics and Business
Master in Computer Science
Fall Semester 2016 - 2017
Computer Networks

Professor:   G. D. Stamoulis []
Teaching Assistant:   G. Darzanos []


  Tuesday 12:00 - 15:00 [Room 606]

[Objective]    [Course Outline]    [Exercises]   [Lab Exercises]  [Bibliography]    [Lectures]   [Useful Background]   [Announcements]


The course's objective is the in-depth understanding of the fundamental issues on computer networks, of the main networking architectures and protocols, of the most important technologies with emphasis on the Internet and of issues on the specification and provision of services.
Among others, students will learn all the steps and functions required for the provision of services in the Internet.



1st Assignment of Exercises (Deadline: 15/11/2016)

2nd Assignment of Exercises (NEW Deadline: 13/12/2016 for Part A and 20/12/2016 for Part B)


Lab Exercises

Not available yet.


Course outline

The main topics that will be covered during the course are:

  • Overview of main concepts on computer networks.
  • Applications
    • Peer-to-peer, Skype, etc.
  • TCP - Flow and Congestion control.
  • Data link layer protocols.
  • Internet technologies and services.
  • Routing algorithms and their implementations.
  • Business roles in the Internet, and interactions among them.
  • Local Area Networks' (LAN) technologies - emphasis on Wireless LANs.
  • Quality of Service and related mechanisms.
    • ΑΤΜ technology and services.
  • Fair allocation of network resources in the Internet.
  • Introduction on network management and control by means of economic mechanisms.
  • Modern topics: MPLS, SDN (Software Defined Networks), NFV (Network Function Virtualization) etc.



"Computer Networking: A Top-Down Approach Featuring the Internet", James F. Kurose and Keith W. Ross, 6th edition, Addison Wesley, 2012.
"Pricing Communication Networks: Economics, Technology, and Modelling",Costas Courcoubetis and Richard Weber, Wiley, 2003.

Material from the Internet: scientific articles, recent technologies etc.



Lecture 1
October 4, 2016

  • Brief introduction.
  • History of networks
  • Basic concepts on computer networks and services.
  • Multiplexing: FDM, TDM, statistical multiplexing.
  • The main components of networks, and particularly of Internet.
  • Access network and physical media.



Lecture 2
October 11, 2016

  • Basic concepts on computer networks and services (revisited).
  • Circuit and packet switching, datagram networks and virtual circuit switching.
  • Protocols.
  • Network architectures, layering, OSI reference model and Internet protocol stack.
  • Encapsulation and the end-to-end picture of switching of a packet.
  • Network control and management.
  • Main topics about packet performance: delay, throughput, loss.
  • Hierarchical business structure of the Internet.



Lecture 3
October 18, 2016

  • Application layer:
    • Introductory topics, interfacing with transport layer protocols.
    • FTP
    • DNS
    • IMAP



Lecture 4
October 25, 2016

  • Application layer:
    • HTTP and related topics - Cookies, caching, Cache management.
    • Content Distribution Networks



Lecture 5
November 1, 2016

  • Application layer - Peer-to-Peer (p2p) systems
    • Introduction and Overlays
    • Classification
    • Hybrid systems and Napster
    • Non-structured systems and Gnutella
    • Hierarchical systems and KaZaA, Skype
    • BitTorrent and mechanisms
    • Management of BitTorrent traffic with locality promotion and incentive mechanisms
    • Structured systems and Chord



Lecture 6
November 8, 2016

  • Transport layer:
    • Introduction and Multiplexing
    • UDP Protocol
    • Introduction to modulation of digital signals and to error detection.
  • Protocols for reliable data transfer:
    • Introduction
    • Stop-and-Wait



Lecture 7
November 15, 2016

  • Protocols for reliable data transfer:
    • Performance of Stop-and-Wait
    • Pipelined protocols: Introduction, Go-Back-N, Selective Repeat
  • TCP Protocol:
    • Structure of segment and its header
    • Reliable data transfer and related examples



Lecture 8
November 22, 2016

  • TCP Protocol:
    • Flow control.
    • Estimation of RΤΤ and selection of timeout.
    • Connection management: three-way handshake and connection termination
    • Congestion control: introduction, congestion control in ATM ABR service class,
    • congestion control in TCP and fairness properties.



Lecture 9
November 29, 2016

  • Introduction to the network layer: virtual-circuit switching and datagram networks.
  • ATM technology: Introduction, basic concepts, service categories, traffic contract, and traffic control.
  • Repetition of congestion control in the ATM-ABR service category and in TCP, and of their comparison.
  • Internal architecture of routers (to be completed in Lecture 10).
  • Formation of queues in routers and their impact to packet losses and to the congestion control algorithm of TCP in the case of multiple sources.
  • Random Early Detection and its synergy with TCP congestion control.



Lecture 10
December 6, 2016

  • Fair allocation of bandwidth in a Network: Max-Min Fairness and Proportional Fairness: definitions, derivation methodologies, comparison .
  • User utility function and its application for Internet services.
  • Charging as an incentives' mechanism for optimal control in a network.
  • Distributed socially optimal allocation of bandwidth in a network by means of adjustment of link prices - proportionally fair properties of the outcome by means of a TCP-like protocol.



Lecture 11
December 13, 2016

  • Network layer:
    • Structure of IP datagram.
    • Traditional (classful) IP addresses and routing based on them, subnets.
    • Subnet Masks and application of Subnetting and Supernetting with traditional IP addresses.
    • Classless Addressing in the Internet - CIDR routing and longest prefix matching.
    • Route aggregation
    • DHCP protocol
    • Private addresses and Network Address Translation.
    • IPv6: addresses, header structure, differences with IPv4, migration.



Lecture 12
December 20, 2016

  • Network layer:
    • ICMP protocol.
    • Introduction to routing.
    • Dijkstra (link state) routing algorithm.
    • Bellman-Ford (distance vector) routing algorithm: definition, fixed-point problem and iterative theoretical and distributed solutions, adaptation to link-cost modifications, comparison with Dijkstra (link state).
    • Hierarchical routing.
    • IRIP, OSPF, BGP.



Lecture 13
January 10, 2017

  • Data Link layer :
    • Introduction, overview of main functionalities.
    • Classification of multiple access protocols.
    • Deterministic multiple access protocols.
    • Randomized multiple access protocols: Aloha, CSMA/CD.
    • Token Ring and Cable access network.
    • Ethernet Local Area Networks: Frame, Addresses, variations (Shared vs Switched Ethernet, Fast Ethernet, etc),institutional networks.
    • Address Resolution Protocol.
    • Detailed description of all steps anmd functionalities in all layers of the protocol hierarchy for end-to-end exhcange of application layer messages: the case of an HTTP request and response.
    • Introduction to VLANs.
  • Wireless Local Area Networks:
    • Introduction and overview of main topics.
    • IEEE 802.11 WLANs.




Useful Background

Familiarity with the key issues on computer networks, such as the concept of layering, the OSI model, the local area networks, as well as with the technology and protocols of Internet.



Not available yet.


Last Update: January 11, 2017