an efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding...

12

Click here to load reader

Upload: reuven-cohen

Post on 02-Jul-2016

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

An efficient scheme for accommodating synchronous traffic in acable-modem network while avoiding segmentation of

asynchronous packets

Reuven Cohen1

Department of Computer Science, Technion, Haifa 32000, Israel

Received 22 May 1998; received in revised form 24 September 1998; accepted 24 September 1998

Abstract

Cable-modem (CM) technology is being developed to provide high-speed multimedia services to the subscribers’ homes over the existinghybrid-fiber-coax (HFC) infrastructure of cable TV networks. The article proposes an efficient scheme for combining asynchronous andsynchronous traffic on the upstream channel of a CM network when segmentation of the asynchronous packets is to be avoided, e.g. becauseof cost considerations. The new scheme guarantees the synchronous sources the same quality of service provided by the FDDI timed tokenprotocol. That is, a guaranteed average delay between consecutive transmissions, a guaranteed maximum delay between consecutivetransmissions, and a guaranteed bandwidth on the upstream channel.q 1999 Elsevier Science B.V. All rights reserved.

Keywords:Cable-modem; Quality-of-service; Synchronous; MAC

1. Introduction

Cable-modem (CM) technology is being developed toprovide high-speed multimedia services to the subscribers’homes over the existing hybrid-fiber-coax (HFC) infrastruc-ture of cable TV networks. It is widely recognized that CMnetworks will play an important role in providing econom-ical service access for residential subscribers. The largeexcess bandwidth available in cable TV networks canprovide the communication infrastructure for home interac-tive services like video on demand, web surfing and videogame playing.

In a typical HFC network, CMs are connected to acommon head-end (HE) by a tree-and-branch transmissionnetwork. A CM is more complex than an ordinary telephonymodem, because it has a network interface card whichimplements some access control protocol to arbitrate theupstream channel among multiple users. The network isdivided into a fiber domain which extends from the HE toa neighborhood, and a coax domain which connects thehomes to the fiber. Fiber nodes at the edges of the fiberand coax domains transform the optical signal to an elec-trical signal. The maximum length of such a network is

approximately 50 miles. The homes are located only at thelast 20% of this distance.

The design of the HFC network forces distinct down-stream and upstream channels to be used for communicationto and from the home, respectively. In most deployment, thedownstream channels operate in the 450–750 MHzfrequency band whereas the upstream channels operate inthe 5–40 MHz band. Using appropriate modulation techni-ques, each of the upstream channels is usually capable ofcarrying around 0.5–3 Mb/s, whereas each of the down-stream channels are capable of carrying 3–30 Mb/s. In addi-tion to setting some spectrum aside for upstream anddownstream digital transmission, the cable operators needto upgrade existing amplifiers with duplex filters to separateand simplify the upstream and downstream signals.

Each of the upstream channels is shared by the stations(CMs) using a multiple access control (MAC) protocol. As aresult of the CATV tree-and-branch physical architecture,the stations cannot directly listen to the upstream transmis-sions of other stations, and cannot detect collisions.However, unlike traditional LAN which are fully distribu-ted, the HE station of an HFC network can play a major rolein coordinating the upstream transmissions stations. The HEreceives all signals of the upstream transmissions and caneither repeat them on the downstream channel or processthem and inform the CMs about collisions. Several MACprotocols for the upstream channel have been proposed so

Computer Communications 22 (1999) 399–410

0140-3664/99/$ - see front matterq 1999 Elsevier Science B.V. All rights reserved.PII: S0140-3664(98)00242-4

1 This work has been performed while the author was with HP labs, PaloAlto, CA.

Page 2: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

far (e.g. [2,4,7,8]). The MXL protocol, presented in [7], isunique because it does not require that the IP variable lengthpackets will be broken down into a stream of fixed sizedunits (cells) at the sending CM and be re-assembled at theHE after delivery. This property of the MXL simplifies theimplementation and reduce the cost significantly. However,it gives rise to some difficulties when synchronous traffic(like voice and video), that arrive at regular intervals andrequire timely delivery, should be accommodated on theupstream channel along with asynchronous traffic (datapackets).

This article proposes a new scheme for supportingsynchronous traffic on the upstream channel of a CMnetwork while avoiding the need to fragment asynchronouspackets. Fragmentation of packets requires the CM to beequipped with a dedicated SAR (segmentation and reassem-bly) hardware, which increases its cost substantially. Theproposed scheme is general enough to be implemented invarious CM or non-CM (e.g. cellular or satellite) networkarchitectures. Nevertheless, it will be presented in thecontext of MXL for which it has been originally designed.In Section 2 the MXL network and MAC protocol arebriefly introduced. Section 3 describes the problem ofaccommodating synchronous data on the upstream channelof the MXL. Section 4 and Section 5 present the newscheme which offers the synchronous stations a guaranteedaverage delay between consecutive transmissions, a guaran-teed maximum delay between consecutive transmissions,and a guaranteed bandwidth. Section 6 proves the mainproperties of the new scheme and Section 7 concludes thearticle.

2. The MXL topology and upstream access control

This section presents the main concept of the MXL – anupstream channel MAC protocol for forwarding non-frag-mented Ethernet packets from the home PCs via the CMsand the HE to the Internet. More details on the MXL can befound in [7].

The MXL (multimedia transmission link), associates adownstream 6 MHz channel with an upstream 2 MHz chan-nel. Using a 6 bits/symbol 64QAM modulation scheme,which carries 1 bit for control and 5 bits for payload fromeach symbol, the 6 MHz downstream channel is divided intoa 25 Mb/s downstream data channel and a 5 Mb/s down-stream control channel pair. The 2 MHz upstream channelis shared by all the CMs (stations) for delivering QPSK-modulated data and control packets to the HE at a rate of3 Mb/s.

