The course covers fundamental principles of computer networks, as well as currently used network architectures and protocols. Its emphasis is 1) to explain why reliable data transfer, addressing, routing and congestion control are the fundamental concepts, 2) to explore the design principles behind algorithms/protocols for reliable data transfer, addressing, routing and congestion control and 3) to use current protocols such as TCP/IP, ARQ, Ethernet, CSMA/CD, DNS and Internet routing protocols as examples of concrete implementations/designs of these protocols. It will highlight the trade-offs (and approaches to navigate these trade-offs) in the design of computer network protocols.
The course covers fundamental principles of computer networks, as well as currently used network architectures and protocols. Its emphasis is 1) to explain why reliable data transfer, addressing, routing and congestion control are the fundamental concepts, 2) to explore the design principles behind algorithms/protocols for reliable data transfer, addressing, routing and congestion control and 3) to use current protocols such as TCP/IP, ARQ, Ethernet, CSMA/CD, DNS and Internet routing protocols as examples of concrete implementations/designs of these protocols. It will highlight the trade-offs (and approaches to navigate these trade-offs) in the design of computer network protocols.