CS/ECE 438 : Fall 2023 : M/W 3:30pm : Room 1320 DCL : zoom
First day information
Information about midterm
🔥 Final exam information
📅 Course Calendar (subject to change)
Date |
Module |
Topics |
Notes |
Video |
HW |
MP |
Additional readings |
Aug 21 |
|
|
|
|
|
|
|
Mon |
Big picture |
Introduction and course logistics |
|
|
|
|
|
Big picture: Internet as an infrastructure |
|
|
|
|
|
|
|
- Hierarchy, topology design, no free lunch (latency vs. reliability) | | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture1.mp4 | | | - Video: https://www.youtube.com/watch?v=TNQsmPf24go&t=797s |
| Aug 23
Wed | | Big picture: Internet as a service
- ISPs, Tier 1, 2, 3 ISPs
- Routing, forwarding, software defined networking | https://courses.grainger.illinois.edu/cs438/fa2022/notes/pre-notes1.pdf
https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture2.mp4 | | 🟢 https://courses.grainger.illinois.edu/cs438/fa2023/MPs/MP0_docker.pdf released
(won’t be graded) | - “City in the sky” BBC documentary
- Net Neutrality (search on Youtube) |
| Aug 28
Mon | | Internet terminology, foundational concepts
- Life of a HTTP packet, DNS, protocol.
- Layering, reliability over unreliable network, end-to-end.
- Headers and encapsulation | https://courses.grainger.illinois.edu/cs438/fa2022/notes/pre-notes2.pdf
https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture3.mp4 | 🟢 https://courses.grainger.illinois.edu/cs438/fa2023/HWs/HW1.pdf released | 🟢 https://courses.grainger.illinois.edu/cs438/fa2023/MPs/MP1.pdf released
(Socket Prog.) | - Video: https://www.youtube.com/watch?v=DY6ez6wGgm8 |
| Aug 30
Wed | | Foundations
- Signals, time+frequency representations, bandwidth, spectrum
- Modulation
- Carrier / center frequency, baseband, filters, demodulation | https://courses.grainger.illinois.edu/cs438/fa2022/notes/pre-notes3.pdf
https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture4.mp4 | | | - https://www.youtube.com/watch?v=cw8Aq4j6BCQ&t=8s on the FFT derivation |
| Sep 1
Fri (3 PM-3:45 PM) | | Additional Zoom Tutorial on Socket Programming
- IPC and Sockets … Protocols and requirements
https://illinois.zoom.us/j/88492642190?pwd=bUQ1bmt4RHZ5ZFNQaTVZWW56Zk11Zz09#success | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture_socket.mp4
by Subhajit | | | |
| Sep 4
Mon | | LABOR DAY | | | | | |
| Sep 6
Wed | | More Foundations:
- Decoding, bit error, SNR, SINR, rate, Shannon capacity
- Throughput, goodput, headers, payload, inter-packet time
- Latency (processing + queueing + prop. delay + transmit time) | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture5.mp4 | | | - Socket programming tutorial (https://courses.grainger.illinois.edu/cs438/fa2022/2021/slides/NEW_MP-socket_programming.pptx)(http://courses.grainger.illinois.edu/cs438/fa2022/videos/SocketProgramming.mp4) |
| Sep 11
Mon |
| More Foundations:
- Latency (processing + queueing + prop. delay + transmit time)
- ISO/OSI, residential access networks, ADSL vs. Cable, channels
- Circuit switching vs. packet switching, FDM vs. TDM, tradeoffs
- Statistical multiplexing, Binomial distribution, Datagram with VCs
- Cloud vs. Edge | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture6.mp4 | 🔴 HW 1 due | | |
| Sep 13
Wed | Applications | Application layer: Introduction and basics
- Client server and P2P
- P2P architecture
- IPC and Sockets … Protocols and requirements
- Web / HTTP continued, cookies | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture7.mp4 | | 🔴 MP1 due
(Socket Prog.)
| |
| Sep 18
Mon | | Protocols 3/3
Transport layer: Basics
- Packet error
- Bottleneck bandwidth, available bandwidth, packet pair
- Generals consensus problem | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture9.mp4 | | | |
| Sep 25
Mon | | Principles of reliable protocol design
- Building reliable packet delivery from first principles
- Bottleneck and available bandwidth
- Bit error, error coding, packet loss | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture10.mp4 | | | |
| Sep 27
Wed | | From correctness to performance
- Packet delays (both Data and ACK)
- Size of sequence number space
- Efficiency and reliability —> pipelined protocols | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture11.mp4 | 🔴 HW2 due | | |
| Oct 2
Mon | | Protocols for correctness and performance
- Pipelined protocols → sliding window
- Go back N (GBN)
- Selective ACK (SACK) … properties of SACK | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture12.mp4 | 🟢 https://courses.grainger.illinois.edu/cs438/fa2023/HWs/HW3.pdf release | | |
| Oct 4
Wed | | Introduction to TCP
- Varying window size (as a function of available bandwidth)
- TCP Slow Start
- TCP Congestion Avoidance | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture13.mp4 | | | |
| Oct 9
Mon | | TCP: Continued
- Packets and ACK losses
- Congestion Avoidance
- DupACKs and Fast Recovery
- TCP State Diagram | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture14.mp4 | | | |
| Oct 11
Wed | | RTO estimation and fairness
- Saw tooth behavior, Single timer
- RTO estimation using EWMA
- Fairness across TCP flows | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546
https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture15a.mp4
https://courses.grainger.illinois.edu/cs438/fa2022/videos/Lec15.mp4 | | | |
| Oct 16
Mon | Routing | Network layer: Introduction and basics
- Routing and forwarding, connection set up,
- Network service models
- Virtual circuit and datagram networks, forwarding table | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture16.mp4 | | | |
| Oct 18
Wed | | Routers and IP
- Router hardware design
- IP protocol, datagram, IPv4, address, subnets | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture17.mp4 | 🔴 HW3 due | 🔴 MP2 due
(TCP)
| |
| Oct 23
Mon | | Network layer continued
- Subnet and Classless addressing
- Network Address Translation (NAT)
- ICMP, IPv6 | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture18.mp4 | | 🟢 https://courses.grainger.illinois.edu/cs438/fa2023/MPs/MP3.pdf released
(Routing) | |
| Oct 25
Wed | | MIDTERM | | | | | |
| Oct 30
Mon | | BREAK after MIDTERM | | | | | |
| Nov 1
Wed | | Routing algorithms
- Centralized and distributed routing algorithms
- Link State: Djikstra’s algorithm
- Distance vector: Bellman Ford algorithm | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture19.mp4 | 🟢 https://courses.grainger.illinois.edu/cs438/fa2023/HWs/Hw4.pdf release | | |
| Nov 6
Mon | | Internet routing protocols
- Hierarchical routing
- Autonomous systems, intra-AS routing, inter-AS routing | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://courses.grainger.illinois.edu/cs438/fa2023/recordings/lecture20.mp4 | | Mini https://courses.grainger.illinois.edu/cs438/fa2023/HWs/Fa23_project.pdf Release | https://www.cloudflare.com/learning/network-layer/what-is-an-autonomous-system/ |
| Nov 8
Wed | | Border Gateway Protocol (BGP)
- RIP, OSPF
- eBGP and iBGP
- Routing based on policies, advertising based on incentives
| https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://www.dropbox.com/s/orjavxbpjkzx8de/L21.mp4?dl=0 | | | |
| Nov 13
Mon | Link | Link layer: Introduction and basics
- Link layer reliability vs. e2e reliability
- MAC layer addresses
- Tasks of the link layer
Medium access control (MAC) #1
- Error checking
- MAC protocols: partition, random, taking turns
- Basics of distributed CSMA | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://illinois.zoom.us/rec/share/pEQKwB-f2FQKEn5j2-NU-Hk2AOIhOMYwdqH_Bu9h7WKVe1Iz30EsmOoWb5drFE9N.-270l02TsJvvFIH- | | 🔴 MP3 due
Nov 12 11:59 PM 🟢 https://courses.grainger.illinois.edu/cs438/fa2023/MPs/MP4.pdf release
(Link) | |
| Nov 15
Wed | | Medium access control (MAC) #2
- CSMA / CD
- Ethernet protocol and flowchart
- Addressing and Address resolution protocol (ARP)
- Hubs and Switches | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://www.dropbox.com/scl/fi/63gr6wjww7go9o3orziwn/L23_fa23.mp4?rlkey=o5flaubmt67rn7mbjn6t453gg&dl=0 | | | |
| Nov 20
Mon | | THANKSGIVING | | | | | |
| Nov 22
Wed | | THANKSGIVING | | | | | |
| Nov 27
Mon | | MAC protocol — flipped classroom
- CSMA/CD, Ethernet | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://illinois.zoom.us/rec/share/SQDlKen-oXJH3bac_bps7BVMIVJrFON90rYuc6NG6JraxLeBjT5bTDJhD2Fk73DU.bVXDWOuV_bJ-vfSh | | | |
| Nov 29
Wed | | Wireless
- Dispersive medium, CSMA/CA
- Hidden and exposed terminals
- WiFi protocol | https://rrc-uiuc.notion.site/Communication-Networks-F23-d37ef65a3d1b4b7ba3d49d929c03d546 | https://illinois.zoom.us/rec/share/cM_b1Oa8LAjwyqrsHipQ81zrJlfZs88Ht5Bahm_ug5iqA-7JlENkKhUZ9ieDhlhL.KVv8HM0SVctmSuIs | 🔴 HW4 due (Sun, Dec 3, 11:59pm) https://courses.grainger.illinois.edu/cs438/fa2023/HWs/hw4sol_release.pdf | | |
| Dec 4
Mon | Security | Security layer: Foundations
- Confidentiality, authentication, integrity, availability
- Ciphers, cryptography (symmetric and public-key), RSA algorithm, properties of public and private keys
- Authentication, nonce, replay attack,
- Man in the middle attack, spoofing
- Message integrity, digital signature, hashing, SHA-1 and MD5 | https://courses.grainger.illinois.edu/cs438/fa2022/2021/slides/60-security.pptx | https://illinois.zoom.us/rec/share/Q5z7JIsvPwaQt7Hq2PirihWX2Qn6SDNXxl478ehuLzaymRtK6ECvWeyYjvMIfQ08.ydwlqVh8aig4Wjai | | 🔴 MP4 due
(Link) | |
| Dec 6
Wed | | Security techniques
- Key distribution center (KDC), Certification authority (CA)
- Secure email as an application offers confidentiality,
- Integrity, authentication, efficiency
- Course wrap up: final exam logistics,
- Quick Internet bird's eye view, follow-up courses, feedback. | See lecture 26 slides | https://illinois.zoom.us/rec/share/vmV9gr0vGukUq3TgdVcdj4MP11vTSb9JxZ2eSfeW3oFuxPk9nixFWfSBwonXLgwl.s-zZnMP3fo1LUQcs | | | https://www.youtube.com/watch?v=sGHnX8WocHw |
| Dec 7
Thu | | READING DAY | | | | | |
| | | | | | | | |
post_notes2
post_notes3
post_notes4
socket_programming_tutorial.pptx
post_notes5
post_notes6
Application_layer.pptx
post_notes9.pdf