The schedule may change over time due to unforeseen events, instructor travel, evolving student interests, etc.
Date/slides | Video | Topics of Discussion | Homework, Prog. Assignments, etc. |
Aug 25 0-logistics.ppt |
lecture1 | Course Logistics, Course Overview. | |
Aug
27 0-logistics_annotated.pdf |
lecture2 | Overview continued - History and fathers of the Internet - End hosts and ISP hierarchy - Trans continental cables - Layering and encapsulation (end to end horizontal communication) |
Programming Assignment 0
(also called Machine Problem (MP)) Instructions + Beej's guide No due date -- will not be graded |
Sep 1 1-overview.pptx |
lecture3 | Overview and Internet Terminology, - Introduction to Basic Terms and Concepts: - Internet: Hosts, apps, edge, core, routers, links, connection-less, infrastructure, service - Network edge: Client server, P2P, edge-fog-cloud, connection less/oriented, TCP, UDP - Network access and media: Notion of FFT and bandwidth, dial-up, ADSL, cable, LAN, wireless ... |
Programming Assignment 1
(MP1) Instructions Due date -- 11:59PM, Oct. 2, 2020 |
Sep 3 See this USA_ Spectrum_map |
lecture4 | Overview
Continued - Bandwidth, carrier frequency, notion of modulation and de-modulation, spectrum allocation in the US - Network core: Circuit switching, FDM versus TDM, throughput, latency - Packet switching: Statistical multiplexing, tradeoff between efficiency and guarantee. |
|
Sep 8 1-overview-annotated.pdf |
lecture5 | Overview - Datagram networks, Virtual circuit switching, Taxonomy of network core - Layered communication, End-to-End architecture - 4 kinds of delays (Processing, Queuing delay, Propagation, Transmit), Packet loss Application - Introduction to Applications, client-server, peer-peer, services, |
|
Sep
10 2-app-layer.ppt |
lecture6 |
Application - Client-Server, Pure P2P, Hybrid P2P ... Overlay networks - Loss, Bandwidth, and Delay requirements - Introduction to HTTP, Non-persistent, Persistent, Cookies |
|
Sep 15 2-app-layer-annotated.pdf 2_app_optional_p2p.pptx |
lecture7 | Application - Web caching - Email (SMTP, POP, IMAP) - DNS - P2P networks Pointers: Inventor of the DNS system, Paul Mockapetris |
Homework 1 (on Gradescope) Due date -- 5:00PM, Sep. 30, 2020 |
Sep 17 2_socket_programming.pptx 3-transport.ppt |
lecture8 | Transport Layer - Socket programming - Reliability definition --> reliable wrapper over an unreliable channel - Multiplexing, Demultiplexing - UDP, checksums - State transition diagrams - Principles of reliability - Reliability definition - Building a reliable protocol from scratch (no errors, ACK/NACK, packet errors, seq. no.) |
Programming Assignment 2
(MP2) Instructions Due date -- 11:59PM, Oct. 23,2020 |
3-transport-classwork.pdf | lecture9 | Transport Layer - Building reliable protocol over unreliable link - Link error model: - No error - Forward bit error, backward bit error - Packet loss - Packet delay - Moving from correctness to performance (pipelining) |
|
See 3-transport-classwork.pdf above |
lecture10 | Transpor Layer - Correctness to performance: Pipelined protocols - Go back N (GBN) ... Tx window but no Rx buffer, hence sends cumulative ACKs - Selective ACK (SACK) ... Tx and Rx have buffers |
|
See 3-transport-classwork.pdf above | lecture11 | Transport
Layer - Selective ACK (SACK) ... Tx and Rx have windows ... and Selective ACKs - Various T/F questions on SACK - TCP introduction - Notion of congestion and adaptive window size |
|
3-tcp-oct1-classwork.pdf | lecture12 |
Transport Layer: TCP - Bottleneck and available bandwidth - TCP's knob = congestion window (CW) - Chemical factory analogy - TCP protocol (Rx buffer + cumulative ACK) - 3 way handshake - Slow Start - Congestion avoidance (after SS_Threshold) |
|
3-tcp-oct6-classwork.pdf |
lecture13 | TCP
- Congestion indication from packet drop (time out) - ACK drops - 3 DupACKs and fast recovery - Ensuring congestion window grows while DupACKs arrive |
|
3-tcp-oct8-classwork.pdf | lecture14 | TCP - Fast recovery - TCP timers and saw tooth behavior - TCP state diagram |
|
3-tcp-oct13-classwork.pdf | lecture15 | TCP - Timeout estimation (RTO) as a function of Estimated RTT and Deviation - Packets to bytes - AIMD and TCP throughput calculation - Flow Control - TCP fairness |
Homework 2 (on Gradescope) Due date -- 11:59PM, Oct. 25, 2020 |
3-tcp-oct13-classwork.pdf | lecture16 | TCP - TCP over wireless - TCP Random Early Detection (RED) - Bottleneck bandwidth estimation via packet pairs |
|
4-network.ppt | lecture17 |
Network
Layer - Introduction - Routing and Forwarding (and Connection set up) - Network service models (guarantees and best effort) - Virtual circuit and datagram networks - Forwarding table |
|
Mid-term
info. slides |
lecture18 | Network Layer - Longest prefix matching - Router architecture - IP datagram, fragmentation and reassembly - Subnets and IP addressing - CIDR (Classless Inter Domain Routing) MID-TERM Discussion |
|
Midterm Oct 29, Thu | |||
Routing Algorithm Examples | lecture19 | Network
Layer - Prefix matching based routing across ISP - NAT - ICMP and Traceroute - IPv6 - Routing algorithms: Link state and Distance vector - Link state: Dijkstra's algorithm |
Programming Assignment 3 (MP3) Instructions Due date -- 11:59PM, Nov. 18,2020 |
lecture20 | Network Layer - Distance Vector (Bellman Ford's algorithm) - Hierarchical routing - Internet case studies - Link state: RIP, OSPF |
||
5-link.pptx |
lecture21 | Network Layer: - Distance vector: BGP (eBGP and iBGP) - Policy decisions based on socio-economic factors Link Layer: - Introduction to link layer - Local reliability as performance optimization, not correctness |
|
Pointers: Hamming codes: 3Blue1Brown Part1 3Blue1Brown Part2 |
lecture22 | Link
Layer: - Error detection and correction - Multiple Access Protocols (Centralized and Decentralized) - Listen before you Talk - Carrier sensing - Collisions |
|
5-link-classwork-nov17.pdf |
lecture23 | Link Layer: - Medium access control protocols - Channel partitioning - CSMA/CD - Taking turns - Ethernet |
|
5-link-classwork-nov19.pdf | lecture24 | Link
Layer: - Ethernet continued - Ethernet protocol flowchart - MAC Layer addressing - Address Resolution Protocol (ARP) - Interconnecting at Link Layer - Hubs and Switches - Zoom out: comparison between routers, hubs, and switches. |
Programming Assignment 4 (MP4) Instructions Due date -- 5:00PM, Dec. 6,2020 Mini project (4 credit students) Instructions Due date -- 5:00PM, Dec. 18, 2020 Homework 3 (on Gradescope) Due date -- 5:00PM, Dec. 11, 2020 |
THANKSGIVING BREAK |
|||
6-wireless-CSMA-WiFi.ppt 6-wireless-classwork.pdf |
lecture25 | Wireless Link Layer - Wireless channel - Decoding a packet over wireless (SNR and SINR) - SINR's relation to distance from transmitter and interferer - CSMA/CD not possible - HIDDEN and EXPOSED terminal problems - CSMA/CA (WiFi) --> RTS/CTS - Limitations of RTS/CTS |
|
6-wireless.ppt |
lecture26 | Cellular Networks and Mobility - Cellular network terminology -- 2G, 3G, LTE, PSTN, RNC, GGSN, SGSN - Mobility at different layers - Home network, foreign network, Care-of-addresses - Indirect Routing anddd triangular routing problem - Mobile IP, HLR, VLR - Handoff |
|
8-security.ppt | lecture27 |
Security - Confidentiality, Authentication, Integrity, Access and availability - Symmetric and Public key cryptography - RSA algorithm - Authentication, Nonce, Replay and Playback attack, Man in the middle attack - Digital signatures |
|
last-class-scribbles.pdf |
lecture27 | Security - Key distribution center - Certification authority - Applications in secure email, SSL/TLS/ HTTPS - Course recap and wrap-up - Next courses |
|
Final
exam date: Wed, Dec 16, 2020, 8-11am |
ECE/CS 438 Final Exam |