E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
1
EE 586 Communication andSwitching Networks
Midterm 2 Review
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
 (modified by Cheung for EE586; based on K&R original)
2
Learning Outcomes
To understand the layer architecture
To design simple networking applications
To compare and contrast TCP and UDP
To understand routing algorithms
To compare different link layer protocols
To understand the challenges of mobility
To use simple analytical models and networksimulations in performance study
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Review Material
Review lectures between 10/21 – 11/8
Chapters in Text
Network Layer: Chapter 4.1-2,4.4-6
Link Layer: Chapter 5.1-4,5.7
Wireless: Chapter 6.1-3
Homework 6 and 7
Practice Midterm 2 on the class website:
Solution posted on Bb
Two quizzes on Bb
(modified by Cheung for EE586; based on K&R original)
3
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Review: Network (IP) layer (1)
Basic function of Network Layer: forwarding (in router)and routing (entire network)
Two main types: Virtual Circuits (connection or stateful) versusDatagram (connectionless or stateless)
Forwarding in router: longest prefix matching
IP layer (make sure you know the diff bet’n v4 & v6)
Datagram Format & Fragmentation
Addressing: subnet mask, CIDR
DHCP & NAT
ICMP – e.g. traceroute
underline_base
 (modified by Cheung for EE586; based on K&R original)
4
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Review: Network Layer (2)
Generic Graph-based Routing Algorithms
Link-State
Need the entire network topology
Iterate on selecting the next node with the shortestdistance to source & update existing table
Complexity: O(N2), Problem: Oscillation
Distance-Vector
Exchange & Update own routing table betweenneighbors everytime there is a change in link status
May take long time to converge: bad news travel slow(mitigated by poisoned reverse)
Local bad table may affect entire network
Hierarchical Routing – for scalability
 (modified by Cheung for EE586; based on K&R original)
5
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Review: Network Layer (3)
Real IP Routing
Intra AS-Routing
Routing Information Protocol (RIP) : distance vector
Open Shortest Path First (OSPF): Link-State +Hierarchical
Inter AS-Routing : Border Gateway Protocol (BGP) –policy + performance
 (modified by Cheung for EE586; based on K&R original)
6
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Review: Link Layer (1)
Operation within each link
Error correction: 2-D parity check
Error detection: CRC
Multiple Access
Fixed partitioning: FDMA, CDMA
Random Access: collision!
Slotted ALOHA: random back-off, efficiency
Pure ALOHA: efficiency
CSMA: check before sending (introduce space-timediagram)
CSMA/CD: terminate transmission immediately aftercollision detected
Taking-turns: polling, token-passing
 (modified by Cheung for EE586; based on K&R original)
7
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Review: Link Layer (2)
Link-layer addressing
MAC address (contrast with IP address)
Address Resolution Protocol (IP <-> MAC address) :broadcast query and wait for response (inside andoutside subnet)
Ethernet: frame structure, CSMA/CD, efficiency
Link-layer switches: forwarding, filtering, self-learning
 (modified by Cheung for EE586; based on K&R original)
8
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Review: Wireless and Mobile
Wireless vs. Mobile
Infrastructure vs. Ad-hoc
Wireless: Loss Rate vs. SNR vs. Modulation schemes(data rate)
Hidden Terminal – senders may not be able to detectcollision  CD is useless
Multiple Access
Channel Partition: CDMA
Random Access: 802.11 (WIFI)
Active and Passive Discovery of BSS
Use CSMA
No collision detection; instead use ACK
Channel reservation via RTS/CTS – Collision Avoidance
 (modified by Cheung for EE586; based on K&R original)
