Sie sind auf Seite 1von 6

A Packet Eligible Time Calculation Mechanism for

Providing Temporal QoS for Multicast Routing


Ye Ge, Jennifer C. Hou and Hung-Ying Tyan
Dept. of Electrical Engineering
The Ohio State University
Columbus, OH 43210-1272
Tel: (614) 292-7290 (voice), (614) 292-7596 (fax)
E-mail: {gey,jhou,tyanh}@ee.eng.ohio-state.edu

Abstract c2: Applications with end-to-end delay bound and inter-


message delay jitter bound requirements.
In this paper, we propose a packet eligible t i m e calcula-
c3: Applications with end-to-end delay bound, inter-message
t i o n mechanism and its associated information update method
delay jitter bound, and inter-destination delay jitter
t o provide temporal QoS t o multicast services, in terms of de-
bound requirements.
lay bound coupled with inter-message delay jitter bound and/or
bounded inter-destination delay jitter bound. W e assume the c4: Applications which require the delay experienced by each
availability of a multicast tree o n which the delay between a packet from a source node to every destination node falls
source and a n y destination falls within the end-to-end delay in [D- 6, D ] ,where D is the user-specified group-specific
bound. W e then exploit the idea of artificially delaying trans- delay bound and 6 is the user-specified group-specific de-
mission of data packets until their eligible times [5], and model lay jitter bound.
each router as a regulator followed by a packet scheduler. A We assume the availability of a multicast routing protocol
data packet i s not eligible t o be scheduled until the current t i m e that generates multicast trees which satisfy the end-to-end de-
i s greater than or equal t o its eligible time. lay bound. (For ease of exposition, we use the QoS-enhanced
For each temporal QoS required, we derive the appropriate CBT protocol proposed in [3] as an example protocol.) To
packet eligible times. W e also devise a n information update fulfill the various delay jitter constraints, we then exploit the
method t o collect/update in a decentralized manner the param- method of artificially delaying transmission of data packets un-
eters needed in the calculation of packet eligible times. With til their eligible times [ 5 ] , and model each node as a regulator
all the parameters available, a n intermediate router can calcu- followed by a packet scheduler. A data packet is not eligible to
late packet eligible times and the upper bound o n the buffers be scheduled until the current time is greater than or equal to
needed in order t o fulfill the &OS.Finally, we validate the pro- its eligible time. The key issue is then to derive, with respect
posed mechanism in terms of the probability of locating feasi- to the temporal QoS requirements, appropriate packet eligible
ble multicast trees and message overheads, and scalability with times.
event-driven simulations. The packet eligible time under the inter-message delay
jitter constraint ((C2)) has been derived in the jitter-EDD
1 Introduction scheme [ 5 ] . In this paper, we focus on deriving packet eligible
times for applications in the categories of (C3) and (C4).
Many future applications of computer networks such as
The rest of the paper is organized as follows. In Section 2 ,
distance education, teleconference and distributed interactive
we first describe the network model under consideration and
simulation, rely on the underlying networks to provide multi-
formally define the four categories of applications to be sup-
cast services with quality-of-service (QoS) guarantees. The
ported. We present the packet eligible time calculation mech-
QoS guarantees are usually expressed in terms of the end-
anism in Section 3, followed by a discussion on the associated
to-end delay bound, the inter-message delay jitter bound,
information update strategy in Section 4. We briefly discuss
the inter-destination delay jitter bound, and/or the minimum
the event-driven simulation results in Section 5 and conclude
guaranteed bandwidth. Depending on the nature of applica-
the paper in Section 6.
tions, a single QoS or a combination of several may be required.
The main intent of this paper is thus to develop a packet eligi-
ble time calculation mechanism and the associated information
2 Background Materials
update strategies to provide QoS to multicast services. This 2.1 Network Model
mechanism, coupled with any multicast routing protocol that
gives the end-to-end delay bound guarantee, can provide tem- We represent a network by a weighed digraph G = (V,E )
poral QoS to the following four categories of applications: where V denotes the set of nodes (routers and end hosts) and
E the set of arcs. The later corresponds to the set of network
C1: Applications with end-to-end delay bound requirements. communication links connecting the nodes. Without loss of
The work reported in this paper was supported in part by DARPA generality, we only consider digraphs in which there exists at
under Contract No. N66001-97-C-8526, by NSF under Grant most one arc between a pair of nodes. Let a multicast group
No. NCR-9625064, and by the OSU Graduate School Fellowship. M c V be a set of hosts involved in the group communication.
Q 1999 IEEE.
0-7803-5284-X/99/$10.00 721
Each node v E M is a group member. We consider the most
general many-to-many multicast paradigm in which each host
v E M can be a source node as well as a destination node -d-
in the multicast group. Packets originated from node v are "U
Lt.1
delivered to a set of destination nodes M - { U } .
A multicast tree T is a subgraph of G that spans all the
nodes in 1M and has no cycles. In addition, T includes relay L", LY *
routers along the path(s) in the tree from a source node to some
destination node(s). For ease of exposition, we assume that the
-
delay between an on-tree router and any group member on its LR;:#

