Download Part I: Introduction

Document related concepts

Wireless security wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Peering wikipedia , lookup

Net neutrality law wikipedia , lookup

Distributed firewall wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Asynchronous Transfer Mode wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Internet protocol suite wikipedia , lookup

Computer network wikipedia , lookup

Deep packet inspection wikipedia , lookup

Net bias wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Network tap wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Packet switching wikipedia , lookup

Airborne Networking wikipedia , lookup

UniPro protocol stack wikipedia , lookup

IEEE 1355 wikipedia , lookup

Transcript
Introduction
Dr. Yingwu Zhu
1
Introduction
Goal:
 get context,
overview, “feel” of
networking
 more depth, detail
later in course
 approach:
 descriptive
 use Internet as
example
Overview:
 what’s the Internet
 what’s a protocol?
 network edge
 network core
 access net, physical media
 performance: loss, delay
 protocol layers, service models
 history
2
What’s the Internet: “nuts and
bolts” view
 millions of connected
computing devices: hosts,
end-systems


pc’s workstations, servers
PDA’s phones, toasters
router
server
mobile
local ISP
running network apps
 communication links

workstation
regional ISP
fiber, copper, radio,
satellite
 routers: forward packets
(chunks) of data thru
network
company
network
3
What’s the Internet: “nuts and
bolts” view
 protocols: control sending,
receiving of msgs

e.g., TCP, IP, HTTP, FTP, PPP
 Internet: “network of
router
server
workstation
mobile
local ISP
networks”


loosely hierarchical
public Internet versus
private intranet
 Internet standards
 RFC: Request for comments
 IETF: Internet Engineering
Task Force
regional ISP
company
network
4
What’s the Internet: a service
view
 communication
infrastructure enables
distributed applications:


WWW, email, games, ecommerce, database.,
voting,
more?
 communication services
provided:


connectionless
connection-oriented
5
Perspective (I)
 Network users: Does the network support the
users’ applications




Reliability
Error-free service
Performance: speed of data transfer
Even more: security? Privacy?
 Network designers: Cost-efficient network design



Good utilization of network resources
Cost of building the network
Types of services to be supported
6
Perspective (II)
 Network providers: Network administration
and customer service
Maximize Revenue
 Minimize Operations Expenses
 Survivability and Resiliency

7
A closer look at network
structure:
 network edge:
applications and hosts
 network core:


routers
network of networks
 access networks,
physical media:
communication links
8
Connectivity
 We may want a set of hosts (or devices)
to be directly connected! WHY ?
 We may not always strive for global
connectivity! WHY?
 Building Blocks to connect at the physical
level:
links: coax cable, optical fiber...
 nodes: general-purpose workstations… (though
sometimes very specialized)

9
Basic Connectivity
 Two types of direct connectivity:

point-to-point

multiple access
10
Discussions
 If all computers had to be directly
connected, networks would be either very
limited or expensive and unmanageable!
 Question: If n computers were to be
completely and directly connected by
point-to-point links of cost C, what would
be the total cost of the net?
 Question: Would it be less expensive to use
a multiple-access network? What are the
drawbacks and limitations?
11
Building Blocks
 Switches, Routers, Gateways
 Special network components responsible for “moving”
packets across the network from source to destination.
 Network hosts, workstations, etc.
 they generally represent the source and sink
(destination) of data traffic (packets)
 We can recursively build large networks by
interconnecting networks via gateways and
routers.
12
An Interconnection Network
13
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
14
What’s a protocol?
a human protocol and a computer network protocol:
Hi
TCP connection
req.
TCP connection
reply.
Hi
Got the
time?
2:00
Get http://gaia.cs.umass.edu/index.htm
<file>
time
Q: Other human protocol?
15
Protocols
 Building blocks of a network architecture
 Each protocol object has two different
interfaces
service interface: defines operations on this
protocol
 peer-to-peer interface: defines messages
exchanged with peer

 Term “protocol” is overloaded
 specification of peer-to-peer interface
 module that implements this interface
16
The network edge:
 end systems (hosts):



run application programs
e.g., WWW, email
at “edge of network”
 client/server model


client host requests, receives
service from server
e.g., WWW client (browser)/
server; email client/server
 peer-peer model:


