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