directly attached subnet is negligible. jFrom the perspective


of data tr.ansfer, each source node U, E M may view T as a
tree rooted at itself. We denote the tree rooted at node U, as
Tu8. All the group members in the set M - { U , } are the leaf Figure 1: The internal queuing structure of an cln-tree
nodes of Tu,. We use P T ( ~ ,to
, denote
~ ) the path from a source ICUI&T. --
node vs to an on-tree router or an end host, U , on the tree Tu,
(and I PT(V,,u) I the hop count of the path). We also use 2.3 QoS-Based Multicast Routing That Pro-
D$(,,-.,,, to denote the delay which the lcth packet experiences vides End-to-End Delay Bound
- <--.-,
~ ) a Source node ' 5 to an on-tree
the path P T ( v ~ 7from The proposed packet eligible time calculation mechanism
node U. We assume that a group member may not Join/leave a assumes the availability of a QoS-driven multicast routing pro-
multicast group during the transmission of a message session, tocol that provides the end-to-end delay bound betveen a
but is otherwise free to join/leave the multicast group between node and any destination node. ~ h is, ~the t multi-
transmissions of message sessions. cast tree located by the multicast routing protocol satisfies
Eqs. (2.1). The QoS-driven CBT Protocol Proposed in [3], for
2.2 Formal Statement of Application Re-
example, is such a protocol. Due to the limited space, we refer
quirements the interested readers to [3] for a detailed account. IVe also

be formally stated as follows.


3 Packet Eligible Time Calculation
C1: Given the end-to-end delay bound D , this category of
applications requires Mechanism
3.1 Nodal Structure of On-Tree Nodes
Vk E N ,V V d E M - {vs}, and Vu, E M. The internal queuing structure of an on-tree router, nk, is
depicted in Fig. 1. When a packet leaves an on-tree router,
C2: Given the end-to-end delay bound D and the inter-
it is stamped with a holding time which indicates hcw long
message delay jitter bound 6,, this category of appli- the packet should be held in the regulator of the immediate
cations requires that downstream router before it can be scheduled. The regulator
holds the packets from its upstream link until their eligible
D$(udJd)ID, (2.2)
times (when they will be delivered to a scheduler). Ncte that
and a regulator is associated with each incoming link. If router
IG(v8,Ud) - D!r(Us,Ud)l 5 am, (2.3) n k has e on-tree outgoing links, Lzyt, 1 5 j 5 e, each of
Vk,i E N , VVd E M - { u s } , and Vu, E M. the e outgoing links, becomes the incoming link of the
C3: Given the end-to-end delay bound D , the inter- immediate downstream router at which Lzy:"is incident, and
destination delay jitter bound &, and the inter-message a regulator is equipped at that immediate downstream router.
delay jitter bound ,,a this category of applications re- A scheduler is responsible for multiplexing packe1.s from
quires that different regulators (and hence from different connectioris). We
do not specify any specific scheduling discipline here, because
D$(Ua,Ud,) 5 Dl (2.4)
the proposed mechanism is well-suited for a n y schedul ng dis-
-dD!r(Us,Ud])l
~ ~ + ( u ~ , u ~ ) I 6m, (2.5) cipline with a finite per-node delay bound. Because regula-
and tors are inserted before schedulers in the nodal structure, it
ID+(vs,vdl) - D$(Vs,Udz)l 5 'dl (2.6) suffices to consider work-conserving message schedulers with
finite per-node delay bounds.
Vk,i E N , vVdl,Vd2 E M - { U S } , and VU, E M .
To facilitate analysis, for each on-tree link Lin incident at
C4: Given the end-to-end delay bound D and the delay jitter an on-tree router n k , we define (refer to Fig. 1)
bound 6, this category of applications requires that the
delay experienced by the kth packet from a source node
U, to every destination node v d satisfies

