CS 5565 Network Architecture and Protocols Lecture 2 Godmar Back
Announcements Created Lectures Page Created CS5565 Forum on Piazza Use this to find a project partner All projects will be done in groups of up to 2. CS 5565 Spring 2012
Outline for today Internet: Sources of Delay “nuts and bolts” view Service view Network edge view Network core view Types of switching Sources of Delay CS 5565 Spring 2012
The Internet: “nuts and bolts” view local ISP company network regional ISP router workstation server mobile millions of connected computing devices: hosts = end systems running network apps communication links fiber, copper, radio, satellite transmission rate = bandwidth routers: forward packets CS 5565 Spring 2012
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 intranets Internet vs internet Internet standards RFC: Request for comments IETF: Internet Engineering Task Force router workstation server mobile local ISP regional ISP company network CS 5565 Spring 2012
Network Virginia Source: Sean Gillespie CS 5565 Spring 2012
The Internet: a service view communication infrastructure enables distributed applications: Web, email, games, e-commerce, file sharing communication services provided to apps: Connectionless unreliable Connection-oriented reliable CS 5565 Spring 2012
What’s a protocol? a human protocol and a computer network protocol: Hi TCP connection req Hi TCP connection response Got the time? Get http://www.awl.com/kurose-ross 2:00 <file> time CS 5565 Spring 2012
What’s a protocol? human protocols: network 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 CS 5565 Spring 2012
A closer look at network structure: network edge: applications and hosts network core: routers network of networks access networks, physical media: communication links CS 5565 Spring 2012
The network edge: end systems (hosts): client/server model 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 CS 5565 Spring 2012
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 CS 5565 Spring 2012
Connectionless service Goal: data transfer between end systems same as before! UDP - User Datagram Protocol [RFC 768]: connectionless unreliable data transfer no flow control no congestion control TCP-friendliness App’s using TCP: HTTP (Web), ssh (remote login), SMTP (email), Bittorrent (file-sharing), XMPP (instant messenging) App’s using UDP: streaming media, teleconferencing, DNS, Internet telephony CS 5565 Spring 2012
The Network Core 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” How are the network’s resources shared? CS 5565 Spring 2012
Network Core: Circuit Switching End-end resources reserved for “call” (or session) link bandwidth, switch capacity dedicated resources: no sharing circuit-like (guaranteed) performance call setup required CS 5565 Spring 2012
Network Core: Circuit Switching network resources (e.g., link bandwidth) divided into “pieces” pieces allocated to calls resource piece idle if not used by owning call (no sharing) multiplex different calls frequency division multiplexing (FDM) time division multiplexing (TDM) synchronous vs. asynchronous (aka statistical) TDM CS 5565 Spring 2012
Circuit Switching: FDM and TDM 4 users Example: FDM frequency time TDM frequency time Two simple multiple access control techniques. Each mobile’s share of the bandwidth is divided into portions for the uplink and the downlink. Also, possibly, out of band signaling. As we will see, used in AMPS, GSM, IS-54/136 CS 5565 Spring 2012
Computing transmission delay S(ynchronous) TDM Suppose m slots Total bandwidth is R L bit packet takes Lm/R seconds L/R seconds if packet fits into slot (but next packet must wait m-1 slots) FDM Suppose m channels Total bandwidth is R Per channel bandwidth is R/m L bit packet takes Lm/R seconds CS 5565 Spring 2012
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 no dedicated allocation no 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 CS 5565 Spring 2012
Packet Switching: Statistical Multiplexing 10 Mb/s Ethernet C A statistical multiplexing 1.5 Mb/s B queue of packets waiting for output link Note: transmission delay is L/R D E Sequence of A & B packets does not have fixed pattern statistical multiplexing. CS 5565 Spring 2012
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: 10 users packet switching: with 35 users, probability > 10 active less than .0004 N users 1 Mbps link CS 5565 Spring 2012
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 Challenge: How to provide circuit-like behavior where needed? bandwidth guarantees needed for audio/video apps CS 5565 Spring 2012
Circuit vs. Packet Switching (1) Circuit Switching Dedicated link bandwidth Dedicated switch capacity Low link utilization Low overall utilization Packet Switching Better link utilization Better overall utilization Need for congestion control Need to identify to which “call” a packet belongs CS 5565 Spring 2012
Packet-switched networks: forwarding Goal: move packets through routers from source to destination we’ll study several path selection (i.e. routing) algorithms Note distinction between routing & forwarding datagram network: (aka dynamic routing) destination address in packet determines next hop routes may change during session analogy: driving, asking directions virtual circuit network: (aka virtual circuit routing) 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 CS 5565 Spring 2012
Message vs. Packets vs. Cells Entity with some application/protocol defined meaning Packets Chunks of data into which messages are split Can be further decomposed, e.g., into smaller packets or cells (small packets, ATM-cell: 53 bytes) Message Packet Packet Packet CS 5565 Spring 2012
Network Taxonomy Telecommunication networks Circuit-switched FDM TDM Packet-switched Networks with VCs Datagram CS 5565 Spring 2012
Summary Terminology: hosts (end systems), communication links, routers, transmission rates, packets, internet vs. intranet vs. the Internet Protocols: protocols define format, order of messages sent and received among network entities, and actions taken on msg transmission, receipt View from network edge: Client/server, peer2peer, other models Service view Communication infrastructure provide connection-oriented + connectionless service View from network core: Circuit-switching vs packet-switching Datagram network vs. virtual-circuit networks CS 5565 Spring 2012