In MXL, a slot is a unit of time on the upstream channel.Its length is represented by a fixed number of downstreamcontrol channel mini-slots. This number is programmableby the MXL HE. The length of the slot includes the time totransmit a control packet upstream, and the round-trippropagation delay between the most distanced stations.

The latter distance must be smaller than the length of acontrol upstream packet. The stations are synchronizedsuch that each transmission arrives at the HE within thetiming bounds of a time slot. The timing of the upstreamslots is derived by the stations from counter timing datatransmitted by the HE in each mini-slot on the downstreamcontrol channel. In addition to providing these synchroniza-tion markers, the HE transmits on the downstream controlchannel a short status packet (which uses a single mini-slot)every upstream slot time. The purpose of this short packet isto inform the stations of the status of the next upstream slot.An upstream slot can be either reserved or available. Areserved slot can be used by a single station, to which itwas previously assigned by the HE. An available (conten-tion) slot is open for contention according to the rulesdictated by the contention algorithm.

In order to access the upstream channel, a CM needs tosend the HE a reservation request. To this end, the CM waitsfor a contention slot on the upstream channel and transmits ashort reservation packet which specifies the CM’s identityand the number of slots needed for successive transmissionof all its waiting data packets. The MXL HE always returnsthe acknowledgement for an upstream reservation packet inthe next slot on the downstream control channel. The periodof time elapsed between transmitting a successful reserva-tion and receiving an acknowledgement is therefore fixed,and will be referred to as an ‘‘ACK-window’’. If a stationdoes not get an acknowledgement during the ACK-window,it assumes a collision has occurred. It then waits someperiod of time, determined according to the contention algo-rithm, and re-contends using another contention slot.

A short upstream data packet, that fits into a slot, can betransmitted during a contention time slot with no precedingreservation. Though it contains no reservation, such a packetneeds to be acknowledged by the HE during the ACK-window. In contrast, packets transmitted in reserved slotsdo not have to be acknowledged by the HE as they cannotcollide with other packets. Such packets can still be lostbecause of transmission errors, but recovering from suchlosses is the role of upper layer protocols (like TCP).

During the sign-on process, each station empiricallydetermines the number of slots in the ACK-window in thefollowing way. Upon being powered-on, the station waitsfor an upstream contention slot and transmits a sign-onrequest control packet to the HE. It then waits for anacknowledgement from the HE. If an acknowledgement isnot received within one millisecond (an upper bound on theACK-window), the station waits for another contention slotand retransmits its sign-on request. If an acknowledgementis received, the station considers the period of time betweenthe transmission of the last request and the reception of theacknowledgement as its ACK-window. Note that because ofthe way the upstream channel is slotted, all the stations havethe same ACK-window regardless of their distance from theHE.

An execution example of the MXL protocol is given in

R. Cohen / Computer Communications 22 (1999) 399–410400

Page 3: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

Fig. 1, assuming that the ACK-window is 3 slots. Thismeans that a station that transmits its reservation requestsuccessfully (i.e. with no collision) on sloti of the upstreamchannel will get an acknowledgement on the downstreamcontrol channel when slot number i1 3 is scheduled on theupstream channel. In the depicted example there are twoactive stations:si, andsj. Both stations transmit during slot1. Thus, a collision occurs and neither of them get anacknowledgement during slot 4. According to some conten-tion algorithm, (see [7] for more details), stationsi triesagain, in say, slot 5 and succeeds. Thus, it gets an acknowl-edgement from the HE on the downstream control channelwhen slot 8 is scheduled on the upstream channel. Theacknowledgement packet has a field calledReservation_De-lay_Slot_Count, which tells the contending station thenumber of upstream slots after which the station can starttransmitting its allocated quota. In this particular case theHE has no pending reservation when the request fromSi isreceived. Thus, assuming thatsi requests 4 slots, the HEgrantssi 4 slots starting immediately aftersi receives theacknowledgement. Hence the value of theReservation_De-lay_Slot_Countfield is 0, and slots 8–11 are used bysi withno interference.

Station si transmits its reservation for 5 slots duringupstream slot 7. As there is no collision,sj receives anacknowledgement over the downstream control channelduring time slot 10 of the upstream channel. This acknowl-edgement informssj that it is granted the requested numberof slots. However, theReservation_Delay_Slot_Countfieldis 2 rather than 0 because the next couple of slots are in themiddle of a burst reserved forsi. After stationsj finishestransmitting its 5-slot packet(s), in slot 17, the channel isagain available for contention.

Unlike other schemes (e.g. [4,8]), MXL does not allow atransmitting station to use the reserved slots in order to sendanother request. New requests can be sent using contentionslots only. This guarantees fairness among stations withoutcomplicating the algorithms performed by the HE or thealgorithm performed by the stations.

The MXL protocol, as described so far, divides theupstream channel into two logical channels: a contentionchannel which consists of all the available (contention)

upstream slots, and a reserved channel which consists ofall the reserved slots. The total throughputSof the upstreamchannel can be expressed as

S� s

s 1 1=S0;

wheres is the average number of slots in each reservationrequest andS0 is the throughput of the contention channel.

Like MXL, most of the architectures of HFC networksuse the concept of separating the upstream channel into acontention logical and a reserved logical channel, andemploying a contention resolution algorithm in the conten-tion channel. However, the MXL is distinguishable fromother architectures by its following properties:

• A packet is transmitted as one unit, using a burst ofreserved slots. Thus, fragmentation of packets at thestations and re-assembly at the HE are avoided. Asalready indicated, fragmentation of packets requires theCM to be equipped with a dedicated SAR hardware,which increases its cost substantially.

