the s++ mac protocol

11
ELSEVIER Computer Networks and ISDN Systems 26 (1994) 745-755 and ISDN SYSTEMS The S++ MAC protocol Greg Watson Hewlett-Packard Laboratories, Filton Road, Stoke Gifford, Bristol BS12 6QZ, UK Abstract In this paper we describe the S+ + protocol, a new protocol designed for Gbit/s LANs. The S+ + protocol has evolved from our experience with an earlier protocol, called S, which was implemented as part of a Gbit/s LAN project. Our experience with S enabled us to identify ways by which the performance could be significantly improved while retaining the inherent elegance and ease-of-implementation of the original protocol. We present simulation results for S++ which show how the protocol provides these characteristics. In addition we compare the performance of S+ + to that of a well known MAC protocol, DQDB. Key words: S+ + ; DQDB; MAC protocols; Fairness; Gbit/s LAN 1. Introduction Medium Access Control, or MAC, protocols have been the subject of a vast amount of re- search over the past two decades. One reason for this research is that all higher layer services are built on the fundamental packet transfer service which is provided by the MAC sub-layer, and it is the MAC protocol which determines the charac- teristics of this fundamental service. Hence, im- provements to MAC services result in improved system performance, while the provision of new MAC services means that new applications can be developed. In this paper we describe a MAC protocol which can provide the services required by a high-speed network, and which is reasonably in- dependent of the physical network parameters. The first version of this protocol, called S [1], was implemented within the HANGMAN prototype 0169-7552/94/$07.00 © 1994 Elsevier Science B.V. All rights SSDI 0169-7552(93)E0023-8 Gbit/s network [2] where it was seen to offer very good performance. In addition, the HANG- MAN project demonstrated how synchronous services can co-exist with the S protocol. How- ever, the S protocol does not provide optimum use of resources when only a single node is active. By improving this special case we discovered a new protocol, called S+ +, that provides superior behaviour even when many nodes are active. The paper is organised as follows: in the next section we discuss the characteristics of a MAC protocol that will be important for high-speed networks. The S protocol is introduced in Section 3, and we describe a limitation of that protocol. In Section 4 we show how this limitation can be overcome by the S+ + protocol. The section con- tinues with an investigation of the performance of S+ +, based on the characteristics described ear- lier. The paper concludes with a review of en- hancements to S+ + and other protocols. reserved

Upload: greg-watson

Post on 21-Jun-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

ELSEVIER Computer Networks and ISDN Systems 26 (1994) 745-755

and ISDN SYSTEMS

The S++ MAC protocol

Greg Watson Hewlett-Packard Laboratories, Filton Road, Stoke Gifford, Bristol BS12 6QZ, UK

Abstract

In this paper we describe the S+ + protocol, a new protocol designed for Gbi t / s LANs. The S+ + protocol has evolved from our experience with an earlier protocol, called S, which was implemented as part of a Gbit/s LAN project. Our experience with S enabled us to identify ways by which the performance could be significantly improved while retaining the inherent elegance and ease-of-implementation of the original protocol. We present simulation results for S++ which show how the protocol provides these characteristics. In addition we compare the performance of S+ + to that of a well known MAC protocol, DQDB.

Key words: S+ + ; DQDB; MAC protocols; Fairness; Gbi t / s LAN

1. Introduction

Medium Access Control, or MAC, protocols have been the subject of a vast amount of re- search over the past two decades. One reason for this research is that all higher layer services are built on the fundamental packet transfer service which is provided by the MAC sub-layer, and it is the MAC protocol which determines the charac- teristics of this fundamental service. Hence, im- provements to MAC services result in improved system performance, while the provision of new MAC services means that new applications can be developed.

In this paper we describe a MAC protocol which can provide the services required by a high-speed network, and which is reasonably in- dependent of the physical network parameters. The first version of this protocol, called S [1], was implemented within the H A N G M A N prototype

0169-7552/94/$07.00 © 1994 Elsevier Science B.V. All rights SSDI 0169-7552(93)E0023-8

G b i t / s network [2] where it was seen to offer very good performance. In addition, the H A N G - MAN project demonstrated how synchronous services can co-exist with the S protocol. How- ever, the S protocol does not provide opt imum use of resources when only a single node is active. By improving this special case we discovered a new protocol, called S+ + , that provides superior behaviour even when many nodes are active.

