slides - Computer Science and Engineering

Download Report

Transcript slides - Computer Science and Engineering

Network Core and QoS
1
The Internet Network layer
Host, router network layer functions:
Transport layer: TCP, UDP
Network
layer
IP protocol
•addressing conventions
•datagram format
•packet handling conventions
Routing protocols
•path selection
•RIP, OSPF, BGP
Routing/
Forwarding
Table
ICMP protocol
•error reporting
•router “signaling”
Link layer
physical layer
2
Forwarding Engine –Fast path of
the code
 Stage 1
- Basic error checking to see if header is from a
-
-
IP datagram
Confirm packet/header lengths are reasonable
Confirm that IP header has no options
Compute hash offset into route cache and load
the route
Start loading of next header
3
Forwarding Engine –
 Stage 2
Checks to see if the cached route matches the
destination of the datagram
 If not, the code jumps to an extended lookup
which examines the routing table in the Bcache
 The code then checks the IP time-to-live (TTL)
field and computes the updated TTL and IP
checksum
 The TTL and checksum are the only header
fields that normally change and they must not
be changed if the datagram is destined for the
router

4
Forwarding Engine – software
Fast path of the code
 Stage 3
The updated TTL and checksum are put in the
IP header
 The necessary routing information is extracted
from the forwarding table entry and the
updated IP header is written out along with
link-layer information from the forwarding
table
 The routing information includes the flow
classifier (currently classifiers are associated
with destination prefixes)

5
Questions
 Given link speed and packet size how do we
calculate the no. of packets that can be sent on
the link. Vary the packet size from 32byte to 16K
bytes and calculate no. of packets on the link.
What is the impact of packet size on a network
element
 Given no. of lines of C code, average machine
instructions for each line, and average no. of clock
cycles per each instruction, calculate the time
required for forwarding a packet.
 If you now forwarding time for each packet,
calculate the MIPS requirement
6
Different Types of Switching
 Different Types of Switching:
 Circuit Switching (telephone network)
• dedicated circuit, sending and receiving bit streams
Message Switching
 Packet Switching

• store and forward, sending and receiving packets
Virtual Circuit Switching
 Cell Switching (ATM)

 What are Packets?
 Data to be transmitted is divided into discrete
blocks
7
Network Core: Circuit Switching
End-end resources
reserved for “call”
 link bandwidth, switch
capacity
 dedicated resources:
no sharing
 circuit-like
(guaranteed)
performance
 call setup required
8
Cost-Effective Resource
Sharing
 Must share (multiplex) network resources
among multiple users.
 Common Multiplexing Strategies
 Time-Division Multiplexing (TDM)
 Synchronous TDM (STDM)
 Frequency-Division Multiplexing (FDM)
 Multiplexing multiple logical flows over a
single physical link.
9
Network Core: Circuit Switching
network resources
(e.g., bandwidth)
divided into “pieces”
 pieces allocated to calls
 resource piece idle if
not used by owning call
(no sharing)
 dividing link bandwidth
into “pieces”
 frequency division
 time division
10
Network Core: Packet Switching
10 Mbs
Ethernet
A
B
statistical multiplexing
C
1.5 Mbs
queue of packets
waiting for output
link
D
45 Mbs
E
Packet-switching versus circuit switching: human
restaurant analogy
 other human analogies?
11
Packet switching versus circuit switching
Packet switching allows more users to use network!
 1 Mbit link
 each user:
 100Kbps when “active”
 active 10% of time
 circuit-switching:
 10 users
N users
1 Mbps link
 packet switching:
 with 35 users,
probability > 10 active
less that .004
12
Packet switching versus circuit switching
Is packet switching a “slam dunk winner?”
 Great for bursty data
resource sharing
 no call setup
 Excessive congestion: packet delay and loss
 protocols needed for reliable data transfer,
congestion control
 Q: How to provide circuit-like behavior?
 bandwidth guarantees needed for audio/video
apps

13