Computer Networking
Download
Report
Transcript Computer Networking
Internet
Protocol Stack
Computer
Networking: A Top
Down Approach
6th edition
Jim Kurose, Keith Ross
Addison-Wesley
March 2012
What’s the Internet: “nuts and bolts” view
PC
millions of connected
computing devices:
hosts = end systems
wireless
laptop
running network
cellular
handheld
apps
communication links
fiber, copper,
access
points
radio, satellite
wired
links
transmission
rate = bandwidth
routers: forward
router
packets (chunks of
data)
Mobile network
server
Global ISP
Home network
Regional ISP
Institutional network
What’s the Internet: “nuts and bolts” view
protocols control sending,
Mobile network
receiving of msgs
e.g., TCP, IP, HTTP, Skype,
Ethernet
Internet: “network of
networks”
loosely hierarchical
public Internet versus
private intranet
Internet standards
RFC: Request for comments
IETF: Internet Engineering
Task Force
Global ISP
Home network
Regional ISP
Institutional network
What’s the Internet: a service view
communication
infrastructure enables
distributed applications:
Web, VoIP, email, games,
e-commerce, file sharing
communication services
provided to apps:
reliable data delivery
from source to
destination
“best effort” (unreliable)
data delivery
The topology structure
Network Node +
communication lines,
reflecting the
network structure
of the inter-entity
relations
Bus
Star
Mesh
Tree
Ring
What’s a protocol?
human protocols:
“what’s the time?”
“I have a question”
introductions
… specific msgs sent
… specific actions taken
when msgs received,
or other events
network protocols:
machines rather than
humans
all communication
activity in Internet
governed by protocols
protocols define format,
order of msgs sent and
received among network
entities, and actions
taken on msg
transmission, receipt
What’s a protocol?
a human protocol and a computer network protocol:
Hi
TCP connection
request
Hi
TCP connection
response
Got the
time?
Get http://www.awl.com/kurose-ross
2:00
<file>
time
Q: Other human protocols?
关于网络协议的中文说明
计算机网络中的数据交换必须遵守事先约定好
的规则。
这些规则明确规定了所交换的数据的格式以及
有关的同步问题(同步含有时序的意思)。
网络协议(network protocol),简称为协议,
是为进行网络中的数据交换而建立的规则、标
准或约定。
网络协议的组成要素
语法
数据与控制信息的结构或格式 。
语义
需要发出何种控制信息,完成何种动
作以及做出何种响应。
同步 事件实现顺序的详细说明。
Physical Media
Bit: propagates between
transmitter/rcvr pairs
physical link: what lies
between transmitter &
receiver
guided media:
signals propagate in solid
media: copper, fiber, coax
unguided media:
signals propagate freely,
e.g., radio
Twisted Pair (TP)
two insulated copper
wires
Category 3: traditional
phone wires, 10 Mbps
Ethernet
Category 5:
100Mbps Ethernet
Physical Media: coax, fiber
Coaxial cable:
Fiber optic cable:
conductors
bidirectional
baseband:
pulses, each pulse a bit
high-speed operation:
two concentric copper
single channel on cable
legacy Ethernet
broadband:
multiple channels on
cable
HFC
glass fiber carrying light
high-speed point-to-point
transmission (e.g., 10’s100’s Gps)
low error rate: repeaters
spaced far apart ; immune
to electromagnetic noise
Physical media: radio
signal carried in
electromagnetic
spectrum
no physical “wire”
bidirectional
propagation
environment effects:
reflection
obstruction by objects
interference
Radio link types:
terrestrial microwave
e.g. up to 45 Mbps channels
LAN (e.g., Wifi)
11Mbps, 54 Mbps
wide-area (e.g., cellular)
3G cellular: ~ 1 Mbps
satellite
Kbps to 45Mbps channel (or
multiple smaller channels)
270 msec end-end delay
geosynchronous versus low
altitude
The Network Core
mesh of interconnected
routers
the fundamental
question: how is data
transferred through net?
circuit switching:
dedicated circuit per
call: telephone net
packet-switching: data
sent thru net in
discrete “chunks”
(message-switching)
Network Core: Circuit Switching
End-end resources
reserved for “call”
link bandwidth, switch
capacity
dedicated resources:
no sharing
circuit-like
(guaranteed)
performance
call setup required
Network Core: Circuit Switching
network resources
(e.g., bandwidth)
divided into “pieces”
pieces allocated to calls
resource piece idle if
not used by owning call
(no sharing)
dividing link bandwidth
into “pieces”
frequency division
time division
Circuit Switching: FDM and TDM
Example:
FDM
4 users
frequency
time
TDM
frequency
time
Numerical example
How long does it take to send a file of
640,000 bits from host A to host B over a
circuit-switched network?
All links are 1.536 Mbps
Each link uses TDM with 24 slots/sec
500 msec to establish end-to-end circuit
Let’s work it out!
Network Core: Packet Switching
each end-end data stream
divided into packets
user A, B packets share
network resources
each packet uses full link
bandwidth
resources used as needed
Bandwidth division into “pieces”
Dedicated allocation
Resource reservation
resource contention:
aggregate resource
demand can exceed
amount available
congestion: packets
queue, wait for link use
store and forward:
packets move one hop
at a time
Node receives complete
packet before forwarding
Packet switching versus circuit switching
Packet switching allows more users to use network!
1 Mb/s link
each user:
100 kb/s when “active”
active 10% of time
circuit-switching:
10 users
packet switching:
with 35 users,
probability > 10 active
at same time is less
than .0004
N users
1 Mbps link
Q: how did we get value 0.0004?
Packet switching versus circuit switching
Is packet switching a “slam dunk winner?”
great for bursty data
resource sharing
simpler, no call setup
excessive congestion: packet delay and loss
protocols needed for reliable data transfer,
congestion control
Q: How to provide circuit-like behavior?
bandwidth guarantees needed for audio/video apps
still an unsolved problem (chapter 7)
Q: human analogies of reserved resources (circuit
switching) versus on-demand allocation (packet-switching)?
Protocol “Layers”
Networks are complex!
many “pieces”:
hosts
routers
links of various
media
applications
protocols
hardware,
software
Question:
Is there any hope of
organizing structure of
network?
Or at least our discussion
of networks?
Why layering?
Dealing with complex systems:
explicit structure allows identification,
relationship of complex system’s pieces
layered reference model for discussion
modularization eases maintenance, updating of
system
change of implementation of layer’s service
transparent to rest of system
e.g., change in gate procedure doesn’t affect
rest of system
layering considered harmful?
计算机网络的体系结构
计算机网络的体系结构(architecture)是计算
机网络的各层及其协议的集合。
体系结构就是这个计算机网络及其部件所应完
成的功能的精确定义。
实现(implementation)是遵循这种体系结构的
前提下用何种硬件或软件完成这些功能的问题
。
体系结构是抽象的,而实现则是具体的,是真
正在运行的计算机硬件和软件。
Internet protocol stack
application: supporting network
applications
FTP, SMTP, HTTP
transport: process-process data
transfer
TCP, UDP
network: routing of datagrams from
source to destination
IP, routing protocols
link: data transfer between
neighboring network elements
PPP, Ethernet
physical: bits “on the wire”
application
transport
network
link
physical
Network Software
Protocol Hierarchies
Layers, protocols, and interfaces
Notions
Entity: any hardware of software process that can send
or receive message; the active elements of every layer.
Peer entities: two entities that locate at the same layer
of different system. Protocol is used between peer
entities.
Interface: the interface between the contiguous layers.
Service: the function of one layer and its underlying
layers, services are provided to the contiguous above
layer through interface.
Protocol Stack: the set of protocols of a system.
Network Architecture: the layer structure and the
protocols.
Services to Protocols Relationship
The relationship between a service and a
protocol.
ISO/OSI reference model
presentation: allow applications to
interpret meaning of data, e.g.,
encryption, compression, machinespecific conventions
session: synchronization,
checkpointing, recovery of data
exchange
Internet stack “missing” these
layers!
these services, if needed, must
be implemented in application
needed?
application
presentation
session
transport
network
link
physical
ISO/OSI reference model
A Critique of the OSI Model
and Protocols
Why OSI did not take over the world
• Bad timing
• Bad technology
• Bad implementations
• Bad politics
Bad Timing
The apocalypse of the two elephants.
TCP/IP RM
Example of TCP/IP 4-layer
protocol
A
B
4 Application
router
3 Transport
2
1
Application
Transport
Internet
Interface
network1
Internet
Internet
Interface
Interface
network2
A Critique of the TCP/IP
Reference Model
Problems:
• Service, interface, and protocol not
•
•
•
•
distinguished
Not a general model
Host-to-network “layer” not really a layer
No mention of physical and data link layers
Minor protocols deeply entrenched, hard to
replace
Hybrid Model
TCP/IP Model: Five-layer structure
Internet protocol stack
The hybrid reference model to be used in
this book.
Node 1 sends data to Node 2
Computer 1
AP1
5
pass data to the application layer
add the application head, becomes msg
Computer 2
AP2
5
4
4
3
3
2
2
1
1
Computer 1
Computer 2
AP2
AP1
5
pass the msg to transport layer
5
4
add the transport head
4
3
3
2
2
1
1
Computer 1
Computer 2
AP2
AP1
5
5
4
pass the segment to network
4
3
add the network head, becomes datagram
3
2
2
1
1
Computer 1
Computer 2
AP2
AP1
5
5
4
4
3
pass the datagram to the data link layer
3
2
add the link head and tail, becomes frame
2
1
1
Computer 1
Computer 2
AP2
AP1
5
5
4
4
3
3
2
pass the frame to the physical layer
2
1
physical layers passes the bit stream to the media
1
Computer 1
Computer 2
AP2
AP1
5
5
4
4
3
3
2
2
1
electronic signal is transmitted in physical media
from the sender PHY to the receiver PHY
physical media
1
Computer 1
Computer 2
AP2
AP1
5
5
4
4
3
3
2
2
1
the physical layer receives the bit stream,
and hands over frame to the above data link layer
1
Computer 1
Computer 2
AP2
AP1
5
5
4
4
3
3
2
1
data link layer picks out the datagram and
hands over to the network layer
2
1
Computer 1
Computer 2
AP2
AP1
5
5
4
4
3
network layer picks out the segment and
hands over to the transport layer
3
2
2
1
1
Computer 1
Computer 2
AP2
AP1
5
4
5
transport layer picks out the msg and
hands over to the application layer
4
3
3
2
2
1
1
Computer 1
AP1
5
Computer 2
application layer picks out the data and
hands over to the application
AP2
5
4
4
3
3
2
2
1
1
Computer 1
AP1
I received the data
sent by AP1!
Computer 2
AP2
5
5
4
4
3
3
2
2
1
1
Computer 1
Computer 2
app head
AP1
5
4
3
trans head
H5
application data
5
H4
H5
application data
4
H3
H4
H5
application data
H3
H4
H5
application data
net head
link
head
AP2
application data
link
tail
3
2
H2
T2
2
1
10100110100101 bit stream 110101110101
1
Computer 1
Computer 2
AP2
AP1
5
5
4
4
3
After receiving the bit stream, the physical layer
of computer 2 hands it over to the link layer
3
2
H2
T2
2
1
10100110100101 bit stream 110101110101
1
H3
H4
H5
application data
Computer 1
Computer 2
AP2
AP1
5
4
After removing the head and tail of the frame, link
Layer hands over the data to the network layer.
3
2
1
H2
H3
H4
H5
application data
H3
H4
H5
application data
5
4
3
T2
2
1
Computer 1
AP1
5
Computer 2
After removing the head, the network layer
hands over the data to the transport layer.
AP2
5
4
H4 H5
application data
4
3
H3 H4 H5
application data
3
2
2
1
1
Computer 1
After removing the head, the transport layer
AP1
hands over the data to the application layer.
5
4
H4
Computer 2
AP2
H5
application data
5
H5
application data
4
3
3
2
2
1
1
Computer 1
Computer 2
application data
AP1
5
4
3
H5
application data
After removing the head, the application layer
hands over the data to the application.
AP2
5
4
3
2
2
1
1
Computer 1
AP1
I received the data
sent by AP1!
Computer 2
AP2
5
5
4
4
3
3
2
2
1
1
Encapsulation
source
message
segment
M
Ht
M
datagram Hn Ht
M
frame Hl Hn Ht
M
application
transport
network
link
physical
link
physical
switch
destination
M
Ht
M
Hn Ht
Hl Hn Ht
M
M
application
transport
network
link
physical
Hn Ht
Hl Hn Ht
M
M
network
link
physical
Hn Ht
M
router
Functions of each layer
bit
prescribe the
electronic parameter
of the physical layer. prescribe the
connector
To transfer bit stream
physical layer
establish, maintain and
release physical
connection between
two entities of data
link layer.
Functions of each layer
data link
establish,
maintain and
release data link,
show a right link
to the network
frame
layer
dividing and
synchronizatio
error
n of frames
detection and
control
access control
To transfer data from one node to its adjacent node
Functions of each layer
routing
Host-to-host data transmission
network
datagram
forwarding
Functions of each layer
segment
sequence
control
transport
provide logical
communication
between app
processes
error control
flow control
Process-to-Process (end2end) data transmission
Functions of each layer
provide interface
for users
application
message
Protocols and networks
Protocols and networks in the TCP/IP
model initially.
Internet Trends
Internet Trends
2020: Internet use reaches 5 billion worldwide
Internet Trends in China
2014年1月16日,中国互联网络信息中心(
CNNIC)在京发布第33次《中国互联网络
发展状况统计报告》
Internet Trends in China
Internet Trends in China
Internet Trends in China
Internet Trends in China
Internet Trends in China
Internet Trends in China
Internet Trends in China
Introduction
1-73
Internet Trends in China
Introduction
1-74
Internet Trends in China
Introduction
1-75
Internet Trends in China
Introduction: Summary
Covered a “ton” of material!
Internet overview
what’s a protocol?
network edge, core, access
network
packet-switching versus
circuit-switching
performance: loss, delay,
throughput
layering, service models
Internet trends