Within 24 hours after a lecture is over, I will post the lecture slides I used in the section below.
For a preview of future lectures, please see the tentative slides section below.
To download all the PDF files below in one command (so you can study for exams),
do the following inside a terminal in Ubuntu 16.04:
wget -r -l 1 --user=USERID --password=PASSWORD http://merlot.usc.edu/cs353-s20/lectures.html
where USERID and PASSWORD are the user ID and password used to access protected content from our class web site.
But please note that the lecture slides can change at any time without notice. Therefore, it's a good idea to re-run the above command often
to synchroniza your copy with the server!
(Please note that access to lecture notes is restricted.)
- Lecture 1
(PDF)
(Jan 13, 2020)
- administrative stuff, lab1
- Lecture 2
(PDF)
(Jan 15, 2020)
- lab1, pa1
- (Jan 20, 2020) - Martin Luther King Day, university holiday
- Lecture 3
(PDF)
(Jan 22, 2020)
- pa1, lab2, sockets programming,
- Lecture 4
(PDF)
(Jan 27, 2020)
- sockets programming, pa2
- Lecture 5
(PDF)
(Jan 29, 2020)
- pa2, lab3
- Lecture 6
(PDF)
(Feb 3, 2020)
- lab4, what is the Internet (1.1), the network edge (1.2)
- Lecture 7
(PDF)
(Feb 5, 2020)
- the network edge (1.2), the network core (1.3), delay, loss, throughput (1.4)
- Lecture 8
(PDF)
(Feb 10, 2020)
- lab5, delay, delay, loss, throughput (1.4), protocol layers, service models (1.5)
- Lecture 9
(PDF)
(Feb 12, 2020)
- protocol layers, service models (1.5), network under attack (1.6), history of Internet (1.7), multithreading parts 1 & 2
- (Feb 17, 2020) - Presidents' Day, university holiday
- Lecture 10
(PDF)
(Feb 19, 2020)
- multithreading part 2, lab6, multithreading part 3 (mutex)
- Lecture 11
(PDF)
(Feb 24, 2020)
- lab7, principles of network applications (2.1), the web and HTTP (2.2)
- Lecture 12
(PDF)
(Feb 26, 2020)
- the web and HTTP (2.2), electronic mail in the Internet (2.3), DNS (2.4)
- Lecture 13
(PDF)
(Mar 2, 2020)
- midterm information, DNS (2.4), peer-to-peer applications (2.5), video streaming and conent distribution networks (2.6), socket programming (2.7)
- Lecture 14
(PDF)
(Mar 4, 2020)
- lab8, pa3, multithreading part 4 - generalized synchronization with condition variables,
transport-layer services (3.1), multiplexing and demultiplexing (3.2)
- (Mar 9, 2020) - midterm exam
- Lecture 15
(PDF)
(Mar 11, 2020)
- lab9 , multiplexing and demultiplexing (3.2), connectionless transport: UDP (3.3),
principles of reliable data transfer (3.4)
- (Mar 16-20, 2020) - spring recess
- Lecture 16
(PDF)
(Mar 23, 2020)
- lab10, principles of reliable data transfer (3.4)
- Lecture 17
(PDF)
(Mar 25, 2020)
- connection-oriented transport: TCP (3.5)
- video (part 1 of 2) - 76 minutes
- Eratta: at time index 1:11:40, I've made a mistake saying that Go-back-N does not send dup ACKs for that particular case.
I checked the Go-back-N diagram. For every data packet that's not the expected one, Go-back-N receiver will send back a dup ACK.
Sorry about my mistake. I tried to recall from memory and I got it wrong. This is corrected at the beginning of the next video.
- video (part 2 of 2) - 42 minutes
- Lecture 18
(PDF)
(Mar 30, 2020)
- lab 11, pa4, principles of congestion control (3.6), TCP congestion control (3.7)
- Lecture 19
(PDF)
(Apr 1, 2020)
- overview of network layer (4.1), what's inside a router (4.2)
- Lecture 20
(PDF)
(Apr 6, 2020)
- lab 12, the Internet protocol (IP): IPv4, addressing, IPv6, and more (4.3)
- Lecture 21
(PDF)
(Apr 8, 2020)
- the Internet protocol (IP): IPv4, addressing, IPv6, and more (4.3), introduction to the network control plane (5.1), routing algorithms (5.2)
- Lecture 22
(PDF)
(Apr 13, 2020)
- lab 13, routing algorithms (5.2)
- Lecture 23
(PDF)
(Apr 15, 2020)
- intra-AS routing in the Internet: OSPF (5.3), routing among the ISPs: BGP (5.4)
- Lecture 24
(PDF)
(Apr 20, 2020)
- lab 14
- Lecture 25
(PDF)
(Apr 22, 2020)
- the SDN control plane (5.5), ICMP: the Internet control message protocol (5.6), network management and SNMP (5.7),
introduction to the link layer (6.1), error-detection and correction techniques (6.2).
- Lecture 26
(PDF)
(Apr 27, 2020)
- multiple access links and protocols (6.3), introduction wireless and mobile networks (7.1), wireless links and network characteristics (7.2), wifi: 802.11 wireless LANs (7.3)
- Lecture 27
(PDF)
(Apr 29, 2020)
- switched local area networks (6.4), link virtualization: a network as a link layer (6.5), data center networking (6.6), retrospective: a day in the life of a web page request (6.7)
Preview:
- (May 8, 2020) - final exam, 11am - 11:40pm (firm)
The following are tentative slides (in PDF format) for this semester.
- Administrative
- Labs
- Programming Assignments
- Background for Programming Assignments and Labs
- sockets programming
(PDF)
- multithreading parts 1 & 2 - thread creation and termination
(PDF)
- first.cpp,
first-arg.cpp,
fac.cpp,
create.cpp,
bad-create.cpp,
join.cpp,
exit-detach.cpp,
detach.cpp,
bad-dyn-create.cpp,
bad-dyn-create2.cpp,
bad-dyn-create3.cpp,
join-dyn.cpp,
join-dyn3.cpp,
join-shared.cpp,
join-new.cpp
- multithreading part 3 - mutex
(PDF)
- multithreading part 4 - generalized synchronization with condition variables
(PDF)
- Ch 1 - Computer Networks and the Internet
- what is the Internet (1.1), the network edge (1.2), the network core (1.3)
(PDF)
(6-up PDF)
- delay, loss, throughput (1.4), protocol layers, service models (1.5), network under attack (1.6), history of Internet (1.7)
(PDF)
(6-up PDF)
- Ch 2 - Application Layer
- principles of network applications (2.1), the web and HTTP (2.2), electronic mail in the Internet (2.3)
(PDF)
(6-up PDF)
- DNS (2.4), peer-to-peer applications (2.5), video streaming and conent distribution networks (2.6)
(PDF)
(6-up PDF)
- socket programming (2.7)
(PDF)
(6-up PDF)
- Ch 3 - Transport Layer
- Ch 4 - The Network Layer: Data Plane
- overview of network layer (4.1), what's inside a router (4.2)
(PDF)
(6-up PDF)
- the Internet protocol (IP): IPv4, addressing, IPv6, and more (4.3), generalized forwarding and SDN (4.4)
(PDF)
(6-up PDF)
- Ch 5 - The Network Layer: Control Plane
- introduction to the network control plane (5.1), routing algorithms (5.2)
(PDF)
(6-up PDF)
- intra-AS routing in the Internet: OSPF (5.3), routing among the ISPs: BGP (5.4)
(PDF)
(6-up PDF)
- the SDN control plane (5.5), ICMP: the Internet control message protocol (5.6), network management and SNMP (5.7)
(PDF)
(6-up PDF)
- Ch 6 - The Link Layer and LANs
- introduction to the link layer (6.1), error-detection and correction techniques (6.2), multiple access links and protocols (6.3)
(PDF)
(6-up PDF)
- switched local area networks (6.4)
(PDF)
(6-up PDF)
- link virtualization: a network as a link layer (6.5), data center networking (6.6), retrospective: a day in the life of a web page request (6.7)
(PDF)
(6-up PDF)
- Ch 7 - Wireless and Mobile Networks (will cover part of this chapter if there is time)
- introduction wireless and mobile networks (7.1), wireless links and network characteristics (7.2)
(PDF)
(6-up PDF)
CDMA (7.2)
(PDF)
(6-up PDF)
- wifi: 802.11 wireless LANs (7.3)
(PDF)
(6-up PDF)
wifi: 802.11 addressing and various features (7.3), cellular Internet access (7.4)
(PDF)
(6-up PDF)
mobility management: principles (7.5), mobile IP (7.6), managing mobility in cellular networks (7.7),
wireless and mobility: impact on higher-layer protocols (7.8)
(PDF)
(6-up PDF)
- Ch 8 - Security in Computer Networks (most likely will not cover this chapter)
- what is network security (8.1), principles of cryptography (8.2)
(PDF)
(6-up PDF)
- end-point authentication (8.4), message integrity and digital signatures (8.3), securing e-mail (8.5), securing TCP connections: SSL (8.6)
(PDF)
(6-up PDF)
network-layer security: IPsec and virtual private networks (8.7), securing wireless LANs (8.8),
operational security: firewalls and intrusion detection systems (8.9)
(PDF)
(6-up PDF)
- Ch 9 - Multimedia Networking (most likely will not cover this chapter)
multimedia networking applications (9.1), streaming stored video (9.2), Voice-over-IP (9.3)
(PDF)
(6-up PDF)
protocols for real-time conversational applications (9.4), network support for multimedia (9.5)
(PDF)
(6-up PDF)
- Miscellaneous
- blank slides (for use by instructor)
(PDF)
NOTE: This class is not designed to cover all the chapters of the textbook. The focus is Ch 1 through Ch 6.
So, the stuff towards the bottom is very very tentative.
Week # |
Dates |
Topics |
Comments |
---|
1 |
1/13&1/15 |
administrative, Computer Networks and the Internet (Ch 1) |
(PA1 #1 starts) |
2 |
1/20 1/22 |
MLK Holiday
Computer Networks and the Internet (Ch 1) |
|
3 |
1/27&1/29 |
Application Layer (Ch 2) |
|
4 |
2/3&2/5 |
Application Layer (Ch 2) |
(PA2 starts) |
5 |
2/10&2/12 |
Application Layer (Ch 2) |
|
6 |
2/17 2/19 |
Presidents' Day Holiday
Transport Layer (Ch 3) |
|
7 |
2/24&2/26 |
Transport Layer (Ch 3) |
(PA3 starts) |
8 |
3/2&3/4 |
Transport Layer (Ch 3) |
|
9 |
3/9 3/11 |
midterm exam
The Network Layer: Data Plane (Ch 4) |
|
- |
3/16-3/20 |
(Spring Recess) |
|
10 |
3/23&3/25 |
The Network Layer: Data Plane (Ch 4) |
(PA4 starts) |
11 |
3/30&4/1 |
The Network Layer: Control Plane (Ch 5) |
|
12 |
4/6&4/8 |
The Link Layer and LANs (Ch 6) |
|
13 |
4/13&4/15 |
Wireless and Mobile Networks (Ch 7) |
(PA5 starts) |
14 |
4/20&4/22 |
Wireless and Mobile Networks (Ch 7) |
|
15 |
4/27&4/29 |
Security in Computer Networks (Ch 8) |
|
|