The paper is organised as follows: in the next section we discuss the characteristics of a MAC protocol that will be important for high-speed networks. The S protocol is introduced in Section 3, and we describe a limitation of that protocol. In Section 4 we show how this limitation can be overcome by the S+ + protocol. The section con- tinues with an investigation of the performance of S+ + , based on the characteristics described ear- lier. The paper concludes with a review of en- hancements to S+ + and other protocols.

reserved

746 G. Watson / Computer Networks and ISDN Systems 26 (1994) 745-755

2. MAC characteristics

One explanation for the large number of MAC protocols that have been proposed is the variety of performance characteristics that are associated with a protocol. These characteristics include ac- cess delay (mean value, maximum value and vari- ance), throughput, tolerance to errors, provision of different classes of service, and fairness.

Our strategy in designing the S+ + protocol has been to identify the characteristics that have the greatest impact on higher layer services, and to ensure that the protocol reflects this choice of characteristics. Our choice is as follows:

Minimum access delay at low to medium loads. We believe that most local area networks will rarely experience high load (more than 70% of peak throughput) and so designing the protocol to en- sure optimum delays and fairness at high loads is a poor strategy. Instead, it is important that a node can transmit immediately under low to medium loads; we believe that latency will soon become as critical as throughput. Access delay must be bounded. FDDI [3] ensures that the access delay is bounded, but this bound may be quite l a rge- -up to several seconds. A sensible goal for maximum asynchronous access delay should be of the order of a few tens of millisec- onds because this would enable round-trip delays that are unnoticeable by humans.

Synchronous service. By synchronous we mean a service which guarantees bandwidth and access delay. Some applications, such as continuous bit rate video, require both of these characteristics. Such applications require the access delay to be strictly controlled so that the variance, or jitter, associated with access opportunities is very tightly controlled. We believe that the synchronous ser- vice should be independent of the asynchronous service. The reason for this is simply observation: protocols that attempt to provide both services in one, such as FDDI, are subject to variable jitter which depends on the dynamic load.

Some additional characteristics that are impor- tant include:

Efficient and fair utilisation of resources. If there are X active nodes having the same priority on the network, and all nodes are of equal impor- tance, then each node should be able to use approximately 1 / X of the available resources. A corollary of this is that if only one node is active then it should obtain all of the resources.

Priorities. Multiple priorities for the asynchronous data service are potentially useful, but only if the behaviour of different priorities is sufficiently well defined that applications can benefit from them. We believe that a synchronous service and an asynchronous service will meet most require- ments, and that, in addition, there is a need for an asynchronous "control" channel which is rarely used but must have absolute priority. Such a channel is useful for urgent traffic such as con- gestion control information when the network is overloaded.

Arbitrary allocation of resources. In a client-server network the server may experience a much greater load than the clients, and so it is useful if the server can obtain a greater share of resources than the clients. This is sometimes confused with priorities but the two are not equivalent; resource allocation and priorities are orthogonal and can co-exist. In a priority system a high priority mes- sage should always be transmitted before any lower priority messages-- that is the meaning of priority. In the client-server example, the server obtains more resources, say bandwidth, but does not exclude the clients from obtaining bandwidth. Consequently, a client should always send a high priority message before the server sends any low priority messages but the server should be able to send more messages of a given priority than the clients.

Simplicity. As with any system, a protocol should be as simple as possible, but no simpler. It is certain that the MAC protocol for a Gbi t / s net- work will be implemented in hardware, and sim- ple protocols are easier, faster, and cheaper to implement than complex protocols. In addition, the implementation is more likely to be correct.

G. Watson/Computer Networks and ISDN Systems 26 (1994) 745-755 747

We have not discovered a protocol that offers the best of all of these characteristics, and so all protocols are a compromise. As far as current upper layer protocols are concerned, the MAC should simply be able to transmit data units as rapidly and fairly as possible. This is reflected in our primary goals of minimising latency while maximising throughput. We acknowledge the need in the near future for real-time services, and the H A N G M A N experiments have already demonstrated this capability.

In the remainder of this paper we describe the evolution of the S + + protocol which has the most important of these characteristics.

3. The S protocol

S+ + is an enhancement of a MAC protocol called Simple, or S [1]. We first describe S, and then explain how S+ + offers improved perfor- mance. The outstanding characteristic of S is, as its name suggests, its simplicity, and it was this that led us to choose S as the MAC protocol for the H A N G M A N prototype G b i t / s LAN. In this paper we explain how both S and S+ + operate on a single folded bus topology, but both proto- cols can operate on a dual bus topology with no loss of generality.

