Introduction 1-1 Chapter 1 Computer Networks and the Internet Textbook: Computer Networking: A Top...
-
Upload
gyles-atkinson -
Category
Documents
-
view
219 -
download
0
Transcript of Introduction 1-1 Chapter 1 Computer Networks and the Internet Textbook: Computer Networking: A Top...
Introduction 1-1
Chapter 1Computer Networksand the Internet
Textbook: Computer Networking: A Top Down Approach ,5th edition. Jim Kurose, Keith RossAddison-Wesley, April 2009.
http://www.aw-bc.com/kurose-ross
These slides are adapted from the slides that accompany the textbook
Introduction 1-2
Chapter 1: IntroductionOur 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 & access network core performance: loss, delay,
throughput, capacity protocol layers, service
models security
Introduction 1-3
Chapter 1: roadmap
1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Delay & loss in packet-switched
networks1.5 Protocol layers, service models1.6 Security1.7 History
Introduction 1-4
What’s the Internet: “nuts and bolts” view
millions of connected computing devices: hosts, end-systems PCs workstations, servers PDAs phones, toasters
running network apps communication links
fiber, copper, radio, satellite
transmission rate = bandwidth
routers: forward packets (chunks of data)
local ISP
companynetwork
regional ISP
router workstation
servermobile
Introduction 1-5
What’s the Internet: “nuts and bolts” view protocols control sending,
receiving of msgs e.g., TCP, IP, HTTP, FTP,
PPP
Internet standards RFC: Request for comments IETF: Internet Engineering
Task Force
Internet: “network of networks” loosely hierarchical public Internet versus
private intranet
local ISP
companynetwork
regional ISP
router workstation
servermobile
Introduction 1-6
Internet structure: network of networks
roughly hierarchical at center: “tier-1” ISPs (e.g., Verizon, Sprint, AT&T,
Cable and Wireless), national/international coverage treat each other as equals (peering points)
Tier 1 ISP
Tier 1 ISP
Tier 1 ISP
Tier-1 providers interconnect (peer) privately
Introduction 1-7
Internet structure: network of networks
“Tier-2” ISPs: smaller (often regional) ISPs Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs
Tier 1 ISP
Tier 1 ISP
Tier 1 ISP
Tier-2 ISPTier-2 ISP
Tier-2 ISP Tier-2 ISP
Tier-2 ISP
Tier-2 ISP pays tier-1 ISP for connectivity to rest of Internet tier-2 ISP is customer oftier-1 provider
Tier-2 ISPs also peer privately with each other.
Introduction 1-8
Internet structure: network of networks
“Tier-3” ISPs and local ISPs last hop (“access”) network (closest to end systems)
Tier 1 ISP
Tier 1 ISP
Tier 1 ISP
Tier-2 ISPTier-2 ISP
Tier-2 ISP Tier-2 ISP
Tier-2 ISP
localISPlocal
ISPlocalISP
localISP
localISP Tier 3
ISP
localISP
localISP
localISP
Local and tier- 3 ISPs are customers ofhigher tier ISPsconnecting them to rest of Internet
Introduction 1-9
Tier-1 ISP: e.g., Sprint
…
to/from customers
peering
to/from backbone
….
………
POP: point-of-presence
POPs reside in buildings like this London IXP
10
Internet Core Routers Look Like These
11
Router on“paper”
Introduction 1-12
A closer look at network structure: network edge:
applications and hosts network core:
routers network of networks
access networks, physical media: communication links
Introduction 1-13
What’s the Internet: a service view communication infrastructure
enables distributed applications: Web, email, games, e-commerce,
database., voting, file (MP3) sharing
communication services provided to apps: connectionless connection-oriented
services provided by protocols running on hosts and routers.
Introduction 1-14
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
Introduction 1-15
What’s a protocol?a human protocol and a computer network protocol:
Q: Other human protocols?
Hi
Hi
Got thetime?
2:00
TCP connection req
TCP connectionresponseGet http://www.awl.com/kurose-ross
<file>time
Introduction 1-16
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
2: Application Layer 17
Why stack or layering?
Dealing with complex systems (e.g., big c/c++ program)
Need structured, modular design for easy maintenance (layers = *.c files)
Layer n uses the services provided by layer n-1 (e.g., error/flow control, connection set up)
Interface between two layers, e.g., Application Programmer’s Interface (API) or sockets
Logical connection between two layer n entities (peers)
layering harmful (can’t do global/customized optimization) ?
Introduction 1-18
sourceapplicatio
ntransportnetwork
linkphysical
HtHn M
segment Ht
datagram
destination
application
transportnetwork
linkphysical
HtHnHl M
HtHn M
Ht M
M
networklink
physical
linkphysical
HtHnHl M
HtHn M
HtHn M
HtHnHl M
router
switch
encapsulation at each layermessage M
Ht M
Hn
frame
2: Application Layer 19
An analogy (Fig.1-10 of Tanenbaum)
The Edge
20
end systems (hosts): run application programs e.g. Web, email at “edge of network”
client/server
peer-peer client/server model client host requests,
receives service from always-on server
e.g. Web browser/server; email client/server peer-peer model:
minimal (or no) use of dedicated servers
e.g. Skype, BitTorrent
Introduction 1-21
Network edge: connection-oriented service
Goal: data transfer between end systems
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 connection-
oriented 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
Introduction 1-22
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 (Web), FTP (file
transfer), Telnet (remote login), SMTP (email)
App’s using UDP: streaming media,
teleconferencing, DNS, Internet telephony
2: Application Layer 23
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
2: Application Layer 24
Wireless access networks wireless LANs:o 802.11b (2.4GHz): 11 Mbps; o 802.11a (5GHz), 802.11g (2.4GHz): 54Mps o 802.11n (2.4 or 5GHz): up to 600Mps
(40Mhz channel and MIMO)
Personal Area Networks (PANs)o Bluetooth: upto 1 Mbps within ~ 10m
access point
router
Wide-area Cellular Accesso 2G (GSM, TDMA, CDMA, iDEN) 10-20kpbs (circuit-switched)o 2.5G system (GPRS, 1xRTT, EDGE ) 30-50kbps ( up to
114kbps)o 3G (UMTS, W-CDMA) 300 – 500kbps, (up to a few Mbps)
o 1xEvolutional Data Only (EV-DO) 2.4M/700K)o 1XEV – DV (Data and Voice) (3.1M/1.5M) and HSPDA
o 4G: LTE (and LTE-Advanced) by 3GPP, TD-LTE in China, and WiMax (by IEEE 802.16): about 100Mbps down and 50Mbps up.
2: Application Layer 25
Home networks
Typical home network components: cable (or DSL) modem router/firewall/NAT Ethernet wireless access point
DD-WRT, Tomato…
wirelessaccess point
wirelesslaptops
router/firewall
cablemodem
to/fromcable
headend
Ethernet(switched)
Introduction 1-26
The Network Core
mesh of interconnected routers (wide area networks or WANs)
the fundamental question: how is data transferred through net? circuit switching (CS)
dedicated circuit per call: e.g. telephone net
packet-switching (PS) data sent thru net in discrete “chunks” called “packets”
Introduction 1-27
Network Core: Circuit Switching
End-end resources reserved for “call”
call setup required link bandwidth, switch
capacity dedicated resources to
each call: no sharing multiple calls can be
multiplexed onto a link guaranteed
performance
Introduction 1-28
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 (dedicated, no sharing)
not bandwidth efficient if data is sporadic (or bursty with a variable bit rate)
dividing link bandwidth into “pieces” (for call grooming, aggregating or multiplexing) frequency division (wavelength division)
• f x C (speed of light) time division code division (e.g.,
wireless/cellular) space division (with a
multi-fiber link)
Introduction 1-29
Circuit Switching: TDMA and TDMA
FDMA
frequency
time
TDMA
frequency
time
4 users
Example:
Introduction 1-30
Electromagnetic Spectrum
Introduction 1-31
Network Core: Packet Switching
each end-end data stream divided into packets
user A & B’s packets share network resources
each packet uses full link bandwidth
resources used as needed
each packet has a “header” (containing e.g., destination address) in addition to “payload” (data)
Store and Forward (requires buffer and introduces delay)
Statistical multiplexing (support an aggregate demand that exceeds link bandwidth)
Bandwidth division into “pieces”
Dedicated allocationResource reservation
Introduction 1-32
Packet-switching: store-and-forward
entire packet must arrive at router before it can be transmitted on next link: store and forward
must have a large enough buffer
incurs transmission delay per hop
alternative: cut-through switching as in CS
Example: transmit (push out) a
packet of L bits on to link of R bps
L = 7.5 Mbits R = 1.5 Mbps Transmission delay
per hop = L/R = 5 sec Total transmission
delay (3 hops) = 15 sec
R R RL
Introduction 1-33
Four sources of delay (I)
1. Transmission delay: R=link bandwidth
(bps) L=packet length (bits) time to send bits into
link = L/R
2. Propagation delay: d = length of physical
link c = propagation speed in
medium (~2x108 m/sec) propagation delay = d/c
A
B
propagation
transmission
nodalprocessing queueing
Note: c and R are very different quantities!
Introduction 1-34
Four sources of delay (II)
3. nodal processing: check bit errors determine output link
(based on e.g., the destination address)
A
B
propagation
transmission
nodalprocessing queueing
4. queueing time waiting at output
link for transmission (and at input buffer too)
depends on congestion level of router
Introduction 1-35
Nodal delay
dproc = processing delay typically a few microsecs or less
dqueue = queuing delay depends on congestion
dtrans = transmission delay = L/R, significant for low-speed links
dprop = propagation delay a few microsecs to hundreds of msecs
proptransqueueprocnodal ddddd
Introduction 1-36
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!
Introduction 1-37
“Real” Internet delays and routes
What do “real” Internet delay & loss look like? Traceroute program: provides delay
measurement from source to router along end-end Internet path towards destination. For all i: sends three packets that will reach router i on path
towards destination router i will return packets to sender sender times interval between transmission and reply.
3 probes
3 probes
3 probes
Introduction 1-38
“Real” Internet delays and routes
1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms17 * * *18 * * *19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms
traceroute: gaia.cs.umass.edu to www.eurecom.frThree delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu
* means no response (probe lost, router not replying)
trans-oceaniclink
Introduction 1-39
Throughput
throughput: rate (bits/time unit) at which bits transferred between sender/receiver instantaneous: rate at given point in time average: rate over longer period of time
server, withfile of F bits
to send to client
link capacity
Rs bits/sec
link capacity
Rc bits/sec pipe that can carry
fluid at rate
Rs bits/sec)
pipe that can carryfluid at rate
Rc bits/sec)
server sends bits
(fluid) into pipe
Introduction 1-40
Throughput (more)
Rs < Rc What is average end-end throughput?
Rs bits/sec Rc bits/sec
Rs > Rc What is average end-end throughput?
Rs bits/sec Rc bits/sec
link on end-end path that constrains end-end throughput
bottleneck link
Introduction 1-41
Throughput: Internet scenario
10 connections (fairly) share backbone bottleneck link R
bits/sec
Rs
Rs
Rs
Rc
Rc
Rc
R
per-connection end-end throughput: min(Rc,Rs,R/10)
in practice: Rc or Rs is often bottleneck
Introduction 1-42
Packet Switching: Statistical Multiplexing
Sequence of A & B packets does not have fixed pattern statistical (time division) multiplexing.
Unlike in TDM, where each host gets same slot in revolving TDM frame.
A
B
C10 MbsEthernet
1.5 Mbs
D E
statistical multiplexing
queue of packetswaiting for output
link
Introduction 1-43
Packet switching versus circuit switching
1 Mbit link each user:
100 kbps when “active”
active 10% of time
circuit-switching: 10 users
packet switching: with 35 users,
probability > 10 active less than .0004
Packet switching allows more users to use network!
N users
1 Mbps link
Introduction 1-44
Packet switching versus circuit switching
Great for bursty data resource sharing (statistical multiplexing) 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 6)
Is packet switching a “slam dunk winner?”
Introduction 1-45
Message Switching (A mesg = 7.5Mbits) at 1.5Mbps transmission rate
Introduction 1-46
Packet Switching: Message Segmenting
Now break up the message into 5000 packets
Each packet 1,500 bits
1 msec to transmit packet on one link
pipelining: each link works in parallel
Delay reduced from 15 sec to 5.002 sec
Q: the smaller the packets, the better?
Introduction 1-47
Packet-switched networks: forwarding Goal: move packets through routers from source to
destination we’ll study several path selection (i.e. routing) algorithms (ch. 4)
datagram network: destination address in packet determines next hop (according
to the network’s routing algorithm) routes may change during session (out of order delivery) due to
congested/failed links/routers analogy: driving, asking directions at each/every intersection
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
(can be manually chosen for traffic engineering purposes) routers maintain per-call state
Introduction 1-48
VC vs Datagram
With VC, two packets with the same destination can be assigned two different VC# and forced to take different paths.
Introduction 1-49
Network Taxonomy
Telecommunicationnetworks
Circuit-switchednetworks
FDM TDM
Packet-switchednetworks
Networkswith VCs
DatagramNetworks
• One may have a circuit-switched network (e.g. optical WDM) below, over which a packet-switched network runs • Internet provides both connection-oriented (TCP) and connectionless services (UDP) to apps.
Introduction 1-50
Network Security The field of network security is about:
how bad guys can attack computer networks how we can defend networks against attacks how to design architectures that are immune
to attacks Internet not originally designed with
(much) security in mind original vision: “a group of mutually trusting
users attached to a transparent network” Internet protocol designers playing “catch-up
” Security considerations in all layers!
Introduction 1-51
The bad guys can sniff packetsPacket sniffing:
broadcast media (shared Ethernet, wireless) promiscuous network interface reads/records all packets
(e.g., including passwords!) passing by
A
B
C
src:B dest:A payload
Wireshark software used for end-of-chapter labs is a (free) packet-sniffer
Introduction 1-52
The bad guys can use false source addresses IP spoofing: send packet with false source
addressA
B
C
src:B dest:A payload
Introduction 1-53
The bad guys can record and playback
record-and-playback: sniff sensitive info (e.g., password), and use later password holder is that user from system point of
view
A
B
C
src:B dest:A user: B; password: foo
Introduction 1-54
Network Security more throughout this course A chapter focuses on security crypographic techniques: obvious uses
and not so obvious uses