• A side-effect of the previous property is that the HEallocation mechanism is simple. The HE needs to main-tain only a local counter whose value indicates the offsetto the next available slot. When a request forr slots isaccepted, the value of the pointer is returned to therequesting station, and the counter is incremented byr .This simple allocation method reduces to a minimum theHE processing time and the ACK-window duration.Consequently, stations are informed as early as possibleof the contention results, and the throughput of the chan-nel increases.

• By preventing stations from sending new reservationrequests in the reserved channel starvation is avoided,and fairness is achieved to some extent, without compli-cating the HE allocation algorithm.

3. Supporting synchronous traffic

3.1. Synchronous traffic

In order to support hard real time applications like voice

R. Cohen / Computer Communications 22 (1999) 399–410 401

Fig. 1. MXL execution sample.

Page 4: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

and video that arrive at regular intervals and require timelydelivery, or in order to support home users who are willingto pay more in order to get a guaranteed bit-rate for theirapplications, the link layer of a CM network should be ableto provide to its customers a guaranteed amount of thechannel bandwidth with a bounded time between successivetransmissions. This kind of service is also required from thelink layer by some higher layer protocols, like TENET[1],that supports real-time traffic generated by the transportlayer.

The first protocol to support such service requirementswas the MAC protocol of the FDDI. FDDI uses the timedtoken protocol [6], which distinguishes betweensynchro-nous and asynchronous packets. Synchronous packets,such as packetized voice or video, are generated at regularintervals and have delivery time constraints. The time tokenprotocol guarantees to each source of a synchronous traffican average bandwidth and a bounded delivery time. Thelatter depends on some parameters, mainly the TTRT [6],selected during initialization.

Supporting synchronous traffic on the downstream chan-nel is relatively simple. This is because this channel isgoverned by a single entity, the HE, that can schedule pack-ets for downstream transmission according to any pre-deter-mined set of rules. In contrast, supporting upstreamsynchronous traffic is a difficult challenge, because of thedistributed access to the upstream channel. Therefore, thisarticle concentrates upon synchronous traffic on theupstream channel only.

CM networks that support synchronous traffic on theupstream channel, like [2, 4, 8], require that the asynchro-nous packets will be broken down into a stream of fixedsized units (ATM or non-ATM cells) at the sending CM,and will be re-assembled at the HE after being delivered. Asa typical example, consider the CM network described in[4]. The HE divides the time domain into a series ofsuccessive frames. A frame is divided into synchronousand asynchronous regions, each having multiple timeslots. The boundary between the two regions can be changeddynamically in order to accommodate setup of new synchro-nous calls or take down of existing ones. A synchronouscall that acquires synchronous bandwidth makes use ofperiodic time slot allocation in the synchronous region ofeach frame.

However, if segmentation of the asynchronous packets is

to be avoided, as in the MXL CM network, the support ofsynchronous traffic becomes a greater challenge. A naivesolution to this problem is as follows.

3.2. Ignoring reservations

As in [4], the HE divides the time domain into a series ofsuccessive frames, and every frame is divided into synchro-nous and asynchronous regions (see Fig. 2). Again, eachregion has multiple time slots, and the boundary betweenthe two regions can be changed by the HE dynamically,according to the synchronous traffic load. If the HE receivesa reservation request for an asynchronous packet, that itcannot accommodate in the asynchronous region of thecurrent frame, it ignores the request. This idea is depictedin Fig. 2. In this figure it is assumed that the frame length istf � 20 slots, and that each frame hasta � 15 slots in theasynchronous region andts � 5 slots in the synchronousregion. The values ofta andt s can be pre-negotiated withthe synchronous sources in order to guarantee the highestquality of service constraints. In Fig. 2 it is assumed thatthere exist two synchronous sources: the first is stationsj thathas acquired 3 slots in every synchronous region. Therequest for synchronous bandwidth is made by a CM bymeans of call set-up protocol. To this end, the CMexchanges asynchronous call set-up packets with the HE.The allocation is guaranteed until the station executes a calltake-down protocol, informing the HE that the synchronousbandwidth is no more needed. In terms of the example inFig. 2, this means that the allocation of 2 and 3 slots in thesynchronous region of each frame is guaranteed tosi andsj

as long as needed, without the need to re-contend for thisallocation.

To see why the HE needs to ignore reservation requests,suppose that a reservation for 10 slots is made by stationsk

in slot 5 of FRAME-1. Suppose also that the ACK-window,namely the period of time elapsed between transmitting areservation that does not collide with other reservations andreceiving an acknowledgement, isd � 3. Hence, the reser-ving stationsk can start transmitting only in slot number 9.But sk must stop transmitting after slot 15, because slot 16 ispre-allocated for the synchronous traffic ofsi. If segmenta-tion of asynchronous packets is to be avoided, the reserva-tion of si cannot be accommodated in slot 9.

Ignoring a reservation that cannot be fully accommodated

R. Cohen / Computer Communications 22 (1999) 399–410402

Fig. 2. A naı¨ve approach for synchronous traffic support.

Page 5: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

in the asynchronous region of the current frame is a straight-forward solution that keeps the HE algorithm simple. Insuch a case the HE does not send an acknowledgement tothe requesting station, and the latter will re-contend in afuture asynchronous contention slot according to the rulesof the contention algorithm, exactly as if a collision hasoccurred. However, this approach has a significant negativeeffect on the performance of the asynchronous upstreamchannel, as shown in Fig. 3. The graph depicts the averageaccess delay to the asynchronous upstream channel, normal-ized to the slot transmission time, versus input load2 for thecases whereta � 40 slots,ta � 60 slots andta � 120 slots.The graph depicts also the case where synchronous traffic isnot accommodated�ta! ∞� and therefore the HE does nothave to ignore reservations. The results were achieved bysimulating 128 stations, assuming that ALOHA is used inconjunction with the binary exponential back-off algorithmin order to resolve collisions. It is also assumed that a slot is64 byte long, and that 30.4% of the packets are 2-slot long,8.3% of the packets are 3-slot long, 8% of the packets are 4-slot long, 10% of the packets are 10-slot long, 25% of thepackets re 18-slot long, and 18.3% of the packets are 24-slotlong. Hence the average packet length is 11 slots. Thispacket length distribution, determined for IP traffic basedon [5], does not necessarily reflect the precise traffic of thefuture home users. However, the illustrated problem takesplace for any reasonable packet length distribution. Thegraph shows that forta � 40, throughput is reduced bymore than 30% from 0.69 (69% of the upstream transmis-sion speed) to 0.47 and the average delay is substantially