9
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Synthesis: a day in the life of a web request
journey down protocol stack complete!
application, transport, network, link
putting-it-all-together: synthesis!
goal: identify, review, understand protocols (at alllayers) involved in seemingly simple scenario:requesting www page
scenario: student attaches laptop to campus network,requests/receives www.google.com
underline_base
10
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
A day in the life: scenario
Comcast network
68.80.0.0/13
Googles network
64.233.160.0/19
64.233.169.105
web server
DNS server
school network
68.80.2.0/24
web page
browser
laptop_stylized_small
antenna_stylized
underline_base
11
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
router
(runs DHCP)
laptop_stylized_small
antenna_stylized
A day in the life… connecting to the Internet
connecting laptop needs toget its own IP address, addrof first-hop router, addr ofDNS server: use DHCP
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP
DHCP request encapsulatedin UDP, encapsulated in IP,encapsulated in 802.3Ethernet
Ethernet frame broadcast(dest: FFFFFFFFFFFF) on LAN,received at router runningDHCP server
Ethernet demuxed to IPdemuxed, UDP demuxed toDHCP
underline_base
12
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
router
(runs DHCP)
laptop_stylized_small
antenna_stylized
DHCP server formulatesDHCP ACK containingclients IP address, IPaddress of first-hop routerfor client, name & IPaddress of DNS server
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP
encapsulation at DHCPserver, frame forwarded(switch learning) throughLAN, demultiplexing atclient
Client now has IP address, knows name & addr of DNS
server, IP address of its first-hop router
DHCP client receivesDHCP ACK reply
A day in the life… connecting to the Internet
underline_base
13
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
router
(runs DHCP)
laptop_stylized_small
antenna_stylized
A day in the life… ARP (before DNS, before HTTP)
before sending HTTP request, needIP address of www.google.com:DNS
DNS
UDP
IP
Eth
Phy
DNS
DNS
DNS
DNS query created, encapsulated inUDP, encapsulated in IP,encapsulated in Eth.  To send frameto router, need MAC address ofrouter interface: ARP
ARP query broadcast, received byrouter, which replies with ARPreply giving MAC address ofrouter interface
client now knows MAC addressof first hop router, so can nowsend frame containing DNSquery
ARP query
Eth
Phy
ARP
ARP
ARP reply
underline_base
14
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
router
(runs DHCP)
laptop_stylized_small
antenna_stylized
DNS
UDP
IP
Eth
Phy
DNS
DNS
DNS
DNS
DNS
IP datagram containing DNSquery forwarded via LANswitch from client to 1st hoprouter
IP datagram forwarded fromcampus network into comcastnetwork, routed (tables createdby RIP, OSPF, IS-IS and/or BGProuting protocols) to DNS server
demuxed to DNS server
DNS server replies to clientwith IP address ofwww.google.com
Comcast network
68.80.0.0/13
DNS server
DNS
UDP
IP
Eth
Phy
DNS
DNS
DNS
DNS
A day in the life… using DNS
underline_base
15
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
router
(runs DHCP)
laptop_stylized_small
antenna_stylized
A day in the life…TCP connection carrying HTTP
HTTP
TCP
IP
Eth
Phy
HTTP
to send HTTP request,client first opens TCPsocket to web server
TCP SYN segment (step 1 in 3-way handshake) inter-domainrouted to web server
TCP connection established!
64.233.169.105
web server
SYN
SYN
SYN
SYN
TCP
IP
Eth
Phy
SYN
SYN
SYN
SYNACK
SYNACK
SYNACK
SYNACK
SYNACK
SYNACK
SYNACK
web server responds with TCPSYNACK (step 2 in 3-wayhandshake)
underline_base
16
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
router
(runs DHCP)
laptop_stylized_small
antenna_stylized
A day in the life… HTTP request/reply
HTTP
TCP
IP
Eth
Phy
HTTP
HTTP request sent intoTCP socket
IP datagram containing HTTPrequest routed towww.google.com
IP datagram containing HTTPreply routed back to client
64.233.169.105
web server
HTTP
TCP
IP
Eth
Phy
web server responds withHTTP reply (containing webpage)
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
web page finally (!!!) displayed
underline_base
17