host interaction symmetric
e.g.: teleconferencing,
Gnutella, Kazza, BitTorrent
17
Network edge: connectionoriented service
Goal: data transfer
between end sys.
 handshaking: setup
(prepare for) data
transfer ahead of time


Hello, hello back human
protocol
set up “state” in two
communicating hosts
 TCP - Transmission
Control Protocol

Internet’s connectionoriented service
TCP service [RFC 793]
 reliable, in-order byte-
stream data transfer

loss: acknowledgements
and retransmissions
 flow control:
 sender won’t overwhelm
receiver
 congestion control:
 senders “slow down sending
rate” when network
congested
18
Network edge: connectionless
service
Goal: data transfer
between end systems

same as before!
 UDP - User Datagram
Protocol [RFC 768]:
Internet’s
connectionless service
 unreliable data
transfer
 no flow control
 no congestion control
App’s using TCP:
 HTTP (WWW), FTP
(file transfer), Telnet
(remote login), SMTP
(email)
App’s using UDP:
 streaming media,
teleconferencing,
Internet telephony,
 Skype
19
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”
20
Different Types of Switching
 Different Types of Switching:
 Circuit Switching (telephone network)
• dedicated circuit, sending and receiving bit streams

Packet Switching
• store and forward, sending and receiving packets
 Message
Switching
 Virtual Circuit Switching
 Cell Switching (ATM)
 What are Packets?
 Data to be transmitted is divided into discrete
blocks
21
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
22
Cost-Effective Resource
Sharing
 Must share (multiplex) network resources
among multiple users.
 Common Multiplexing Strategies
Time-Division Multiplexing (TDM)
 Frequency-Division Multiplexing (FDM):
Frequency band  bandwidth

 Multiplexing multiple logical flows over a
single physical link.
23
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
24
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
 transmit over link
 wait turn at next link
25
Network Core: Packet Switching
10 Mbs
Ethernet
A
On-demand
sharing
statistical
multiplexing
C
1.5 Mbs
B
queue of packets
waiting for output
link
D
45 Mbs
E
26
Network Core: Packet Switching
Packet-switching:
store and forward behavior
27
Packet switching versus circuit
switching
Packet switching allows more users to use network!
 1 Mbit link
 each user:
 100Kbps when “active”
 active 10% of time
 circuit-switching:
 10 users
N users
1 Mbps link
 packet switching:
 with 35 users,
probability > 10 active
less than .004
28
Packet switching versus circuit
switching
Is packet switching a “slam dunk winner?”
 Great for bursty data
resource sharing
 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!

29
Packet-switched networks:
routing
 Goal: move packets among routers from source to
destination

we’ll study several path selection algorithms
 datagram network:
 destination address determines next hop
 routes may change during session
 analogy: driving, asking directions
 virtual circuit network:
 each packet carries tag (virtual circuit ID), tag
determines next hop
 fixed path determined at call setup time, remains fixed
thru call
 routers maintain per-call state
 ATM
30
Access networks and physical
media
Q: How to connect end
systems to edge router?
 residential access nets
 institutional access
networks (school,
company)
 mobile access networks
Keep in mind:
 bandwidth (bits per
second) of access
network?
 shared or dedicated?
31
Residential access: point to point
access
 Dialup via modem
 up
to 56Kbps direct access to
router (conceptually)
 ISDN: intergrated services
digital network: 128Kbps alldigital connect to router
 ADSL: asymmetric digital
subscriber line
 up to 1 Mbps home-to-router
 up to 8 Mbps router-to-home
32
Residential access: cable modems
 HFC: hybrid fiber coax
 asymmetric: up to 10Mbps
upstream, 1 Mbps
downstream
 network of cable and fiber
attaches homes to ISP
router


shared access to router
among home
issues: congestion,
dimensioning
 deployment: available via
cable companies, e.g.,
MediaOne, Comcast
33
Institutional access: local area
networks
 company/univ local area
network (LAN) connects
end system to edge router
 Ethernet:
 shared or dedicated
cable connects end
system and router
 10 Mbs, 100Mbps,
Gigabit Ethernet
 deployment: institutions,
home LANs soon
34
Wireless access networks
 shared wireless access