higher for every input load. The throughput loss happensbecause of the following reasons:

1. Successful transmissions in contention slots are ignoredby the HE, and are therefore considered as collisions bythe transmitting stations.

2. Sequence of slots that are not long enough toaccommodate the reservations received by the HEremain empty.

Obviously, as ta increases, the negative effect of thesynchronous traffic is reduced. This is because the prob-ability that the HE will have to ignore a successful reserva-tion gets smaller. However, increasingta leads to theincrease of the delay between successive transmissions ofsynchronousdata. In order to support real-time voice orvideo, the ‘‘local loop’’ delay should be aroundtf � 40slots.

3.3. Using double ACKs

In order to achieve better performance, the HE should notignore reservation requests. A possible solution might be touse double acknowledgements, as proposed in [8], in thefollowing way. When the HE receives a reservation, itsends an ‘‘empty’’ ACK to the reserving CM. Such anACK indicates that the reservation has been recorded andwill be accommodated in the future. Later, when the HEfinds enough consecutive slots for the reservation, it allo-cates them to the reserving station and sends anotheracknowledgement. Unlike the first acknowledgement, thesecond one contains an offset to the upstream slot wherethe transmission should begin.

The performance of this approach depends on the exactscheduling algorithm used by the HE. This algorithm shouldbe designed based on the fairness policy and some otherrelevant factors. For instance, if the HE has an old pendingreservation for 30 slots and two newer pending reservationsfor 20 slots each, then when we new frame is scheduled forwhich ta � 40 slots, the HE can decide either to accommo-date the old reservation and to waste 10 slots, or to accom-modate the two newer reservations in order to achieve betterperformance while sacrificing fairness. However, even themost sophisticated algorithm cannot prevent the loss of asequence of asynchronous slots which is too short to accom-modate the shortest pending reservation (e.g., in the aboveexample if the HE had only 10 available asynchronousslots). This means that this scheme eliminates the firstcause to throughput loss in the scheme of Section 3.2, butnot the second one.

Another drawback of this approach is that it complicatesthe HE and the CM implementation. If the second acknowl-edgement is lost, an event which is very likely in HFCnetworks because of their susceptibility to a variety ofradio-frequency impairment, the reserving CM will keepwaiting for a long time. In order to avoid dead-lock, theCMs can use a time-out after which the last reservation

R. Cohen / Computer Communications 22 (1999) 399–410 403

Fig. 3. The performance of the asynchronous channel when the HE needs toignore successful reservations.

2 The input load is normalized to the bandwidth available for the asyn-chronous traffic. Thus the performance differences are attributed to the waythe asynchronous bandwidth is used when the synchronous traffic is accom-modated, rather than to the amount of bandwidth left for the synchronoustraffic because of the synchronous traffic requirements.

Page 6: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

request will be re-transmitted. But a safer time-out value,which will not expire prematurely, may increase the averagedelay significantly.

4. The proposed scheme

The following section presents a new scheme for support-ing the transmission of synchronous traffic in MXL, whileavoiding the drawbacks associated with the solutiondescribed in Section 3. The proposed scheme has the follow-ing properties:

• All the advantages of the MXL, as presented at the end ofSection 2 prevail. Namely:

—asynchronous packets do not have to be fragmentedbefore being transmitted;

—the algorithm employed by the HE for asynchronousbandwidth allocation is simple, and can be imple-mented using only a local counter whose valueindicates the offset to the next available slot;

—fairness among asynchronous sources is guaranteed.

• When d � 0, asynchronous slots are not wasted at allbecause of the synchronous traffic. Ifd is larger than 0,the wastage is minimal.

4.1. The guaranteed quality of service

The properties mentioned earlier are achieved whileproviding the synchronous sources the same quality ofservice provided by the FDDI, which is a relaxation of thequality of service provided in the schemes of Section 3. InFDDI a synchronous source gets a synchronous sub-channelthat enables the source to transmit its synchronous dataperiodically. The delay between consecutive transmissionsis variable, rather than fixed. However, this delay has a pre-determined average (of 1·TTRT) and pre-determined upperbound (of 2·TTRT). As the synchronous source can transmita fixed amount of data during each access to its synchronoussub-channel, each sub-channel has in fact a guaranteedbandwidth.

The proposed scheme allocates to each synchronoussource a synchronous sub-channel with a guaranteed band-width a guaranteed average delayTaveragebetween consecu-tive transmissions and a guaranteed maximum delayTmax

between consecutive transmissions. The value ofTaverage

can be as short as needed, whileTmax� Taverage1 g whereg is equal to the longest asynchronous burst a station cantransmit following a single reservation. For instance,suppose that every contending station is allowed to reservebandwidth for only one asynchronous packet during eachreservation request. Suppose also that the longest packet is1518 bytes, namely 24 slots in a 64 byte slotted MXL. Thus,for a 3 Mb/s upstream channelTmax� Taverage124× 64× 8=�3 × 106� s.

As in the schemes described in Section 3, the HE divides

