1
Class Coverage
• Littlecoverage of physical and data link layer
• Little coverage of undergraduate material
• Students expected to know this
• Focus on network to application layer
• We will deal with:
• Protocol rules and algorithms
• Investigate protocol trade-offs
• Why this way and not another?
3
What is theObjective of Networking?
• Communication between applications on
different computers
• Must understand application
needs/demands
• Traffic data rate
• Traffic pattern (bursty or constant bit rate)
• Traffic target (multipoint or single destination,
mobile or fixed)
• Delay sensitivity
• Loss sensitivity
6
Packet Switching
• Interleavepackets from different sources
• Efficient: resources used on demand
• Statistical multiplexing
• General
• Multiple types of applications
• Accommodates bursty traffic
• Addition of queues
7.
7
Characteristics of PacketSwitching
• Store and forward
• Packets are self contained units
• Can use alternate paths – reordering
• Contention
• Congestion
• Delay
8.
8
Internet[work]
Internet[work]
• A collectionof
interconnected
networks
• Host: network
endpoints (computer,
PDA, light switch, …)
• Router: node that
connects networks
• Internet vs. internet
9.
9
Challenge
• Many differencesbetween networks
• Address formats
• Performance – bandwidth/latency
• Packet size
• Loss rate/pattern/handling
• Routing
• How to translate between various network
technologies?
10.
10
How To FindNodes?
Internet
Computer 1 Computer 2
Need naming and routing
11.
11
Naming
What’s the IPaddress for www.cmu.edu?
It is 128.2.11.43
Translates human readable names to logical endpoints
Local DNS Server
Computer 1
13
Meeting Application Demands
•Reliability
• Corruption
• Lost packets
• Flow and congestion control
• Fragmentation
• In-order delivery
• Etc…
14.
14
What if theData gets Corrupted?
Internet
GET windex.html
GET index.html
Solution: Add a checksum
Problem: Data Corruption
0,9 9 6,7,8 21 4,5 7 1,2,3 6
X
15.
15
What if Networkis Overloaded?
Problem: Network Overload
• Short bursts: buffer
• What if buffer overflows?
• Packets dropped
• Sender adjusts rate until load = resources “congestion control”
Solution: Buffering and Congestion Control
16.
16
What if theData gets Lost?
Internet
GET index.html
Problem: Lost Data
Internet
GET index.html
Solution: Timeout and Retransmit
GET index.html
GET index.html
17.
17
Problem: Packet size
Solution:Fragment data across packets
What if the Data Doesn’t Fit?
• On Ethernet, max IP packet is 1.5kbytes
• Typical web page is 10kbytes
GET
inde
x.ht
ml
GET index.html
18.
18
Solution: Add SequenceNumbers
Problem: Out of Order
What if the Data is Out of Order?
GET
x.ht
inde
ml
GET x.htindeml
GET index.html
ml 4 inde 2 x.ht 3 GET 1
19.
19
Lots of FunctionsNeeded
• Link
• Multiplexing
• Routing
• Addressing/naming (locating peers)
• Reliability
• Flow control
• Fragmentation
• Etc….
20.
20
What is Layering?
•Modular approach to network functionality
• Example:
Link hardware
Host-to-host connectivity
Application-to-application channels
Application
21.
21
Protocols
• Module inlayered structure
• Set of rules governing communication
between network elements (applications,
hosts, routers)
• Protocols define:
• Interface to higher layers (API)
• Interface to peer
• Format and order of messages
• Actions taken on receipt of a message
22.
22
Layering Characteristics
• Eachlayer relies on services from layer
below and exports services to layer above
• Interface defines interaction
• Hides implementation - layers can change
without disturbing other layers (black box)
24
E.g.: OSI Model:7 Protocol Layers
• Physical: how to transmit bits
• Data link: how to transmit frames
• Network: how to route packets
• Transport: how to send packets end2end
• Session: how to tie flows together
• Presentation: byte ordering, security
• Application: everything else
25.
25
OSI Layers andLocations
Switch Router
Host Host
Application
Transport
Network
Data Link
Presentation
Session
Physical
26.
28
Is Layering Harmful?
•Sometimes..
• Layer N may duplicate lower level functionality
(e.g., error recovery)
• Layers may need same info (timestamp, MTU)
• Strict adherence to layering may hurt
performance
27.
29
Next Lecture: DesignConsiderations
• How to determine split of functionality
• Across protocol layers
• Across network nodes
• Assigned Reading
• [SRC84] End-to-end Arguments in System
Design
• [Cla88] Design Philosophy of the DARPA
Internet Protocols
• Optional Reading
• [Cla02] Tussle in Cyberspace: Defining
Tomorrow’s Internet
Editor's Notes
#3 Some example applications: video, audio, telnet, ftp, http, rpc – what are their needs
#8 What if want to communicate between hosts on different Ethernets? Internet as interoperability layer