network connects end
system to router
 wireless LANs:


radio spectrum replaces
wire
e.g., Lucent Wavelan 10
Mbps
router
base
station
 wider-area wireless
access

CDPD: wireless access to
ISP router via cellular
network (base stations)
mobile
hosts
35
Physical Media
 physical link:
transmitted data bit
propagates across link
 guided media:

signals propagate in
solid media: copper,
fiber
 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 TP:
100Mbps ethernet
36
Physical Media: coax, fiber
Coaxial cable:
 wire (signal carrier)
within a wire (shield)


baseband: single channel
on cable
broadband: multiple
channel on cable
 bidirectional
 common use in 10Mbs
Fiber optic cable:
glass fiber carrying light
pulses
high-speed operation:
 100Mbps Ethernet
 high-speed point-topoint transmission (e.g.,
5 Gps)
low error rate
Ethernet
37
Physical media: radio
 signal carried in
electromagnetic
spectrum
 no physical “wire”
 bidirectional
 propagation
environment effects:



reflection
obstruction by objects
interference
Radio link types:
microwave
 e.g. up to 45 Mbps
channels
LAN (e.g., waveLAN)
 2Mbps, 11Mbps
wide-area (e.g., cellular)
 e.g. CDPD, 10’s Kbps
satellite
 up to 50Mbps channel (or
multiple smaller channels)
 270 Msec end-end delay
 geosynchronous versus
LEOS
38
Different Types of Links
Sometimes you install your own!
Category 5 twisted pair
50-ohm coax (ThinNet)
75-ohm coax (ThickNet)
Multimode fiber
Single-mode fiber
10-100Mbps, 100m
10-100Mbps, 200m
10-100Mbps, 500m
100Mbps, 2km
100-2400Mbps, 40km
39
Bigger Pipes!
Sometimes leased from the phone company
Service to ask for
ISDN
T1
T3
STS-1
STS-3
STS-12
STS-24
STS-48
Bandwidth you get
64 Kbps
1.544 Mbps
44.736 Mbps
51.840 Mbps
155.250 Mbps
622.080 Mbps
1.244160 Gbps
2.488320 Gbps
STS: Synchronous Transport Signal
40
Delay in packet-switched
networks
packets experience delay
on end-to-end path
 four sources of delay
at each hop
 nodal processing:
 check bit errors
 determine output link
 queueing
 time waiting at output
link for transmission
 depends on congestion
level of router
transmission
A
propagation
B
nodal
processing
queueing
41
Delay in packet-switched
networks
Transmission delay:
 R=link bandwidth (bps)
 L=packet length (bits)
 time to send bits into
link = L/R
Note: s and R are very
different quantitites!
transmission
A
Propagation delay:
 d = length of physical link
 s = propagation speed in
medium (~2x108 m/sec)
 propagation delay = d/s
propagation
B
nodal
processing
queueing
42
Performance
Bandwidth (throughput)
 Amount of data that can be transmitted per
time unit
 Example: 10Mbps
 link versus end-to-end
 Notation
 KB = 210 bytes
 Mbps = 106 bits per second
43
Performance
 Bandwidth related to “bit width”
a)
1 second
b)
1 second
44
Latency (delay)
 Time it takes to send message from point
A to point B
 Example: 24 milliseconds (ms)
 Sometimes interested in in round-trip time
(RTT)
 Components of latency
Latency = Propagation + Transmit + Queue + Proc.
Propagation = Distance / SpeedOfLight
Transmit = Size / Bandwidth
45
Transmission and Propagation
Delays
 Propagation delay
The propagation delay over a link is the time it
takes a bit to travel from on end of the link to
the other
 = d/s

 Transmission delay
 It is the amount of time it takes to push the
packet onto the link
 =L/B
 Total latency over the link

= transmission delay + propagation delay
46
Bandwidth v.s. Latency
 Consider a standard 6250 bpi magnetic
tape that holds 180 Megabytes. A station
wagon can easily transport 200 tapes.
Suppose the source and destination are an
hour’s drive apart.
 Calculate the effective throughput:
288000 megabits in 3600 seconds
 or 80 Mbps

 What is the moral of this story ?