the time domain into a series of successive frames, and eachframe is divided into two regions: one for synchronous traf-fic and another for asynchronous traffic. The average lengthof each region depends on percentage of bandwidth neededto be assigned for each class of traffic and on the desiredvalue ofTaverage. Let tf � ts 1 ta slots be the average lengthof each frame wheret s slots are for synchronous traffic andthe remainingta slots are for asynchronous traffic. Thisimplies thatTaverage� tf , thatt s/t f of the bandwidth is allo-cated to synchronous traffic, and that the remainingta/t f isallocated to asynchronous traffic. The values oft f, t s andta

can be adjusted by the HE from time to time in order toaccommodate new set-up and tear-down requests ofsynchronous calls, or in order to change the quality ofservice. For instance, by decreasingt s andta by the samefactor the HE can support synchronous calls that need smal-ler average delay between successive accesses, withoutchanging the total bandwidth assigned to each traffic class.

4.2. Frame extension

In order to avoid loss of asynchronous bandwidth whenthe number of asynchronous slots remaining in some frameis less than the number needed for the transmission of anasynchronous packet by a reserving station, the HE isallowed to extend the asynchronous part of a frame.However, in order to keep the average size of a framefixed, thus guaranteeing the value ofTaverage, the HE willhave to reduce the size of the asynchronous region in subse-quent frame(s) by the same number of slots. For instance,suppose that a station makes a reservation forl slots inorder to transmit its asynchronous packet. Suppose alsothat this reservation is made when onlyl 0 , l slots areleft in the asynchronous region of the frame where the reser-vation is received. Instead of ignoring the reservation, theHE extends the asynchronous region byl 2 l

0slots. This

causes a delay ofl 2 l0

to the slots of the synchronousregion in the same frame. In order to guarantee the valueof Taverage, the HE tries to remove the extral 2 l

0slots from

the asynchronous region of the subsequent frame. If this isnot possible, because of reservations received in that frameor becausel 2 l

0. ta, the HE removes the overdraft from

subsequent frames.An important property of the proposed scheme is that it

needs to be executed only by the HE. The CM stations donot have to know about the length of each frame, about theextension of a frame, or when the channel is switched froman asynchronous region to a synchronous region and viceversa. In particular, CMs that do not implement the synchro-nous scheme can work in the same MXL network with CMsthat do implement it.

4.3. An example of the new scheme

A formal description of the scheme is presented inSection 6. In the following we give a detailed descriptionby means of an example. Fig. 4 demonstrates the scheme in

R. Cohen / Computer Communications 22 (1999) 399–410404

Page 7: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

three different scenarios. It is assumed that the averagelength of a frame istf � 40 slots, the average length ofthe asynchronous region ista � 30 slots, and the fixedlength of the synchronous region ists � 10 slots. It is alsoassumed that the synchronous channel is divided between

two stations,si andsj, such that 8 slots are allocated tosi and2 to sj. Assuming that the upstream transmission rate is3 Mb/s and that the slot size is 64 bytes, the synchronouschannel ofsi has 600 Kb/s, the synchronous channel ofsj has150 Kb/s, and the average delay between subsequent

R. Cohen / Computer Communications 22 (1999) 399–410 405

Fig. 4. Three execution samples of the proposed scheme.

Page 8: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

synchronous transmissions is 40 slots� 6:82 ms. Recallthat the maximum delay between subsequent synchronoustransmissionsTmax is larger than the average delayTaveragebythe transmission time of the longest asynchronous burst astation can transmit following a single reservation.

As the length of the asynchronous region of a frame is notfixed,ta indicates the default size, which is also the averageone. The actual length of this region in a specified frame,FRAME-i say, is represented byti

a. The length of thesynchronous region of a frame can be either fixed or vari-able, depending on the network policy. If a CM must beassigned the same number of synchronous slots in everyframe, then the size of the synchronous region is fixed (aslong as new synchronous calls are not set up and existingones are not taken down). However, a more flexible alloca-tion method will allow the HE to save synchronous band-width by assigning to a CM a different number ofsynchronous slots in each frame. For instance, a CM thatneeds a channel of 30 Kb/s will be assigned one synchro-nous slot every two frames, which is equivalent to 37.5 Kb/s, instead of one slot every one frame (75 Kb/s). However,since this issue is orthogonal to the proposed scheme, wewill assume for simplicity that the length of the synchronousregion of a frame is fixed. Hence, we shall uset s to repre-sent both the average length of the synchronous region andthe actual length in a specific frame. As the asynchronousregion has a variable length, the whole frame has a variablelength as well. Thus, the average size of the whole frame isrepresented byt f whereas the actual size of FRAME-i isrepresented byti

f .Consider first Fig. 4a. This figure shows the case where

the HE does not need to extend the length of the asynchro-nous region of FRAME-1. Hence,t1

f � tf � 30 holds. Thefigure shows the exact contents of the asynchronous slots inFRAME-1. A slots marked as ‘c’ is available for contention,whereas a slot marked as ‘si’ is reserved for stationsi.Station s1 reserves 6 slots in slot 1. Assuming that theACK-window is ofd � 3 slots,s1 gets an acknowledgementin slot 4 and starts transmitting in slot 5. Stations2 sends areservation in slot 3, and it starts transmitting its asynchro-nous packet in slot 11, immediately afters1 finishes. The lastreservation for asynchronous transmission is made duringslot 19 by stations1 that reserves 2 slots and is allocated slots23 and 24. As no reservation is made later, the HE canassign the 10 slots following slot 30 of the asynchronousregion to the synchronous region of FRAME-1. As thevalues ofti

f and tia can dynamically change, the HE must

inform sj and sj before every synchronous transmission.Hence, the HE sends an ‘acknowledgement’ to stationsi,informing this station that it can transmit its synchronousdata during slots 31–38, and another acknowledgment tostationsj, informing this station that it can send its synchro-nous data in slots 39–40. These acknowledgements aresimilar to those sent to stations that reserve asynchronousbandwidth, but with one important difference: there is noneed for a synchronous station (si in our example) to send an