The network topology is shown in Fig. 1. The H E A D - E N D node generates a continuous stream of small, fix-sized slots which propagate down the W R I T E bus. An active node waits until it ob- serves an empty slot on the W R I T E bus, where- upon the node marks the slot as full and trans-

WRITE bus

READ bus

Fig. 1. The HANGMAN network uses a folded bus topology.

mits a packet within the slot. The full slot then passes around the F O L D node onto the R E A D bus where it is accepted by the destination node.

3.1. The operation of the S protocol

The S protocol determines whether a node may use an empty slot or whether the node must defer and leave the slot to be used by a down- stream node. Every node contains a counter P and a register Pmax. The register contains a constant integer value, typically 8 or 16. Initially, the value in the register P m a x is copied into the counter P. A node may use an empty slot pro- vided that P > 0, in which case P is decremented for every slot that is used. When P = 0 the node must defer to downstream nodes. Eventually, all nodes will either have P = 0 or else they will be inactive, and so an empty slot will pass unused onto the R E A D bus where it will be observed by every node. This empty slot signals the end of a "cycle" and so every active node then recopies Pmax into the P counter.

If many nodes are active then S will behave like a token-passing protocol, so that each node acquires access to the network after the upstream node has finished. Under low load conditions then nodes will have almost instant access - -on average a node will only wait for half a slot period.

If the network load is evenly distributed across N active nodes and the arrival of packets at nodes is not bursty, then node i will obtain a fraction of available slots given by

Pmax i

1 + ~ P m a x j J

where j is summed over all active nodes. One slot is always unused in order to indicate

the end of the cycle. A synchronous service can be implemented in

conjunction with S by means of a slot reservation scheme, as described in [2]. Thus the S protocol appears to meet our critical characteristics, as defined in the previous section. The protocol also has most of the other important characteristics, except that it does not exhibit fair and efficient

748 G. Watson / Computer Networks and ISDN Systems 26 (1994) 745-755

utilisation of resources if only one node is active. We now examine this limitation in more detail.

3.2. A limitation of the S protocol

From the equation given above, one might expect a single active node i to use P m a x i slots in every Pmax i + 1 slots. If the network is small, such that no more than one slot is in transmission at any given time, then this is indeed the be- haviour that is observed. However, if the network is larger than one slot then the throughput ob- tained by a single node will depend on its geo- graphical position on the network with respect to the FOLD node.

Fig. 2 illustrates the problem. We consider the case of a single node, located A slots from the FOLD node. Initially, all nodes are inactive so that all of the slots on the network are empty. In Fig. 2(a) the node becomes saturated so that it always has packets to send. The node transmits one packet, as shown, and so decrements P, but then the node immediately observes an empty slot on the R E A D bus and so reloads P m a x into P.

The node continues to transmit packets and reload P until it reaches the state shown in Fig. 2(b), where the node has transmitted 2A packets.

At this point the node can continue to transmit, because P > 0, but it now sees full packets on the R E A D bus and so P starts to count down. Even- tually, the node reaches the state shown in 2.c where P = 0, and here the problem occurs. The node must defer, since P = 0, but it cannot reload P because the slots on the R E A D bus are all full. After the node has waited for 2A slots to pass it can then start to transmit again, as shown in Fig. 2(d).

The node has used 2A + P m a x slots in a total of 4A + P m a x slots. If A is large with respect to P m a x then the throughput will tend towards 50%. Ideally, P m a x should be small, since the maxi- mum access delay encountered by any node will depend on the value of P m a x of all upstream nodes; unfortunately a small P m a x will reduce the throughput for that node.

4. The S + + protocol

In this section we describe how S + + over- comes the limitation of S, and yet maintains the fundamental simplicity of the original protocol. We then present the performance of S+ + , and compare this performance to that of S and that of the Distributed Queue Dual Bus protocol that

2A + Pmax

Fig. 2. (a) The node transmits a first slot, (b) the node has sent 2D slots, (c) P is now exhausted so the node must defer, (d) the node starts again.

G. Watson /Computer Networks and ISDN Systems 26 (1994) 745-755 749

WRITE BU-~ Pmax + 1, irrespective of its geographical loca- tion on the network.