47
Bandwidth v.s. Latency
 Never underestimate the bandwidth of a
station wagon full of tapes pacing down the
highway.
 But … What happens to the latency?
48
The “hard” limit
 Speed of light
 3.0 x 108 meters/second in a vacuum
 2.3 x 108 meters/second in a cable
 2.0 x 108 meters/second in a fiber
 Notes
 no queuing delays in direct link
 bandwidth not relevant if Size = 1 bit
 process-to-process latency includes software
overhead
 software overhead can dominate when Distance
is small
49
 Relative importance of bandwidth and
latency
small message (e.g., 1 byte): 1ms vs. 100ms
dominates 1Mbps vs. 100Mbps
 large message (e.g., 25 MB): 1Mbps vs. 100Mbps
dominates 1ms vs. 100ms

 Consider two channels of 1Mbps and 100
Mbps respectively. For a 1 byte message,
the available bandwidth is relatively
insignificant given a RTT of 1 ms. The
transmit delay for each channel is 8 s and
0.08 s, respectively.
50
 Delay x Bandwidth Product
Delay
Bandwidth
e.g., 100ms RTT and 45Mbps Bandwidth = 560KB of
data
 We have to view the network as a buffer.
This may have interesting consequences:

How much data did the sender transmit before a
response can be received?
51
 Application Needs
 bandwidth requirements: burst versus peak rate
 jitter: variance in latency (inter-packet gap)
 Average Bandwidth Requirement is Not
enough:

consider a source with an avg. BW-requirement
of 2Mbps. If the application generates 1 Mbit in
one second interval and 3Mbit in a second, a
channel that can support 2 Mbps max. will have a
tough time.
 Other Quality of Service (QOS)
Parameters:
max. and min. delay
 max. and min. bandwidth demand
 rates for dynamic increase of demands
 Cell-Loss Rate

52
Queueing delay (revisited)
 R=link bandwidth (bps)
 L=packet length (bits)
 a=average packet
arrival rate
traffic intensity = La/R
La/R ~ 0: average queueing delay small
La/R -> 1: delays become large
La/R > 1: more “work” arriving than can be serviced,
average delay infinite!
53
What Goes Wrong in the
Network?
 Different types of Error:
 Bit-level errors (electrical interference)
• 1 in 106-107 in copper - 1 in 1012 - 1014 in fiber
Packet-level errors (congestion)
 Link and node failures

 How should we deal with these types of
error?
 What are the consequences of errors?
54
Other types of problems in the
Network?
 Messages are delayed
 Messages are deliver out-of-order
 Third parties eavesdrop
The key problem is to fill in the gap between
what applications expect and what the
underlying technology provides.
55
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?
56
Organization of air travel
ticket (purchase)
ticket (complain)
baggage (check)
baggage (claim)
gates (load)
gates (unload)
runway takeoff
runway landing
airplane routing
airplane routing
airplane routing
 a series of steps
57
Organization of air travel: a different view
ticket (purchase)
ticket (complain)
baggage (check)
baggage (claim)
gates (load)
gates (unload)
runway takeoff
runway landing
airplane routing
airplane routing
airplane routing
Layers: each layer implements a service
 via its own internal-layer actions
 relying on services provided by layer below
58
Layered air travel: services
Counter-to-counter delivery of person+bags
baggage-claim-to-baggage-claim delivery
people transfer: loading gate to arrival gate
runway-to-runway delivery of plane
airplane routing from source to destination
59
ticket (purchase)
ticket (complain)
baggage (check)
baggage (claim)
gates (load)
gates (unload)
runway takeoff
runway landing
airplane routing
airplane routing
arriving airport
Departing airport
Distributed implementation of layer functionality
intermediate air traffic sites
airplane routing
airplane routing
airplane routing
60
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?
61
Internet protocol stack
 application: supporting network
applications

ftp, smtp, http
application
 transport: host-host data transfer
 tcp, udp
transport
 network: routing of datagrams from
network
source to destination

ip, routing protocols
 link: data transfer between
neighboring network elements

link
physical
ppp, ethernet
 physical: bits “on the wire”
62
Layering: logical communication
Each layer:
 distributed
 “entities”
implement
layer functions
at each node
 entities
