INFORMATION SCIENCES •=N ~ N A n O N A L
EI~EVIER
fOURNAt
Information Sciences 115 (1999) 11-28
On a multicast resequencer for A T M networks 1 Wei Kuang Lai *, Mei Chian Liou, Duan Ruei Shiu, Wen Jiunn Hsiao High Speed Networks Laboratory, Institute of Computer and Information Engineering, National Sun Yat-Sen University, Taiwan, ROC Received 1 March 1997; received in revised form 20 July 1998; accepted 1 October 1998
Abstract
With a multicast resequencer, multipoint-to-point connection can be realized. However, a multicast resequencer also introduces extra delays. The aim of this paper is to determine if an efficient multicast resequencer design is possible. One simple model and one refined model with flow through are proposed to design the multicast resequencer. Simulation results indicate the designed resequencer is fast enough to meet the speed demand of A T M networks. Mean delay is within several ~ts when the output link is fast enough. Cell loss rate can also be near zero when buffer size is a little larger than the mean input P D U size and the input link is fast enough. The performance of the resequencer is sensitive to the speed of the output link. In our simulation, 20 Mbps of output link bandwidth is needed for a total input bandwidth of 4.8 Mbps to have a mean delay of less than 30 ~ts for each cell. The paper also shows a resequencer can support the largest number of multicasting groups with the same number of virtual paths if each group member is randomly distributed in a backbone network's two sides. The resequencer may provide a solution for establishing multipoint-to-point connections in A T M networks. © 1999 Elsevier Science Inc. All rights reserved.
Keywords. A T M ; Multipoint-to-point connection; Resequencer
* Corresponding author. Fax: +886-7 5254301; e-mail:
[email protected] i The work is supported in part by NSC85-2221-E-110-005. 0020-0255/99/$19.00 © 1999 Elsevier Science Inc. All rights reserved. PII: S 0 0 2 0 - 0 2 5 5 ( 9 8 ) 10087-7
12
W.K. Lai et al. / Information Sciences 115 (1999) 1 1 ~ 8
1. Introduction
Due to the rapid development of network technology, now different types of sources such as voices, images, data, and video can be transmitted in one network. In the mean time, people are eager to take the benefits of the new network technology to deliver new applications. For example, teleconference and computer supported cooperative work (CSCW) are two of those applications. One basic function of those applications is multicasting, which allows multiple members to cooperate in a network. Both teleconference and CSCW need software to support multicasting [1]. Turner predicted the importance of multicasting and gave many applications [19]. Multicasting can be implemented by using the concept of a logical address. One major advantage of a logical address is its easy implementation. Only a logical address represents many different addresses. Messages can be sent to members within the same group or members of the other groups. By sending message to a logical address, all members involved in multicasting receive the message [2,3]. There are many studies about multicasting in traditional networks. In the document of RFC 1112 [4], every group has a unique Class D multicasting address. Distance Vector Multicasting Routing Protocol (DVMRP) [5] and Multicast Open Shortest Path First (MOSPF) [6] can be used to find routing paths for a multicasting. MBONE [7] is a virtual network that provides multicasting for wide area networks. There are also studies related to multicasting in ATM networks [22-27]. Among them, Armitage proposed a MARs model for IP multicasting over ATM networks. Gauthier, Boudec, and Oechslin proposed a multicast protocol in Ref. [23]. Seith discussed the problem of bandwidth allocation in multicasting [26]. Grossglauser and Ramakrishnan studied the scalable problem for multicasting [27]. ATM networks are connection oriented so the studies for traditional bus networks can not be applied directly to ATM networks. In ATM networks, connections can be classified into four types: (1) Pointto-point connection: The connection can be used to connect two ATM terminal systems. The connection can be a simplex connection or a duplex connection. Establishing this type of connection is supported by the current ATM networks based on UNI 4.0 [18]. (2) Multiple point-to-point connections: Multiple connections are established between two terminal systems. Connections can be simplex or duplex. This is not natively supported by ATM networks implementing UNI 4.0 [18] and still needs further study [8]. (3) Point-to-multipoint connection: This connects one source terminal system to many destination terminal systems. Point-to-multipoint connection is like a tree. As shown in Fig. 1, TEl communicates with multipoints. TEl is the root and TE2 through TE5 are leaves. The tree only has branches in local ATM switches, which are LATM A and LATM B in Fig. 1. Those switches
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
13
rE § Fig. 1. Point-to-multipoint connection.
duplicate cells to each of their branches. The connection is a simplex connection. The direction is from root to leaves. It is not allowed to transmit cells from leaves to root or to other leaves. This has been implemented in current A T M systems, which implement UNI 4.0 signaling service. (4) Multipoint-to-point connection: With this connection, cells are allowed to transmit from leaves to root or to other leaves. Due to the lack of standard, this type of connections also needs further study [8,18] and will be discussed in this paper. To support duplex multicasting over ATM networks, both point-to-multipoint connection and multipoint-to-point connection are needed. Wei, Laiw, Estrin, Romanow, and Lyon [9] proposed a resequencer model for multicasting over ATM networks. Their software resequencer needs cells to be reassembled into PDUs in the resequencer before forwarding them. Turner, Dittia, and Fingerhut proposed a nonblocking switch for realizing efficient reliable multicast [20,28]. They implemented the switch for multipoint-to-point connections based on a basic resequencer model. Instead, we focus on how to modify a resequencer to maximize the performance. This paper compares different approaches for multicasting and shows that a resequencer can support the largest number of multicasting groups if each group member is located in either side of a backbone network with the same probability. Then, we propose a software resequencer that does not reassemble cells into PDUs. Mean cell delays and throughputs are simulated for the proposed resequencer. Simulation results show that the resequencer may provide a good solution to solve the problem of multipoint-to-point connection. The paper is organized as follows. Related work in duplex multicasting and comparisons between different approaches are discussed in Section 2. A resequencer model is proposed in Section 3. Simulation results are then presented in Section 4 and conclusions are summarized in Section 5.
14
FILK. Lai et al. / Information Sciences 115 (1999) 11 28
2. Related work in duplex multicasting and comparisons between different approaches 2.1. R e l a t e d w o r k in duplex multicasting
In A T M Adaptation Layer 5 (AAL5), there is no message identifier field (MID). Thus if multiple cells from different sources are interleaved in one connection, there is no way to differentiate them. This means cells from one source must be received in sequence without interleaving with other sources. This will cause problems for multipoint-to-point connection [10,21]. In A T M Adaptation Layer 4 (AAL4), there is a M I D field for interleaving cells from different sources. However, AAL4 is far more complicated to implement than A A L 5 [8]. The M I D has a limited size which could restrict the number of participating members in a group. Furthermore, if sources are from different networks in different locations, it is not easy to give a unique M I D value for each source. A resequencer can handle A T M P D U s from different sources. This is done by buffering cells from each source with a queue to form complete PDUs. Then each P D U is sent out on the output channel without interleaving with other PDUs. Hence the receiver can reassemble cells into P D U s without the help of M I D fields. This is shown in Fig. 2. Two resequencers together can be used to
I I I I m PDU
IIIIIII CellQueue for
i
[~CellQueuefor
./
'~x
z
\
Fig. 2. A resequencer.
/7
I,EK. Lai et al. / h~formation Sciences 115 (1999) 11-28
15
implement multicasting. A duplex VC connection is established between those two resequencers. Each member is connected to one of the resequencer by a duplex VC connection. One example of a group with four members is shown in Fig. 3(a). Besides using resequencers, four other approaches have also been proposed to solve the multicasting problem [29]. 1. VP multicasting: A duplex multipoint-to-multipoint virtual path (VP) connection is built to connect members in the same group. Within the VP connection, each source uses a unique virtual channel identifier value (VCI) to build point-to-multipoint virtual channel (VC) connection [11]. Different VC connections can have different quality of service (QoS) classes. Fig. 3(b) is an example of four members. One problem with VP multicasting is multipoint-tomultipoint VP is not supported for current UNI standard. Also it is not easy to assign a unique VCI to each VC connection. 2. Multicast server with tree topology: Each terminal system in a multicasting group is connected to a multicasting server by a simplex connection. The multicasting server has a point-to-multipoint connection to each terminal system involved in the multicasting. The multicasting server receives cells from each terminal system. Cells from one P D U are received and transmitted by the server in sequence. One example with four members is shown in Fig. 3(c). This approach is adopted by LAN Emulation (LANE) [12]. In this approach, the multicast server may become a performance bottleneck. 3. Multicast server with star topology: Each terminal system is connected to a multicasting server by a duplex connection. Fig. 3(d) is an example of four members. Again, the multicast server may become a performance bottleneck. 4. Multicast with jull mesh connections: Each terminal system in a multicasting group has a point-to-multipoint connection [13]. A group with four members is shown in Fig. 3(e). This approach may need too many virtual connections.
2.2. Comparisons between different approaches Let each group consists of N members. If they are randomly distributed in a backbone network's two sides with equal probability, there are close to NI2 members in each side for large N. Here, for simplicity, we assume there are N/2 members in each side of the backbone network. This backbone network can support as many as c VP connections and each VP connection can support at most c VC connections. Thus backbone network can support up to c2 VC connections. Also a duplex connection is counted as two connections. Since the resequencer, the VP multicasting, the tree topology, the star topology, and the full mesh are most often adopted for implementing multicasting, we will compare their needs for VPI/VCIs, which influences their scalability when participating members increases.
PICK. Lai et al. / Information Sciences 115 (1999) 11-28
16 a
on, conn,,c,on
TE~
TE~4
b
A TM Network
C
TwoVPConnectJons
A TM Network
Three VC Connections
TE-2
TE-4
d
A TM Network
Two VC
TE-2
TE-4
e
A TM Network
TE-I~
TE-2
Connectfons
~
Four VC Connections
t.
TE-3
TE-4
Fig. 3 (a). T w o resequencers are needed to implement multicasting. (b). VP multicasting. (c). Multicast server based on tree topology. (d). Multicast server based on star topology. (e). Multieast based on full mesh connections.
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
17
If N members are distributed randomly in the network, we can partition all users into several regions. Then, a switch will be selected as a resequencer in each region and members in the region will send data or receive data via the resequencer. Finally, we connect these resequencers by bi-directional ¥ C s and then a c o m m o n multicast tree is formed. Researchers have proposed several tree construction protocols [30,31], which will not be addressed in this paper. Fig. 3(a) is an example of using a resequencer to realize multicasting with N = 4 . Both the backbone network and each member have two VC connections. For N members, the backbone network uses two connections for a multicasting group. Each member needs two connections. Each resequencer is connected to one half of the terminals and backbone network with duplex connections. In total, there are N + 2 VC connections for the resequencer. A backbone network with c VP connections can maintain c2/2 multicasting groups. Fig. 3(b) is an example of VP multicasting with N = 4. The backbone network has two VP connections and four VC connections. Each member also has two VP connections. F o r N members, the backbone network needs at least two VP connections and N VC connections. I f two VP connections can support N VC connections, then there are two VP connections for each member. Two VP connections are also needed in the backbone network for each group. The network in total can have at most c/2 groups. Fig. 3(c) shows an example with N = 4 for multicast server with tree topology. The backbone network needs three VC connections and each member needs two VC connections to support multicasting. In general, for N members, the backbone network needs N/2 + 1 VC connections. Each member has one incoming VC connection and one output VC connection. This topology needs one multicast server. N + 1 VC connections are linked to the server. Each group needs N~ 2 + 1 VC connections in the backbone. Thus the backbone network can support as m a n y as c2/(N/2 + l) different groups. Fig. 3(d) is an example of multicasting server with star topology and N = 4 . The backbone network needs four VC connections and the member needs two VC connections. For N members, the backbone network needs N/2 duplex connections or N VC connections. Each member has one duplex connection or two connections. This topology also needs one multicast server and the server has N input connections and N output connections. So the backbone network can support as m a n y as c2/N groups. Fig. 3(e) is an example of multicasting with full mesh connections. The backbone network uses ['our VC connections. Each member also uses four VC connections. For N members, the backbone network and each member have N VC connections connected to them. The backbone network can support up to c2/N multicasting groups. The comparisons between different approaches are listed in Table 1. F r o m Table 1, we can see the resequencer approach can support the largest number of multicasting groups. Thus, when VPIs and VCIs are valuable resources, the resequencer is a better solution.
18
14ZK. Lai et al. / lnJbrmation Sciences 115 (1999) 11-28
Table 1 Comparisons between different approaches Resequencer
VP multicasting
Tree topology
Star topology
Full
mesh Connections in the backbone network Connections for
2
2 x (# of VPs)
~+ 1
N
N
2
2 x (# of VPs)
2
2
N
each member Number of servers Connections for each server
2 N+2
0 or more 0 or more
1 N+ 1
1 2x N
0 0
Supporting groups
c2
c
,.~
c2
c,2
2
2
~
N
~-
(at most) One duplex connection is counted as two simplex connections. Group members are assumed to be distributed in both sides of a backbone network with the same probability. N is total number of group members and 0 ~ c - 1 is the range of VPI and VCI.
3. Portable software telecommunication resequencer (POSTER) Wei, Liaw, Estrin, and R o m a n o w proposed a software model to design a resequencer. Their model uses the characteristics of existing A T M signaling [14-16]. The source calculates and determines the route to the intermediate station. Then the source segments PDUs into cells and sends them to the intermediate station. The intermediate station reassembles cells into PDUs and examines destinations of the PDUs. The intermediate station continues calculating the next destination and forwards each P D U to its next intermediate station. This process is repeated until each P D U reaches its destination. Since cells are reassembled into PDUs in each station, it takes a lot of time in Segmentation and Reassembles (SARs) and determining the next destination. This does not take the advantages of an A T M network when connections are established from sources to destinations. Once the connection is established there is no need for each intermediate station to calculate the next station. And it will be faster if cells are sent through intermediate stations without being sent to upper layer for SARs. In this paper, a Portable Software Telecommunication Resequencer (POSTER) is proposed [29]. A POSTER can be implemented in an ATM switch's software [17] or a workstation. Since the design does not use any special features of a particular machine, the POSTER is highly portable between different platforms. The POSTER uses a CBA (Common Buffer Area) to queue incoming cells from N different sources. A CBA is shared by N different sources. Each can have different sizes according to their quality requirements. The CBA can also be evenly divided by N different sources. However, it is not as efficient as the shared buffer design in the use of the buffer space. The POSTER treats the cells from different sources as A T M Adaptation
19
V~K. Lai et al. / Information Sciences 115 (1999) 11 28
Layer cells with Type 0 (AAL0). In the AAL0, cells are sent to the application layer without any process. It is dependent on the application layer to process those cells. In the following, three different models are proposed. Model 1 is an improved model of Wei's software model, which does not reassemble cells into a complete P D U in each intermediate node. Model 2 is an equivalent software model of Wei's hardware model, which incorporates the flow through mechanism. Model 3 is a further refined of model 2 and is used to design POSTER. 3.1. Model 1
In this model, a CBA consists of N cell queues for N incoming links and one EoP (End of Payload) queue. Once a cell queue receives an EoP cell, it sends the incoming link's VPI/VCI value to the EoP queue. Each cell queue has a time out mechanism. If it is not empty and does not receive a P D U ' s EoP cell for a long tome or receives other PDUs, it will d u m p cells already in its cell queue to receive new PDUs. The EoP queue is a First In First Out (FIFO) queue. When an EoP queue is not empty and a output link is available, a VPI/ VCI value is used to trigger a specified cell queue to send out a complete P D U to the output link. The flow graph of this model is shown in Fig. 4. 3.2. Model 2
Sometimes there is only one input link that has incoming cells. In model 1, incoming cells still need be stored in a cell queue. They cannot be sent out in
Multiple Cell Queue Input Cell C
~
I I II I I[ I ~
if (cell c is EoP)
Trigger OulpulCellC
EoPQueue Output
~ ~
~VPINCI
TnggerI Output Cell C ~?<'
Fig. 4. Flow graph for model 1.
/
20
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
InputOneCellC From The OutputLink
-2: No Incoming Link - 1: n:
Multiple Cell Queue Flow Through if (Flag== Multiple
Cell
I
Set Flag =
VPI/VCIof CellC.
is ~ ~ , ~ ~ ~
--NO_
/ //Ouput one cellC/
/
NO
i
Set Flag = -1.
~li
I
/
Set Flag = -2.
Autput OneCellC ~
/
Output,~ie,
Fig. 5. Flowgraph for model2. the output link until a complete P D U arrives and the cell queue is triggered by a message from the EoP queue. The output link is idle when the cells are stored in the cell queue. In this model, the incoming link is allowed to use the output link directly when the output link is idle. Thus model 2 is a flow through model. In this model, a flag is used to differentiate different states. When flag = - 2 , it means the output link is idle. If the flag is -1, it means one of the multiple cell queues is making a transmission. Once a flag has a positive value n, it means an incoming link with a VPI/VCI value of n is making a flow through transmission. The flow graph of this model is shown in Fig. 5.
W.I~ Lai et al. / Information Sciences 115 (1999) I 1 ~ 8
21
3.3. M o d e l 3
In model 2, it may happen that there are cells in cell queues but there are no VPI/VCI values in the EoP queue because no EoP cells are received by cell queues yet. Although model 2 uses the concept of flow through, the output link is still idle when there are no cells in the incoming links. In this model, if there are no arriving cells in the incoming links, one of the nonempty cell queues is allowed to use the output link even when the EoP queue is empty. To implement this mechanism, one more F I F O queue called Begin of Packet (BOP) queue is introduced. The BoP queue decides which one of the cell queues is allowed to transmit in the output link. Once a cell queue receives a BoP cell, it sends the incoming link's VPI/VCI value to the BoP queue. The cell queue will not send the incoming link's VPI/VCI value to the EoP queue until it receives a EoP cell. Since now the transmission can be either triggered by the BoP queue or the EoP queue, the queue length for the BoP queue and the EoP queue may be different. An array, Status [0, is used to record the difference between the BoP queue and the EoP queue for a connection with VPI/VCI value = i. This array is then used to maintain consistency between the BoP queue and the EoP queue. Note the sequence of VPI/VCI values for the BoP and the EoP may be different. A P D U ' s BoP m a y arrive very early but its EoP may arrive very late. The Status[0 is thus handled by the following rules. 1. Each time the BoP queue outputs a VPI/VCI value which is equal to i, Status [0 is increased by one. 2. Each time the EoP queue outputs a VPI/VCI value which is equal to i, Status [0 is decreased by one. 3. If the transmission is triggered by the BoP queue, the EoP cell may be lost. In this situation, a time out mechanism is used to reduce the value of the Status [0 by one. Assume Status [t] is n. When n > 0, it means the BoP queue has outputted n VPI/VCI values which are equal to i. Thus the EoP queue must discard n VPI/ VCI values which are equal to i. Similarly, when n < 0, it means the BoP queue has outputted n VPI/VCI values which are equal to i. Thus the EoP queue must discard n VPI/VCI values which are equal to i. The details of the flow graph are shown in Fig. 6.
4. Simulation results Assume there are 20 senders as inputs for a resequencer. Each sender generates 30 P D U s per second. The total CBA size is 4000 cells. For simplicity, the queue size for each sender is given 200 cells and there are no shared buffers in the simulation. Light speed in a fiber is 0.65*3 x 108 (m/s). Thus link propagation delay is assumed to be 5 x 10-9(s/m). The switch propagation delay is
22
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
,-A 0
E
,¢ ©
r~
,6
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
23
assumed to be 2.5 x 10-5(s/cell), which most switches today can achieve. The output link is STS-12. In Fig. 7, mean delays for different PDU sizes were simulated. Normal line represents all input links are STS-12. Dotted line represents 1/5 of the input links are STS-l and 4/5 of the input links are STS-12. Light dash line represents 2/5 of the input links are STS-1 and other input links are STS-12. All three models were simulated. Model 1 is represented by triangle symbols, model 2 is represented by circle symbols, and model 3 is represented by box symbols. From Fig. 7, mean delay for each PDU of model 2 and model 3 is much shorter than model 1. This shows flow through mechanism is important in decreasing average mean delay. Model 3 uses a BoP queue to decrease idle time of the output link and thus has a shorter mean delay than model 2. Fig. 7 also
Queuing Delay in Resequencer f
0.012
/
0.010
"•
,s
a
•
: /
,/
.'# ~
o
."
/
o-
/
..~"
o . " o . . o"
,' -
D""
.o'
..c," ,."""
/
j
:' ,' 0 004
.6
,O" .~'
/
:i , ~
0 006
®
"'"
/
/ ./"
0.008
/
O
.="
"
P ,a..
,.
,;;;,~--:-#'" ~---~ ....tl::::::~"" j.tl:::::~t
."
..'o-" .o--~'~: ......
-"
..-:'.:.~"
0.002
.
.
.
.
I
. . . .
500.
I
1000.
. . . .
I
1500.
I
. . . .
2000.
Mean PDU Size (Bytes) Y Scale = 10^-3 Note: There are 20 senders. Sender data rate is 30 PDUs/sec. Traffic Pattern is Poisson Distribution. Normal lines: all input links are STS-12. Dotted lines: 1/5 of input links are STS-I and 4/5 of input links are STS-12. Light dashed lines:2/5 of input links are STS-1 and 3/5 of input links are STs-12. Triangle symbol: Model 1. Circle symbol: Model 2. Box symbol: Model 3. Fig. 7. Mean delays versus different P D U sizes.
24
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
shows low speed input links can increase average mean delay for P D U in all links. This is because when the resequencer connects a low speed input link to a high speed output link, the speed is decided by the low speed input link. Since model 3 has the best results, model 3 is adopted in the following simulation. In Fig. 8, mean delays for different numbers of senders are simulated for model 3. In Fig. 8, normal line represents mean P D U size of 1500 bytes, light dash line represents mean P D U size of 1000 bytes, and dotted line represents mean P D U size of 500 bytes. The input links are all STS-3 links, which are represented by circle symbols or all STS-12 links, which are represented by box symbols. The output links are STS-12. Results show if sender number is the same, a larger mean P D U size usually has a longer mean delay. For the same P D U size, using STS-3 as input links has a longer mean delay than using STS-12 as input links. For mean P D U size of 1500 bytes, the time delay difference for using STS-3 and STS-12 as input links is between 0.7-2 ~ts. For mean P D U size of 1000 bytes, the difference is between 0.1-1 ~ts, and for mean P D U size of 500 bytes, the difference is between 0.1-0.3 ~ts. Fig. 9 shows mean cell throughput versus queue size. In this figure, 10 senders are simulated. Each sender has a generation rate of 30 PDUs/s. Input
Queuing Delay in Resequencer g
7
2. 1.
lb.
'
'
'2b.
'
'
3b.
'
'
4b.
Sender Number
Y Scale =10^-6 Note: There are 20 senders. Sender data rate is 30 PDU/sec. Traftie Pattern is Poisson Distribution. Normal lines: mean PDU size is 1500 bytes. Light dashed lines: mean PDU size is 1000bytes. Dotted lines: mean PDU size is 500 bytes. Circle symbol:all input links are STS-3. Box symbol:all input links are STS-12. Fig. 8. Mean delays for different members of senders.
50.
25
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
M ean Cell Throughput (Cells/See) 9000..~ 8000"
1
7000..~
sooo.~ 4ooo.--
~
~
aooo.-20002
,IP
~ooo.-
o.
-'
O.
'
'
'
I
10.
'
'
'
'
I
20.
'
'
'
'
I
30.
'
'
'
'
I
'
,
40.
,
,
I
50
Max MQueue Size (Cells) Note: There are 10 senders. Sender data rate is 30 PDU/sec. Traffic Pattern is Poisson Distribution. Normal lines: number of cells, which can be correctly reassembled by receiver. Dotted lines: total cells received by receiver. Box symbol: mean PDU size is 400 bytes. Circle symbol: mean PDU size is 800 bytes. Triangle symbol: mean PDU size is 1200 bytes. Plus symbol: mean PDU size is 1600 bytes. Star symbol: mean PDU size is 2000 bytes. Fig. 9. Mean cell throughputs for different queue sizes.
links and output link are STS-12. Different mean P D U sizes are simulated. Box symbol represents mean P D U size of 400 bytes, circle symbol represents mean P D U size of 800 bytes, triangle symbol represents mean P D U size of 1200 bytes, plus symbol represents mean P D U size of 1600 bytes, and star symbol represents mean P D U size of 2000 bytes. Normal line represents correctly received cells after reassembly in the receiver and dotted line represents total number of cells received by the receiver. From the results, eight cells for each sender, which is a little larger than mean P D U size, are enough to have no cell loss for mean P D U size of 400 bytes. The total simulation time is 2 s. Also from the results, 18 cells, 26 cells, 34 cells, and 42 cells are enough for mean P D U size of 800 bytes, 1200 bytes, 1600 bytes, and 2000 bytes, respectively. The buffer sizes needed are a few larger than mean PDU sizes.
26
W..K. Lai et aL / Information Sciences 115 (1999) 11-28
Fig. 10 shows mean delays versus different link bandwidths. Ten senders are simulated. Each sender generates 30 PDUs/s. In this simulation, each sender is given 10 Mbps of bandwidth. Different mean P D U sizes are simulated. In Fig. 10, plus symbol represents mean P D U size of 500 bytes, box symbol represents mean P D U size of 1000 bytes, triangle symbol represents mean P D U size of 1500 bytes, and circle symbol represents mean P D U size of 2000 bytes. Results show if output bandwidth is too small, mean delay will become very large. For example, if each input link has a mean P D U of 2000 bytes, each input link's generation rate is 0.48 Mbps and total input rates from 10 senders are 4.8 Mbps. Fig. 10 shows if the output link bandwidth is
1.2
1
1.0
0.8
0.6 c-
0.4
0.2
I
00
''1
I
' ' ' 1
20.
''
I
'
40.
I
I
I ' ' '
60.
I
I
T
I'
80.
Output VC Link Bandwidth (Mbps) Y Scale = 10^-3 Note: There are 10 senders.
Sender data rate is 30 PDUs/sec. Traffic pattern is Poisson distribution. Plus symbol: mean PDU size is 500 bytes. Box symbol: mean PDU size is 1000bytes. Triangle symbol: mean PDU size is 1500 bytes. Circle symbol: mean PDU size is 2000 bytes. Fig. 10. Mean delay is sensitive to output link bandwidth.
~
'
'l
100.
W.K. Lai et al. / Information Sciences 115 (1999) 11-28
27
less than 20 Mbps, the mean delay will increase dramatically. By the way, the mean delay is less than 30 Its when the output link bandwidth is 20 Mbps. Thus the mean delay for each cell in the resequencer POSTER is very sensitive to the output link bandwidth.
5. Conclusions
In this paper, a multicast resequencer is designed. The paper tries to find if there are some factors that influence the performance of a multicast resequencer. As we expect, the performance of model 1 is not good enough. This is because the output link may be idle even there are incoming cells from the incoming links. Model 2 is better than model 1 because of flow through mechanism. Model 3 improves the performance further by adding an additional queue, a BoP queue. Results show the resequencer may provide a good solution to implement multipoint-to-point connection.
References [1] G.J. Heijenk, X. Hou, I.G. Niemegeers, Communication Systems Supporting Multimedia Multi-user Applications, IEEE Network Meg., 1994. [2] W. Stallings, Data And Computer Communication, 4th ed., Prentice Hall, Englewood Cliffs, NJ, 1994. [3] S. Deering, Multicast Routing in a Datagram Internetwork, Stanford University, PhD Thesis, 1991. [4] S. Deering, Host Extensions for IP Multicasting, Internet Network Working Group, RFC1112, 1989. [5] D. Waitzman, C. Partridge, S. Deering Nov 1088, Distance Vector Multicast Routing Protocol, Internet Network Working Group. RFC1075. [6] J. Moy, Multicast Extension to OSPF, lnternet Draft, Proteon, Inc., Working Draft, September 1992, expires February 1993. [7] H. Eriksson, MBONE: The multicast backbone, Communications of the ACM 37(8), 1994. [8] D.E. McDysan, D.L. Spohn, ATM: Theorem and Application, McGraw-Hill, New York, 1995. [9] L. Wei, F.C. Liaw, D. Estrin, A. Romanow, Analysis of a Resequencer Model for Multicast over ATM Network, Preceedings of the 3rd International Workshop on Network and OS Support for Digital Audio and Video, Sun Diego, 1992. [10] W. Stallings, ISDN And Broadband ISDN With Frame Relay and ATM, 3rd ed., Prentice Hall, Englewood Cliffs, NJ, 1995. [11] R, Bubenik, M, Gaddis, J. DeHart, Communicating With Virtual Paths And Virtual Channels, INFOCOM '92. [12] A T M Forum, LAN Emulation over ATM Specification Version 1, ATM Forum Specification, 1995. [13] D. Aschkenasy, W. Rudd, Video multicast, in: An IP/ATM Environment, Oregon State University, 1995.
28
I4~K. Lai et al. / Information Sciences 115 (1999) 11-28
[14] Fore Systems Inc., SPANS UNI: Simple Protocol for ATM Network Signaling (User-toNetwork Interface) Release: 3.0, Fore Systems Inc., 1994. [15] Fore Systems Inc., SPANS NNI: Simple Protocol for ATM Network Signaling (Network-toNetwork Interface) Release: 3.0, Fore Systems Inc., 1993. [16] ITU-T: Draft Recommendation Q.2931 1993, B-ISDN User-Network Interface Layer 3 Protocol, Geneva, 1993. [17] Fore Systems Inc., ForeRunner ASX-200 ATM Switch User's Manual, Fore Systems Inc., 1995. [18] ATM Forum, ATM UNI Signaling Specification Version 4.0, Technical Committee, 1996. [19] J.S. Turner, New directions in communications (or which way to the information age?), IEEE Commun. COMM-24 (1986) 8-15. [20] J. S. Turner, An optimal nonblocking multicast virtual circuit switch, in: Proceedings of the IEEE INFOCOM '94, Canada, 1994, pp. 298-305. [21] W.K. Lai, M.C. Liu, D.R. Shiu, On a multicast resequencer for ATM networks, Euromicro 96, Czeck Republic, 1996. [22] G.J. Armitage, IP multicasting over ATM networks, IEEE J. Selected Areas in Commun. 15 (1997) 445-457. [23] E. Gauthier, J.Y. Le Boudec, P. Oechslin, SMART: A many-to-many multicast protocal for ATM, IEEE J. Selected Areas in Commun. 15 (1997) 458-472. [24] F.M. Chiussi, Y. Xia, V.P. Kumar, Performance of shared-memory switches under multicast bursty traffic, IEEE J. Selected Areas in Commun. 15 (1997)473-487. [25] K. Bala, K. Petropoulos, T.E. Stern, Multicasting in a linear lightweight network, in: Proceedings of the IEEE INFOCOM '93, USA, 1993, pp. 1350-1358. [26] A.S. Seith, A model for virtual tree bandwidth allocation in ATM networks, in: IEEE INFOCOM '95, USA, 1995, pp. 1222-1229. [27] M. Grossglauser, K.K. Ramakrishnan, SEAM: Scalable and efficient ATM multipoint-tomultipoint communication [Extended Abstract], in: Proceedings of the Sixth International Workshop on Network and Operating System Support (NOSSDAV '96), Japan, 1996. [28] J.S. Turner, Zubin Dittia, J. Andrew Fingerhut, System Architecture Document for Gigabit Switching Technology, Version 3.0, 1/9/95, Tech. Rep. Washington University, St. Louis. [29] M.C. Liu, On a Multicast Resquencer for ATM Networks, Master Thesis, National Sun YatSen University, Taiwan, 1996. [30] C Shields, J.J. Garcia-Luna-Aceves, The Ordered Core Based Tree Protocol, in: Proceeding of the IEEE INFOCOM'97, Kobe, Japan, April 1997. [31] D. Dykeman, H.L. Truong, Alternatives for the support of the ATM group services, ATM Forum contribut. 95-0438, 1995.