multiple token distributed loop local area networks

0 downloads 0 Views 107KB Size Report
and releases a free token after its packet transmission. The ... the fraction of time spent in information transfer is small. .... This rotation time is random as the num- ..... [9] J. Medhi. ... Stochastic Processes in Queueing and Reliability, pages.
MULTIPLE TOKEN DISTRIBUTED LOOP LOCAL AREA NETWORKS: ANALYSIS Nimmagadda Chalamaiah  Dept. of CSE JNTU College of Engineering Kakinada, India 533 003. [email protected]

Abstract With increased data rates, the packet transmission time of a LAN could approach or even become less than the medium propogation delay. Performance of many LAN schemes degrades rapidly under these conditions. Generally, the overhead associated with medium access protocol increases with the increase in propogation time relative to packet transmission time. In token ring networks this overhead depends on the round trip propogation delay of the channel. Several schemes, such as multiple rings (with multiple channels) and multiple access points (with multiple tokens) are proposed to decrease this overhead. In these schemes analytical and simulation results have shown improved performance. In the present paper we propose a distributed multiconnected loop topology with multiple tokens. We also present analytical results showing the packet delay performance. Finally we compare the performance of distributed multiconnected loops with multiple ring topology in terms of media access control, token coalescence and delay. Key words: Multiconnected loops, Shortest paths, Multiple tokens, Local area networks, Waiting time.

1. Introduction In token ring local area networks (LANs) a unique bit pattern called token is passed from node to node to grant medium access rights. A ready station must wait for a free token before it can transfer. Once a free token is received it transmits its packet by changing the token to connector and releases a free token after its packet transmission. The throughput of LANs is limited by the token hold time, packet lengths and speed of transmission [1]. More formally, throughput depends on overhead time spent by a packet in waiting for a free token. More the overhead less will be the throughput. At high speeds the packet transmission time T  On deputation at Indian Institute of Technology, Kharagpur. y Corresponding author.

Badrinath Ramamurthy y Dept. of CSE Indian Institute of Technology Kharagpur, India 721 302. [email protected]

will be comparatively small due to high data rate of the channels. Even for sufficiently large packet sizes it is possible that T becomes comparable to, or even less than the channel propogation delay  . More formally, if is defined as the ratio of the end-to-end propogation delay to the packet transmission time ( T ), then could be close to 1 or even greater at high speeds. We can view as the maximum number of packets that can be in transit in the transmission channel at any given time. Intutively higher values of (>> 1) appear to result in better performance. But not so. When is high (>> 1), the medium propogation delay is the dominant factor compared to the packet transmission time and hence the fraction of time spent in information transfer is small. Much of the time is spent in the overhead such as waiting for the free token to arrive. This results in a rapid degradation of peformance at high speeds with increasing in many LAN schemes [1]. Various token releasing schemes are proposed [4] depending on the time a free token is introduced. They are: conservative also called single packet approach, single token and multiple token (by early token release ET R operation) approarches. In the analysis presented in [4] for these three, the multiple token approach is shown to offer better delay performance than the other two. In an attempt to reduce the waiting for a free token and to further remedy the problems of low utilization and higher queueing delays at high data rates, protocols with multiple rings [3] and multiple tokens [7] are also proposed. The potential impact on the performance of them are that when multiple channels are used, messages are transmitted on each of the channels independently so that there is an increased bandwidth, there exist multiple paths between a source-destination pair giving improved fault tolerance and due to multiple tokens the time between consecutive network accesses and in turn the token interarrival times are reduced leading to decrease in wait time for the packets. In [3], the authors proposed an approach of multiple rings hav-

ing a token on each ring. An approximate analysis of their model shows that delay performance is better than a single ring with single token, analysed in [12]. But as the number of rings increases it is likely that all the tokens move together reducing the overall performance of multiple rings. Similarly the multiple token media access protocol [7] (by placing more than one token on a ring) was developed, analysed and also the problem of token coalescence was proved at high loads. In the present paper, we propose a network topology called multiconnected distributed loops in the lines of [11], with multiple tokens for media access. We present an analysis to model the delay of the packets. We compare the packet delays in this network with that of [3]. Section 2 describes the topology and routing. In Section 4 we propose a media access control (MAC) protocol. In Section 5 we analyse different traffics and finally in Section 6 delay analysis and comparisons with that of [3] are given.