explicit reservation request for synchronous bandwidthevery frame. Only one request is made, by means of anupper (Network) layer call set-up protocol like Q.931 [3].This reservation prevails until the call is taken down, againby means of an upper layer protocol.

Next, consider the example in Fig. 4b. This exampledemonstrates the case where the asynchronous region ofFRAME-1 is extended by 10 slots, which are then removedfrom the asynchronous region of FRAME-2. In slot 23 of theasynchronous region of FRAME-1, stations1 reserves 14slots. Asd � 3, the earliest time whens1 can start transmit-ting its asynchronous packet is slot 27. In order to accom-modate the whole packet, the asynchronous region ofFRAME-1 should be extended by 10 slots. Thus, the asyn-chronous transmission ofsi is scheduled to slot 41 and theasynchronous transmission ofsj is scheduled to slot 49. Thisimplies that the delay between the synchronous transmissionin FRAME-1 and the synchronous transmission in theprevious frame is larger by 10 slots than the guaranteed averagedelay oftf � 40. In order to compensate for the 10 ‘‘stolen’’asynchronous slots in FRAME-1, the planned size of theasynchronous region in FRAME-2 ista 2 10� 20 slots.Assuming that the HE is not required to extend the lengthof this region (the exact contents of the slots in the asyn-chronous region of FRAME-2 is not shown in Fig. 4(b)),ta

2

is indeed 20. Thus, the delay between the synchronoustransmission in FRAME-2 and the synchronous trans-mission in the previous frame is smaller by 10 slots thanthe guaranteed average delay oftf � 40, and the average delayof the last two access is exactly�501 30�=2� 40� tf slots.

Finally, consider Fig. 4c. Suppose that the contents of theasynchronous slots in FRAME-1 is the same as in theprevious case (Fig. 4b). Thus, the planned size of the asyn-chronous region in the second frame is 20 slots. The figureshows the exact contents of the asynchronous region ofFRAME-2 starting in slot 16. In slot 16 stations1 makes areservation of 41 slots. In order to accommodate this reser-vation, the HE needs to extend the length of the asynchro-nous region to 60. Consequently, the asynchronous channelhas an aggregate overdraft of 40 slots. As this overdraft islarger thanta, FRAME-3 has no asynchronous region (i.e.t3

a). This reduces the overdraft to only 10 slots, so theplanned length of the asynchronous region of FRAME-4is 20. Assuming that the HE does not need to extend thisasynchronous region (e.g. because the reservation pattern issimilar to the one received in FRAME-2 of Fig. 4b),t4

aisindeed 20, and the average delay of the last four accesses ofsi andsj to the synchronous channel is exactly�501 701101 30�=4� 401 tf slots.

5. ‘‘Reservation-Sensitive’’ slots

Despite the HE’s ability to extend the length of an asyn-chronous region when necessary, there are some caseswhere as a result of the non-zero delay between the HE

R. Cohen / Computer Communications 22 (1999) 399–410406

Page 9: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

and CMs, reservation requests for asynchronous bandwidthwill have to be ignored by the HE or deferred to a futureframe. There are two reasons for this, both depicted in Fig.4. Consider the execution example in Fig 4a first. Asd � 3slots, when upstream slot 27 is scheduled, the HE shoulddetermine the status of slot 31 and notify the stationswhether it is reserved (either for asynchronous or synchro-nous transmission) or it is available for contention. As thereis no pending reservation, the HE determines in this casethat slot 30 will be the last one of the asynchronous regionand that the following 8 slots (31–38) will be assigned tostationsi for synchronous transmission. The HE transmits onthe downstream control channel a short control packet thatnotifies all the stations that the next upstream slot (31) isreserved. Another short control packet is sent by the HE toinform si that it can transmit its synchronous data using thenext 8 upstream slots. This implies that any reservationmade by the stations in the lastd slots of the synchronousregion of FRAME-1, afterti

f has already been determined,cannot be accommodated in this frame.

Before discussing the other case where a reservationneeds to be ignored by the HE, note thatTmax-the maximumdelay between two successive accesses of a synchronoussource to the upstream channel–is equal to the maximumpossible value ofti

f , that is ta 1 ts 1 te, wherete is thelongest possible extension of the asynchronous region. Asta andt s are fixed,Tmax can be minimized only by minimiz-ing te. Recall thatg is the longest asynchronous burst astation can reserve in a single reservation request. Thisimplies that te $ g. For instance,te � g if a successfulreservation forg slots is made in slot 27 of FRAME-1 inFig 4a.

Now consider Fig 4b. Note that slots 24–26 of FRAME-1in this example are available for contention and that stations1 makes a successful reservation in slot 23. As a result ofthis reservation, the HE needs to extend the length of theasynchronous region by 10–40 slots. If, however, the HE

receives and accommodates reservations during slots 24–26, the length of the asynchronous region will have to beextended by at mostd·g slots in addition to the extensioncaused by the reservation ofs1 in slot 23. Consequently, themaximum value ofte becomes�d 1 1�g 2 d, which mightbe too high for many synchronous applications, like voiceand video. Therefore, in order to guarantee thatte does notexceed its minimum value ofg , reservations that arereceived by the HE during thed slots after the asynchronousregion of a frame was extended beyond itsplanned lengthshould not be accommodated in the same frame.

In the following, the slots during which received reserva-tions cannot be accommodated in the same frame because ofone of the two reasons indicated earlier will be referred to as‘‘ reservation sensitive’’ slots. Note that in any frame thereare no more thand reservation-sensitive slots. If the asyn-chronous region is extended beyond its planned length thenthere existd reservation-sensitive slots after the slot withthe last reservation. If the asynchronous region is notextended beyond its default length, then the lastd slots ora portion thereof can be reservation-sensitive.