If a downstream node becomes active then it will use this one empty slot. This will prevent the upstream node from starting a new cycle, and so the fairness of the original protocol has been preserved. If the network is very large such that several cycles are propagating simultaneously, then downstream nodes may be delayed for a longer duration.

4.2. Achieving 100% slot utilisation

READ BUS Fig. 3. S++ includes a flag, F, to overcome the limitations of S.

has been used in the I E E E 802.6 MAN standard [4]. Finally we describe some potential additional enhancements to the protocol.

4.1. Improving single node throughput

The first enhancement to S was to solve the problem described above. The problem can be overcome by giving each node some knowledge of the history of the network. This is achieved very simply by including a flag, F, within each node, as shown in Fig. 3. Now, whenever a node observes an empty slot on the READ bus it simply assigns the value 1 to F. The condition to transmit is unchanged - - the node may transmit whenever P > 0. However, the node may only reload P from Pmax when three conditions are met: P = 0, F = 1, and an empty slot passes on the WRITE bus. When these conditions are met then the node reloads P from Pmax, it clears F to 0 and it does not use the empty slot on the W R I T E bus.

The node may continue to transmit after it has allowed one empty slot to pass on the W R I T E bus. This one slot is not used so that it will travel around to the R E A D bus whereupon the node can set F to 1. The interested reader can follow through the previous example of a single active node, and it is straightforward to observe that a single node will now use P m a x slots in every

The second enhancement was to enable a node to use every slot. Since ideally P m a x is small, such as eight, then one additional slot in every P m a x yields a noticeable improvement in overall performance. This second enhancement can be achieved by observing that in the current proto- col, described above, the fu l l / empty status of a slot plays two roles. First, the fu l l / empty status is used on the W R I T E bus to indicate whether the slot may be used or not. Second, it is used on the R E A D bus to indicate that all nodes have fin- ished the current cycle. By separating these two functions it is possible for a node to use every slot.

Each slot has a header which contains two fields: F U L L / E M P T Y and R E S T A R T / D O _ NOT_ RESTART. Initially all slots are [EMPTY IRESTART], and a node may only use a slot if it is marked as empty. A node may now transmit under two different conditions. First, if P > 0 then the node changes the slot to [FULL IDO_ NOT_ RESTART]. Second, if P = 0 and F = 1 then the node changes the slot to [FULL I RESTART] which corresponds to the one slot that the node would not have used in the first enhancement. Whenever a node observes a slot with R E S T A R T on the R E A D bus then it sets F to 1.

The only remaining change is that a down- stream node must be able to force upstream nodes to defer at the end of the current cycle. This is achieved by enabling an active node to change a slot on the W R I T E bus from [FULL I RESTART] to [FULL I D O _ N O T _ RESTART]. This corresponds to the case where a downstream

750 G. Watson/Computer Networks and ISDN Systems 26 (1994) 745-755

DEFER IDLE ACTIVE

]-/RESTART ]R I Q>O'P>O~I [EMPTY[_] I F:=, J l --I

- Q>0, P=0 - I 1 : Q = 0 •P:=P'I,IFULLIDO-NOT-RESTART] I

: Q 'O 'P=O| I I I [ FULL[ FULL I RESTART ] 1 DO_NOT_RESTART ] t P = 0, F = 1, [ EMPTY I RESTART] ~ I ' P := Pmax - 1, F := 0, [ FULL I RESTART ] r I

I P = 0, F = 1, [ FULL I RESTART ] ~ | P := Pmax, F := 0 ~ I

[ _ I RESTART ]g [ -- I RESTART ]R

F:=I I 9 F:=I I Fig. 4. The S++ state machine.

node would have used the one empty slot on the WRITE bus, thus forcing upstream nodes to de- fer.

This second enhancement enables a node to use every slot at the expense of having an extra bit in every slot header. This is likely to be a net gain if we assume that any real network will not be operated at full load for most of the time. With a Pmax of 8 this can increase utilisation by up to 12%. Fairness is not affected.

The S + + protocol consists of the two en- hancements described above. These enhance- ments improve the performance of the protocol and yet retain the inherent ease-of-implementa- tion associated with the original S protocol.

S + + is defined according to the state machine shown in Fig. 4. Initially all nodes are in the IDLE state.

The following notation has been used: Text above a transition indicates the condition

for the transition to occur; text below the transi- tion indicates an action to be performed when the transition occurs.