perform
actions,
exchange
messages with
peers
application
transport
network
link
physical
application
transport
network
link
physical
network
link
physical
application
transport
network
link
physical
application
transport
network
link
physical
63
Layering: logical communication
E.g.: transport
 take data from app
 add addressing,
reliability check
info to form
“datagram”
 send datagram to
peer
 wait for peer to
ack receipt
 analogy: post
office
data
application
transport
transport
network
link
physical
application
transport
network
link
physical
ack
data
network
link
physical
application
transport
network
link
physical
data
application
transport
transport
network
link
physical
64
Layering: physical communication
data
application
transport
network
link
physical
application
transport
network
link
physical
network
link
physical
application
transport
network
link
physical
data
application
transport
network
link
physical
65
Protocol layering and data
Each layer takes data from above
 adds header information to create new data unit
 passes new data unit to layer below
source
M
Ht M
Hn Ht M
Hl Hn Ht M
application
transport
network
link
physical
destination
application
Ht
transport
Hn Ht
network
Hl Hn Ht
link
physical
M
message
M
segment
M
M
datagram
frame
66
Protocol Data Units
 The combination of data from the next
higher layer and control information is
referred to as PDU.

Control Information in the Transport Layer may
include:
• Destination Service Access Point (DSAP)
• Sequence number
• Error-detection code
67
Internet structure: network of networks
 roughly hierarchical
 national/international
local
ISP
backbone providers (NBPs)


e.g. BBN/GTE, Sprint,
AT&T, IBM, UUNet
interconnect (peer) with
each other privately, or at
public Network Access Point
(NAPs) (or switching
centers)
 regional ISPs
 connect into NBPs
 local ISP, company
 connect into regional ISPs
regional ISP
NBP B
NAP
NAP
NBP A
regional ISP
local
ISP
68
National Backbone Provider
e.g. BBN/GTE US backbone network
69
Internet History
1961-1972: Early packet-switching principles
 1961: Kleinrock - queueing
theory shows
effectiveness of packetswitching
 1964: Baran - packetswitching in military nets
 1967: ARPAnet conceived
by Advanced Reearch
Projects Agency
 1969: first ARPAnet node
operational
 1972:




ARPAnet demonstrated
publicly
NCP (Network Control
Protocol) first hosthost protocol
first e-mail program
ARPAnet has 15 nodes
70
Internet History
1972-1980: Internetworking, new and proprietary nets
 1970: ALOHAnet satellite





network in Hawaii
1973: Metcalfe’s PhD thesis
proposes Ethernet
1974: Cerf and Kahn architecture for
interconnecting networks
late70’s: proprietary
architectures: DECnet, SNA,
XNA
late 70’s: switching fixed
length packets (ATM
precursor)
1979: ARPAnet has 200 nodes
Cerf and Kahn’s
internetworking principles:
 minimalism, autonomy no internal changes
required to
interconnect networks
 best effort service
model
 stateless routers
 decentralized control
define today’s Internet
architecture
71
Internet History
1980-1990: new protocols, a proliferation of networks
 1983: deployment of




TCP/IP
1982: smtp e-mail
protocol defined
1983: DNS defined
for name-to-IPaddress translation
1985: ftp protocol
defined
1988: TCP congestion
control
 new national networks:
Csnet, BITnet,
NSFnet, Minitel
 100,000 hosts
connected to
confederation of
networks
72
Internet History
1990’s: commercialization, the WWW
 Early 1990’s: ARPAnet
decomissioned
 1991: NSF lifts restrictions
on commercial use of NSFnet
(decommissioned, 1995)
 early 1990s: WWW
 hypertext [Bush 1945,
Nelson 1960’s]
 HTML, http: Berners-Lee
 1994: Mosaic, later
Netscape
 late 1990’s:
commercialization of the
Late 1990’s:
 est. 50 million
computers on Internet
 est. 100 million+ users
 backbone links runnning
at 1 Gbps
WWW
73
Summary
Covered a “ton” of
material!
 Internet overview
 what’s a protocol?
 network edge, core,




access network
performance: loss, delay
layering and service
models
backbones, NAPs, ISPs
history
You now hopefully have:
 context, overview,
“feel” of networking
 more depth, detail
later in course
74