CSE 4/589 Midterm Review Hengtong Zhang SUNY Buffalo 10/30/2018
Chapter 1 overview: what s the Internet? what s a protocol? network edge; hosts, access net, physical media network core: packet/circuit switching, Internet structure performance: loss, delay, throughput security protocol layers, service models history Remember Calculation Remember
Chapter 2 principles of network applications transport-layer service models client-server paradigm peer-to-peer paradigm content distribution networks 2.2 Web and HTTP FTP electronic mail SMTP, POP3, IMAP DNS socket programming with UDP and TCP
Chapter 3 transport layer services (logical communications): transportation layer vs network layer Remember multiplexing, demultiplexing reliable data transfer flow control Understand in depth congestion control connection management transport layer protocols: UDP: connectionless transport TCP: connection-oriented reliable transport TCP congestion control
Chapter 3 Reliable data transfer protocols: How do we polish the protocols step-by-step (rdt 1.0-3.0)? What s the problem of each protocol? Pipelined protocols (GBN, SR) and analysis. What do you learn from PA2?
Chapter 3 Connection management: TCP connections, start and close. Start Close client state server state client state server state LISTEN SYNSENT ESTAB choose init seq num, x send TCP SYN msg received SYNACK(x) indicates server is live; send ACK for SYNACK; this segment may contain client-to-server data SYNbit=1, Seq=x SYNbit=1, Seq=y ACKbit=1; ACKnum=x+1 ACKbit=1, ACKnum=y+1 choose init seq num, y send TCP SYNACK msg, acking SYN received ACK(y) indicates client is live LISTEN SYN RCVD ESTAB ESTAB FIN_WAIT_1 FIN_WAIT_2 TIMED_WAIT clientsocket.close() can no longer send but can receive data wait for server close timed wait for 2*max segment lifetime FINbit=1, seq=x ACKbit=1; ACKnum=x+1 FINbit=1, seq=y ACKbit=1; ACKnum=y+1 can still send data can no longer send data ESTAB CLOSE_WAIT LAST_ACK CLOSED CLOSED
Chapter 3 Congestions and congestion control Why do congestions happen? What s the intuitions behind congestion control methods? How does TCP handle congestions? TCP Tahoe TCP Reno TCP throughput Is TCP fair?
Chapter 4 Overview of Network layer data plane control plane What s inside a router IP: Internet Protocol datagram format fragmentation IPv4 addressing network address translation IPv6 Understand Remember Understand Remember
Chapter 4 network-layer functions: forwarding: move packets from router s input to appropriate router output routing: determine route taken by packets from source to destination routing algorithms analogy: taking a trip forwarding: process of getting through single interchange routing: process of planning trip from source to destination
Chapter 4 Data plane local, per-router function determines how datagram arriving on router input port is forwarded to router output port forwarding function values in arriving packet header 0111 3 1 2 Control plane network-wide logic determines how datagram is routed among routers along end-end path from source host to destination host two control-plane approaches: traditional routing algorithms: implemented in routers software-defined networking (SDN): implemented in (remote) servers
Chapter 4 Calculation questions: Forwarding table related calculation questions. Please refer to homework 3.
Destination-based forwarding forwarding table Destination Address Range 11001000 00010111 00010000 00000000 through 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 through 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 through 11001000 00010111 00011111 11111111 otherwise Link Interface 0 1 2 3 Q: but what happens if ranges don t divide up so nicely? Network Layer: Data Plane 4-12
Chapter 5 Routing protocols link state (Dijkstra's Algorithm) distance vector (Distance vector Algorithm) limitations and problems Routing in action intra-as routing in the Internet: OSPF routing among the ISPs: BGP The SDN control plane ICMP: The Internet Control Message Protocol Network management and SNMP Understand Remember Remember