2. Distributed loop networks

In a simple ring network, M processors 0; 1; 2; : :: (M , 1), are interconnected such that processor i is connected to processor (i + 1) mod M , 0  i  M , 1. These networks are vulnerable to faults and have large transmission delays. Any failure in one of the processors or the links affects many communication paths in the ring. Moreover, there are no alternate paths in the ring to bypass the faults. One common way to improve the reliability and delays in the simple ring network is by adding some extra links to it, called hop connections such that processors i is connected to (i+1), (i,1), (i + h) and (i , h) modulo M . We call h the hop size. Such loops, called distributed loops have potential applications in local area networks and parallel processing architectures. If the links have directed edges we call the network directed distributed loop, otherwise undirected distributed loop. An exhaustive survey on multiconnected distributed loop networks is found in [11, 2].

3. Routing in distributed loops For our multiple token approach we consider a directred distributed loop in which node i is connected to node (i + 1) mod M forming a loop ring or 1 , ring with loop connections and also to node (i + h) mod M forming hop rings or h , rings with hop connections. We also consider that h = GCD(M; h). With such a configuration, the network has h number of hop rings each having M h number of nodes, in addition to one loop ring. Figure 1 is an undirected distributed loop with M = 16 and h = 4. A walk between nodes on the hop connections is called hop traversal and the one on the loop connections is called loop traversal. A shortest path between any two nodes is either combination of both hop and loop traversals or only one of them. For a directed network, in any shortest path, the number of hop traversals are at most M h ,1 and loop traversals are at most h,1. Obvi-

0 15

1 2

14

3

13

4

12

11 5

10

6 9

7 8

Figure 1. Undirected distributed loop with M=16 and h=4

ously the order in which the hop and loop traversals are travelled is immaterial as far as reaching the destination node. Efficient algorithms to find shortest paths in multiconnected dstributed loop networks have been developed in [6, 5, 10]. We use a routing strategy in this paper that any packet is to first complete all its required hop traversals and later switch on to the loop ring for the remaining loop traversals.

4. MAC-Prototcol in distributed loop Every node on the network is connected to a hop ring and the loop ring with the respective ring interfaces. The media access control mechanism in each ring interface can be described as follows. Each of the (h + 1) rings has a token circulating round and granting permission for the nodes which have data packets to transmit. The internal block diagram of a node is shown in Figure 2. The h + 1 tokens are independent and operate asynchronously. We take advantage of the independent operation of all rings for message delivery and accordingly analyse any arriving traffic at a node. If a node has no packet to transmit, the token is passed to the next node connected to this interface. The arriving traffic at a node can be of three types: 01,traffic that needs only loop traversals, h0,traffic that needs only hop traversals and finally h1,traffic that needs both loop and hop traversals. For storing these three types of traffics, we take two buffers at each station, the 1,buffer and the h,buffer. The 01,traffic is stored in 1,buffer and the h0, traffic is stored in h,buffer.

1-Ring Token

Node i Traffic generated 01-Traffic (generated) Traffic Host from host Seperator (h0+h1)Traffic (generated)

1-Buffer

h-Ring Token Data

Host Traffic addressed to host

From h-Buffer

Node (i-1)

To 1-Ring Token Control Switching Traffic

To

From Node (i-h)

Node (i+1)

Node (i+h)

h-Ring Token Control

Figure 2. The internal block diagram of a node Since the h1,traffic uses both hop and loop traversals, it can be stored either in the 1,buffer or in the h,buffer, based on the order in which these traversals are made. One way is to store them in h,buffer at the sender and transmit on hop ring upto the required hop traversals. After all these hop traversals are completed, the node which is reached is called intermediate node and the packet is switched into the 1,buffer at this intermediate node. We will refer to this switching traffic as X s ,traffic. The 1,buffer also stores the 01,traffic. The combined traffics of X s and 01 is referred as s, traffic. Thus the h1,traffic waits at two nodes, the sender and intermediate nodes for channel access. The 1,buffer is serviced by the loop ring token and the h,buffer is by the corresponding hop ring token. When a node has a packet to transmit, the corresponding ring interfaces monitor the respective rings and capture the arriving token. The token is then converted into a connector data and a packet from the corresponding buffer is appended. At the end of packet transmission the token is released to the next station. If a node receives both hop and loop ring tokens simultaneously then both interfaces may transmit.