The tuple IX I Y] denotes the state of a pass- ing slot where X indicates whether the slot is FULL or EMPTY, and Y indicates the value of the restart bit (RESTART or D O _ N O T _ R E - START). A value of (_) indicates don't-care.

A slot is assumed to be observed on the WRITE bus. If it is observed on the READ bus then it has a subscript R, e.g. [FULL IRE- START] R.

Q denotes the length of the queue: if Q > 0 then the node has packets to send.

4.3. The performance o f S+ +

In this section we present the performance of the S + + protocol, according to the protocol characteristics that were described in Section 2.

Performance results have been obtained by an analytical model [5] and by simulation. The re- sults presented here were obtained via a discrete-event simulator rather than the analyti- cal model, because the simulator has enabled us to examine more complex networks, as well as to look at the dynamic behaviour of the network. Every simulation was of either 12 or 60 million slots, and results were not accumulated until the first million slots had passed, so as to avoid the unusual behaviour during start-up.

In the following graphs all times are normal- ized to the time needed to transmit a single slot, and distances are normalized to the length of network required to contain one slot. The 95% confidence intervals are shown on some graphs where they do not obscure the relevant data. Additional assumptions are that no packets are lost (retransmitted), and the latency through each node is negligible compared to the propagation delay between nodes.

Access delay The first characteristic of interest is the access

delay. Rather, we choose to look at the system time, which is the waiting time plus the access delay (service time), because this is a better indi- cation of the delays encountered in the network. The propagation delay is not included. The net- work configuration is of 20 nodes, spaced one slot apart. The packet inter-arrival times follow a negative exponential. Packets arrive in bursts ac- cording to a 20-80 rule: 20% of bursts are large (46 packets) while the remaining bursts are of a single packet. This distribution attempts to model the bimodal distribution encountered with ob- served LAN traffic [6].

Fig. 5 illustrates the mean system time for all packets in the network as the system load is varied from 50% to 98% of the available band-

G. Watson/Computer Networks and ISDN Systems 26 (1994) 745-755 751

M e a n Sys t em T i m e (slots)

i

700

60O

500

400

300

200

100

0 • i

0 .50

i i i i

T i ] ] L o a d 0.60 0.70 0.80 0 .90 1.00

Fig. 5. The mean system times for each protocol under differ- ent total loads.

+'gTZ-+

width. The equivalent system time is shown for the S protocol as well as for DQDB. Both S+ + and S use a Pmax of eight, and the DQDB simulation uses a B W B _ M O D of eight. For the DQDB protocol, the nodes issue REQuests on the READ bus, as this yields the best perfor- mance.

It is clear from Fig. 5 that S + + has delay characteristics that are equivalent, or better, to those of S and DQDB. As mentioned earlier, the most important region is low to medium loads (up to 70%), and we can see that all three protocols provide excellent performance. At higher loads S+ + appears to offer the best performance, but this does not mean that S + + is better than DQDB under all conditions. The most important conclusion to be drawn from Fig. 5 is that nodes obtain almost instantaneous access if the offered load is low.

Another important conclusion to be drawn from Fig. 5 concerns the enhancements made to S. The first enhancement, that of improving the throughput for a single active node, yields notice- able benefits at high loads even in the simulation in which 20 nodes are active simultaneously. This benefit arises, despite the evenly distributed load, because the burstiness of the arrival process means that often there is only a single active node. This will also be true in many real net- works, and so we conclude that optimising the network for the case of a single active node can yield substantial overall benefits.

The second characteristic of interest is that the access delay must be strictly bounded. This is true of all three protocols, of which DQDB has the lowest maximum access delay. For S+ + the max- imum access delay at a node depends upon the position of the node. The worst delay is incurred by the FOLD node, and this maximum is about 3 ( N - 1)Pmax slots, where N is the number of nodes. This occurs under exceptional conditions when the FOLD node has just exhausted its counter but all other nodes have full counters and all flags are set to 1. All upstream nodes can each send Pmax slots. The node adjacent to the FOLD node will be the last to send, and the final slot will be marked as RESTART. The FOLD node will see the RESTART and reload its counter but will not set the slot to D O _ N O T _ RESTART. All upstream nodes will already have reloaded their counters, since their flags were set to 1, and the RESTART slot will enable each node to set their flag to 1 again. Thus each upstream node will send 2 Pmax slots before allowing the FOLD node to send a slot.

