number of bits sent (or received) per unit time (bits/sec or bps)
Latency (delay): “length” of the link
propagation time for data to travel along the link (seconds)
Capacity
Total bits in link Latency
Link rate: Peak achievable rates in practice
Example of Communication Media
Unshielded Twisted Pair (UTP)
Coaxial cable
Medium used in telephone line Seven categories of increasing quality Data rates from 0.1Mbps (CAT1) to 600Mbps (CAT6) Audio/TV connectors More resilient to external disturbances than UTP but more expensive, short distances Data rates up to hundreds of Mbps
Fiber optic cable
Internet backbones No external disturbance, small and inexpensive Difficult interconnections, limited curvature Data rates up to 10Gbps
Examples of Capacity-Delay
Propagation speed varies on the material, but it is roughly between 0.5 to 0.8 times the speed of light c, i.e., ~ 1.5x108 msec
Same city over UTP:
Capacity~100Mbps Latency~0.1msec (~15Km) Total bits in link ~ 10,000bits ~ 1.25KBytes
Cross-country over fiber optic cable:
Capacity~10Gbps Latency~10msec (~1500Km) Total bits in link ~ 108bits ~ 12.5GBytes
time=0 Time to transmit one bit = 1/106s Time to transmit 800 bits=800x1/106s
1Mbps, 1ms
100Byte packet
B
Time when that bit reaches B = 1/106+1/103s
The last bit reaches B at Time (800x1/106)+1/103s Packet Delay = Packet Delay = Transmission Delay + Propagation =Delay (Packet Size ÷ Link Capacity) + Link Latency 1.8ms
Packet Delay Sending a 100B packet from A to B? 1GB file in 100B packets
A
1Gbps, 1ms? 1Mbps, 1ms
B
100Byte packet
107 x 100B packets
The last bit in the file reaches B at (107x800x1/109)+1/103s = 8001ms
The last bit Time reaches B at (800x1/109)+1/103s = 1.0008ms
The last bit reaches B at (800x1/106)+1/103s = 1.8ms
Packet Delay: The “pipe” view Sending 100B packets from A to B? 1Mbps, 10ms
B pkt tx time
100Byte packet
100Byte packet
Time
100Byte packet
BW
A
time
What if we have more nodes?
One link for every node?
Need a scalable way to interconnect nodes
Solution: A switched network Nodes share network link resources
How is this sharing implemented?
Circuit Switching!
Circuit switching Idea: source reserves network capacity along a path
A
10Mb/s? 10Mb/s?
B
10Mb/s?
(1) Node A sends a reservation request (2) Interior switches establish a connection -- i.e., “circuit” (3) A starts sending data (4) A sends a “teardown circuit” message
Circuit Switching: Sharing a Link!
Time-division
Frequency-division
Each circuit allocated certain time slots
time
frequency
Each circuit allocated certain frequencies
time
Time-Division Multiplexing!
Frames
Slots = 0 1 2 3 4 5
Time divided into frames; frames into slots Relative slot position inside a frame determines to which conversation data belongs
0 1 2 3 4 5
e.g., slot 0 belongs to orange conversation
Slots are reserved (released) during circuit setup (teardown) If a conversation does not use its circuit capacity is lost!
Timing in Circuit Switching
time
Timing in Circuit Switching
time
Timing in Circuit Switching
time
Timing in Circuit Switching
time
Timing in Circuit Switching
Circuit Establishment
time
Timing in Circuit Switching
Circuit Establishment
Transfer
Information time
Timing in Circuit Switching
Circuit Establishment
Transfer
Information time
Circuit Teardown
Circuit switching: pros and cons
Pros
guaranteed performance fast transfer (once circuit is established)
Cons
Timing in Circuit Switching
Circuit Establishment
Transfer
Information time
Circuit Teardown
Circuit switching: pros and cons
Pros
guaranteed performance fast transfer (once circuit is established)
Cons
wastes capacity if traffic is “bursty”
Timing in Circuit Switching
Circuit Establishment
Transfer
Information time
Circuit Teardown
Timing in Circuit Switching
Circuit Establishment Data transfer Information
Circuit Teardown
time
Circuit switching: pros and cons
Pros
guaranteed performance fast transfers (once circuit is established)
Cons
wastes capacity if traffic is “bursty” connection setup time is overhead
Circuit switching
A B
Circuit switching doesn’t “route around trouble”
Circuit switching: pros and cons
Pros
guaranteed performance fast transfers (once circuit is established)
Cons
wastes capacity if traffic is “bursty” connection setup time is overhead recovery from failure is slow
Circuit switching: pros and cons
Pros
guaranteed performance fast transfers (once circuit is established)
Cons
wastes capacity if traffic is “bursty” connection setup adds delay recovery from failure is slow [in the telephone network] designed for a specific app
Packet switching!
Packet Switching
Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload”
Switches “forward” packets based on their headers Each packet travels independently
Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload”
no notion of packets belonging to a “circuit”
No link resources are reserved in advance. Instead packet switching leverages statistical multiplexing payload Data 01000111100010101001110100011001