where d z z p is the propagation delay which a packet experi-


D -6 I I
D$(u.3ud, D, (2.7) k
ences when it traverses link L p , ciski is the per-node delay
V k E N , V V d E M - { U , } , and Vu, E M . bound corresponding to the ith scheduler at router 7 i k , and
722
Figure 2: A path PT(~,,,~)
a n d the regulators a n d sched-
ulers along the path.

D F Z is equal to the value of D T n x calculated at router nkls Figure 3: Calculation of holding time for applications in
ki k+l
immediate downstream router, n k + l , that is incident at L$Yt. the category Of (c3)'
The parameter D T n x represents the maximum delay expe-
k Derivation of holding times for (C2): To provide
rienced by packets that depart from router 7 2 k - 1 to router n k ' s
multicast applications in (C2) with both the delay and inter-
downstream leaf routers.
message delay jitter guarantees, we exploit the result reported
in the jitter-EDD scheme [5], and set
3.2 Calculation of Packet Eligible Times
Let n k be the kth intermediate router along the unique HTi,Vs = ETi-l,Vs + dSk-l - fi-l,Va (3.4)
on-tree Path, PT(v,,v~)I from a Source node 21s to a destination for IC 2 1. Note that ET;-l,vs + d , , - , is the time at which the
node vd. w e first define the following terms to facilitate the ith packet is scheduled to leave router n k l l if it has experi-
calculation of packet eligible times: enced the maximum scheduling delay at all upstream routers,
1. ET;,,* is the eligible time of the ith packet (sent by a and ( E T L - I , ~4-
, d S k - l - ~ L - I , ~is ~the
) amount of time by
source node v,) at router nk.
which the ith packet arrives early at router n k from router
n k - 1 . Hence, router n k absorbs the delay jitter from router
2. GT& is the time at which the ith packet is generated at n k - l by holding the packet for ET;-^,,* + d,,-, - fL-l,v8)
a source node v,. time units.
3. dskj is the Per-node delay bound of the j t h ~ h e d u l e r Derivation of holding times for (c3):To fulfill the
Skj at router n k . If it is clear from the context which delay bound and inter-destination delay jitter bound require-
scheduler at router n k is referred to, the index j may be ments, we set the holding time for the regulator at an on-tree
dropped. router n k as
4. HTL,v8 is the holding time for the ith packet (from a
source node v,) at router n k ' s regulator.
HTL,Vs
= (ETL-l,Vs + dSk-l - f;-l,V,) + (Dn","_", - DFr)
5. is the time at which the ith packet (from a source
4(dr-dx
S k1
-l)- (3.5)
node v,) arrives at router n k . = +
( E T ; - I , ~ ~dr-xl + (DZC:l - D F T ) ,
- fi-l,va)
6. fi,u3 is the time at which the ith packet (from a source where DZC:l = maxj DFZZ and dr-zl = maxj dsk--l.j is
k-1.j
node v,) departs from router nk.
the maximum per-node scheduling bound at router n k - 1 . The
For all the four categories of applications, the relation be- first term in Eq. (3.5) enforces each packet to experience the
tween ET;,,* , GTi8, a i , v , and HT;,,* can be expressed as: maximum delay over the upstream routers. The second term
in Eq. (3.5) absorbs the difference in the delays among dif-
ET&,, = GT&, (3.2) ferent downstream interfaces (whose rationale is depicted in
Fig. 3). Suppose router n k - 1 has C outgoing on-tree links,
k - - 1 , 2 , . . .,
Lout Lout Lout
and k-l,l, k - l , e and that ~ : " _ t , , =
~ L? for some
j . Then, DZE:l = rnaxl<jSe DYZZ is the maximum delay
=d , V a + HTi,,,, (3.3) k-1,j
for k 2 1. Eqs. (3.2)-(3.3) state that the ith packet (from a between 'Outer n k - l and any Of 'Outer n k - l ' s downstream

source node v 8 ) is eligible to be scheduled at router nk only leaf routers. The second term in Eq. (3.5) enforces the
when it has been held in the regulator for HT;,,s units of copies of a packet (one for each of n k - 1 ' ~ outgoing interfaces)
time. In other words, derivation of ET;,v3 depends on that of experience the maximum DZt:l. If a packet that
verses does not experience this maximum delay (i.e.,
HG,,*.
DTZZ # DE::,) for some i, it is artificially held in the regu-
Derivation of holding times for ( C l ) : Any multicast k-l,i
lator of the immediate downstream router n k for DP:?, - D T F
routing protocol that renders a multicast tree which satisfies
the end-to-end delay D suffices to provide applications in the units of time. The third term in Eq. (3.5) enforces all the copies
category of (Cl) with their desired temporal &OS. For this of a packet experience the maximum per-node scheduling delay
category of applications, the packet eligible time equals the at router n k - l .
packet arrival time, and the holding time in the regulator at Let DEax 5 maxVdEMnT-{,,) D!&vs,vd) be defined as the
each on-tree router is zero. maximum delay which the kth packet experiences between a
723
source node U , and any of the on-tree destination nodes. Then, +
the ith packet departs early (ETL-l,v, drdXl- fL-l,ts), (ii)
Eq. (3.5) ensures that packets all experience the delay of D F x On","_", , and (iii) dr-xl -dskb1. Items (i) and (iii) 'can be locally
between a. source node vs and any on-tree destination node. calculated by nk-1 and passed to nk. To calculate item (ii),
Note that the above mechanism does not work (in the sense each router nk-1 has to collect and update D T Z , for every
(k-l),C
that the inter-message delay jitter constraint may be violated)
outgoing interface e (as DFi:l = maxj D:.9."t ).
if group members may join and leave during the transmission k-1,j

of a message session. Hence, we impose the restriction that no On the other hand, the third item in Eq. (3.5), DT:,
member may join/leave a multicast group during the trans- should be maintained and updated by router nk itself. Specif-
mission of a message session (but may be otherwise free to ically, recall that DYkx can be expressed as (Eq. (3.1))
E
join/leave the multicast group between transmissions of mes-
sage sessions).
Derivation of holding times for (C4): To fulfill the
"fixe# d'elay requirement imposed in Eq. (2.7), we set the The parameter dpr","can be collected by the underlying unicast
Lk
holding time at an on-tree router nk as routing protocol, the parameter dski depends on the schedul-
sTk,ps > k = 0, ing discipline used a t the ith scheduler of router nk and is
HTL,,, =
{ (ETi-l,va + d s k - i -.f~-l,vs)+ssTk,v,, Isrc< M ? assumed to be bounded and available, and DrEZ's
(3.6) on-line collected and updated.
k.t
have to be

where the term (ET;-l,V, + d S k - l - fi-l,vs) enforces each packet Similarly, to facilitate calculation of holding tiines for
to experience the maximum delay over the upstream routers, and applications in the category of (C4), each on-tree router
sTk,,s is the slack time that should be absorbed at router n k in
order to make all packets arrive at their destinations D - 6 times
+
nk--1 should calculate (i) (ETi-l,vs dr-zl -- fi-.l,,8), (ii)
units after their departure from the source. sTk,vs is calculated by D&ve,nk-l), and (iii) N k - 1 , and provide them (in the header
evenly dividing the current total slack time among router nk and of a packet) to its immediate downstream router nk. In ad-
its downstream routers. Specifically, let dition, router nk has to maintain and update D T F by itself
k = 1, using the same method as that for ((33).
Prop f d S k - l + STk-l,u,,
+ d~p-l k > 1, In summary, the only information to be on-line collected,
maintained, and updated by each on-tree router nl: when-
(3.7)
. .
denote the accumulative delay the ith packet experiences on ever group membership changes is the maximum delay, D T Z ,
the path from the source U , to router nk-1, Mnk-l,vsdenote which packets experience between router nkk outgoing inter-
the set of router nk-1'~downstream members (with respect to face t? and router nk's downstream leaf nodes, Ve. In the case
source U,), and of supporting applications in the category of (C4), each on-
tree router also needs to maintain and update the maximum
number, Nk, of hops between router nk and all of router nk's
downstream group members.
denote the maximum number of hops between router nk-1 and An intuitively straightforward (but expensive) method for
all of router nk-1'~downstream group members. Then, STk,,, information update is for each on-tree router nk to update
can be expressed as DT","t's and Nk whenever a group member joins/le.ives the
k.t
multicast tree. In what follows, we present a much less expen-
1
sTk,v, -max(D - D&(v,,nk-l)- D T F - 6,O). (3.9) sive information update method.
Nk-i
Note thai max(D - D&(,,,nk-ll - D F F - 6,O) represents the
4.2 Information Update in the Case of Mem-
ber Join
slack time that should be absorbed by router nk and its down-
stream routers. Consider the situation in which a join-request trzrels hop-
by-hop toward the core until it reaches an on-tree router nk.
4 Information Update Procedures For clarity of notation, let the path the join-request xaverses
be denoted as P = (v1,v2,v3, . . . , v j = nk). The join request
In this section, we first identify the parameters needed for carries (in addition to the interface information) (i) 1,he accu-
the eligible time calculation mechanism (which we term as the mulative delay information, (ii) the per-node delay 'Jound of
state information). Then, we discuss how the parameters are the previous router, and (iii) the cumulative hop c o m t infor-
on-line maintained and updated by each on-tree router as the mation. When a join-request arrives a t router U ; on interface
state information. e, it carries DE::, and N;-1. Router vi updates its
D T Z and N;, respectively, as
4.1 State Information Maintained by Each vi *t

On-Tree Router
To facilitate calculation of holding times for applications in
the category of (C3), each on-tree router nk-1 should calculate When the join-request arrives at the on-tree router vj = nk ,
and pas:; (in the header of a packet) parameters needed for each router nk conducts the first eligibility test (as summarized
immediate downstream router nk to calculate the holding time. in Section 2.3) to check whether or not the end-to-end de-
jFrom Eq. (3.5), we know that router nk-1 has to provide to lay bound of the new member, as well as the existing guar-
nk the following information: (i) the amount of time by which antees to the other on-tree members, can be fulfilled. If the

724
Figure 4: Performance comparison between the CBT protocol and the QoS-enhanced CBT protocol with the proposed
packet eligible time calculation mechanism for applications in the category of (Cl).

join-request survives the first eligibility test, routern k then 4.3 Information Update in the Case of Mem-
conducts the second eligibility test and checks whether or not ber Leave
the new branch P replaces some of the tree branches incident
at router nk and become the branch with the maximal delay When a group member leaves the multicast group, if the
or the maximal hop count with respect to any of nk's incom- local router does not have downstream on-tree nodes (routers
ing interfaces, C;. If so, the delay information and/or the hop and/or directly attached end hosts), the router sends a quit-
count information at some on-tree nodes reachable on interface notification message to its parent router on the tree and deletes
C; may have to be updated as a result of the member join. the corresponding forwarding cache. The process repeats until
Take the two on-tree routers n k - 1 and nk in Fig. 3 as an the quit-notification message arrives on interface C at a router
example. Suppose a new branch P = (VI, V Z ,~ 3 , ... ,Vj = nk) (say router nk) that has other downstream on-tree nodes (with
joins the multicast tree at router nk through interface C' + 1. respect to any source). If the leaving branch is the branch with
Let DF;" = maxlSjlp D Y Z denote the maximum outgoing the maximal delay (i.e., DL"."-"t= D:rX) or the maximum num-
k,j k.L

delay with respect to the incoming interface L F , router nk


ber of hop counts, with respect to any of nk's incoming inter-
checks' whether or not faces Ci, router nk's upstream routers reachable on interface
should be notified of the member leave. An information-
update message is again composed that contains the new value
of D:;" = maxjge DYZ."-"t,the per-node delay bound d,, and
k,j
Nk, and forwarded upstream.

or 1 P I > the currently maintained value of N k , with respect 5 Simulation Results


to L;I". If either case is true, router n k updates its DF;" as
d PLout
ToP
k,t'+l
+ +
d s j - l DGY or Nk as I P I, and notifies router We have developed a customized Java-integrated network
simulation tool, N e t S i m Q , to evaluate the QoS control capa-
n k - 1 (and perhaps further upstream routers) of the member bility for systems equipped with different admission control,
join and the possibility of updating DFf:;,j, OFET,, and N k - 1 . resource reservation, QoS unicast/multicast routing, and mes-
(In this case, an information-update message is composed that sage scheduling mechanisms [4].
contains the new values of LIT,", N k , and the per-node delay Using NetSimQ , we validated the proposed mechanism by
bound d,, and forwarded upstream on interface Lin .) As in a incorporating it into the QoS-enhanced CBT protocol, and
core-based multicast tree any group member may be a source evaluate it in terms of the probability of locating feasible mul-
(i.e., many-to-many multicast paradigm), the check has to be ticast trees and message overheads with event-driven simula-
performed for every incoming interface of node nk's. tions. Due to the limited space, we refer interested readers to
our technical report for detailed simulation description[2].
In the simulation, the network size varies from n = 10
'in addition to the first eligibility test. to 100 routers. The network topology is generated using the

725
Figure 5: Performance comparison between the CBT protocol and the QoS-enhanced CBT protocol with the proposed
eligible time calculation mechanism for applications in the category of (C3). --

method proposed in [6]. The size of the multicast group varies scheduler. Each packet is held in the regulator until its eligible
from 4 to 16 members (with each member being both a source time is smaller than or equal to the current real timi:. We
and a destination). Group members and the core are randomly identify four categories of applications that require different
picked up. The QoS requirement of each multicast session used levels of &OS.For each category of applications, we then derive
in the simulation is the end-to-end delay bound that varies the packet eligible times for fulfilling the QoS requirements.
from 5.0 to 9.0 units of time and the end-to-end delay jitter We also discuss the associated information update method.
bound that varies from 2.0 to 4.0 units of time. The delay at Finally, we validate the proposed mechanism by incorpo-
each link is uniformly distributed with mean 1unit of time, and rating it into the QoS-enhanced CBT protocol and evaluate its
is collected by the underlying distance vector routing protocol. performance using an event-driven simulation to,ol NetSimQ.
Totally 100 multicast sessions are generated in each simulation
run. The simulation results are shown in Fig. 4 and Fig. 5 References
The simulation results indicate that the performance gain
(in terms of locating feasible multicast trees) can be as high A. Ballardie. Core based trees (CBT Ver 3) multicast rout-
as 50% for applications in the category of (C3). Although the ing protocol specification. http://www.ietf.org/internet-
message overhead can be at times four times higher than that drafts/draft-ietf-idmr- cbt-spec-v3-O f . txt, August 1998.
without any QoS enhancement, it incurs mainly in the off-tree Ye Ge, Jennifer C. Hou, and Hung-Ying T y m . A packet
search stage (when a join-request searches for a feasible route eligible time calculation mechanism for provicling temporal
to an on-tree router), rather than in the stage of conducting qos for multicast routing. Technical Report, July 1!)98.
eligibility tests and information update. That is, the mes- Hung-Ying Tyan, Chao-Ju Hou, and Bin Wang. Cn pro-
sage overhead is contributed, in large, by the QoS-enhanced viding quality-of-service control for core-based mi,lticast
CBT protocol, but not the information update method in the routing. Proc. of I E E E 19th Int'l Conf. o n Distributed
proposed mechanism. We are currently investigating how to Computing Systems, June 1999.
further reduce the message overhead by devising alternative
Hung-Ying Tyan, Bin Wang, Yi Ye, and Chao-Jii Hou.
off-tree search approaches for the QoS-enhanced CBT proto- NetSimQ: A Java-integrated network simulation t Dol for
col.
QoS control in point-to-point high speed networks. 3rd
N A S A Research and Education Network Workshop, Au-
6 Conclusion gust 1998.
D. C. Verma, H. Zhang, and D. Ferrari. Delay jitter control
In this paper, we present a packet eligible time calculation for real-time communication in a packet switching network.
mechanism for providing temporal &OS in multicast routing. In Proc. Tracomm'91, pages 35-43, April 1991.
This mechanism is well-suited for both source-based and core-
B. Waxman. SWSL: routing of multipoint connections.
based multicast routing protocols as long as the protocol locate
I E E E Journal o n Selected Areas i n Communications,
multicast Crees that satisfy the end-to-end delay bound.
6:1617-1622, December 1988.
We model each node as a regulator followed by a packet

726

Das könnte Ihnen auch gefallen