This yields a maximum access delay of about 5 milliseconds for a 100 node LAN with a Pmax of 8, a slot size of 256 bytes, and a line rate of 1 Gbit /s . However, the conditions for this worst case situation are truly exceptional. Moreover, when the network is overloaded then access is granted in a round-robin fashion, in which case nodes gain access every N Pmax slots, and they may transmit Pmax packets at each access.

Efficient and fair utilisation of resources The third characteristic is that the protocol

should provide efficient and fair utilisation of resources. Efficiency can be measured as the number of slots used compared to the total num- ber of slots issued, over some time period. The fairness can be measured by observing the dy- namic throughput obtained by nodes which have different values of Pmax. Under saturation the throughput obtained by node i should be:

P max i

~ P maxj J

where j is summed over the active nodes.

752 G. Watson / Computer Networks and ISDN Systems 26 (1994) 745-755

% Slots used

'Node 2

60 i " ....... ... ......... "

40 | * . . . . ~o,.o.~.to.we" 20tN

0 I Time (slots) 0 500 1000 1500

Fig. 6. The dynamic throughput obtained by nodes 2, 5 and 8.

Fig. 6 shows the dynamic throughput obtained by the various active nodes in a small network. The graph shows the percentage of slots used by active nodes in each dynamic cycle. A cycle is the number of slots between two consecutive RESTARTs, as observed by the FOLD node, and thus the length of a cycle will vary according to the offered load.

The network consists of 10 nodes, each sepa- rated by a distance of one slot. All nodes are inactive except for nodes 2, 5 and 8, which be- come active at different times. When a node is active it presents a load of 80% to the network, so that if two nodes are active then the network is saturated. Each node has a different value of Pmax, which allows us to verify the fairness of the protocol. Node 2 has a Pmax of 8, node 5 has a Pmax of 16 and node 8 has a Pmax of 24.

Node 2 becomes active first, and tends to use either every slot or no slots in each cycle. At this instance the network is not overloaded and so the oscillations indicate the random nature of the arrivals. Node 5 becomes active at time 250 and the network is now saturated. The system is fair because node 2 should have 8 / (8 + 16) = 1 /3 of the bandwidth and node 5 should have 2 / 3 of the bandwidth and this is indeed what we observe.

Node 8 then becomes active and acquires 1 /2 of the slots, while nodes 2 and 5 are reduced to 1 / 6 and 1 /3 respectively. Node 2 then becomes inactive and its bandwidth is immediately shared between the other two nodes, again in the rele- vant proportions. When node 5 stops transmitting we see that node 8 obtains 100% of the slots

because it has a backlog of packets to send, S + + is thus fair, and it also appears to be efficient since 100% of slots are used when the network is saturated.

Another important aspect of this behaviour is the short time required for the network to reach stability whenever a node joins or leaves the active set. It appears that the bandwidth is redis- tributed within one or two cycle times, and is then extremely stable.

Fig. 7 shows the mean system time for each node, given a 90% load. Nodes closer to the HEAD-END node experience lower delays than nodes closer to the FOLD node. The difference is relatively small, and is incurred by all three protocols.

Arbitrary allocation of resources As discussed earlier, it is potentially useful for

a network manager to be able to allocate greater throughput to one node compared to another node. The S + + protocol supports this via the Pmax parameter within each node. In the previ- ous example nodes 2, 5, and 8 each had different values of Pmax and consequently obtained dif- ferent throughputs under saturation. If the net- work is not saturated then the difference in Pmax is manifested as lower delays, as can be seen from the following example.

The simulated network is that of a client- server system which consists of nine clients and a single server. Packets arrive according to the same distribution as before, except now the load is not shared evenly. The server has 50% of the total

Mean System Time (slots)

. . . . . . 1 340 ~ . . .

32O

300

280 t 260 ~ -i: .4.

200 ,,°,¢" I I I f I Node

HEAD 5 10 15 FOLD

Fig. 7. Mean system time for each node. Total load = 90%.

G. Watson / Computer Networks and ISDN Systems 26 (1994) 745-755 753

Mean S

1000

9~0

800

700

60O

500

400

300

200

100

, s tem Time (slots)

r i ~ i i i

. . . . . . . . . . . . . . . . . o a . . . . . . . . D .. . . . . . a . . . . . . . . J-'" [I

i- ~ I i i i HEAD 2 4 SERVER 8 FOLD

