topic # Topic Reading Homework Slides
stack alternatives A physical layer alternative
 null-modem (not twisted-pair) cable


read - textbook - p70 "56K Modems"
serial communication and null-modem cable
2 A data link layer alternative
 ppp - point-to-point (not ethernet) protocol


read - textbook -p76 PPP"

note - the PPP HOWTO. Don't read it! Do skim it. I call it to your attention because it is a substantial source on the subject for you to be aware of.

  ppp data-link protocol

video, performing the exercise:
    video demo (50m)
ppp protocol (static slides version)

ppp protocol (narrated lecture version 1h22m)

3 A network layer alternative
 ipv6 (not ipv4)
read - Forouzan section 5.5, pp. 149-152 on NAT

read - Forouzan chapter 26 "IPv6 Addressing"

read - Forouzan chapter 27 "IPv6 Protocol"

listen - Jim Kurose on The Internet Protocol
 - NAT   0:00 -  7:25
 - ipv6    7:25 - 20:49

 Network address translation

 ipv6 address autoconfiguation 

4 A transport layer protocol

udp  (not ipv4)

icmp  (not ipv4) internet control message protocol (but not functionally "alternative" to tcp, does not carry higher layer payloads)

read - Forouzan chapter 13 "Introduction to the Transport Layer"
through p 391

read - Forouzan chapter 14 "User Datagram Protocol"

read - rfc 792 defining ICMP
 the introductory couple pages,
 the detail only of the message types
  0 - echo reply
  3 - destination unreachable
  8 - echo request
 11- time exceeded

port behavior - used/open vs unused/closed
5 A transport layer alternative
 sctp - stream control transmission (not tcp) protocol
6 Application layer alternatives
 echo diagnostic protocol
 discard diagnostic protocol
 chargen diagnostic protocol
 enable diagnostic protocols

 exercise diagnostic protocols

7 An application layer alternative
 tftp - trivial file transfer (not http) protocol

read - textbook section 21.2 about TFTP

read - rfc 1350 defining tftp, sections 1-4 and 6

read - stop-and-wait's performance

tftp (static slides version)

tftp (narrated lecture version 1h7m)

8 An application layer alternative
 dhcp - dynamic host configuration protocol

dhcpd (address server)

DHCP protocol

dhcp denial-of-service


tcp 2nd look transport: general - reliability read - Forouzan chapter 13 "Introduction to the Transport Layer"

listen - Jim Kurose on Principles of Reliable Data Transfer, go-back-N and selective-repeat protocols; timing marks 11:08-20:28 (10m)

10 transport: general - flow & congestion control listen - Jim Kurose on Principles of Congestion Control (15m)
11 transport: tcp-specific - reliability read - Forouzan chapter 15 "Transmission Control Protocol (TCP)" listen - Jim Kurose on Connection-oriented Transport: TCP (12m)

listen - Steve Gibson, Security Now! Episode #317 "TCP Part 1 - Getting Connected," timing marks 56:29-1:29:14 (33m)

do - tcp interactive dataflow tracking (cs70 review)
explanatory video (7m)


12 transport: tcp-specific - flow & congestion control


listen - Jim Kurose on TCP Congestion Control (22m)

listen - Steve Gibson, Security Now! Episode #325 "TCP Pt.3 - Necessary Refinements," timing marks 36:13-1:11:04 (25m)
read - rfc 2001, about such refinements. Read sections 1 and 2 about slow start and congestion avoidance.

listen -
 - Retransmission Timeout Problems (6m)
 - Out of order segements (5m)

view - simulation, congestion avoidance phases (1m)

do - tcp bulk dataflow tracking

tcp traffic control
-static-   -narrated (1h38m)-
13 socket API and types of sockets read - Forouzan chapter 17 "Introduction to the Application Layer"
As you read this chapter, study side-by-side the code for this foundation example, the "world's simplest client-server pair": 
 - letter-upgrader server
 - letter-upgrader's client
They exemplify the stucture of client and server programs through their use of the socket API.
foundation example, tcp client and server (cs70 review)
 part1 (1hr 29m)      part2 (25m)
("socket types" below  stems from this)

clientserver-socket types

protocol evolution protocol evolution case study - spdy/http2 from Google;s experimental spdy project to http2 listen - http & spdy 24:38-1:13:45 from 3/2012  (49m)
interesting technologies  
16 ssl/tls read - Forouzan section 30.2 "Transport Layer Security" ssl/tls
17 Bridging read - Forouzan section 3.5 "Connecting Devices"  


bridging (static slides version)

bridging (narrated lecture version 56m)

18 Tunneling tunneling

tunnels: general
-static-   -narrated (46m)-

tunnels: ipip
-static-   -narrated (25m)-

tunnels: ssh
-static-   -narrated (47m)-

tunnels: stunnel
-static-  -narrated (31m)-

tunnels: OpenVPN
-static-   -narrated (35m)-

19 proxy-arp proxy-arp
20 packet injection packet injection - hping
21 concurrent vs iterative servers backgrounder on fork/exec
 or, how processes get run
 timing marks 26:19-37:23
concurrent servers
22 tcpdump filters tcpdump filters
23 longest prefix match resolving overlapping nets for routing