The straightforward approach to handle the reservationreceived during reservation-sensitive slots is to ignore them.This means that the HE will not send acknowledgement to astation whose reservation is received in a reservation-sensi-tive slot, and the station will re-contend in a future conten-tion slot in some succeeding frame, exactly as if a collisionhas occurred. In the worst case, this approach wastes a frac-tion of p·d=ta from the asynchronous bandwidth, wherep isthe probability for a successful reservation in a contentionslot. In most combinations of network topology and qualityof service required,d=ta , 0:1andp , 0:3 hold. Hence, thewasted bandwidth is small.

Fig. 5 depicts the average access delay to the asynchro-nous upstream channel versus input load forta � 40 andd � 4 for three cases: when the new scheme is employed,when the scheme from Section 3.2 is employed and whensynchronous traffic does not exist. These results are effec-tive for ta � 40 andd � 4. As in the case of Fig. 3, the inputload is normalized to the bandwidth available for the asyn-chronous traffic. We considerta � 40 because as indicatedin Section 3.2, higher values ofta yield unacceptable aver-age delay for the synchronous traffic. The results have beenobtained under the same conditions considered in Section3.2 for Fig. 3. It is evident from Fig. 5 that under theproposed scheme the effect of the synchronous traffic onthe performance of the asynchronous channel is negligible.The reason that a small difference still exists is attributed tothe reservation-sensitive slots. This small differencevanishes asd=tf ! 0 (e.g. whend � 0). It is also evidentfrom the graph that the proposed scheme improves thethroughput yielded by the scheme in Section 3.2 by almost50% (from 0.47%*3 Mb/s to 0.68%Mb/s).

Compared to any algorithm which is based on the doubleACKs concept (Section 3.3), the new algorithm has thefollowing advantages:

R. Cohen / Computer Communications 22 (1999) 399–410 407

Fig. 5. The performance of the asynchronous channel when the newscheme is employed.

Page 10: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

—No algorithm which is based on the double-ACKconcept can achieve better throughput.

—The CM’s algorithm is much more simple. There is noneed to process double ACKs, and there is no need touse a timer in order to avoid a deadlock because of aloss of the second ACK.

—The HE’s algorithm is much more simple. As shown inSection 6, it only requires the sender to maintain asingle counter. In particular, book-keeping is notrequired, unlike in any scheme which is based ondouble ACKs, because each successful reservation isimmediately responded by the HE.

—Fairness, to the extent provided by the MAC algo-rithm, is guaranteed with no extra burden on the HE.This is because every successful request is granted on afirst-come-first-served basis.

In an HFC network with a long distance between the HE andthe CMs, the value ofd might be too large. If it is notpossible to keepd=ta low by increasingta then the followingapproach can be used. Instead of ignoring all the reserva-tions received during the reservation-sensitive slots, the HEwill accept and accommodate the first reservation andignore the others. This will reduce the wasted bandwidthto max�0; �p·d 2 1�=ta�. As the accepted reservation cannotbe accommodated in the same frame, it will be accommo-dated in the first slot of the next frame with an asynchronousregion. In general, accommodating reservations in futureframes prevents the HE from changing the values ofta

and t s, and therefore from setting up or taking downsynchronous calls, until every pending reservation is accom-modated. If, however, only one reservation can be trans-ferred to a future frame, the set-up and take-down ofsynchronous calls are not affected.

6. Formal description and proof of correctness

In this section we give a formal description of theproposed scheme, and prove that it indeed guarantees abounded maximum delay, an average delay, and dedicatedbandwidth to each synchronous station. The proofs appearin Theorem 1, 2 and 3 respectively. Before presenting theproofs, the following is a summary of the relevant notations:

Tmax, Taverage —The maximum delay and the average delaybetween two consecutive access of asynchronous source to the upstream channel.

t f, ta, t s, —The default sizes of a frame, the default sizeof the asynchronous region of a frame, andthe fixed size of the synchronous region of aframe.

tif ; t

ia —The actual size of FRAME-i and the actual

size of the asynchronous region ofFRAME-i.

a n —The aggregated overdraft of the asynchro-nous region in FRAME-1…FRAME-nPn

i�1 tia 2 n:ta (this equality follows by the

HE algorithm as presented later).t̂ i

a —The plannedsize of the asynchronousregion of FRAME-i, determined by the HEafter accounting for the previous aggre-gated overdraft.

g —The longest asynchronous burst a singlestation can transmit following a singlereservation.

d —The length of the ACK-window.

A formal description of the scheme is presented in Fig. 6.Note that the algorithm does not allow to extendt̂ i

a, theplanned length of FRAME-i, by more than g slots.

R. Cohen / Computer Communications 22 (1999) 399–410408

Fig. 6. A formal description of the algorithm performed by the HE.

Page 11: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

However, it does not dictate a specific approach for handlingreservations received during the reservation-sensitive slots.

Theorem 1. Tmax # tf 1 g

Proof. Consider a synchronous source transmitting inFRAME-(i 2 1) and in FRAME-i. The total delay betweenthe two accesses of this source to the synchronous channel ists 1 ti

a. Ast � ts 1 ta, it remains to show thattia # ta 1 g.

By the HE algorithm (Fig. 6), the original part of FRAME-ihast̂ i

a � ta 2 ai21 slots and the extended part has no morethang slots. Thus,ti

a # t̂ ia 1 g # ta 2 ai21 1 g # ta 1 g,

and the theorem holds.A

Corollary 1. In order to minimize Tmax while avoiding theneed to break down asynchronous packets,g should be setto the number of slots in the longest asynchronous packet.

Theorem 2. For a synchronous call lasting n frames,Taverage� tf 1 g=�n 2 1�. Hence, if the call is ‘‘sufficientlylong’’, such thatg=�n 2 1� ! 0, Taverage� tf .