Fig. 8. The mean system time for each node.

~ame Pmax

*~x~ ....

Node

Mean System Time (slots)

%~o.9 3~0 - ~i6.s 3oo ~.k~i63

250

200

...... . . . . . . . ~ . . . . . . . . . . . . . . 4 . . . . . . . . . . . . . . . c 150 ..... ~..

r ' " " l " .... 10¢

50 p . . e . . . . • . . . . . . . ~ . . . . . . . • . . . . . . . *

I I I I Network length

50 IO0 150 2(10

Fig. 10. The effect of varying the length of the network.

load, and the rest of the load is shared evenly amongst the clients.

Fig. 8 shows the system times for each node given a total load of 90%. The curve marked "same Pmax" shows the system times given that every node, including the server, has the same value of Pmax. This curve shows the inequity in system time caused by the high load on the server. The second curve, marked "5 × P m a x " shows how the server's system time falls dramatically if it is allocated a Pmax which is five times larger than that of the clients.

This graph demonstrates that Pmax can be used to produce coarse differences in perfor- mance in order to optimise the overall system performance. In this case the network manager can trade client-client response time for im- proved client-server response time.

Mean System Tune (slots)

100.0 ~ ~

80.0

60.0 L

40.0 " " ~ ' " ° ' " ' D .. . . . . . . . D . . . . . . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o

20.0 • . ~ . . . = . . . . . ~ . . . . • . . . . . . . . . . . . . . . . . . . . . •

0.0 5 10 15 Pmax

Fig. 9. The effect on the mean system time of varying Pmax.

]-oad 0.9

~-~.'8 - ~ d 83""

Dependence on ne twork parameters

To close this section on the performance of S + + we now look at how different parameters, such as Pmax, can affect the delay encountered by nodes. Fig. 9 illustrates the effect of varying Pmax while keeping other network parameters constant.

The graph shows how the mean system time for all nodes is reduced as Pmax is increased. The three curves show the same general effect for offered loads of 50%, 80% and 90%. Al- though larger values of Pmax do yield better performance in terms of mean access delay, they do result in longer worst-case access times. We have chosen a Pmax of 8 to be a reasonable compromise.

In Fig. 10 the length of the network is in- creased while Pmax and the number of nodes remain constant. It is clear that increases in the length of the network do increase the mean sys- tem time, but this increase is acceptable. In addi- tion, the increase is only significant for high loads (90%) and we would not expect even backbone networks to spend long periods of time under such conditions.

4.4. Extensions to the basic protocol

In this section we describe a number of varia- tions/extensions to the basic S + + protocol. These extensions are of interest because they illustrate some of the more subtle aspects of protocol design, and because some can be ap- plied to many other protocols, not just S+ + .

754 G. Watson/Computer Networks and ISDN Systems 26 (1994) 745-755

Gated or non-gated Many protocols can operate in either gated or

non-gated mode. A protocol operates in a gated mode if it limits the number of packets that can be transmitted at any given opportunity to the number of packets already queued for transmis- sion. In non-gated mode, a protocol would trans- mit the packets that were queued at the start of the transmission, but would then also transmit any further packets that arrived while the trans- mission was in progress.

S + + , like many other protocols, provides greater fairness if operated in gated mode - -nodes tend to defer sooner in gated mode than in non-gated mode, but delays tend to increase. For S and S + + there is very little difference in performance between the two, and so we believe that non-gated is superior because it is simpler.

Multiple priorities and urgent traffic The S+ + protocol appears to support multi-

ple priorities, but this is only achieved by replicat- ing the protocol for each priority level. We have not pursued this line of research because we have not yet found a strong justification for many priority levels.

As mentioned before, there is a need for a control channel which typically is very lightly loaded but which needs low delays. Such a service can be provided quite easily by the use of a simple request-response protocol within the MAC layer. When a node wishes to send an urgent message, then it requests an urgent slot from the HEAD- END node. The HEAD-END node then marks the next slot as being reserved for urgent traffic. The requesting node will thus be guaranteed to obtain access to the network within one round-trip time on the network (al- most certainly less than a millisecond).

The request-response protocol is very simple to implement and works well if the amount of urgent traffic is always small. If the urgent traffic grows to be large then the issue of fairness needs to be resolved to prevent downstream nodes from being locked out by upstream nodes. The HEAD- END node can achieve this by placing the ad- dress of the requesting node within the empty slot. In addition, nodes must be prevented from

