Introduction, Rate and Latency
Communication Networks Why communicate? Necessary to support some application. Example Applications Audio communication Radio, Telephone Text communication Email, SMS (text message), IM Video and multimedia Television, videoconferencing, streaming video Information access Web browsing
Application Requirements Each application needs something different from a communications network Two major performance properties: Latency: length of time it takes to transmit and receive a message Rate: amount of data that can be sent per unit of time (aka bandwidth or capacity) Bandwidth Capacity = max(rate)
Application Performance Requirements High Content Application Latency (s) Rate (kbps) Email 60 10 IM / SMS 1 10 itunes Video 10 700 (ipod) Netflix Media 30 3000 (DVD) Telephone 0.1 8 GSM Voice 0.1 12.2 Web Browsing 2 ~ 1000 Different communications networks offer different latencies and rates. Interactivity Amount of Data Interactive
Communication Networks Networks are graphs Edges = communication links Vertices = computers, switches, routers, etc Each vertex has a rate and latency Each edge has a rate and latency
Processing and Queuing Delay Graph vertices responsible for switching traffic across different links Certain overhead (delay) involved in receiving, processing, and retransmitting data Links may be saturated, packets queued C A B A+B>C??? Packets may be buffered, introducing latency
Communication Link Latency Air, fiber optics Data moves at the speed of light (3x10 8 m/s) Copper wires Data moves at 2/3 speed of light (2x10 8 m/s) Distance affects latency Satellite: 35e6 / 3e8 = 120 ms Transcon: 5e6 / 3e8 = 17 ms Cable: 20 / 2e8 = 100 ns 35,000 km 5,000 km
Communication Link Rate Rate measured in bits per second bps = bits per second Bps = bytes per second (8 bps) kbps = kilobits per second (1000 bps) kbps = kilobytes per second (8000 bps) Terminology note: distinct from storage Comms: kb = 10 3 bits = 1000 bits Storage: kb = 2 10 bits = 1024 bits Baud = symbols per second Symbol could contain multiple bits Example: Use 4 different voltages to convey 2 bits at a time
Communication Link Rate Rate affected by various components Frequency with which you send data blocks Number of bits per data block Rate = bits-per-symbol x baud-rate Examples: = bits-per-symbol / symbol-time Copper cable with two voltages changing voltage every 1 ms = 1 Mbps WDM optical system using 16 different colors of light, pulsing every 1 ns = 16 Gbps 256-QAM RF link with symbol time 10 ms = 800 kbps
Bounds on Rate Transmit as fast as possible Problem: Noise Send too much data too quickly, and you can t decode it in the presence of noise 15 10 12 10 8 Too many bits per baud 5 6 4 0 2 0-5 -2-10 -4-6 -15 0 5 10 15 20 25 30 35 40 45 50-8 0 5 10 15 20 25 30 35 40 45 50
Bounds on Rate The faster you transmit, the more error correction necessary Error correction causes overhead, reducing rate Information Theory provides a fundamental bound on communication performance C = capacity = theoretical maximum rate T = symbol time C 1 log 2T 1 2 S = signal power (e.g. measured in watts) N = noise power (e.g. measured in watts) S N
Applications and Networks Real-time applications require real-time network access Satellite performs poorly for phone service High-rate applications need high-rate network access Streaming video requires broadband Internet Mobile phones just now getting fast enough to handle multimedia (i.e. Verizon VCast)
Bandwidth-Delay Product Measure of the number of bits that can be contained by a communications channel Transmission Time Source Destination Propagation Delay Function of Latency Round-Trip Time (RTT) Transmission Time Function of Rate
Bandwidth-Delay Product Bandwidth-Delay product = Latency x Rate seconds x bits/second = bits Number of bits contained within the channel Transmitted but not yet received Pipe interpretation of a link Delay Bandwidth
Circuit vs Packet Switched Original telephone network Wires connecting every source-destination pair Complexity O(n 2 ) Switching required Single line from every customer connects to an operator O(n)
Circuit Switched Networks At time of call establishment, operator physically plugged a jumper cable between two lines to create an electrical connection Fundamental concept behind phone networks For two parties (src, dst) to communicate: Src indicates to the network a desire to establish a connection to dst at rate R Network examines all possible routes between src and dst to determine if a path exists supporting rate R If such a path exists, the network allocates those resources to that connection Still fundamental basis of the modern phone network
Packet Switched Networks Break data into packets Data Stream Rather than allocate resources with granularity of circuits, allocate per-packet Circuit Switched Packet Switched
Circuit vs Packet Circuit switched networks have fixed allocations for guaranteed service If someone isn t fully utilizing their connection, others can t take advantage of the available capacity Example: Nodes A and B are both fairly allocated 1Mbps circuits If node A is not transmitting, B cannot take advantage of available capacity 2 Mbps link 1 Mbps link 2 Mbps link, 1 Mbps allocated A B
Circuit vs Packet Circuit switched networks have static, guaranteed rates Good for fixed-rate, low-latency applications Voice, video Packet switched networks are completely dynamic Good for bursty, dynamic applications Web surfing, Email, etc Hybrid approaches Circuit systems with highly dynamic circuit establishment Packet systems with rate reservation capabilities Quality of Service (QoS)