CS2060 High Speed Networks Lecture Notes Unit I To V
CS2060 High Speed Networks Lecture Notes Unit I To V
Forwarding functions
I$A "omponents 9 'ackground Functions
Reservation 2rotocol
E R0A2
dmission control
;anagement agent
E *an use agent to modify traffic control database and direct admission control
Routing protocol
I$A "omponents 9 Forwarding
*lassifier and route selection
E ,ncoming pac+ets mapped to classes
0ingle flow or set of flows with same Jo0
E '.g. all video flows
9ased on ,2 header fields
E Determines ne-t hop
2ac+et scheduler
=?
E ;anages one or more $ueues for each output
E 8rder $ueued pac+ets sent
9ased on class, traffic control database, current and past activity on outgoing port
E 2olicing
I$A $er%ices
&raffic specification %&0pec( defined as service for flow
8n two levels
E >eneral categories of service
>uaranteed
*ontrolled load
9est effort %default(
E 2articular flow within category
&0pec is part of contract
Token 'ucket
;any traffic sources can be defined by to+en buc+et scheme
2rovides concise description of load imposed by flow
E 'asy to determine resource re$uirements
2rovides input parameters to policing function
Token 'ucket iagram
I$A $er%ices 9
6uaranteed $er%ice
ssured capacity level or data rate
0pecific upper bound on $ueuing delay through networ+
E ;ust be added to propagation delay or latency to get total delay
E 0et high to accommodate rare long $ueue delays
!o $ueuing losses
E ,.e. no buffer overflow
'.g. Real time play bac+ of incoming signal can use delay buffer for incoming
signal but will not tolerate pac+et loss
=F
I$A $er%ices 9
"ontrolled Load
&ightly appro-imates to best efforts under unloaded conditions
!o upper bound on $ueuing delay
E <igh percentage of pac+ets do not e-perience delay over minimum transit delay
2ropagation plus router processing with no $ueuing delay
Aery high percentage delivered
E lmost no $ueuing loss
daptive real time applications
E Receiver measures Mitter and sets playbac+ point
E Aideo can drop a frame or delay output slightly
E Aoice can adMust silence periods
&ueuing iscipline
&raditionally first in first out %F,F8( or first come first served %F*F0( at each
router port
!o special treatment to high priority pac+ets %flows(
0mall pac+ets held up by large pac+ets ahead of them in $ueue
E 7arger average delay for smaller pac+ets
E Flows of larger pac+ets get better service
>reedy &*2 connection can crowd out altruistic connections
E ,f one connection does not bac+ off, others may bac+ off more
Fair &ueuing (F&)
;ultiple $ueues for each port
E 8ne for each source or flow
E Jueues services round robin
E 'ach busy $ueue %flow( gets e-actly one pac+et per cycle
E 7oad balancing among flows
E !o advantage to being greedy
dour $ueue gets longer, increasing your delay
E 0hort pac+ets penali4ed as each $ueue sends one pac+et per cycle
FIF@ and F&
Processor $haring
;ultiple $ueues as in FJ
0end one bit from each $ueue per round
E 7onger pac+ets no longer get an advantage
*an wor+ out virtual %number of cycles( start and finish time for a given pac+et
B/
<owever, we wish to send pac+ets, not bits
'it1/ound Fair &ueuing ('/F&)
*ompute virtual start and finish time as before
When a pac+et finished, the ne-t pac+et sent is the one with the earliest virtual
finish time
>ood appro-imation to performance of 20
E &hroughput and delay converge as time increases
"omparison o! FIF@D F& and '/F&
6enerali;ed Processor $haring (6P$)
9RFJ can not provide different capacities to different flows
'nhancement called Weighted fair $ueue %WFJ(
From 20, allocate weighting to each flow that determines how many bots are sent
during each round
E ,f weighted 5, then 5 bits are sent per round
>ives means of responding to different service re$uests
>uarantees that delays do not e-ceed bounds
3eighted Fair &ueue
'mulates bit by bit >20
0ame strategy as 9RFJ
B.
FIF@ % 3F&
e
Proacti%e Packet iscard
*ongestion management by proactive pac+et discard
E 9efore buffer full
E 3sed on single F,F8 $ueue or multiple $ueues for elastic traffic
E '.g. Random 'arly Detection %R'D(
/andom 2arly etection (/2)
Moti%ation
0urges fill buffers and cause discards
8n &*2 this is a signal to enter slow start phase, reducing load
E 7ost pac+ets need to be resent
B2
dds to load and delay
E >lobal synchroni4ation
&raffic burst fills $ueues so pac+ets lost
;any &*2 connections enter slow start
&raffic drops so networ+ under utili4ed
*onnections leave slow start at same time causing burst
9igger buffers do not help
&ry to anticipate onset of congestion and tell one connection to slow down
/2 esign 6oals
*ongestion avoidance
>lobal synchroni4ation avoidance
E *urrent systems inform connections to bac+ off implicitly by dropping pac+ets
voidance of bias to bursty traffic
E Discard arriving pac+ets will do this
9ound on average $ueue length
E <ence control on average delay
/2 Algorithm 9 @%er%iew
*alculate average $ueue si4e avg
if avg H &<min
$ueue pac+et
else if &<min avg < &hma-
calculate probability 2a
with probability 2a
discard pac+et
else with probability .)2a
$ueue pac+et
else if avg &<ma-
discard pac+et
R'D 9uffer
/2 Algorithm etail
B5
B1
i!!erentiated $er%ices ($)
,0 and R0A2 comple- to deploy
;ay not scale well for large volumes of traffic
E mount of control signals
E ;aintenance of state information at routers
D0 architecture designed to provide simple, easy to implement, low overhead
tool
E 0upport range of networ+ services
Differentiated on basis of performance
"haracteristics o! $
3se ,2v1 header &ype of 0ervice or ,2v= &raffic *lass field
E !o change to ,2
0ervice level agreement %07( established between provider %internet
domain( and customer prior to use of D0
E D0 mechanisms not needed in applications
9uild in aggregation
E ll traffic with same D0 field treated same
'.g. multiple voice connections
E D0 implemented in individual routers by $ueuing and forwarding based on
D0 field
0tate information on flows not saved by routers
$er%ices
2rovided within D0 domain
E *ontiguous portion of ,nternet over which consistent set of D0 policies
administered
E &ypically under control of one administrative entity
Defined in 07
E *ustomer may be user organi4ation or other D0 domain
E 2ac+et class mar+ed in D0 field
0ervice provider configures forwarding policies routers
E 8ngoing measure of performance provided for each class
D0 domain e-pected to provide agreed service internally
,f destination in another domain, D0 domain attempts to forward pac+ets
through other domains
E ppropriate service level re$uested from each domain
$LA Parameters
Detailed service performance parameters
E &hroughput, drop probability, latency
*onstraints on ingress and egress points
E ,ndicate scope of service
B5
&raffic profiles to be adhered to
E &o+en buc+et
Disposition of traffic in e-cess of profile
2:ample $er%ices
Jualitative
E " 7ow latency
E 9" 7ow loss
Juantitative
E *" F/b in)profile traffic delivered with no more than 5/ms latency
E D" F5b in)profile traffic delivered
;i-ed
E '" &wice bandwidth of F
E F" &raffic with drop precedence X has higher delivery probability than that
with drop precedence d
D0 Field Detail
7eftmost = bits are D0 codepoint
E =1 different classes available
E 5 pools
-----/ " reserved for standards
E ////// " default pac+et class
E ---/// " reserved for bac+wards compatibility with ,2v1 &80
----.. " reserved for e-perimental or local use
----/. " reserved for e-perimental or local use but may be allocated for
future standards if needed
Rightmost 2 bits unused
"on!iguration iagram
"on!iguration 9 Interior /outers
Domain consists of set of contiguous routers
,nterpretation of D0 codepoints within domain is consistent
B=
,nterior nodes %routers( have simple mechanisms to handle pac+ets based on
codepoints
E Jueuing gives preferential treatment depending on codepoint
2er <op behaviour %2<9(
;ust be available to all routers
&ypically the only part implemented in interior routers
E 2ac+et dropping rule dictated which to drop when buffer saturated
"on!iguration 9 'oundary /outers
,nclude 2<9 rules
lso traffic conditioning to provide desired service
E *lassifier
0eparate pac+ets into classes
E ;eter
;easure traffic for conformance to profile
E ;ar+er
2olicing by remar+ing codepoints if re$uired
E 0haper
E Dropper
$ Tra!!ic "onditioner
Per 0op 'eha%iour 9
2:pedited !orwarding
2remium service
E 7ow loss, delay, MitterG assured bandwidth end)to)end service through domains
E 7oo+s li+e point to point or leased line
E Difficult to achieve
E *onfigure nodes so traffic aggregate has well defined minimum departure rate
'F 2<9
E *ondition aggregate so arrival rate at any node is always less that minimum
departure rate
9oundary conditioners
Per 0op 'eha%iour 9
2:plicit Allocation
0uperior to best efforts
Does not re$uire reservation of resources
Does not re$uire detailed discrimination among flows
3sers offered choice of number of classes
;onitored at boundary node
E ,n or out depending on matching profile or not
,nside networ+ all traffic treated as single pool of pac+ets, distinguished only as in
or out
BB
Drop out pac+ets before in pac+ets if necessary
Different levels of service because different number of in pac+ets for each user
P0' 1 Assured Forwarding
Four classes defined
E 0elect one or more to meet re$uirements
Within class, pac+ets mar+ed by customer or provider with one of three drop
precedence values
E 3sed to determine importance when dropping pac+ets as result of congestion
"odepoints !or AF P0'
B?
Unit #
Protocols !or &o$ $upport
Increased emands
!eed to incorporate bursty and stream traffic in &*2:,2 architecture
,ncrease capacity
E Faster lin+s, switches, routers
E ,ntelligent routing policies
E 'nd)to)end flow control
;ulticasting
Juality of 0ervice %Jo0( capability
&ransport protocol for streaming
/esource /eser%ation 1 Unicast
2revention as well as reaction to congestion re$uired
*an do this by resource reservation
3nicast
E 'nd users agree on Jo0 for tas+ and re$uest from networ+
E ;ay reserve resources
E Routers pre)allocate resources
E ,f Jo0 not available, may wait or try at reduced Jo0
/esource /eser%ation 9 Multicast
>enerate vast traffic
E <igh volume application li+e video
E 7ots of destinations
*an reduce load
E 0ome members of group may not want current transmission
X*hannelsY of video
E 0ome members may only be able to handle part of transmission
9asic and enhanced video components of video stream
Routers can decide if they can meet demand
/esource /eser%ation Pro7lems on an Internet
;ust interact with dynamic routing
E Reservations must follow changes in route
0oft state E a set of state information at a router that e-pires unless refreshed
E 'nd users periodically renew resource re$uests
/esource /e$er#ation Protocol (/$#P) esign 6oals
'nable receivers to ma+e reservations
E Different reservations among members of same multicast group allowed
Deal gracefully with changes in group membership
E Dynamic reservations, separate for each member of group
ggregate for group should reflect resources needed
E &a+e into account common path to different members of group
BF
Receivers can select one of multiple sources %channel selection(
Deal gracefully with changes in routes
E Re)establish reservations
*ontrol protocol overhead,ndependent of routing protocol
/$#P "haracteristics
3nicast and ;ulticast
0imple-
E 3nidirectional data flow
E 0eparate reservations in two directions
Receiver initiated
E Receiver +nows which subset of source transmissions it wants
;aintain soft state in internet
E Responsibility of end users
2roviding different reservation styles
E 3sers specify how reservations for groups are aggregated
&ransparent operation through non)R0A2 routers
0upport ,2v1 %&o0 field( and ,2v= %Flow label field(
ata Flows 1 $ession
Data flow identified by destination
Resources allocated by router for duration of session
Defined by
E Destination ,2 address
3nicast or multicast
E ,2 protocol identifier
&*2, 3D2 etc.
E Destination port
;ay not be used in multicast
Flow escriptor
Reservation Re$uest
E Flow spec
Desired Jo0
3sed to set parameters in nodeZs pac+et scheduler
0ervice class, Rspec %reserve(, &spec %traffic(
E Filter spec
0et of pac+ets for this reservation
0ource address, source prot
Treatment o! Packets o! @ne $ession at @ne /outer
?/
/$#P @peration iagram
/$#P @peration
>., >2, >5 members of multicast group
0., 02 sources transmitting to that group
<eavy blac+ line is routing tree for 0., heavy grey line for 02
rrowed lines are pac+et transmission from 0. %blac+( and 02 %grey(
ll four routers need to +now reservation s for each multicast address
E Resource re$uests must propagate bac+ through routing tree
Filtering
>5 has reservation filter spec including 0. and 02
>., >2 from 0. only
?.
R5 delivers from 02 to >5 but does not forward to R1
>., >2 send R0A2 re$uest with filter e-cluding 02
>., >2 only members of group reached through R1
E R1 doesnZt need to forward pac+ets from this session
E R1 merges filter spec re$uests and sends to R5
R5 no longer forwards this sessionZs pac+ets to R1
E <andling of filtered pac+ets not specified
E <ere they are dropped but could be best efforts delivery
R5 needs to forward to >5
E 0tores filter spec but doesnZt propagate it
/eser%ation $tyles
Determines manner in which resource re$uirements from members of group are
aggregated
Reservation attribute
E Reservation shared among senders %shared(
*haracteri4ing entire flow received on multicast address
E llocated to each sender %distinct(
0imultaneously capable of receiving data flow from each sender
0ender selection
E 7ist of sources %e-plicit(
E ll sources, no filter spec %wild card(
/eser%ation Attri7utes and $tyles
Reservation ttribute
E Distinct
0ender selection e-plicit 6 Fi-ed filter %FF(
0ender selection wild card 6 none
E 0hared
0ender selection e-plicit6 0hared)e-plicit %0'(
0ender selection wild card 6 Wild card filter %WF(
3ild "ard Filter $tyle
0ingle resource reservation shared by all senders to this address
,f used by all receivers" shared pipe whose capacity is largest of resource re$uests
from receivers downstream from any point on tree
,ndependent of number of senders using it
2ropagated upstream to all senders
WF%cfJg(
E c 6 wild card sender
E J 6 flowspec
udio teleconferencing with multiple sites
Fi:ed Filter $tyle
Distinct reservation for each sender
?2
'-plicit list of senders
FF%0.fJhg, 02fJ2g,^(
Aideo distribution
$hared 2:plicit $tyle
0ingle reservation shared among specific list of senders
0'%0., 02, 05, ^fJg(
;ulticast applications with multiple data sources but unli+ely to transmit
simultaneously
/$#P Protocol Mechanisms
&wo message types
E Resv
8riginate at multicast group receivers
2ropagate upstream
;erged and pac+et when appropriate
*reate soft states
Reach sender
E llow host to set up traffic control for first hop
E 2ath
2rovide upstream routing information
,ssued by sending hosts
&ransmitted through distribution tree to all destinations
/$#P 0ost Model
Summary
R0A2 is a transport layer protocol that enables a networ+ to provide differentiated levels
of service to specific flows of data. 8stensibly, different application types have different
performance re$uirements. R0A2 ac+nowledges these differences and provides the
mechanisms necessary to detect the levels of performance re$uired by different appli)
cations and to modify networ+ behaviors to accommodate those re$uired levels. 8ver
time, as time and latency)sensitive applications mature and proliferate, R0A2Ds
capabilities will become increasingly important.
?5
Revie, uestions
&E1s it necessary to migrate a2ay from your existing routing protocol to support
(#3P4
AER0A2 is not a routing protocol. ,nstead, it was designed to wor+ in conMunction with
e-isting routing protocols. &hus, it is not necessary to migrate to a new routing protocol
to support R0A2.
&E1dentify the three (#3P levels of service5 and explain the difference among them6
AER0A2Ds three levels of service include best)effort, rate)sensitive, and delay)sensitive
service. 9est)effort service is used for applications that re$uire reliable delivery rather
than a timely delivery. Rate)sensitive service is used for any traffic that is sensitive to
variation in the amount of bandwidth available. 0uch applications include <.525
videoconferencing, which was designed to run at a nearly constant rate. R0A2Ds third
level of service is delay)sensitive service. Delay)sensitive traffic re$uires timely but not
reliable delivery of data.
&E7hat are the t2o (#3P reservation classes5 and ho2 do they differ4
AE reservation style is a set of control options that defines how a reservation operates.
R0A2 supports two primary types of reservation styles" distinct reservations and shared
reservations. distinct reservation establishes a flow for each sending device in a
session. 0hared reservations aggregate communications flows for a set of senders. 'ach
of these two reservation styles is defined by a series of filters.
&E7hat are (#3P filters4
AE filter in R0A2 is a specific set of control options that specifies operational
parameters for a reservation. R0A2Ds styles include wildcard)filter %WF(, fi-ed)filter
%FF(, and shared)e-plicit %0'( filters.
&E8o2 can (#3P *e used through net2or$ regions that do not support (#3P4
AER0A2 supports tunneling through networ+ regions that do not support R0A2. &his
capability was developed to enable a phased)in implementation of R0A2.
Multiprotocol La7el $witching (MPL$)
Routing algorithms provide support for performance goals
E Distributed and dynamic
React to congestion
7oad balance across networ+
E 9ased on metrics
Develop information that can be used in handling different service
needs
'nhancements provide direct support
E ,0, D0, R0A2
?1
!othing directly improves throughput or delay
;270 tries to match &; Jo0 support
'ackground
'fforts to marry ,2 and &;
,2 switching %,psilon(
&ag switching %*isco(
ggregate route based ,2 switching %,9;(
*ascade %,2 navigator(
ll use standard routing protocols to define paths between end points
ssign pac+ets to path as they enter networ+
3se &; switches to move pac+ets along paths
E &; switching %was( much faster than ,2 routers
E 3se faster technology
e%elopments
,'&F wor+ing group in .FFB, proposed standard 2//.
Routers developed to be as fast as &; switches
E Remove the need to provide both technologies in same networ+
;270 does provide new capabilities
E Jo0 support
E &raffic engineering
E Airtual private networ+s
E ;ultiprotocol support
"onnection @riented &o$ $upport
>uarantee fi-ed capacity for specific applications
*ontrol latency:Mitter
'nsure capacity for voice
2rovide specific, guaranteed $uantifiable 07s
*onfigure varying degrees of Jo0 for multiple customers
;270 imposes connection oriented framewor+ on ,2 based internets
Tra!!ic 2ngineering
bility to dynamically define routes, plan resource commitments based on +nown
demands and optimi4e networ+ utili4ation
9asic ,2 allows primitive traffic engineering
E '.g. dynamic routing
;270 ma+es networ+ resource commitment easy
E ble to balance load in face of demand
E ble to commit to different levels of support to meet user traffic
re$uirements
E ware of traffic flows with Jo0 re$uirements and predicted demand
E ,ntelligent re)routing when congested
#PN $upport
&raffic from a given enterprise or group passes transparently through an internet
?5
0egregated from other traffic on internet
2erformance guarantees
0ecurity
Multiprotocol $upport
;270 can be used on different networ+ technologies
,2
E Re$uires router upgrades
*oe-ist with ordinary routers
&;
E 'nables and ordinary switches co)e-ist
Frame relay
E 'nables and ordinary switches co)e-ist
;i-ed networ+
MPL$ Terminology
MPL$ @peration
7abel switched routers capable of switching and routing pac+ets based on label
appended to pac+et
7abels define a flow of pac+ets between end points or multicast destinations
'ach distinct flow %forward e$uivalence class E F'*( has specific path through
70Rs defined
E *onnection oriented
'ach F'* has Jo0 re$uirements
,2 header not e-amined
E Forward based on label value
MPL$ @peration iagram
?=
2:planation 9 $etup
7abelled switched path established prior to routing and delivery of pac+ets
Jo0 parameters established along path
E Resource commitment
E Jueuing and discard policy at 70R
E ,nterior routing protocol e.g. 802F used
E 7abels assigned
7ocal significance only
;anually or using 7abel distribution protocol %7D2( or enhanced
version of R0A2
2:planation 9 Packet 0andling
2ac+et enters domain through edge 70R
E 2rocessed to determine Jo0
70R assigns pac+et to F'* and hence 702
E ;ay need co)operation to set up new 702
ppend label
Forward pac+et
Within domain 70R receives pac+et
Remove incoming label, attach outgoing label and forward
'gress edge strips label, reads ,2 header and forwards
Notes
;270 domain is contiguous set of ;270 enabled routers
&raffic may enter or e-it via direct connection to ;270 router or from non);270
router
F'* determined by parameters, e.g.
E 0ource:destination ,2 address or networ+ ,2 address
?B
E 2ort numbers
E ,2 protocol id
E Differentiated services codepoint
E ,2v= flow label
Forwarding is simple loo+up in predefined table
E ;ap label to ne-t hop
*an define 2<9 at an 70R for given F'*
2ac+ets between same end points may belong to different F'*
MPL$ Packet Forwarding
La7el $tacking
2ac+et may carry number of labels
7,F8 %stac+(
E 2rocessing based on top label
E ny 70R may push or pop label
3nlimited levels
E llows aggregation of 702s into single 702 for part of route
E *.f. &; virtual channels inside virtual paths
E '.g. aggregate all enterprise traffic into one 702 for access provider to
handleReduces si4e of tables
La7el Format iagram
Time to Li%e Processing
!eeded to support &&7 since ,2 header not read
First label &&7 set to ,2 header &&7 on entry to ;270 domain
&&7 of top entry on stac+ decremented at internal 70R
E ,f 4ero, pac+et dropped or passed to ordinary error processing %e.g. ,*;2(
E ,f positive, value placed in &&7 of top label on stac+ and pac+et forwarded
t e-it from domain, %single stac+ entry( &&7 decremented
E ,f 4ero, as above
E ,f positive, placed in &&7 field of ,p header and
La7el $tack
ppear after data lin+ layer header, before networ+ layer header
&op of stac+ is earliest %closest to networ+ layer header(
!etwor+ layer pac+et follows label stac+ entry with 06.
8ver connection oriented services
E &opmost label value in &; header A2,:A*, field
Facilitates &; switching
E &op label inserted between cell header and ,2 header
E ,n D7*, field of Frame Relay
E !ote" &&7 problem
??
Position o! MPL$ La7el $tack
F2"sD L$PsD and La7els
&raffic grouped into F'*s
&raffic in a F'* transits an ;720 domain along an 702
2ac+ets identified by locally significant label
t each 70R, labelled pac+ets forwarded on basis of label.
E 70R replaces incoming label with outgoing label
'ach flow must be assigned to a F'*
Routing protocol must determine topology and current conditions so 702 can be
assigned to F'*
E ;ust be able to gather and use information to support Jo0
70Rs must be aware of 702 for given F'*, assign incoming label to 702,
communicate label to other 70Rs
Topology o! L$Ps
3ni$ue ingress and egress 70R
E 0ingle path through domain
3ni$ue egress, multiple ingress 70Rs
E ;ultiple paths, possibly sharing final few hops
;ultiple egress 70Rs for unicast traffic
;ulticast
/oute $election
0election of 702 for particular F'*
<op)by)hop
E 70R independently chooses ne-t hop
E 8rdinary routing protocols e.g. 802F
E DoesnZt support traffic engineering or policy routing
'-plicit
E 70R %usually ingress or egress( specifies some or all 70Rs in 702 for
given F'*
E 0elected by configuration,or dynamically
?F
"onstraint 'ased /outing Algorithm
&a+e in to account traffic re$uirements of flows and resources available along
hops
E *urrent utili4ation, e-isting capacity, committed services
E dditional metrics over and above traditional routing protocols %802F(
;a- lin+ data rate
*urrent capacity reservation
2ac+et loss ratio
7in+ propagation delay
La7el istri7ution
0etting up 702
ssign label to 702
,nform all potential upstream nodes of label assigned by 70R to F'*
E llows proper pac+et labelling
E 7earn ne-t hop for 702 and label that downstream node has assigned to
F'*
llow 70R to map incoming to outgoing label
/eal Time Transport Protocol
&*2 not suited to real time distributed application
E 2oint to point so not suitable for multicast
E Retransmitted segments arrive out of order
E !o way to associate timing with segments
3D2 does not include timing information nor any support for real time
applications
0olution is real)time transport protocol R&2
/TP Architecture
*lose coupling between protocol and application layer functionality
E Framewor+ for application to implement single protocol
pplication level framing
,ntegrated layer processing
Application Le%el Framing
Recovery of lost data done by application rather than transport layer
E pplication may accept less than perfect delivery
Real time audio and video
,nform source about $uality of delivery rather than retransmit
0ource can switch to lower $uality
E pplication may provide data for retransmission
0ending application may recompute lost values rather than storing
them
F/
0ending application can provide revised values
*an send new data to Xfi-Y conse$uences of loss
7ower layers deal with data in units provided by application
E pplication data units %D3(
Integrated Layer Processing
dMacent layers in protocol stac+ tightly coupled
llows out of order or parallel functions from different layers
/TP Architecture iagram
/TP ata Trans!er Protocol
&ransport of real time data among number of participants in a session, defined by"
E R&2 2ort number
3D2 destination port number if using 3D2
E R&2 *ontrol 2rotocol %R&*2( port number
Destination port address used by all participants for R&*2 transfer
E ,2 addresses
;ulticast or set of unicast
Multicast $upport
'ach R&2 data unit includes"
0ource identifier
&imestamp
2ayload format
/elays
,ntermediate system acting as receiver and transmitter for given protocol layer
;i-ers
E Receives streams of R&2 pac+ets from one or more sources
E *ombines streams
E Forwards new stream
&ranslators
E 2roduce one or more outgoing R&2 pac+ets for each incoming pac+et
E '.g. convert video to lower $uality
/TP 0eader
F.
/TP "ontrol Protocol (/T"P)
R&2 is for user data
R&*2 is multicast provision of feedbac+ to sources and session participants
3ses same underlying transport protocol %usually 3D2( and different port number
R&*2 pac+et issued periodically by each participant to other session members
/T"P Functions
Jo0 and congestion control
,dentification
0ession si4e estimation and scaling
0ession control
/T"P Transmission
!umber of separate R&*2 pac+ets bundled in single 3D2 datagram
E 0ender report
E Receiver report
E 0ource description
E >oodbye
E pplication specific
/T"P Packet Formats
F2
Packet Fields (All Packets)
Aersion %2 bit( currently version 2
2adding %. bit( indicates padding bits at end of control information, with number
of octets as last octet of padding
*ount %5 bit( of reception report bloc+s in 0R or RR, or source items in 0D'0 or
9d'
2ac+et type %? bit(
7ength %.= bit( in 52 bit words minus .
,n addition 0ender and receiver reports have"
E 0ynchroni4ation 0ource ,dentifier
Packet Fields ($ender /eport)
$ender In!ormation 'lock
!&2 timestamp" absolute wall cloc+ time when report sent
R&2 &imestamp" Relative time used to create timestamps in R&2 pac+ets
0enderZs pac+et count %for this session(
0enderZs octet count %for this session(
Packet Fields ($ender /eport)
/eception /eport 'lock
00R*in %52 bit( identifies source refered to by this report bloc+
Fraction lost %? bits( since previous 0R or RR
*umulative number of pac+ets lost %21 bit( during this session
'-tended highest se$uence number received %52 bit(
E 7east significant .= bits is highest R&2 data se$uence number received from
00R*in
F5
E ;ost significant .= bits is number of times se$uence number has wrapped to 4ero
,nterarrival Mitter %52 bit(
7ast 0R timestamp %52 bit(
Delay since last 0R %52 bit(
/ecei%er /eport
0ame as sender report e-cept"
E 2ac+et type field has different value
E !o sender information bloc+
$ource escription Packet
3sed by source to give more information
52 bit header followed by 4ero or more additional information chun+s
'.g."
/ '!D 'nd of 0D'0 list
. *!;' *anonical name
2 !;'Real user name of source
5 ';,7 'mail address
6ood7ye ('F2)
,ndicates one or more sources no linger active
E *onfirms departure rather than failure of networ+
Application e!ined Packet
'-perimental use
For functions ` features that are application specific
F1