Proof. Let the first frame where the synchronous call isaccommodated be FRAME-1 and3 the last one be FRAME-n. For everyi, 2 # i # n, the delay between the transmis-sion in the synchronous region of FRAME-(i 2 1) and thetransmission in the synchronous region of FRAME-i ists 1 ti

a. As tf � ts 1 ta, we need to show that (i)Pni�2 t

ia # �n 2 1�ta 1 g.

To prove (i), we first prove by induction that (ii)an �a1 1

Pni�2 t

ia 2 �n 2 1�ta holds for everyn $ 1. Forn� 1

(ii) obviously holds. Suppose (ii) holds forn� n0, namelythat (iii) an0 � a1 1

Pn0i�2 t

ia 2 �n0 2 1�ta. We will now

show that it is correct for n� n0 1 1 as well; namely, that

�* �an011 � a1 1Xn011

i�2

tia 2 nta:

To this end, we distinguish between the following twocases:

• 0 # an0 , ta: In this case, by step 2 of the HE algorithmfollows that (iv)t̂n011

a � ta 2 an0 . From steps 4.2 and 4.3of the HE algorithm it also follows that: (v)an011 � tn011

a 2 t̂n011a . From (iv) and (v) follows that

(vi) an011 � tn011a 2 ta 1 an0 , and by (vi) and the induc-

tion assumption (iii) the claim (*) holds.• an0 $ ta: In this case, by step 2 of the HE algorithm

follows that t̂n011a # 0. Therefore, by step 3 of the HE

algorithm (vii) tn011a � 0 and (viii) an011 � an0 2 ta.

Finally, from (vii), (viii) and the induction assumption(iii) follows that (*) holds for this case as well.

After having proven (ii), we complete the proof of the theo-rem by using (ii) in order to prove (i). As from (ii) followsthat

Pni�2 t

ia � an 2 a1 1 �n 2 1�ta, then in order to prove

(i) we need to show that (ix)an 2 a1 # g. However, as forevery i, 0# ai # g holds (this can be shown by a simpleinduction oni: for i � 0 ai

W 0, and by the HE algorithma i

can be set to 0 in 4.2.2, or set toe , g in 4.3.2, or set to avalue which is, ai21 but $ 0 in 3.2), then (ix) holds andthe theorem is correct.A

Theorem 3. A synchronous source that is assigned s slotsin the synchronous region of every frame has a dedicatedsynchronous channel with a bandwidth ofT·s/t f, whenT isthe transmission rate on the upstream channel.

Proof. Follows directly from Theorem 2. A

7. Conclusions

The article has addressed the problem of guaranteeingquality of service to synchronous sources on the upstreamchannel of an MXL CM network. The article has shown thatThe MXL is a unique MAC protocol that does not requirethat packets will be broken down into a stream of fixed sizedunits at the sending CM and be re-assembled after delivery.Consequently, the support of synchronous traffic becomes amuch difficult challenge. A naive solution, where the HEdivides the time domain into a series of successive frames,and every frame is divided into fixed-size synchronous andasynchronous regions, would result in loss of asynchronousbandwidth when the number of asynchronous slots remain-ing in some frame is less than the number needed for thetransmission of an asynchronous packet by the reservingstation. The article presented a new scheme where the HEis allowed to extend the asynchronous part of a frame.However, in order to keep the average size of a framefixed, the HE will have to reduce the size of the asynchro-nous part in subsequent frame(s) by the same number ofslots. The article has shown that the new scheme guaranteesthe synchronous stations the same quality of serviceprovided by the FDDI timed token protocol. That is, a guar-anteed average delay between consecutive transmissions, aguaranteed maximum delay between consecutive transmis-sions, and a guaranteed bandwidth on the upstream channel.

References

[1] A. Banerjea, D. Ferrari, B. Mah, M. Moran, D. Verma, H. Zhang, Thetenet real-time protocol suite: design, implementation and experiences,IEEE/ACM Transactions on Networking, 4(1) February 1996.

[2] C. Bisdikian, B. McNeil, R. Norman, R. Zeisz, MLAP: a MAC levelaccess protocol for the HFC 802.14 network, IEEE Communication sMagazine, 34(3) March 1996.

R. Cohen / Computer Communications 22 (1999) 399–410 409

3 Note that in the HE algorithm (Fig. 6) FRAME-1 represents the firstframe after the system was configured with the current values ofta andt s

and thereforea 0 is defined as 0. In this theorem, in order to simplify thenotations, it is assumed that FRAME-1 is the first frame of the consideredsynchronous call, which is not necessarily the first frame since the systemwas configured with the current values ofta andt s. This implies that for thesake of this proofa 0 might be greater than 0.

Page 12: An efficient scheme for accommodating synchronous traffic in a cable-modem network while avoiding segmentation of asynchronous packets

[3] CCITT. Specifications of signalling system No. 7, RecommendationsQ.700-Q.716, Nov. 1989.

[4] J. Dail, M. Dajer, C. Li, P. Magill, C. Siller, K. Sriram, N. Whitaker,Adaptive digital access protocol: a MAC protocol for multiservicebroadband access networks. IEEE Communications Magazine, 34(3)March 1996.

[5] R. Guesella, A measurement study of diskless workstation traffic on anethernet, IEEE Journal on selected Areas in Communications, 38(9)1990.

[6] M. Johnson, Proof that timing requirements of FDDI token ring proto-col are satisfied, IEEE Transactions on Communications 35 (6) (1987)620–625.

[7] M. Chen, R. Chiu, R. Cohen, B. Hutchinson, The MXL MACprotocol for HFC networks, Technical Report HPL-97, HP Labs,1997.

[8] D. Sala, J. Limb, A protocol for efficient transfer of data over a fiber/cable systems, INFOCOM, March 1996.

R. Cohen / Computer Communications 22 (1999) 399–410410