5. Traffic analysis Let us assume that each node receives traffic with average rate  with Poisson distribution. Since the h0,,01,

and h1,traffics are fixed fractions of the Poisson external arrival, we may consider them as Poisson with parameters h0 , 01 and h1 respectively. These traffics need hop, loop and both hop/loop ring tokens respectively as explained in Section 4. Also noted in Section 4 was that h = h0 + h1 is the parameter of the Poisson arrival that is stored in the h,buffer and 01 is stored in 1,buffer. These traffics are analysed below. The hop ring token is the server for the h,buffer queue. This server visits each hop node, picks a packet for transmission if the node has one and goes to the the next and so on, rotating round the ring. This rotation time is random as the number of nodes that want to participate and use the token is dependent on their buffers having at least one waiting packet. Thus the hop ring token service time is enerally distributed. So the h,buffer queue is modelled as M=G=1 queue. These assumptions are same as in [12]. Similarly the input to the 1,buffer is a combination of 01 and X s that switches. We call this combined traffic the s ,traffic and is stored in 1,buffer (refer Figure 3). The loop ring token is the server for this buffer and has the similar generally distributed service time. The arrival distribution of the s ,traffic is also generally distributed as the departures from the h,buffer (M/G/1) and inturn the swiching traffic X s are so. Hence the 1,buffer is considered as a G=G=1 queue. We find Dh and

Hop Ring Token Data

. . .. . .

Switching Traffic

s

X

Traffic Join

*

1-Buffer - Traffic *

X s - Traffic

1-Ring

01-Traffic From Host Node

Figure 3. The 1-ring queue model

D1 the packet delays on the h, and 1,rings respectively. Also we find Da weighted average delay, the delay any packet on the distributed loop as wh :Dh + w1:D1 , where wh and w1 are the weights associated with the h, and 1,ring traffics generated respectively. We use the result of [12] for finding Dh the h,buffer delay. In the next section we derive the D1 delay for the 1,ring. 6. Performance analysis In the following, first we introduce the notations used in our analysis. Then we find the delays of hop and loop ring and weighted average delay. Notations: M = Number of nodes. r = Node-to-node propogation time. h = Hop size = GCD(M; h). M , 1 (or h , 1) = Maximum number of hop (or loop) h traversals in a shortest path. Rh (or R1) = Round trip propogation time of hop (or loop) ring. Average propogation time for any packet on the hop ring is Rh , where R = M  r. Similarly for packets on the loop h 2 h ring it is h2  r as the average number of nodes that packets cross on loop ring is h2 :

x = Packet transmission time (fixed length packets).  = Average traffic arrival rate at a node from host (assumed Poisson arrival). We assume that for a packet all the destinations are equally likely, then the generated traffic at a node can be divided as:

h0M= The fractional traffic rate that travels only on h,ring h ,1  . = M ,1 01 = The fractional traffic rate that travels only on 1,ring h,1  . = M ,1

h1 = The fractional traffic rate that travels on both h, and (M , 1)(h,1) h  . 1,rings = M ,1 We note that



h0 + 01 + h1 : As per the MAC protocol h1 ,traffic travels first on the hop ring and later on the loop ring. Let h (similarly 1) be the average traffic rate generated by each host for h,ring =

,ring). So we have

(similarly 1

h

= =

1

= =

h0 + h1 h( Mh , 1) M ,1  01 + h1 M (h , 1) h M ,1 

wh = Weight of h-ring traffic generated by the host = h

h( M h ,1) M ,1 . w1 = Weight of 1-ring traffic generated by the host = 1 M (h,1) h M ,1 .

Wh (or W1 )

=

=

=

Waiting time of a packet in hop (or loop)

buffer. Note that h0,traffic suffers Wh waiting, 01, traffic suffers W1 waiting and h1, traffic suffers both Wh and W1.

Dh = Delay of a packet transmitted on to the h,ring, defined as the sum of waiting time in the h,buffer (Wh ), packet transmission time (x) and average propogation time on hop ring ( R2h ). D1 = Delay of a packet transmitted on to the 1,ring, defined as the sum of waiting time in the 1,buffer (W1 ),

packet transmission time (x) and average propogation time on loop ring ( h2  r).

Our interest lies in finding the distribution of s ,traffic, its first, second moments and variance. To find them consider,

Da = Weighted average delay = (wh  Dh + w1  D1 ). Nh (or N1 ) = Number of active stations on hop (or loop)

Th Nh

=

Th

= =

Th (or T1 ) = Cycle time of hop (or loop) ring token, defined

Th T1

= =

Nh  x + Mh  r N1  x + M  r

= =

h  Th s  T1

7. Delay calculations

The delay of Dh from the results of [12] is:

Dh where Mh

=

=

(1)

We now derive W1 , the waiting time of packets in 1,buffer, which has s ,traffic arrival. We consider the s ,traffic and the 1,buffer along with 1,ring token follow a G=G=1 queue. The upper bound on the waiting time [8] in G=G=1 queue is:

W1 

s + T1 )s ; where 2(1 , 1 )

