6.263 Data Communication Networks
Lecture 1: Computer Networks
(some slides are taken from I. Stoica and N. Mckewon)
Dina Katabi
[email protected] www.nms.lcs.mit.edu/~dina Administrative Information
Instructors ¾ Dina Katabi ([email protected]) • Office Hours in 32-G936 on Tue 2:30pm-3:30pm ¾ Muriel Médard ([email protected] ) • Office Hours in 32-D626 on Wed 1:45pm-2:245pm Michael Lewy ¾ Phone (617) 253-6171 Course Webpage ¾ http://nms.lcs.mit.edu/~dina/6.263
2 Grades
HW (weekly) 10%
Project 30%
Midterm 25%
Final 35%
3 Syllabus
Routing & Switching Queuing Wireless Congestion Control Compression & Coding Network Security
4 A Taxonomy of Communication Networks
Communication networks can be classified based on the way in which the nodes exchange information:
Communication Network
Switched Broadcast Communication Communication Network Network
Circuit-Switched Packet-Switched Communication Communication Network Network
Datagram Virtual Circuit Network Network
5 Broadcast vs. Switched Networks
Broadcast networks ¾ Information transmitted by any node is received by every node in the network • Ex: Broadcast Ethernet, wireless LANs ¾ Need to coordinate the access to the shared medium Æ MAC ¾ Does it scale?
Switched networks ¾ Links are point-to-point • Ex: WANs (Telephony Network, Internet) ¾ Routing becomes harder
6 A Taxonomy of Communication Networks
Communication networks can be classified based on the way in which the nodes exchange information:
Communication Network
Switched Broadcast Communication Communication Network Network
Circuit-Switched Packet-Switched Communication Communication Network Network
Datagram Virtual Circuit Network Network
Three phases: Host 1 Host 2 1. Circuit Establishment: Node 1 Node 2 allocates certain bandwidth and establish a path 2. Data Transfer processing delay at Node 1 3. Circuit Termination propagation delay (1) between If circuit not available: “Busy Host 1 and Node 1 signal” (2) Ex: Telephone networks DATA
(3)
8 Circuit Switching: Multiplexing/Demultiplexing
Switch Frames
Slots = 0123 45 0123 45
One way for circuit switching is TDM: Time divided into frames and frames divided in slots Relative slot position inside a frame determines which conversation the data belongs to ¾ E.g., slot 0 belongs to the red conversation Needs synchronization between sender and receiver If a conversation does not use its circuit the capacity is wasted!
9 A Taxonomy of Communication Networks
Communication networks can be classified based on the way in which the nodes exchange information:
Communication Network
Switched Broadcast Communication Communication Network Network
Circuit-Switched Packet-Switched Communication Communication Network Network
Datagram Virtual Circuit Network Network
10 Datagram Packet Switching
Data is sent in Packets (header and trailer Host 1 Host 2 contain control info, e.g., source and destination Node 1 Node 2 addresses)
Header Data Trailer propagation delay between Host 1 & Per-packet routing transmission Node 2 processing At each node the entire time of Packet 1 delay of Packet 1 packet is received, Packet 2 Packet 1 at Host 1 Packet 1 at Node 2 stored, and then Packet 3 Packet 2 forwarded (Store-and- Packet 1 Forward Networks) Packet 3 Packet 2 No capacity is allocated Packet 3 E.g. The Internet
11 Datagram Packet Switching: Multiplexing/Demultiplexing
Router Queue
Multiplex using a queue ¾ Routers need memory ¾ Queuing introduces jitters Demultiplex using packet headers
12 Datagram Packet Switching
Packets in a flow may not follow the same path (depends on routing as we will see later) Host C
Host A Host D
Node 1 Node 2 Node 3
Node 5
Host B Host E Node 6 Node 7 Node 4
13 Some Differences Between Datagram & Circuit Switching
Circuit-switching Datagram-Switching
Guaranteed capacity No guarantees (best effort)
Capacity is wasted if data is More efficient bursty
Before sending data Send data immediately establishes a path
All data in a single flow follows Different packets might follow one path different paths No Reordering of data Packets may be reordered
14 A Taxonomy of Communication Networks
Communication networks can be classified based on the way in which the nodes exchange information:
Communication Network
Switched Broadcast Communication Communication Network Network
Circuit-Switched Packet-Switched Communication Communication Network Network
Datagram Virtual Circuit Network Network
15 Virtual-Circuit Packet Switching
Hybrid of circuit switching and packet switching ¾ Data is transmitted as packets ¾ All packets from one packet stream are sent along a pre-established path (i.e., a virtual circuit) No capacity guarantees, but guarantees no reordering of packets E. g., ATM networks
16 Timing of Virtual-Circuit Packet Switching
Host 1 Host 2 Node 1 Node 2
propagation delay between Host 1 VC and Node 1 establishment
Packet 1
Packet 2 Packet 1 Data Packet 3 Packet 2 transfer Packet 1 Packet 3 Packet 2
Packet 3 VC termination 17 Virtual Circuits guarantees all packets in a flow follow one path
Host C
Host A Host D
Node 1 Node 2 Node 3
Node 5
Host B Host E Node 6 Node 7 Node 4
18 In Reality
The Internet is a datagram network But part of the Internet use circuit-switching (Phone links) or virtual circuit (ATM) The Internet works by abstracting an ATM region or a circuit-switched region as a single link
19 Routing: How to deliver packets from source to destination?
20 Addressing
A network is a graph
Each node should have an address ¾ E.g., IP addresses, Phone numbers
21 How can we deliver packets?
We need to send packets form source to destination ¾ Hierarchical Addressing ¾ Source Routing ¾ Virtual Circuit ¾ Routing & forwarding are both done by the routers
22 Internet Routing
(see BG-5.2.3 for Algs.)
23 Forwarding A
R1 C What’s the difference between F routing and forwarding? Router ¾ Routing is finding the path R2 B ¾ Forwarding is the action of sending the packet to the next-hop toward R3 E its destination G Each router has a forwarding table ¾ Forwarding tables are created by a Dest. Addr Next-hop routing protocol A R1 Forwarding: B R2 ¾ For every packet, we need to look C R1 up the next hop toward its E R3 destination in the table F R1 Forwarding needs to be fast GR3
24 Picture of the Internet
Interior router Border router AS-1
AS-3
AS-2
Internet: A collection of ASes Routing: ¾ Intra-Domain Routing ¾ Inter-Domain Routing 25 Intra-Domain Routing Algorithms
Routing algorithms view the network as a graph Examples of link cost: Distance, load, price, ¾ A node is a router or a congestion/delay, … whole network region
Problem: find minimum A 6 1 cost path between two 3 2 F 1 E nodes (Shortest path) B » 4 1 9 Factors C D ¾ Semi-dynamic topology (deal with link failures) ¾ Dynamic load ¾ Policy
26 Problem: Shortest Path Routing
Objective: Determine the route from (R1, …, R7) to R8 that minimizes the cost.
114 R 1 R2 R4 R6 2 23 2 3 2 R7 R5 R 4 3 R8
27 Solution is simple by inspection... (in this case)
1 14 R 1 R2 R4 R6 3 2 2 2 23R7 R5 4 R3 R8
The shortest paths from all sources to a destination (e.g., R8) is the spanning tree routed at that destination.
28