Chapter 1: Introduction
Our goal:
get feel and
Overview:
whats the Internet? whats a protocol? network edge; hosts, access net,
terminology more depth, detail later in course approach: use Internet as example
physical media network core: packet/circuit switching, Internet structure performance: loss, delay, throughput security protocol layers, service models history
Introduction
1-1
What is the Internet
Meaning? Jargons? Components?
Introduction
1-2
Whats the Internet: nuts and bolts view
PC server
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)
millions of connected
Mobile network Global ISP
Home network Regional ISP
Institutional network
Introduction
1-3
Whats the Internet: nuts and bolts view
protocols control sending, receiving of msgs
Mobile network Global ISP
e.g., TCP, IP, HTTP, Skype, Ethernet
Internet: network of networks
Home network Regional ISP
loosely hierarchical public Internet versus private intranet
Institutional network
Internet standards RFC: Request for comments IETF: Internet Engineering Task Force
Introduction 1-4
Whats 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
Introduction 1-5
Whats a protocol?
human protocols: whats 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-6
Whats a protocol?
a human protocol and a computer network protocol:
Hi Hi
Got the time?
TCP connection request TCP connection response
Get http://www.awl.com/kurose-ross
2:00 time Q: Other human protocols?
<file>
Introduction
1-7
A closer look at network structure:
network edge:
applications and hosts access networks, physical media: wired, wireless communication links
network core: interconnected routers network of networks
Introduction
1-8
The network edge:
end systems (hosts):
client/server model
run application programs e.g. Web, email at edge of network
peer-peer
peer-peer model
client host requests, receives service from always-on server client/server e.g. Web browser/server; email client/server minimal (or no) use of dedicated servers e.g. Skype, BitTorrent
Introduction 1-9
Network edge: reliable data transfer service
Goal: data transfer
between end systems handshaking: setup (prepare for) data transfer ahead of time
TCP service [RFC 793]
reliable, in-order bytestream data transfer
Hello, hello back human protocol set up state in two communicating hosts
loss: acknowledgements and retransmissions sender wont overwhelm receiver senders slow down sending rate when network congested
Introduction 1-10
flow control:
TCP - Transmission
Control Protocol
congestion control:
Internets reliable data transfer service
Network edge: best effort (unreliable) data transfer service
Goal: data transfer
between end systems
same as before!
Apps using TCP:
HTTP (Web), FTP (file
UDP - User Datagram
Protocol [RFC 768]: connectionless unreliable data transfer no flow control no congestion control
transfer), Telnet (remote login), SMTP (email)
Apps using UDP:
streaming media,
teleconferencing, DNS, Internet telephony
Introduction 1-11
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?
Introduction 1-12
Residential access: point to point access
Dialup via modem
up to 56Kbps direct access to router (often less) Cant surf and phone at same time: cant be always on
DSL: digital subscriber line
deployment: telephone company (typically) up to 1 Mbps upstream (today typically < 256 kbps) up to 8 Mbps downstream (today typically < 1 Mbps) dedicated physical line to telephone central office
Introduction 1-13
Residential access: cable modems
HFC: hybrid fiber coax
asymmetric: up to 30Mbps downstream, 2 Mbps upstream network of cable and fiber attaches homes to ISP router homes share access to router deployment: available via cable TV companies
Introduction
1-14
Residential access: cable modems
Diagram: http://www.cabledatacomnews.com/cmic/diagram.html
Introduction
1-15
Cable Network Architecture: Overview
Typically 500 to 5,000 homes
cable headend cable distribution network (simplified) home
Introduction
1-16
Cable Network Architecture: Overview
server(s)
cable headend cable distribution network home
Introduction
1-17
Cable Network Architecture: Overview
cable headend cable distribution network (simplified) home
Introduction
1-18
Cable Network Architecture: Overview
FDM (more shortly):
V I D E O 1 V I D E O 2 V I D E O 3 V I D E O 4 V I D E O 5 V I D E O 6 D A T A 7 D A T A 8 C O N T R O L 9
Channels
cable headend cable distribution network home
Introduction
1-19
Company access: local area networks
company/univ local area
network (LAN) connects end system to edge router Ethernet: 10 Mbs, 100Mbps, 1Gbps, 10Gbps Ethernet modern configuration: end systems connect into Ethernet switch LANs: chapter 5
Introduction
1-20
Wireless access networks
shared
wireless access network connects end system to router
via base station aka access point
router base station
wireless LANs: 802.11b/g (WiFi): 11 or 54 Mbps wider-area wireless access
provided by telco operator ~1Mbps over cellular system (EVDO, HSDPA) next up (?): WiMAX (10s Mbps) over wide area
mobile hosts
Introduction
1-21
Home networks
Typical home network components: DSL or cable modem router/firewall/NAT Ethernet wireless access point
to/from cable headend cable modem router/ firewall Ethernet wireless laptops wireless access point
Introduction 1-22
Physical Media
Bit: propagates between
transmitter/rcvr pairs physical link: what lies between transmitter & receiver guided media:
Twisted Pair (TP) two insulated copper wires
signals propagate in solid media: copper, fiber, coax
Category 3: traditional phone wires, 10 Mbps Ethernet Category 5: 100Mbps Ethernet
unguided media: signals propagate freely, e.g., radio
Introduction
1-23
Physical Media: coax, fiber
Coaxial cable:
conductors bidirectional baseband:
Fiber optic cable:
glass fiber carrying light
two concentric copper
pulses, each pulse a bit high-speed operation:
broadband: multiple channels on cable HFC
single channel on cable legacy Ethernet
high-speed point-to-point transmission (e.g., 10s100s Gps)
low error rate: repeaters
spaced far apart ; immune to electromagnetic noise
Introduction
1-24
Physical media: radio
signal carried in
Radio link types:
terrestrial microwave e.g. up to 45 Mbps channels LAN (e.g., Wifi)
electromagnetic spectrum no physical wire bidirectional propagation environment effects:
11Mbps, 54 Mbps
reflection obstruction by objects interference
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
Introduction 1-25
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
Introduction 1-26
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
Introduction
1-27
Network Core: Circuit Switching
network resources (e.g., bandwidth) divided into pieces
pieces allocated to calls resource piece dividing link bandwidth
idle if not used by owning call (no sharing)
into pieces frequency division time division
Introduction
1-28
Circuit Switching: FDM and TDM
FDM frequency time TDM Example: 4 users
frequency time
Introduction
1-29
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
Lets work it out!
Introduction
1-30
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
Introduction
1-31
Packet Switching: Statistical Multiplexing
A B
100 Mb/s Ethernet
statistical multiplexing
1.5 Mb/s
queue of packets waiting for output link
Sequence of A & B packets does not have fixed pattern, bandwidth shared on demand statistical multiplexing. TDM: each host gets same slot in revolving TDM frame.
Introduction 1-32
Packet-switching: store-and-forward
L R R R
takes L/R seconds to
transmit (push out) packet of L bits on to link at R bps store and forward: entire packet must arrive at router before it can be transmitted on next link delay = 3L/R (assuming zero propagation delay)
Example: L = 7.5 Mbits R = 1.5 Mbps transmission delay = 15 sec
more on delay shortly
Introduction 1-33
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:
N users 1 Mbps link
10 users with 35 users, probability > 10 active at same time is less than .0004
Packet switching:
Q: how did we get value 0.0004?
Introduction
1-34
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)?
Introduction 1-35
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
Tier-1 providers interconnect (peer) privately
Tier 1 ISP Tier 1 ISP
Tier 1 ISP
Introduction
1-36
Tier-1 ISP: e.g., Sprint
POP: point-of-presence
to/from backbone
peering
to/from customers
Introduction
1-37
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-2 ISP pays tier-1 ISP for connectivity to rest of Internet tier-2 ISP is customer of tier-1 provider
Tier-2 ISP
Tier-2 ISP
Tier 1 ISP Tier 1 ISP
Tier-2 ISP
Tier-2 ISPs also peer privately with each other.
Tier 1 ISP
Tier-2 ISP
Tier-2 ISP
Introduction
1-38
Internet structure: network of networks
Tier-3 ISPs and local ISPs last hop (access) network (closest to end systems)
local ISP Local and tier3 ISPs are customers of higher tier ISPs connecting them to rest of Internet
Tier 3 ISP Tier-2 ISP
local ISP
local ISP Tier-2 ISP
local ISP
Tier 1 ISP Tier 1 ISP
Tier-2 ISP local ISP
Tier 1 ISP
Tier-2 ISP local ISP
Introduction 1-39
Tier-2 ISP local local ISP ISP
Internet structure: network of networks
a packet passes through many networks!
local ISP
Tier 3 ISP Tier-2 ISP
local ISP
local ISP Tier-2 ISP
local ISP
Tier 1 ISP Tier 1 ISP
Tier-2 ISP local ISP
Tier 1 ISP
Tier-2 ISP local local ISP ISP
Tier-2 ISP local ISP
Introduction 1-40
How do loss and delay occur?
packets queue in router buffers
packet arrival rate to link exceeds output link
capacity packets queue, wait for turn
packet being transmitted (delay)
A B
packets queueing (delay) free (available) buffers: arriving packets dropped (loss) if no free buffers
Introduction
1-41
Four sources of packet delay
1. nodal processing: check bit errors determine output link 2. queueing time waiting at output link for transmission depends on congestion level of router
A B
transmission propagation
nodal processing
queueing
Introduction 1-42
Delay in packet-switched networks
3. Transmission delay: R=link bandwidth (bps) L=packet length (bits) time to send bits into link = L/R 4. Propagation delay: d = length of physical link s = propagation speed in medium (~2x108 m/sec) propagation delay = d/s Note: s and R are very different quantities!
propagation
A B
transmission
nodal processing
queueing
Introduction
1-43
Caravan analogy
100 km ten-car caravan toll booth toll booth
Time to push entire
100 km
cars propagate at
100 km/hr toll booth takes 12 sec to service car (transmission time) car~bit; caravan ~ packet Q: How long until caravan is lined up before 2nd toll booth?
caravan through toll booth onto highway = 12*10 = 120 sec Time for last car to propagate from 1st to 2nd toll both: 100km/ (100km/hr)= 1 hr A: 62 minutes
Introduction 1-44
Caravan analogy (more)
100 km ten-car caravan toll booth toll booth
Yes! After 7 min, 1st car at
100 km
Cars now propagate at
1000 km/hr Toll booth now takes 1 min to service a car Q: Will cars arrive to 2nd booth before all cars serviced at 1st booth?
2nd booth and 3 cars still at 1st booth. 1st bit of packet can arrive at 2nd router before packet is fully transmitted at 1st router!
See Ethernet applet at AWL Web site
Introduction 1-45
Nodal delay
d nodal = d proc + d queue + d trans + d prop
dproc = processing delay
typically a few microsecs or less depends on congestion = L/R, significant for low-speed links a few microsecs to hundreds of msecs
Introduction 1-46
dqueue = queuing delay
dtrans = transmission delay
dprop = propagation delay
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-47
Real Internet delays and routes
What do real Internet delay & loss look like? traceroute : 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-48
Real Internet delays and routes
traceroute: gaia.cs.umass.edu to www.eurecom.fr
Three delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu
1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 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 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms trans-oceanic 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms link 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * * means no response (probe lost, router not replying) 18 * * * 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms
Introduction 1-49
Packet loss
queue (aka buffer) preceding link in buffer has
finite capacity packet arriving to full queue dropped (aka lost) lost packet may be retransmitted by previous node, by source end system, or not at all
A B
buffer (waiting area) packet being transmitted
packet arriving to full buffer is lost
Introduction 1-50
Throughput
throughput: rate (bits/time unit) at which
bits transferred between sender/receiver
instantaneous: rate at given point in time average: rate over long(er) period of time
link capacity server, with server sends bits pipe that can carry fluid at rate file into pipe (fluid) of F bits Rs bits/sec to send to client Rs bits/sec)
link capacity pipe that can carry Rfluid at rate c bits/sec Rc bits/sec)
Introduction
1-51
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
bottleneck link
link on end-end path that constrains end-end throughput
Introduction 1-52
Throughput: Internet scenario
per-connection
Rs Rs R Rc Rc Rc Rs
end-end throughput: min(Rc,Rs,R/10)
in practice: Rc or Rs
is often bottleneck
10 connections (fairly) share backbone bottleneck link R bits/sec
Introduction 1-53
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?
Introduction
1-54
Organization of air travel
ticket (purchase) baggage (check) gates (load) runway takeoff airplane routing ticket (complain) baggage (claim) gates (unload) runway landing airplane routing airplane routing
a series of steps
Introduction 1-55
Layering of airline functionality
ticket (purchase) baggage (check) gates (load) runway (takeoff) airplane routing
departure airport
ticket (complain) baggage (claim gates (unload) runway (land) airplane routing airplane routing airplane routing
arrival airport
ticket baggage gate takeoff/landing airplane routing
intermediate air-traffic control centers
Layers: each layer implements a service via its own internal-layer actions relying on services provided by layer below
Introduction
1-56
Why layering?
Dealing with complex systems:
explicit structure allows identification,
relationship of complex systems pieces layered reference model for discussion modularization eases maintenance, updating of system change of implementation of layers service transparent to rest of system e.g., change in gate procedure doesnt affect rest of system layering considered harmful?
Introduction 1-57
Internet protocol stack
application: supporting network applications FTP, SMTP, HTTP transport: process-process data transfer TCP, UDP network: routing of datagrams from source
application transport network link physical
to destination
IP, routing protocols
link: data transfer between neighboring
network elements
PPP, Ethernet
physical: bits on the wire
Introduction
1-58
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
Introduction
1-59
source
message segment Ht datagram Hn Ht frame Hl Hn Ht
M M M M
application transport network link physical
Encapsulation
link physical switch
destination
M Ht Hn Ht Hl Hn Ht M M M
Hn Ht Hl Hn Ht
M M
application transport network link physical
network link physical
Hn Ht
router
Introduction
1-60
Network Security
attacks on Internet infrastructure:
infecting/attacking hosts: malware, spyware, worms, unauthorized access (data stealing, user accounts) denial of service: deny access to resources (servers, link bandwidth)
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-61
What can bad guys do: malware?
Spyware: Worm: infection by downloading infection by passively web page with spyware receiving object that gets records keystrokes, web itself executed sites visited, upload info self- replicating: propagates to collection site to other hosts, users Virus Sapphire Worm: aggregate scans/sec
infection by receiving object (e.g., e-mail attachment), actively executing self-replicating: propagate itself to other hosts, users
in first 5 minutes of outbreak (CAIDA, UWisc data)
Introduction
1-62
Denial of service attacks
attackers make resources (server, bandwidth)
unavailable to legitimate traffic by overwhelming resource with bogus traffic
1.
select target
2. break into hosts
around the network (see malware) 3. send packets toward target from compromised hosts
target
Introduction
1-63
Sniff, modify, delete your packets
Packet sniffing:
broadcast media (shared Ethernet, wireless) promiscuous network interface reads/records all packets (e.g., including passwords!) passing by
src:B dest:A
payload
Wireshark software used for end-of-chapter labs is a (free) packet-sniffer more on modification, deletion later Introduction
1-64
Masquerade as you
IP
spoofing: send packet with false source address
A
src:B dest:A payload
Introduction
1-65
Masquerade as you
IP
spoofing: send packet with false source address record-and-playback: sniff sensitive info (e.g., password), and use later
password holder is that user from system point of view
src:B dest:A
user: B; password: foo
B
Introduction 1-66
Masquerade as you
IP
spoofing: send packet with false source address record-and-playback: sniff sensitive info (e.g., password), and use later
password holder is that user from system point of view
later ..
A
src:B dest:A
user: B; password: foo
B
Introduction 1-67
Network Security
more throughout this course chapter 8: focus on security crypographic techniques: obvious uses and
not so obvious uses
Introduction
1-68
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 Research Projects Agency 1969: first ARPAnet node operational
1972:
ARPAnet public demonstration NCP (Network Control Protocol) first host-host protocol first e-mail program ARPAnet has 15 nodes
Introduction
1-69
Internet History
1972-1980: Internetworking, new and proprietary nets
1970: ALOHAnet satellite
network in Hawaii 1974: Cerf and Kahn architecture for interconnecting networks 1976: Ethernet at Xerox PARC late70s: proprietary architectures: DECnet, SNA, XNA late 70s: switching fixed length packets (ATM precursor) 1979: ARPAnet has 200 nodes
Cerf and Kahns internetworking principles: minimalism, autonomy - no internal changes required to interconnect networks best effort service model stateless routers decentralized control define todays Internet architecture
Introduction
1-70
Internet History
1980-1990: new protocols, a proliferation of networks
1983: deployment of new national networks:
TCP/IP 1982: smtp e-mail protocol defined 1983: DNS defined for name-to-IPaddress translation 1985: ftp protocol defined 1988: TCP congestion control
Csnet, BITnet, NSFnet, Minitel 100,000 hosts connected to confederation of networks
Introduction
1-71
Internet History
1990, 2000s: commercialization, the Web, new apps
Early 1990s: ARPAnet
decommissioned 1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995) early 1990s: Web hypertext [Bush 1945, Nelson 1960s] HTML, HTTP: Berners-Lee 1994: Mosaic, later Netscape late 1990s: commercialization of
the Web
Late 1990s 2000s:
more killer apps: instant
messaging, P2P file sharing network security to forefront est. 50 million host, 100 million+ users backbone links running at Gbps
Introduction
1-72
Internet History
2007: ~500 million hosts Voice, Video over IP P2P applications: BitTorrent (file sharing) Skype (VoIP), PPLive (video) more applications: YouTube, gaming wireless, mobility
Introduction
1-73
Introduction: Summary
Covered a ton of material! Internet overview whats a protocol? network edge, core, access network packet-switching versus circuit-switching Internet structure performance: loss, delay, throughput layering, service models security history You now have: context, overview, feel of networking more depth, detail to follow!
Introduction
1-74