(

2

2 s = Variance of arrivals at the 1,buffer queue input, T2 1 = Variance of service time by the 1,ring token, s = Mean arrival rate at the 1,buffer queue input, T1 = Mean service time of the 1,ring token, 1 = Traffic intensity on the 1,ring = s  T1 .

h,ring

Pi be the number of packets that are carried by the h,ring token in its ith rotation. Pr[Pi = k] = ( Mh Ck ) kh  (1 , h )( Mh ,k); whose p:g:f , the probability generating function is M (h  s + 1 , h ) h Let P = total packets carried by the h,ring token in a unit P

M , the number of nodes on any hop ring. h

2

Average number of rotations per unit time by the token, M 1 , h  h  x n = M r h

time

Mh [

r 2 1 , (Mh )h  x , (Mh )h  r Rh ; 2 +x h ] + x + 2

=

M  h h Nh  x + Mh  r M  x+ M r h h h M r h M 1 , h  h  x

Let

h (or 1 ) =Pr[A node on the hop (or loop) ring is active] P r stands for probability. h 1

Nh  x + Mh  r

Since Nh is binomially distributed,

ring. A station on a hop (or loop) ring is active if at any time it has at least one packet waiting in its h, (or 1,) buffers. It is assumed that the number of active stations is a binomially distributed random number. Mean of Nh (or N1 ) is Nh (or N1 ) as the time between a token leaving a station, making one complete round on hop (or loop) ring and reaching the same station again. Mean of Th (or T1 ) is Th (or T1 ). In each rotation of hop (loop) ring tokens, one packet from the corresponding buffers is transmitted. So,

=

=

P1 + P2 + : : : + Pn;

where n = average number of rotations in a unit time. Assuming that Pi’s are independent of each other and also of n as h (arrivals to h,buffers) is Poisson, the p:g:f of P is 1, M h h x M Mr h h) ] h 1, M h h x r h)

