Upload
obert
View
47
Download
1
Tags:
Embed Size (px)
DESCRIPTION
CSE 30264 Computer Networks. Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 20 – March 25, 2010. Today’s Lecture. Project 3 In-Class Exercise Network Issues Quality of Service. Application. Transport. Network. Data. Physical. - PowerPoint PPT Presentation
Citation preview
CSE 30264
Computer Networks
Prof. Aaron StriegelDepartment of Computer Science & Engineering
University of Notre Dame
Lecture 20 – March 25, 2010
CSE 30264 2
Today’s Lecture
• Project 3– In-Class Exercise
• Network Issues– Quality of Service
Spring 2010
Physical
Data
Network
Transport
Application
Spring 2009 CSE30264 3
Quality of Service
OutlineRealtime ApplicationsIntegrated ServicesDifferentiated Services
Spring 2009 CSE30264 4
Realtime Applications• Require “deliver on time” assurances
– must come from inside the network
• Example application (audio)– sample voice once every 125us– each sample has a playback time– packets experience variable delay in network– add constant factor to playback time: playback point
Microphone
Speaker
Sampler,A Dconverter
Buffer,D A
Spring 2009 CSE30264 5
Example Distribution of Delays
Spring 2009 CSE30264 6
Integrated Services
• Service Classes– guaranteed– controlled-load
• Mechanisms– resource reservation (signalling)– admission control– policing– packet scheduling
Spring 2009 CSE30264 7
Flowspec• Rspec: describes service requested from network
– controlled-load: none– guaranteed: delay target
• Tspec: describes flow’s traffic characteristics– average bandwidth + burstiness: token bucket filter– token rate r– bucket depth B– must have a token to send a byte– must have n tokens to send n bytes– start with no tokens– accumulate tokens at rate of r per second– can accumulate no more than B tokens
Spring 2009 CSE30264 8
Per-Router Mechanisms• Admission Control
– decide if a new flow can be supported– answer depends on service class– not the same as policing
• Packet Processing– classification: associate each packet with the
appropriate reservation– scheduling: manage queues so each packet receives the
requested service
Spring 2009 CSE30264 9
Reservation Protocol• Called signalling in ATM• Proposed Internet standard: RSVP• Consistent with robustness of today’s connectionless model• Uses soft state (refresh periodically)• Designed to support multicast• Receiver-oriented• Two messages: PATH and RESV• Source transmits PATH messages every 30 seconds• Destination responds with RESV message• Merge requirements in case of multicast• Can specify number of speakers
Spring 2009 CSE30264 10
RSVP ExampleSender 1
Sender 2
PATH
PATH
RESV(merged)
RESV
RESV
Receiver B
Receiver A
R
R
R
R
R
Spring 2009 CSE30264 11
RSVP
• Associate packet with reservation (classifying):– source address, destination address, protocol number,
source port, destination port• Manage packets in queues (scheduling).
Spring 2009 CSE30264 12
RSVP versus ATM (Q.2931)• RSVP
– receiver generates reservation– soft state (refresh/timeout)– separate from route establishment– QoS can change dynamically– receiver heterogeneity
• ATM– sender generates connection request– hard state (explicit delete)– concurrent with route establishment– QoS is static for life of connection– uniform QoS to all receivers
Spring 2009 CSE30264 13
Differentiated Services• Problem with IntServ: scalability• Idea: segregate packets into a small number of classes
– e.g., premium vs best-effort• Packets marked according to class at edge of network• Core routers implement some per-hop-behavior (PHB)• Example: Expedited Forwarding (EF)
– rate-limit EF packets at the edges– PHB implemented with class-based priority queues or WFQ
Spring 2009 CSE30264 14
DiffServ (cont)
• Assured Forwarding (AF)– customers sign service
agreements with ISPs– edge routers mark packets
as being “in” or “out” of profile
– core routers run RIO: RED with in/out
CSE 30264 15
Coding
• Form into small groups– Twist: Must sit by people who you did not work with
on the project
Spring 2010
Build a simple UDP chat server
CSE 30264 16
Write Threaded Code
• UDP Server– Step 1
• Listen on port X (pass in via parameter)• Read message / display on screen
Spring 2010
CSE 30264 17
Write Threaded Code
• UDP Server– Step 1
• Listen on port X (pass in via parameter)• Read message / display on screen
– Step 2• Keep track of incoming IP / ports• Design
– Local vs. global– struct vs. class
Spring 2010
CSE 30264 18
Write Main Function
• main function– Step 1
• Start up the thread• Loop until input is QUIT!
– Step 2• Send the typed text to all known other clients
– Step 3• Allow adding of IP via syntax
– ADDCLIENT 129.74.20.40 8908– Step 4
• Dump current client list via DUMPSTATUSSpring 2010
CSE 30264 19
Moment of Zen
Spring 2010