Course description

The course Communication Networks II covers the principles and practice of computer networking and telecommunications with emphasis on the Internet. Starting with the history, the course discusses past, current and future aspects of communication networks. In addition to the basics including well known protocols and technologies, recent developments in the area of multimedia communication (e.g., Video Streaming, P2P, IP-Telephony, Cloud Computing and Service-oriented Architectures) will be examined thoroughly. The course is designed as follow-up to Communication Networks I. 

Content
  • Basics and History of Communication Networks
    (Telegraphy vs. Telephony, Arpanet, Reference Models, ...)
  • Transport Layer
    (Addressing, Flow Control, Connection Management, Error Detection, Congestion Control, ...)
  • Transport Protocols
    (TCP, MPTCP, Quic, SCTP)
  • Interactive Protocols 
    (Telnet, Basics of Cryptography, SSH, FTP, ...)
  • Electronic Mail 
    (SMTP, POP3, IMAP, MIME, ...)
  • World Wide Web
    (HTML, URL, HTTP, DNS, ...)
  • Distributed Programming 
    (RPC, Web Services, Event-based Communication)
  • Overlay Networks
    (Unstructured P2P, DHT Systems, Application Layer Multicast, ...)
  • Video Streaming 
    (RTP/RTSP, , ...)
Literature

Selected chapters from following books:

  • Andrew S. Tanenbaum: Computer Networks; 
    • 5th Edition, Prentice Hall, 2010
    • A. Tanenbaum & David J. Wetherall: Computer Networks, Pearson, 2013
  • W. Richard Stevens: TCP/IP Illustrated, Volume 1 – The Protocols;
    • 29th printing, Addison-Wesley, 2007
    • 2nd edition, 2012
  • James F. Kurose, Keith W. Ross: Computer Networking – A Top-Down Approach; 
    • 6th  Edition, Prentice Hall, 2012
    • 7th (Global) Edition, 2016
  • Olivier Bonaventure: Computer Networking: Principles, Protocols and Practice; Open-source textbook, http://inl.info.ucl.ac.be/CNP3, 2011
Requirements
Basic courses of first 4 semesters are required. Knowledge in the topics covered by the course Communication Networks I is recommended. Theoretical knowledge obtained in the course Communication Networks II will be strengthened in practical programming exercises. So, basic programming skills are beneficial.

Semester: WT 2020/21