Web Protocols and Practice Dogan Kesdogan Aachen University of Technology Department of Computer Science IV Communication and Distributed Systems Introduction 1-1 Staff Instructor: Dogan Kesdogan, kesdogan@informatik.rwth-aachen.de 2 hours lecture Office: Aachen Office hours: no hours, please send me an email Hiwi: Adnan Tariq, see i4 web site Adnan.Tariq@rwth-aachen.de 1 hour exercise Note the course web pages at www-i4.informatik.rwth-aachen.de Introduction 1-2 1
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-peer Application servers Content distribution networks Web search Web services, Grid Computing Introduction 1-3 Textbooks Two textbooks: Computer Networking: A Top Down Approach Featuring the Internet, Jim Kurose, Keith Ross Web Protocols and Practice, Balachander Krishnamurthy, Jennifer Rexford Course reader: Excerpts from several books Many recent research papers Introduction 1-4 2
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-5 Prerequisites, Workload, etc. No special Prerequisites Workload: Homework assignments (with solutions) Final exam You can start to experiment with the Internet Introduction 1-6 3
What Exactly Is the Internet? Introduction 1-7 Chapter 1 Computer Networks and the Internet 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-2002 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July 2002. Introduction 1-8 4
Chapter 1: Introduction Our 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 Internet/ISP structure performance: loss, delay protocol layers, service models history Introduction 1-9 Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge 1.3 Network core 1.4 Network access and physical media 1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched networks 1.7 Protocol layers, service models 1.8 History Introduction 1-10 5
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) router local ISP company network server workstation mobile regional ISP Introduction 1-11 What s the Internet: nuts and bolts view protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, FTP, PPP Internet: network of networks loosely hierarchical public Internet versus private intranet Internet standards RFC: Request for comments IETF: Internet Engineering Task Force router local ISP company network server workstation mobile regional ISP Introduction 1-12 6
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 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-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 Introduction 1-14 7
What s a protocol? a human protocol and a computer network protocol: Hi Hi Got the time? 2:00 time TCP connection req TCP connection response Get http://www.awl.com/kurose-ross <file> Some protocols are simple and straightforward, while others are complex and intellectually deep Introduction 1-15 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-16 8
Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge 1.3 Network core 1.4 Network access and physical media 1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched networks 1.7 Protocol layers, service models 1.8 History Introduction 1-17 The network edge: end systems (hosts): run application programs e.g. Web, email at edge of network 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. Gnutella, KaZaA Introduction 1-18 9
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 connectionoriented service TCP service [RFC 793] reliable, in-order bytestream 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-19 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 Introduction 1-20 10
Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge 1.3 Network core 1.4 Network access and physical media 1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched networks 1.7 Protocol layers, service models 1.8 History Introduction 1-21 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-22 11
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-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 Introduction 1-24 12
Circuit Switching: TDMA and TDMA FDMA Example: 4 users frequency TDMA time frequency time Introduction 1-25 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 Introduction 1-26 13
Packet Switching: Statistical Multiplexing A 10 Mbs Ethernet statistical multiplexing C B queue of packets waiting for output link 1.5 Mbs D E Sequence of A & B packets does not have fixed pattern statistical multiplexing. In TDM each host gets same slot in revolving TDM frame. Introduction 1-27 Packet switching versus circuit switching Packet switching allows more users to use network! 1 Mbit link each user: 100 kbps when active active 10% of time N users circuit-switching: 10 users packet switching: with 35 users, probability > 10 active less than.0004 1 Mbps link Introduction 1-28 14
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 Introduction 1-29 Packet-switching: store-and-forward L R R R Takes L/R seconds to transmit (push out) packet of L bits on to link or R bps Entire packet must arrive at router before it can be transmitted on next link: store and forward delay = 3L/R Example: L = 7.5 Mbits R = 1.5 Mbps delay = 15 sec Introduction 1-30 15
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 Introduction 1-31 Packet-switched networks: forwarding Goal: move packets through routers from source to destination we ll study several path selection (i.e. routing) algorithms datagram network: destination address in packet 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 Introduction 1-32 16
Network Taxonomy Telecommunication networks Circuit-switched networks Packet-switched networks FDM TDM Networks with VCs Datagram Networks Datagram network is not either connection-oriented or connectionless. Internet provides both connection-oriented (TCP) and connectionless services (UDP) to apps. Introduction 1-33 17