issuing a new request until the previous request has been satisfied. Ponsard [7] discusses this tech- nique in more detail and presents the case for the provision of real-time services for high-speed LANs.

Reducing the number of message reassemblies S + + and DQDB operate on fix-sized slots

and so higher layer messages may need to be segmented into slot-sized packets which are then transmitted and reassembled into full messages at the destination. One problem for a destination node is that packets from several sources may be interleaved on the network, and so a destination node may need to reassemble several messages simultaneously. Buffer space is required for each message that is being reassembled, and so it is a sensible goal to try to reduce the number of concurrent reassemblies. S + + is superior to DQDB in this respect because nodes tend to transmit in bursts of Pmax packets, and so inter- leaving is less likely. Detailed results of this can be found in [8].

An additional modification that can be applied to S+ + is that a node can only start to transmit if the value in its counter P is greater than, or equal to, the number of packets that make up the currently queued message. If P is too small then the node clears its counter and waits for a RESTART to pass. This ensures that a node will never have to defer due to the P counter becom- ing exhausted, and so this further reduces the probability that messages will become inter- leaved.

5. Conclusions

The S+ + protocol was developed in order to overcome the limited throughput obtained by a single active node under the S protocol. S + + achieves this goal, and has been extended to further improve the efficiency of the network. It appears that improving the throughput of a single active node yields better throughput under much more general conditions and this is due to the highly bursty nature of current LAN traffic.

G. Watson / Computer Networks and ISDN Systems 26 (1994) 745-755 755

Every MAC protocol represents a compromise between performance and complexity. We believe that S + + offers Gbit/s-class performance while retaining the ease-of-implementation associated with the original S protocol.

We have identified a number of characteristics that are important for a MAC protocol designed to operate on a high-speed network, and we have explained how S++ appears to possess these characteristics. Finally, we have described a num- ber of variations that can be applied to S and other protocols.

6. Acknowledgement

The author gratefully acknowledges the im- provements to this manuscript suggested by Ben Siemerink and Hans van der Veen.

7. References

[1] J.O. Limb, A simple multiple access protocol for metropolitan area networks, Comput. Commun. Rev. ( Proc. ACM SIGCOMM'90, Philadelphia, PA, September 1990) 20(4) (1990) 69-78.

[2] G. Watson, S. Ooi, D. Skellern and D. Cunningham, The design and implementation of the HANGMAN Gbi t / s network, IEEE Network Mag. 6 (1992) 10-18.

[3] Fiber Distributed Data Interface (FDDI)--Media Access Control, ISO 9314-2, 1989.

[4] Distributed Queue Dual Bus (DQDB) Subnetwork of a Metropolitan Area Network. IEEE Standard 802. 6, De- cember 1990.

[5] G. Watson and S. Tohme, A performance analysis of S++: a MAC protocol for high speed networks, Proc. 3rd IFIP International Workshop on Protocols for High-Speed Networks, Stockholm, Sweden, May 1992, pp. 87-102.

[6] R. Gusella, A measurement study of diskless workstation traffic on an Ethernet, IEEE Trans. Comm. 38(9) (1990) 1557-1568.

[7] B. Ponsard, M. Gagnaire and P. Godlewski, Integration of short and urgent messages on an on-board HSLAN: A new unidirectional bus topology for short range gigabit rings, in: M.J. Johnson, ed., Protocols for High-Speed Net- works, II, Proc. IFIP WG6.1/WG6.4 2nd International Workshop, Palo Alto, CA, 27-29 November 1990 (North- Holland, Amsterdam, 1991) 407-419.

[8] G. Watson and S. Tohme, S + + - - A new MAC protocol for Gbi t / s LANs, IEEE J. Selected Areas Comm. (special issue on Gigabit Protocols) to appear.

Greg Watson received the B.Sc. and M.Sc. degrees in computer engineer- ing from the University of Man- chester, UK, in 1984 and 1985, re- spectively, and the Ph.D. degree from t~cole Nationale Sup6rieure des T616communications (Telecom Paris), France in 1992. Since 1985 he has been at the Hewlett Packard Labora- tories, Bristol, UK, where he has worked on machine architectures for declarative languages and, more re-

cently, aspects of high speed networking including FDDI and Gbi t / s LANs. His interests include high-speed networking, computer architecture, unicycling and juggling.