Data Networks
Lecture 1
Introduction
Eytan Modiano
Eytan Modiano
Slide 1
6.263: Data Networks
? Fundamental aspects of network Design and Analysis:
– Architecture
Layering
Topology design
– Protocols
Pt.-to-Pt.
Multiple access
End-to-end
– Algorithms
Error recovery
Routing
Flow Control
– Analysis tools
Probabilistic modeling
Queueing Theory
Eytan Modiano
Slide 2
Course Information
? Lecturer: Professor Eytan Modiano
? Requirements & Grading
– About one problem set per week (10% of grade)
– Project (5% of grade)
– Midterm exam (35 %)
– Final Exam during finals week (50%)
? Prerequisite Policy: 6.041, or an equivalent class in probability
? Textbook: Bertsekas & Gallager, Data Networks (2nd Edition)
Eytan Modiano
Slide 3
Tentative syllabus
LEC # TOPICS
1 Introduction, OSI 7-layer architecture
2 Data Link Layers, Framing, error detection
3 Retransmission Algorithms
4 Retransmission Algorithms
5 Queueing Models - Introduction & Little's theorem
6 M/M/1, M/M/m, queues etc.
7 Networks of queues
8 M/G/1 queues, M/G/1 w/ vacations
9 M/G/1 queues and reservations, priority queues
10 Stability of queueing systems
11 M/G/1 queue occupancy distribution
12 Quiz
Eytan Modiano
Slide 4
Tentative syllabus, continued
LEC # TOPICS
13 Multiple access & Aloha
14 Stabilized Aloha, Tree Algorithms
15 CSMA, CSMA/CD and Ethernet
16 High-speed LANs, Token rings, Satellite reservations
17 Introduction to switch architecture
18 High Speed Switch Scheduling
19 Broadcast routing & Spanning trees
20 Shortest path routing
21 Distributed routing algorithms, optimal routing
22 Flow Control - Window/Credit Schemes
23 Flow Control - Rate Based Schemes
24 Transport layer and TCP/IP
25 ATM Networks
26 Special topic: Optical Networks, Wireless networks
Final Exam during final exam week. Date and time to be announced.
Eytan Modiano
Slide 5
Network Applications
? Resource sharing
– Computing
– Mainframe computer (old days)
Today, computers cheaper than comm (except LANS)
Printers, peripherals
– Information
DB access and updates
E.g., Financial, Airline reservations, etc.
? Services
– Email, FTP, Telnet, Web access
– Video conferencing
– DB access
– Client/server applications
Eytan Modiano
Slide 6
Network coverage areas
? Wide Area Networks (WANS)
– Span large areas (countries, continents, world)
– Use leased phone lines (expensive!)
1980’s: 10 Kbps, 2000’s: 2.5 Gbps
User access rates: 56Kbps – 155 Mbps typical
– Shared comm links: switches and routers
E.g, IBM SNA, X.25 networks, Internet
? Local Area Networks (LANS)
– Span office or building
– Single hop (shared channel) (cheap!)
– User rates: 10 Mbps – 1 Gbps
E.g., Ethernet, Token rings, Apple-talk
? Metro Area networks (MANS)
? Storage area networks
Eytan Modiano
Slide 7
Network services
? Synchronous
– Session appears as a continuous stream of traffic (e.g, voice)
– Usually requires fixed and limited delays
? Asynchronous
– Session appears as a sequence of messages
– Typically bursty
– E.g., Interactive sessions, file transfers, email
? Connection oriented services
– Long sustained session
– Orderly and timely delivery of packets
– E.g., Telnet, FTP
? Connectionless services
– One time transaction (e.g., email)
? QoS
Eytan Modiano
Slide 8
Switching Techniques
? Circuit Switching
– Dedicated resources
? Packet Switching
– Shared resources
– Virtual Circuits
– Datagrams
Eytan Modiano
Slide 9
Circuit Switching
? Each session is allocated a fixed fraction of the capacity on each
link along its path
– Dedicated resources
– Fixed path
– If capacity is used, calls are blocked
E.g., telephone network
? Advantages of circuit switching
– Fixed delays
– Guaranteed continuous delivery
? Disadvantages
– Circuits are not used when session is idle
– Inefficient for bursty traffic
– Circuit switching usually done using a fixed rate stream (e.g., 64
Kbps)
Difficult to support variable data rates
Eytan Modiano
Slide 10
Problems with circuit switching
? Many data sessions are low duty factor (bursty),
(message transmission time)/(message interarrival time) << 1
Same as: (message arrival rate) * (message transmission time) << 1
? The rate allocated to the session must be large enough to meet the
delay requirement. This allocated capacity is idle when the session
has nothing to send
? If communication is expensive, then circuit switching is
uneconomic to meet the delay requirements of bursty traffic
? Also, circuit switching requires a call set-up during which
resources are not utilized. If messages are much shorter than the
call set-up time then circuit switching is not economical (or even
practical)
– More of a problem in high-speed networks
Eytan Modiano
Slide 11
Circuit Switching Example
L = message lengths
λ = arrival rate of messages
R = channel rate in bits per second
X = message transmission delay = L/R
– R must be large enough to keep X small
– Bursty traffic => λx << 1 => low utilization
? Example
– L = 1000 bytes (8000 bits)
– λ = 1 message per second
– X < 0.1 seconds (delay requirement)
– => R > 8000/0.1 = 80,000 bps
Utilization = 8000/80000 = 10%
? With packet switching channel can be shared among many
sessions to achieve higher utilization
Eytan Modiano
Slide 12
Packet Switched Networks
Packet Network
PS
PS
PS
PS
PS
PS
PS
Buffer
Packet
Switch
Messages broken into
Packets that are routed
To their destination
Eytan Modiano
Slide 13
Eytan Modiano
Slide 14
Packet Switching
? Datagram packet switching
– Route chosen on packet-by-packet basis
– Different packets may follow different routes
– Packets may arrive out of order at the destination
– E.g., IP (The Internet Protocol)
? Virtual Circuit packet switching
– All packets associated with a session follow the same path
– Route is chosen at start of session
– Packets are labeled with a VC# designating the route
– The VC number must be unique on a given link but can change from
link to link
Imagine having to set up connections between 1000 nodes in a mesh
Unique VC numbers imply 1 Million VC numbers that must be represented
and stored at each node
– E.g., ATM (Asynchronous transfer mode)
Eytan Modiano
Slide 15
Virtual Circuits Packet Switching
? For datagrams, addressing information must uniquely distinguish
each network node and session
– Need unique source and destination addresses
? For virtual circuits, only the virtual circuits on a link need be
distinguished by addressing
– Global address needed to set-up virtual circuit
– Once established, local virtual circuit numbers can then be used to
represent the virtual circuits on a given link: VC number changes from
link to link
? Merits of virtual circuits
– Save on route computation
Need only be done once
at start of session
– Save on header size
– Facilitate QoS provisioning
– More complex
– Less flexible
3
6
5
8
2
9
Node 5 table
(3,5) VC13 -> (5,8) VC3
(3,5) VC7 -> (5,8) VC4
(6,5) VC3 -> (5,8) VC7
VC3
VC13
VC7
VC4
VC3
VC7
Eytan Modiano
Slide 16
Circuit vs packet switching
? Advantages of packet switching
– Efficient for bursty data
– Easy to provide bandwidth on demand with variable rates
? Disadvantages of packet switching
– Variable delays
– Difficult to provide QoS assurances (Best-effort service)
– Packets can arrive out-of-order
Switching Technique Network service
Circuit switching => Synchronous (e.g., voice)
Packet switching => Asynchronous (e.g., Data)
Virtual circuits => Connection oriented
Datagram => Connectionless
Eytan Modiano
Slide 17
Circuit vs Packet Switching
? Can circuit switched network be used to support data traffic?
? Can packet switched network be used for connection oriented
traffic (e.g., voice)?
? Need for Quality of service (QoS) mechanisms in packet networks
– Guaranteed bandwidth
– Guaranteed delays
– Guaranteed delay variations
– Packet loss rate
– Etc...
Eytan Modiano
Slide 18
7 Layer OSI Reference Model
Virtual link for
reliable packets
Application
Presentation
Session
Transport
Network
Data link
Control
Application
Presentation
Session
Transport
Network
Data link
Control
Network Network
DLC DLC DLC DLC
Physical link
Virtual bit pipe
Virtual link for end to end packets
Virtual link for end to end messages
Virtual session
Virtual network service
External
Site
subnet
node
subnet
node
External
site
physical
interface
phys. int. phys. int. phys. int. phys. int.
physical
interface
Eytan Modiano
Slide 19
Layers
? Presentation layer
– Provides character code conversion, data encryption, data compression,
etc.
? Session layer
– Obtains virtual end to end message service from transport layer
– Provides directory assistance, access rights, billing functions, etc.
? Standardization has not proceeded well here, since transport to
application are all in the operating system and don't really need
standard interfaces
? Focus: Transport layer and lower
Eytan Modiano
Slide 20
Transport Layer
? The network layer provides a virtual end to end packet pipe to the
transport layer.
? The transport layer provides a virtual end to end message service
to the higher layers.
? The functions of the transport layer are:
1) Break messages into packets and reassemble
packets of size suitable to network layer
2) Multiplex sessions with same source/destination nodes
3) Resequence packets at destination
4) recover from residual errors and failures
5) Provide end-to-end flow control
Eytan Modiano
Slide 21
Network layer
? The network layer module accepts incoming packets from the
transport layer and transit packets from the DLC layer
? It routes each packet to the proper outgoing DLC or (at the
destination) to the transport layer
? Typically, the network layer adds its own header to the packets
received from the transport layer. This header provides the
information needed for routing (e.g., destination address)
DLC layer
link 1
DLC layer
link 2
DLC layer
link 3
Network
layer
Transport
layer
Each node contains one network
Layer module plus one
Link layer module per link
Eytan Modiano
Slide 22
Link Layer
? Responsible for error-free transmission of packets across a
single link
– Framing
Determine the start and end of packets
– Error detection
Determine which packets contain transmission errors
– Error correction
Retransmission schemes (Automatic Repeat Request (ARQ))
Eytan Modiano
Slide 23
Physical Layer
? Responsible for transmission of bits over a link
? Propagation delays
– Time it takes the signal to travel from the source to the destination
Signal travel approximately at the speed of light, C = 3x10
8
meters/second
– E.g.,
LEO satellite: d = 1000 km => 3.3 ms prop. delay
GEO satellite: d = 40,000 km => 1/8 sec prop. delay
Ethernet cable: d = 1 km => 3 μs prop. delay
? Transmission errors
– Signals experience power loss due to attenuation
– Transmission is impaired by noise
– Simple channel model: Binary Symmetric Channel
P = bit error probability
Independent from bit to bit
– In reality channel errors are often bursty
0
1
0
1
1-P
1-P
PP
Eytan Modiano
Slide 24
Internet Sub-layer
? A sublayer between the transport and network layers is required
when various incompatible networks are joined together
? This sublayer is used at gateways between the different networks
? It looks like a transport layer to the networks being joined
? It is responsible for routing and flow control between networks, so
looks like a network layer to the end-to-end transport layer
? In the internet this function is accomplished using the
Internet Protocol (IP)
– Often IP is also used as the network layer protocol, hence only one
protocol is needed
Eytan Modiano
Slide 25
Internetworking with TCP/IP
FTP
client
FTP
server
FTP Protocol
TCP
TCP Protocol
IP IP Protocol IP Protocol
Ethernet
Ethernet
Protocol
token ring
driver
token ring
Protocol
Ethernet
driver
TCP
IP
ROUTER
IP
Ethernet
driver
token ring
driver
token ring
Eytan Modiano
Slide 26
Encapsulation
Ethernet
Ethernet
Application
user data
Appl
user data
header
TCP
header
application data
header
IP
TCP
header
application data
IP datagram
TCP
header
application data
header
IP
Ethernet
header
Ethernet
trailer
Ethernet frame
46 to 1500 bytes
14
420
20
driver
IP
TCP
TCP segment