Lecture slides
- Introduction, Packet switching, Circuit switching
- Packet switching vs. circuit switching, Delay, Throughput, Protocol layers
- Protocol layers, Network security, Socket programming
- Socket programming, Device drivers, NIC
- Client-server architecture, HTTP, HOL blocking, HTTP/2, HTTP/3
- E1000 assignment, Cookies, Web caching
- Email, DNS
- DNS, P2P
- P2P, Transport layer, UDP
- UDP, RDT
- RDT, GBN
- GBN, SR, TCP
- TCP, MSS and MTU, Estimated RTT and Timeout
- TCP FSM, Fast retransmit, RDT assignment
- TCP SACK HW, Flow control, TCP connection management, Congestion control
- Congestion control, TCP Reno, TCP Tahoe, AIMD, TCP Cubic
- Congestion control, Fairness, TCP vs. UDP
- Switching fabric, Packet scheduling, Subnet, Classless interdomain routing
- DNS, NAT, IPv6
- Routing protocols, LS
- DV
- DV, BGP
- Link layer, Error detection and correction
- Slotted ALOHA, Pure ALOHA, CSMA, Switched LAN, ARP
- ARP, Spanning tree, Forwarding and learning, Virtual LAN
- Virtual LAN, Ethernet header, Network security
Assignments
Homework
Books
- Computer Networking: A Top-Down Approach, by James Kurose and Keith Ross
- Computer Networks: A Systems Approach, by Larry Peterson and Bruce Davie