h  s + 1 ,  = (h  s + 1 ,  The mean and variance of P are [9], P (s)

P (s)

(2)

=

= =

P2 (s)

=

=

[(

dP (s) ] ds (s=1) M  h h dP (s) ] d2P (s) ] [ (s=1) + [ 2 ds ds (s=1) , dP (s) ] )2 ([ ds (s=1) M   )2 [ 1 , r ( h h Mh h 1 , Mh h x ] [

8. Conclusions

Average number of packets that switch at a node

Xs

P (s) h1 M , 1  h h

=

=

M h

M h

, 1  h1

Variance of number of packets that switch at node

X2 s

P2 (s)

=

M ( h

,

1)2

 ( h1 )2 h

The mean and variance of s are

s 2 s

=

01 + X s

=

01 +

M h

M h

, 1  h1

01 + X2 s 01 + ( M 1

= =

1

r

h

 h

,  h  x M h

(3)

, )(

h1  Mh M h

2

,1 )

(4)

References

Similarly we give below the T1 and T2 1 .

T1

N1 x + Mr

=

and with the binomial distribution of N1 , the p:g:f of N1 is

N1 (s)

=

  s + 1 , 1 )M

( 1

So the p:g:f of T1 is

T1 (s)

=

sMr (1  sx + 1 , 1 )M

We get from [9]

T1

= =

T2 1

=

dT1(s) ] ds (s=1) Mr 1 , s  M  x M  1 (1 , 1 )2

A distributed multiconnected loop of M nodes with connections i to (i + 1) and (i + h) mod M having h = GCD(M; h) is considered. Such a topology has h number of hop rings in addition to one loop ring. In these (h + 1) rings one token in each of them circulates granting permission to waiting nodes to send their data packets. Every node transmits in shortest path. In doing so, some traffic traverses only the 1,ring, some only on h,rings and rest through both of them. These traffics, their delays on the hop and loop rings and weighted average delay for the entire network are derived. Finally the weighted average delay is plotted for M = 50 and h = 2; 5; 10 in Figure 4 along with the mutliple ring(=2) multiple token of [3]. It is clear from Figure 4 that for all values of h, delays of distributed loop are smaller than that of multiple ring (=2). It is because the arriving traffic travels on the shortest path to their destinations and accordingly the rings are shared. But in multiple rings topology, the traffic travels on any of the rings that receives a token first. The results also show that the delays are smaller than that of multiple rings topology in the ranges of  upto 1200 (for h = 2), upto 255 ( for h = 5) and 170 ( for h = 10) packets per bit time.

[

(5) (6)

Using (3),(4),(5),(6) and (2), D1 is computed as D1 = W1 + x + h2  r From Dh and D1 the Da is computed using the weights wh and w1. We took M = 50, x = 100, r = 6, R1 = 300, Rh = 150 for h =2, Rh = 60 for h =5 and Rh = 30 for h = 10. The average delays for h = 2, 5 and 10 are given in Figure 4 comparing with multiple ring of [3]. Also the hop and loop ring delays for h = 2 and 5 are given in Figure 5 and 6. All the values of the times are expressed in bit time. It can be seen that these delays are smaller than multiple ring of [3].

[1] B. W. Aeysundara and A. E. Kamal. High speed local area networks and their performance. ACM Comput. Surv., 23(2):221–263, 1991. [2] J. C. Bermond, F. Comellas, and D. F. Hsu. Distributed loop computer networks : A survey. J. Parall. Distr. Comput., 24:2–10, 1995. [3] L. N. Bhuyan, D. Ghosal, and Q. Yang. Approximate analysis of single and multiple ring networks. IEEE Trans. Comput., C-38(7):1027–1040, 1989. [4] W. Bux. Local-area subnetworks: A performance comparison. IEEE Trans. Commun., COM-29(10):1465–1473, 1981. [5] N. Chalamaiah and R. Badrinath. Analysis of multiconnected loop topologies for interconnection networks. In Proceedings of National Systems Conference on Integrated Systems with Multiple Technologies, DRDO, RCI, Hyderabad,, pages 327–332. Allied Publishers, 22-24, Jan 1998. [6] N. Chalamaiah and R. Badrinath. Finding shortest paths in distributed loop networks. Inf. Process. Lett., 67(3):157– 161, 1998. [7] A. E. Kamal. The multi-token ring network protocol. Comput. Networks ISDN Syst., 26:1477–1494, 1994. [8] L. Kleinrock. Queueing Systems: Vol 1, chapter : The Queue G/G/1, pages 275–318. John Wiley Sons, 1975. [9] J. Medhi. Stochastic Processes, 2nd edition, chapter : Stochastic Processes in Queueing and Reliability, pages 407–523. Wiley Eastern Limited, 1994. [10] K. Mukhopadhyaya and B. P. Sinha. Fault-tolerant routing in distributed loop networks. IEEE Trans. Comput., C44(12):1452–1456, 1995.

Delay Rings=2 h=2 h=5 h=10

550.00 500.00 450.00 400.00 350.00 300.00 250.00 0.00

100.00

Lambda x 10-6 200.00

Figure 4. Delay in multiple ring and distributed loop with h=2,5,10 [11] C. S. Raghavendra and J. A. Silvester. A survey of multiconnected loop topologies for local computer networks. Comput. Networks ISDN Syst., 11:29–42, 1986. [12] A. S. Sethi and T. Saydam. Performance analysis of token ring local area networks. Comput. Networks ISDN Syst., 9:191–200, 1985.

Delay x 103 Rings=2 Hop Loop Average

1.60 1.40 1.20 1.00 0.80 0.60 0.40 0.20 0.00

200.00

Lambda x 10-6

Figure 5. Delay in distributed loop with h=2

Delay Rings=2 Hop Loop Average

450.00 400.00 350.00 300.00 250.00 200.00 150.00 100.00 100.00

Lambda x 10-6 200.00

Figure 6. Delay in distributed loop with h=5