web protocols and practice - rwth aachen
TRANSCRIPT
1
Introduction 1-1
Web Protocols and Practice
Dogan KesdoganAachen University of TechnologyDepartment of Computer Science IVCommunication and Distributed Systems
Introduction 1-2
Staff
Instructor: Dogan Kesdogan, [email protected]
2 hours lectureOffice: AachenOffice hours: no hours, please send me an email
Hiwi: Adnan Tariq, see i4 web [email protected] hour exercise
Note the course web pages at www-i4.informatik.rwth-aachen.de
2
Introduction 1-3
What Is This Course About?
What are the principles behind the Internet?What are the principles behind Web?How do these relate to many of today’s hot topics?
Web servers, HTML, HTTP, …Peer-to-peerApplication serversContent distribution networksWeb searchWeb services, Grid Computing…
Introduction 1-4
Textbooks
Two textbooks:Computer Networking: A Top Down Approach Featuring the Internet, Jim Kurose, Keith RossWeb Protocols and Practice, BalachanderKrishnamurthy, Jennifer Rexford
Course reader:Excerpts from several booksMany recent research papers
3
Introduction 1-5
Related courses
Multimedia Systems, Spaniol Thißen(V3/Ü1), Prerequisite the lecutre ''Data Communications''. Verteilte Systeme, Thißen, Diepolder, Spaniol, (V2/P3), Prerequisite the lecutre''Data Communications''. Verlässliche Verteilte Systeme 2, Freiling, (V3, Ü1)
Introduction 1-6
Prerequisites, Workload, etc.
No special PrerequisitesWorkload:
Homework assignments (with solutions)Final examYou can start to experiment with the Internet
4
Introduction 1-7
What Exactly Is the Internet?
Introduction 1-8
Chapter 1Computer Networksand the Internet
Computer Networking: A Top Down Approach Featuring the Internet, 2nd edition. Jim Kurose, Keith RossAddison-Wesley, July 2002.
A note on the use of these ppt slides:We’re making these slides freely available to all (faculty, students, readers). They’re in powerpoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following:
If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, we’d like people to use our book!)
If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material.
Thanks and enjoy! JFK/KWR
All material copyright 1996-2002J.F Kurose and K.W. Ross, All Rights Reserved
5
Introduction 1-9
Chapter 1: IntroductionOur goal:
get context, overview, “feel” of networkingmore depth, detail later in courseapproach:
descriptiveuse Internet as example
Overview:what’s the Internetwhat’s a protocol?network edgenetwork coreaccess net, physical mediaInternet/ISP structureperformance: loss, delayprotocol layers, service modelshistory
Introduction 1-10
Chapter 1: roadmap
1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs1.6 Delay & loss in packet-switched networks1.7 Protocol layers, service models1.8 History
6
Introduction 1-11
What’s the Internet: “nuts and bolts” viewmillions of connected computing devices: hosts, end-systems
PCs workstations, serversPDAs phones, toasters
running network appscommunication links
fiber, copper, radio, satellitetransmission rate = bandwidth
routers: forward packets (chunks of data)
local ISP
companynetwork
regional ISP
router workstationserver
mobile
Introduction 1-12
What’s the Internet: “nuts and bolts” view
protocols control sending, receiving of msgs
e.g., TCP, IP, HTTP, FTP, PPPInternet: “network of networks”
loosely hierarchicalpublic Internet versus private intranet
Internet standardsRFC: Request for commentsIETF: Internet Engineering Task Force
local ISP
companynetwork
regional ISP
router workstationserver
mobile
7
Introduction 1-13
What’s the Internet: a service viewcommunication infrastructure enables distributed applications:
Web, email, games, e-commerce, database., voting, file (MP3) sharing
communication services provided to apps:
connectionlessconnection-oriented
The Internet does not provide a service that makes promises about how long it will take to get the service!The Internet is an infrastructure in which new applications are being constantly invented
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 humansall 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
8
Introduction 1-15
What’s a protocol?a human protocol and a computer network protocol:
Some protocols are simple and straightforward, while others are complex and intellectually deep
Hi
HiGot thetime?2:00
TCP connectionreq
TCP connectionresponseGet http://www.awl.com/kurose-ross
<file>time
Introduction 1-16
A closer look at network structure:
network edge:applications and hostsnetwork core:
routersnetwork of networks
access networks, physical media:communication links
9
Introduction 1-17
Chapter 1: roadmap
1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs1.6 Delay & loss in packet-switched networks1.7 Protocol layers, service models1.8 History
Introduction 1-18
The network edge:end systems (hosts):
run application programse.g. Web, emailat “edge of network”
client/server modelclient host requests, receives service from always-on servere.g. Web browser/server; email client/server
peer-peer model:minimal (or no) use of
dedicated serverse.g. Gnutella, KaZaA
10
Introduction 1-19
Network edge: connection-oriented service
Goal: data transfer between end systemshandshaking: setup (prepare for) data transfer ahead of time
Hello, hello back human protocolset 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-20
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 transferno flow controlno 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
11
Introduction 1-21
Chapter 1: roadmap
1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs1.6 Delay & loss in packet-switched networks1.7 Protocol layers, service models1.8 History
Introduction 1-22
The Network Core
mesh of interconnected routersthe fundamental question: how is data transferred through net?
circuit switching:dedicated circuit per call: telephone netpacket-switching: data sent thru net in discrete “chunks”
12
Introduction 1-23
Network Core: Circuit Switching
End-end resources reserved for “call”link bandwidth, switch capacitydedicated resources: no sharingcircuit-like (guaranteed) performancecall setup required
Introduction 1-24
Network Core: Circuit Switchingnetwork resources
(e.g., bandwidth) divided into “pieces”pieces allocated to callsresource piece idle if not used by owning call (no sharing)
dividing link bandwidth into “pieces”
frequency divisiontime division
13
Introduction 1-25
Circuit Switching: TDMA and TDMA
FDMA
frequency
time
TDMA
frequency
time
4 users
Example:
Introduction 1-26
Network Core: Packet Switchingeach end-end data stream
divided into packetsuser A, B packets sharenetwork resourceseach packet uses full link bandwidth resources used as needed
resource contention:aggregate resource demand can exceed amount availablecongestion: packets queue, wait for link usestore and forward: packets move one hop at a time
transmit over linkwait turn at next link
Bandwidth division into “pieces”Dedicated allocationResource reservation
14
Introduction 1-27
Packet Switching: Statistical Multiplexing
Sequence of A & B packets does not have fixed pattern statistical multiplexing.
In TDM 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-28
Packet switching versus circuit switching
1 Mbit linkeach 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 users1 Mbps link
15
Introduction 1-29
Packet switching versus circuit switching
Great for bursty dataresource sharingsimpler, no call setup
Excessive congestion: packet delay and lossprotocols needed for reliable data transfer, congestion control
Q: How to provide circuit-like behavior?bandwidth guarantees needed for audio/video appsstill an unsolved problem
Is packet switching a “slam dunk winner?”
Introduction 1-30
Packet-switching: store-and-forward
Takes L/R seconds to transmit (push out) packet of L bits on to link or R bpsEntire packet must arrive at router before it can be transmitted on next link: store and forwarddelay = 3L/R
Example:L = 7.5 MbitsR = 1.5 Mbpsdelay = 15 sec
R R RL
16
Introduction 1-31
Packet Switching: Message Segmenting
Now break up the message into 5000 packetsEach packet 1,500 bits1 msec to transmit packet on one linkpipelining: each link works in parallelDelay reduced from 15 sec to 5.002 sec
Introduction 1-32
Packet-switched networks: forwarding
Goal: move packets through routers from source to destination
we’ll study several path selection (i.e. routing) algorithmsdatagram network:
destination address in packet determines next hoproutes may change during sessionanalogy: driving, asking directions
virtual circuit network:each packet carries tag (virtual circuit ID), tag determines next hopfixed path determined at call setup time, remains fixed thru callrouters maintain per-call state
17
Introduction 1-33
Network TaxonomyTelecommunication
networks
Circuit-switchednetworks
FDM TDM
Packet-switchednetworks
Networkswith VCs
DatagramNetworks
• Datagram network is not either connection-oriented or connectionless.• Internet provides both connection-oriented (TCP) and connectionless services (UDP) to apps.