A Dynamic Bandwidth Allocation Scheme for Differentiated Services in ...

22 downloads 27613 Views 266KB Size Report
services, an ONU is allowed to request bandwidth for all its available traffic, and all traffic ..... However, EPON is a shared-media (i.e., uplink channel) network.
A Dynamic Bandwidth Allocation Scheme for Differentiated Services in EPONs Jing Xie1,2 , Shengming Jiang2 , and Yuming Jiang3 1 Department of Electrical and Computer Engineering National University of Singapore 2 Institute for Infocomm Research 21 Heng Mui Keng Terrace, Singapore 119613 3 Centre for Quantifiable Quality of Service in Communication Systems Norwegian University of Science and Technology E-mail: [email protected] [email protected] [email protected] Abstract Passive Optical Networks (PONs) bring high speed broadband access via fiber to the business, curb and home. Among various types of PONs, Ethernet PONs (EPONs) are gaining more and more attention since they are built upon widely used Ethernet technology and can offer high bandwidth, low cost, and broad services. EPONs use a point-to-multipoint topology, in which multiple optical network units (ONUs) share one uplink channel to transmit multimedia traffic to a control element, optical line terminal (OLT). To avoid data collision on the shared uplink channel, a key issue in EPON is a contention-free MAC protocol for the OLT to schedule the transmission order of different ONUs. In this paper, we first review some DBA schemes available in the literature, then propose a two-layer bandwidth allocation (TLBA) scheme which implements weight-based priority for this need. To maximally satisfy the requests of all ONUs and provide differentiated services, an ONU is allowed to request bandwidth for all its available traffic, and all traffic classes proportionally share the bandwidth based on their instantaneous demands. The weight set for each class not only prevents high priority traffic from monopolizing the bandwidth under heavy load but also ensures a minimum bandwidth allocated to each traffic class.

1

Introduction

Passive optical network (PON) technologies are expected as one solution for Full Service Access Network (FSAN) because optical fiber can satisfy the increasing bandwidth 1

demand driven by high-speed file sharing, video conference, video-on-demand and other high-speed services. Ethernet passive optical network (EPON) is one primary type of PON technologies, which reduces the fiber deployment dramatically while preserves the merits of Ethernet networks. An EPON is a point-to-multipoint network (refer to Fig. 1), which consists of one optical line terminal (OLT) and multiple optical network units (ONUs). In the downstream direction from the OLT to ONUs, the OLT broadcasts to all ONUs while the upstream (from ONUs to the OLT) optical fiber channel is shared by all ONUs. To avoid data collision, scheduling is needed to prevent simultaneous transmissions from different ONUs. An available solution is to assign a time slot to each ONU, and each ONU can only transmit in its assigned time slot. While assigning every ONU a fixed time slot regardless of its demand is simple, this scheme cannot adapt to bursty traffic and may waste bandwidth. Consequently, a more suitable scheme is to assign a variable time slot for each ONU according to its demand. Since EPON is expected to support diverse applications, various traffic sessions are aggregated into a limited number of classes to be serviced with differentiated services. Accordingly, there are multiple queues for different classes in an ONU. A newly arriving packet is first classified according to its QoS requirement and then placed into the corresponding queue. When the correct time slot arrives to an ONU, it begins to transmit packets at full channel speed. Hence an optimal bandwidth allocation scheme can improve the throughput and shorten the packet delay. Therefore, a key issue in EPON is to make the bandwidth to be used efficiently and fairly by all ONUs. Dynamic bandwidth allocation (DBA) scheme is effective and flexible because the bandwidth is allocated according to the demands of ONUs. After the allocation, the OLT informs each ONU of the assigned time slot. To this end, the IEEE 802.3ah task force develops the Multi-Point Control Protocol (MPCP) [1] to manage the control messages which are exchanged between the OLT and the ONUs. Recently, there are some works reported in the literature on how to combine MPCP and DBA to support differentiated services. [2] proposed an Interleaved Polling with Adaptive Cycle Time (IPACT) scheme. IPACT can get good performance by combining a limited service through predefining a maximum transmission window size to confine a maximum frame size. Two-stage queue scheme introduced in [3] investigated the combination of the limited service and intra-ONU priority scheduling. These two schemes can improve bandwidth utilization without queuing packets too long. In both schemes, however, the OLT does not distinguish the traffic from different classes nor concerns how an ONU to use its time slot to transmit traffic of different classes. In another DBA scheme proposed in [4], the ONU is allowed to report the requests of three priority classes to the OLT, and its

2

granted bandwidth consists of three parts accordingly. A contribution of this scheme is to fairly distribute the excessive bandwidth among highly loaded ONUs. However, with this scheme, the OLT still only focuses on how to satisfy bandwidth requests from different ONUs and does not provide a prior service to high priority traffic. Prioritizing packets and then delivering delay-sensitive packets first can increase the quality of service (QoS) for such applications. Thus, [5] proposed such a DBA scheme, Hybrid Slot-Size/Rate (HSSR) scheme, in which traffic is classified into two priority classes. It allocates a fixed amount of bandwidth to high priority class in order to minimize the delay and jitter of packets. However, the fixed bandwidth cannot always satisfy the instantaneous demands. In [6], a bandwidth guaranteed polling (BGP) scheme was presented. Although BGP can achieve bandwidth guarantee for premium subscribers and provide best-effort service for other subscribers, it is not consistent with MPCP proposed for EPON. As discussed later, with the two-stage queue scheme [3], an ONU is only allowed to request a quota of bandwidth, and the OLT does not distinguish the requests from different classes. Although an ONU in [4] reports the request of each traffic class to the OLT separately, it is not clear how the OLT uses the information to allocate bandwidth to each class accordingly. HSSR allows the remaining bandwidth available in an ONU to be shared only by its own sessions but not by other ONUs. In this paper, we propose a class-based bandwidth allocation scheme to provide differentiated services based on MPCP. With this proposal, an ONU is allowed to report all its instantaneous traffic load for each traffic class separately and the OLT uses this information to proportionally allocate bandwidth according to the ratio of the demand of a single class to the total demand. Hence, it can be adaptive for dynamic traffic load. The OLT first allocates the bandwidth for different traffic classes, then further distributes the bandwidth allocated to one class among all requesting ONUs. Thus, this scheme is called two-layer bandwidth allocation (TLBA). To avoid a class from monopolizing bandwidth under heave load, a weight is set for each class to determine a bandwidth threshold. The bandwidth allocated to a class is the minimum one between its bandwidth demand and its bandwidth threshold. Within the same class, all ONUs fairly share the bandwidth following the max-min policy. The rest of the paper is organized as follows. Section 2 reviews in detail the above mentioned DBA schemes. Then, the proposed TLBA scheme is introduced and a comparison with other DBA schemes is presented in Section 3. The paper is concluded in Section 4.

3

2

DBA schemes based on MPCP

This section will introduce some DBA schemes based on MPCP available in the literature following an introduction on MPCP.

2.1

Multi-Point Control Protocol (MPCP) N Downstream

GATEs

OLT

N 1 1

2

1

2

2

slot 1 slot 2

1 N

Splitter/ Combiner 1:N

2

1

2

ONU 1

1

1 1 slot 1 N

2

1

2

ONU 2

1

2

N N slot N

1

1 1

2

1

2

End User 1

End User 2

2

slot 2

REPORTs

Upstream

N

2

1

2

1 N

N

N

ONU N

N N

N

N

End User N

slot N

Figure 1: System architecture of EPON EPON uses MPCP to control point-to-multipoint fiber network. MPCP implemented at the MAC control layer, performs bandwidth assignment, bandwidth polling, auto-discovery process and ranging [7]. As illustrated in Fig. 1, two control messages, REPORT and GATE, are used to request and grant bandwidth respectively [1]. An ONU uses the REPORT message to request the bandwidth. The OLT sends GATE message to an ONU with the time when it should begin to transmit and the size of the assigned time slot. Even if an ONU need not transmit traffic, a minimum bandwidth is guaranteed to transmit the REPORT message. When the assigned time slot arrives at an ONU, it begins its transmission. A REPORT message is transmitted either at the beginning of or at the end of the time slot with data packets. The ONU buffer consists of multiple queues which are used to store packets belonging to different service classes. This architecture can easily support priority scheduling, which is a useful method to provide differentiated services. According to the format of control messages defined in [1], the REPORT message can support eight queue reports and the GATE message can grant at most four time slots.

4

2.2

Review of DBA schemes

Allocating bandwidth on demands of ONUs can improve bandwidth utilization. Paper [2] presented an ONU-based polling scheme called IPACT, which reduces the polling cycle with an interleaved polling approach. When ON Ui is transmitting packets through the uplink channel, the OLT informs ON Ui+1 of its starting time and its transmission window size. ON Ui+1 is polled before the transmission from ON Ui has completed. The first bit from ON Ui+1 arrives at the OLT only after the OLT receives the last bit from ON Ui . Because the bandwidth granted for ON Ui is equal to its demand, it can be fully used. However, this scheme may cause an ONU with heavy traffic load to monopolize the upstream channel so that packets from other ONUs are delayed longer. To solve this problem, a limited service discipline is proposed to predefine a maximum transmission window size (WM AX ) for all ONUs. With WM AX , the maximum frame size is confined so that the average queuing delay of packets may decrease. By investigating the combination of the limited service and intra-ONU priority queuing, [3] found an unexpected network behavior called light-load penalty. That is, when the load is light, such as from moderate (0.25) to very light (0.05), the average delay and the maximum delay of low priority packets and the maximum delay of medium priority packets increase significantly. The reason of light-load penalty is that during the time lag between an ONU sending a REPORT and the arrival of its assigned time slot, more packets arrive. Newly arriving packets may have higher priority than some packets stored in the ONU, and will be transmitted in the assigned time slot. Since these new packets are not reported to the OLT, the assigned time slot cannot accommodate all the stored packets. This causes some lower priority packets are left in the queue and delayed longer. To eliminate this problem, [3] proposed a two-stage queue scheme, in which stage-I consists of multiple-priority queues and stage-II is a FirstCome-First-Served (FCFS) queue. A newly arriving packet is classified and placed into the corresponding stage-I queue. When a time slot arrives, packets queued in stage-II are transmitted, and packets in stage-I enter stage-II to fill the vacancy simultaneously. At the end of the time slot, the ONU reports the current queue occupancy of stage-II to the OLT. The maximum queue size of stage-II is confined by WM AX . This constraint ensures that the assigned time slot is always full utilized. When packets from stage-I queues are forwarded into the stage-II queue, the ONU performs a strict priority scheduling which ensures high priority traffic a prior service within the same ONU. Paper [4] introduced a DBA scheme based on of ONUs, which predefines a minimum guaranteed bandwidth, BiM IN for ON Ui . Considering the bursty characteristic of network traffic, some ONUs may have less traffic to transmit while other ONUs require more bandwidth than BiM IN . To improve the bandwidth utilization, the ex5

cessive bandwidth is fairly distributed among the highly loaded ONUs. The requested bandwidth Ri consists of high priority (Hi ), medium priority (Mi ) and low priority (Li ) bandwidth. ON Ui can request the OLT to allocate bandwidth to each class within the assigned time slot. The granted bandwidth also consists of three parts, i.e., Big = Hig + Mig + Lgi , where Hig , Mig , Lgi are the granted bandwidth for three traffic classes, respectively. This scheme is based on demands of different classes within the same ONU. That is, EiW (n) is defined, which is used to estimate the amount of high priority packets expected to arrive during the waiting time in cycle n and prevent these newly arriving packets from being deferred to cycle (n+1 ). Upon receiving all REPORT messages from the active ONUs, the OLT generates grants according to the requests of ONUs. However, the uplink channel is idle in the interval between the end of the cycle (n-1 ) and the beginning of the cycle n. To shorten this idle time for higher channel utilization, the above scheme is enhanced by employing an early allocation mechanism to schedule ONUs requiring bandwidth Ri < BiM IN instantaneously without waiting, where Ri is the request of an ONU. Those requiring Ri ≥ BiM IN have to wait until all REPORT messages arrive. The above DBA schemes are based on the demand of ONUs and allocate one time slot to each ONU in a cycle. Either performing intra-ONU priority scheduling (e.g., [2] and [3]) or allocating the bandwidth for different traffic classes from an ONU [4] can only guarantee the higher priority traffic to be served prior to the lower priority traffic within the same ONU. However, in a cycle, due to the ordered transmission sequence of all ONUs, the low priority packets of an ONU which are assigned to transmit earlier will still be transmitted earlier than the high priority packets of other ONUs that are assigned to transmit later. Therefore, the queuing delay of high priority packets may be longer than that of low priority packets. Since high priority traffic is delay sensitive, serving such packets before low priority packets is more desirable. HSSR scheme introduced in [5] can minimize the delay and jitter of high priority traffic. It divides a frame into two parts for two service classes. The initial part, which is reserved for high priority (HP) traffic, is constant in every frame. This part consists of N time slots, where N is the number of ONUs. The length of every time slot is also fixed, which is determined by the subscription rate of all end users served by the same ONU. The remaining part is for low priority traffic and allocated dynamically to besteffort (BE) traffic from all ONUs. After an ONU is assigned a time slot, it distributes the granted bandwidth to its end users according to their respective subscription rates. If HP traffic of an ONU does not use its reserved time slot completely, the remaining bandwidth can be used to transmit BE traffic from the same ONU. Although the reserved bandwidth can mostly satisfy the demands of HP traffic, the arrival rate of HP traffic is variable and may exceed the subscription rate instantaneously. In this

6

case, the ONU needs to redirect the excess HP traffic into BE queues to prevent HP traffic from engrossing the bandwidth that should be allocated to BE traffic. Since the bandwidth reserved for an ONU is shared only by its own sessions, the remaining bandwidth of this ONU cannot be used by other ONUs.

3

Two-Layer Bandwidth Allocation (TLBA)

TLBA is a hierarchical allocation scheme which dynamically allocates the bandwidth according to the instantaneous demands of ONUs. As illustrated in Fig. 2, the bandwidth is allocated first among differentiated service classes and we call this allocation “class-layer allocation”. Then, the bandwidth is distributed to all ONUs within the same class, and we call this “ONU-layer allocation”. Here, we consider an EPON access network with N ONUs and three service classes corresponding to three priorities (i.e., high, medium and low), which may be mapped respectively to Expedited Forwarding (EF), Assured Forwarding (AF) and Best Effort (BE) classes in the Differentiated Services framework. The OLT allocates the bandwidth according to the requests of ONUs and does not limit the request size of ONUs. Hence an ONU is allowed to report the lengths of all its queues to the OLT. The OLT allocates the entire bandwidth to satisfy all requests as much as possible.

Class - layer allocation High priority class

Medium priority class

Low priority class

ONU - layer allocation ONU 1

ONU 2

ONU 3

ONU N

ONU 1

ONU 2

ONU 3

ONU N

ONU 1

ONU 2

ONU 3

ONU N

Figure 2: Principle of bandwidth allocation for TLBA There are two formats of the frame that may be used by the OLT in the grant cycle to implement this scheme. The first one is similar to the structure illustrated in Fig. 2. That is, the time slots allocated to all ONUs for the same traffic class are arranged consecutively with the high priority class preceding the low ones. A similar structure was also used in HSSR [5]. The major advantage given by this format is that it can

7

assure that high priority traffic can be always serviced earlier than low one within each frame. However, it increases gap times which are needed between two adjacent time slots to avoid the overlap of signals from different ONUs. With the second format, the time slots allocated to the same ONU for different classes are arranged consecutively to reduce such gap times. However, this format may increase the delay of higher priority traffic since it cannot support inter-ONU priority scheduling [3]. Thus, the discussion in the remaining of this paper is based on the first frame format.

3.1

Bandwidth allocation in the OLT

The available bandwidth of a frame is divided into three parts for three service classes. The ratio, which is the demand of a single class to the total demand, determines the total bandwidth allocated to this class because all classes proportionally share the bandwidth. The bandwidth demand of a service class j from all ONUs, ReBWj , is often different in every cycle. Therefore, the total allocated bandwidth of each class within a frame is variable to meet the instantaneous demand. Only the maximum bandwidth of a frame is confined, and the bandwidth allocation is dynamic based on the reported requests. To prevent a class (e.g., j) from monopolizing the bandwidth under heavy load, a weight (weightj ) is set for each service class to determine a bandwidth threshold, which can guarantee a minimum bandwidth for each class. After the class-layer allocation, the total bandwidth allocated to each class is determined, then, within the class, the OLT distributes the bandwidth to the ONUs on their requests accordingly. The ONU-layer allocation follows the max-min fairness principle. The OLT maintains a table to store the bandwidth demands from all ONUs in an increasing order. After the OLT receives a REPORT messages from an ONU, it updates this table immediately. The OLT needs to receive the REPORT messages from all ONUs to calculate the total bandwidth demand of each service class. If the bandwidth of the uplink cannot satisfy the demands from all ONUs, the OLT will confine some demands. Since all classes proportionally share the bandwidth, a large proportion of demand from a class may occupy more bandwidth. Therefore, a bandwidth threshold, BW thresholdj (j =0, 1 and 2), is defined for each service class. BW thresholdj is calculated by BWf rame ×weightj , where BWf rame is the available bandwidth of a frame P and weightj satisfies 0 < weightj < 1 with 2j=0 weightj = 1. Given the instantaneous bandwidth demand from service class j, ReBWj , the bandwidth allocated to class j, GrantBWj , is calculated as follows: ReBWj GrantBWj = min{BW thresholdj , P2 × BWf rame }. j=0 ReBWj

(1)

When ReBWj is less than BW thresholdj , the remaining bandwidth (RemainBWj = BW thresholdj − ReBWj ) will be proportionally distributed to other classes according 8

to their weights if these classes require more bandwidth than their respective bandwidth thresholds. The bandwidth threshold also ensures a minimum throughput for a service class in the case of heavy load, which can be estimated by minthrj = N umberf rame × BWf rame × weightj ,

(2)

where N umberf rame is the number of frames per second. Within a service class, the bandwidth is distributed to all ONUs following the max-min fairness policy. This policy maximizes the minimum share of a source among those whose demands cannot be fully satisfied, with the following principles [8]: • The shared resource is allocated evenly to all users in order of increasing demand. • No user is allocated the resource larger than its demand. • Users with unsatisfied demands will evenly share the remaining resource. Although there are many fairness policies available in the literature, we think the max-min fairness policy is more suitable for EPON as explained below. Most fairness policies were proposed for routes or switches, in which there is no MAC layer. Therefore, these policies consider that the sever can know packet arrivals immediately. However, EPON is a shared-media (i.e., uplink channel) network. Due to the medium access delay at the MAC layer plus the delay from the REPORT-GRANT protocol, it takes time for the OLT to know the traffic situation at ONUs. Hence, it is inefficient to ask ONUs to adjust their requests in case that their requests cannot be satisfied. In this case, the max-min fairness policy can partially satisfy all effected ONUs as much as possible according to their requests in a fair manner. For the same reason, the way to support EF in EPON is also different from the EF Per-Hop-Behavior (PHB) originally defined for routers.

3.2

Buffer structure in ONU

The buffer consists of three queues for three service classes without a second stage queue used in [3]. Therefore, TLBA is simpler than the two-stage queue scheme [3] in terms of implementation and operation. To ensure packets with the same type from different ONUs to be serviced equally, the OLT assigns consecutive time slots to different ONUs to transmit the packets belonging to the same service class. An ONU reports the lengths of its three queues to the OLT which then grants at most three time slots to it accordingly. The transmission order is from high priority traffic (i.e., class 0) to low priority traffic (i.e., class 2). Since three priority queues share a limited-size buffer, an appropriate packetdropping scheme is needed to manage the buffer length. Random Early Detection 9

(RED) is a typical packet-dropping scheme. When a new packet arrives at an ONU, it is accepted if the queue length is less than a minimum threshold. It is dropped probabilistically when the queue size is between a minimum threshold and a maximum threshold while it is dropped when the queue length is greater than the maximum threshold [9]. However, RED does not support priority. Therefore, in [10] a Weighted RED (WRED) is introduced to drop packets selectively based on the priority of packets. It allows the network designer to provide differentiated service quality with respect to dropping probability. Packets with higher priority are less likely to be dropped than those with lower priority. In our proposal, WRED is adopted and performs RED for each service class individually as illustrated in Fig. 3. Here the x-axis is the queue size and the y-axis is the probability of dropping an arriving packet. When a packet belonging to class j (j = 0, 1 and 2) arrives, the following events occurs consecutively: • The current queue size is calculated. • If the queue size is less than minthj , the arriving packet is queued. • If the queue size is between minthj and maxth, the packet is either dropped or queued, depending on the packet drop probability, which is calculated by maxp j × (maxth − queue size)/(maxth − minthj ). • If the queue size is greater than maxth, the packet is automatically dropped.

Drop Probability 1

maxp2 maxp1

maxp0

0

minth2 minth1 minth0 maxth

Queue size (bit)

Figure 3: Principle of WRED Here, minth is the minimum threshold of queue size for packet dropping, and minth of higher priority traffic is larger than that of lower priority traffic. maxth

10

is the maximum threshold of queue size for packet dropping. maxp is the dropping probability when the current queue size is at the maximum threshold.

3.3

Numerical results and comparisons

To verify the effectiveness of TLBA, we conduct simulation with OPNET (a professional simulation tool developed by OPNET Technologies Inc.) in comparison with the two-stage queue scheme [3]. The simulated network includes one OLT and sixteen ONUs as illustrated in Fig. 1. The distance from the OLT to any ONU is fixed and equal. The link rate between the OLT and the ONU is 1 Gbit/s, and that from end users to the ONU is 100 Mbit/s. The gap time is set as 1 µs. Here, maxp j of WRED for class j is set as (1 − weightj ). Such setting ensures the dropping probability of packets with higher priority be less than that of packets with lower priority. Traffic with the same QoS requirements is aggregated into one service class. Three service classes are simulated, namely, class 0 (high priority), class 1 (medium priority) and class 2 (low priority). Class 0 is used to emulate constant-bit-rate (CBR) voice streams, which generate a 70-byte packet every 125 µs. Class 1 consists of real-time variable-bit-rate (rt-VBR) video streams with a mean rate of 2.3 Mbit/s. Class 2 generates non-real-time (nrt) VBR data following Pareto distribution. Each ONU has different traffic profile consists of the numbers of CBR, rt-VBR and nrt-VBR sources, while the mean rate of the total offered traffic is equal. For example, when an ONU’s offered traffic equals 25 Mbit/s, it may generate one CBR voice flow, six VBR video streams and 6.5 Mbit/s data traffic. First, based on the same setting that the offered load of a single ONU is 100 Mbit/s and the overall offered load is 1600 Mbit/s, we change the weight of each service class, weightj . Table 1 lists six sets of simulation results. The unit of delay is second and that of throughput is Mbit/s. The results show that the throughput of the entire network is around 870 Mbit/s and does not vary sharply with different weight sets. However, the delay and the throughput of the service classes are different since their weights are changed. Because the offered load is very heavy, the throughput of each class is confined by its bandwidth threshold and proportional to its weight. We observe 1 2 , the average packet and ( 47 , 27 , 17 ), respectively.

that if weight0 ≥

delay of class 0 is less than 2 ms, e.g., ( 12 ,

1 1 3 , 6 ),

Among them, set ( 12 , 13 , 16 ) distinguishes the

( 21 , 14 , 14 )

priority of different service classes in terms of not only throughput but also average delay. Compared to set ( 47 , 27 , 71 ), this set allocates less bandwidth to class 0 but still gets the same throughput, and the average packet delay of class 1 and class 2 are lower. In the remaining, the discussed simulation results are obtained by using this weight set, i.e., ( 21 , 13 , 16 ). Next, we investigate the throughput of the network which is illustrated in Fig. 4.

11

Table 1: Simulation results of different weights vs overall offered load of 1600 Mbit/s Weight Total Delay THR Delay THR Delay THR class 0 class 1 class 2 THR class 0 class 0 class 1 class 1 class 2 class 2 2/5

2/5

1/5

870

0.0076

379

0.058

342

0.207

160

4/9

3/9

2/9

871

0.0054

416

0.043

275

0.147

179

1/2

1/3

1/6

878

0.0019

440

0.046

280

0.331

147

1/2

1/4

1/4

876

0.0019

441

0.084

224

0.224

221

4/7

2/7

1/7

878

0.0018

441

0.067

261

0.333

176

1/3

1/3

1/3

873

0.0422 311 0.06 THR=throughput.

298

0.228

282

The x -axis is the normalized offered load of an individual ONU and the y-axis represents the total throughput of a single class. Fig. 4(a) shows the throughput of traffic class 0. When the offered load is below 0.6 (or 600 Mbit/s), the available bandwidth is enough to satisfy the demands of all ONUs. Thus, the throughput of class 0 is equal to its traffic load. If the load of an ONU exceeds 0.6 (600 Mbit/s), the total bandwidth demand is larger than the available bandwidth. Since the available bandwidth cannot meet all demands and some of them are blocked by the OLT, some packets are delayed in the ONU buffer. Simultaneously, more and more packets arrive at the ONU buffer until the buffer is full and has to drop packets. The predefined BW threshold0 prevents the traffic of class 0 from occupying too much bandwidth, hence the throughput of this class is confined. However, the two-stage queue scheme permits the traffic of class 0 to be transmitted as much as possible, and the arriving packets of class 0 can preempt lower priority packets queued in the ONU buffer. Therefore, the throughput of class 0 under the two-stage queue scheme is close to its traffic load. Fig. 4(b) presents the throughput of traffic class 1. If the offered load is less than 0.6 (600 Mbit/s), the available bandwidth is sufficient to accommodate all ONUs. All packets of class 1 can be transmitted, and the throughput of this class is close to its traffic load. Once the offered load exceeds 0.6, some packets of class 1 may be dropped and its throughput decreases. Nevertheless, BW threshold1 used by TLBA can guarantee a minimum throughput for class 1, about 280 Mbit/s. In contrast, when the offered load increase continuously, more stored packets with lower priority are pushed out to place the newly arriving packets with higher priority. When all stored packets of class 2 are pushed out, the packets of class 1 are discarded to place newly arriving packets of class 0 and the throughput of class 1 begins to fall as the offered load increases. As shown in Fig. 4(c), the minimum throughput of class 2 is about 150 Mbit/s, which is ensured by BW threshold2 . However, the two-stage queue scheme first drops packets of class 2 to store arriving packets with higher priority until there

12

700

600

(a) class 0 Load of traffic class 0 TLBA Two−stage queue

Throughput (Mbit/s)

500

400

300

200

100

0 0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0.7

0.8

0.9

1

0.7

0.8

0.9

1

Offered Load 500

450

(b) class 1 Load of traffic class 1 TLBA Two−stage queue

Throughput(Mbit/s)

400

350

300

250

200

150 0.2

0.3

0.4

0.5

0.6

Offered Load 500 450

(c) class 2 Load of traffic class 2 TLBA Two−stage queue

Throughput(Mbit/s)

400 350 300 250 200 150 100 50 0.2

0.3

0.4

0.5

0.6

Offered Load

Figure 4: Throughput of all ONUs for each class vs offered load is no packets of class 2 queued in the buffer. Thus, the throughput of class 2 descends to a low point at load of 1. Now we discuss the packet drop rate. Since the ONU buffer implements WRED to control the queue length, the drop rate is usually non-zero. As shown in Fig. 5(a), only 13

550

550 500

450

450

400

400

Packet Drop Rate (Mbit/s)

Packet Drop Rate (Mbit/s)

500

(a) TLBA class 0 class 1 class 2

350 300 250 200 150

350 300 250 200 150

100

100

50

50

0 0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

(b) Two−stage queue class 1 class 2

0 0.1

1

0.2

0.3

0.4

Offered Load (c) TLBA

0

10

−1

0.8

0.9

1

0.7

0.8

0.9

1

class 0 class 1 class 2

−1

Average Packet Delay (s)

Average Packet Delay (s)

0.7

10

−2

10

−3

−2

10

−3

10

10

−4

0.1

0.6

(d) Two−stage queue

0

10

class 0 class 1 class 2

10

10

0.5

Offered Load

−4

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Offered Load

10

0.1

0.2

0.3

0.4

0.5

0.6

Offered Load

Figure 5: Packet drop rate and average packet delay when the offered load is larger than 0.8, the average queue length of class 0 in TLBA may exceed minth0 , and some packets of class 0 are dropped. Since minth0 is the largest and maxp0 is the smallest, the drop rate of class 0 is very small. Dropping packets of class 1 and class 2 occurs when the traffic load increases beyond 0.5 (50 Mbit/s), and drop rates of these two classes continue rising. Compared with the result of two-stage queue scheme illustrated in Fig. 5(b), WRED used in TLBA leads to more packets of class 1 being dropped, but moderates the situation that higher priority packets preempt lower priority ones at the expense of rejecting some higher priority packets. Finally, Fig. 5(c) and (d) shows the average packet delay for three service classes. It is found that TLBA decreases the average packet delays of class 0 and class 1 as compared with the two-stage queue scheme. The reason is that packets only wait in one queue in TLBA so that the queuing delay is less than that of the two-stage queue scheme. TLBA can also transmit more packets from class 2 instead of discarding them, which may be queued longer in the buffer until the correct time slot arrives. Therefore,

14

their average queuing delay is prolonged. The simulation results demonstrate that even if the offered load is very heavy, TLBA can ensure each service class a minimum bandwidth based on its bandwidth threshold, which also influences the throughput of this class. The second merit of TLBA over the two-stage queue scheme is that it reduces the average queuing delay of high priority traffic and medium priority traffic. Finally, Table 2 gives a qualitative comparison between TLBA and some other typical DBA schemes introduced in Section 2.2.

Schemes

Table 2: Summary of different DBA schemes Strength Weakness - Statistical multiplexing for high

IPACT [2]

bandwidth utilization

- Light-load penalty - Unsuitable for delay and

- Supporting intra-ONU priority scheduling

jitter sensitive service - Not supporting inter-ONU priority scheduling

- Eliminating light-load penalty

Two-stage - Using time slots entirely

high priority traffic

queue [3] - Supporting intra-ONU priority scheduling

- Not supporting inter-ONU priority scheduling

- Requested bandwidth consisting of three parts for three traffic classes

Enhanced - Early allocation mechanism reduces DBA [4]

- Increasing packet delay of

- Not supporting inter-ONU priority scheduling - Higher priority traffic may

the channel idle time to improve

be transmitted later than

throughput and eliminate waiting delay

lower priority traffic

- Minimizing jitter of high priority traffic - Reducing gap time

- Redirecting the surplus high priority traffic into the low

HSSR [5] - Supporting QoS of differentiated services

priority queue degrades the QoS of this traffic

- Guaranteeing a minimum throughput for each traffic class

- Prolonging the delay of low priority traffic

- Supporting intra-ONU priority scheduling - Dropping more packets with

TLBA

- Supporting QoS of differentiated services - Decreasing drop rate of low priority traffic

15

higher priority

4

Conclusion

This paper first reviewed some typical DBA schemes available in the literature and then proposed a two-layer bandwidth allocation (TLBA) scheme. This scheme can effectively allow all ONUs to fairly share the uplink bandwidth according to their bandwidth demands. That is, TLBA ensures all service classes to proportionally share the bandwidth on the ratio of the demand of a single class to the total demand. Within the same service class, all ONUs are allocated the bandwidth with equal rights according to the max-min policy. Since the OLT allocates a minimum bandwidth to every service class even if the overall load is heavy, the minimum throughput of each class can be guaranteed. In addition, the weights can be adjusted artificially to change the proportion of bandwidth shared by each service class under heavy load. In other words, in order to increase the throughput of class k, the OLT needs to raise the value of weightk properly. Further investigations on how to properly set the weight according to traffic load and QoS requirements based on mathematical analysis is undergoing. Another future work is to shorten the prolonged interval between two adjacent frames since the OLT has to wait for REPORT messages from all ONUs.

References [1] “Media Access Control Parameters, Physical Layers and Management Parameters for Subscriber Access Networks,” IEEE Draft P802.3ah/D1.0TM, Aug. 2002. [2] G. Kramer, “Interleaved polling with adaptive cycle time (IPACT): a dynamic bandwidth distribution scheme in an optical access network,” Photonic Network Commun., vol.4, no.1, Jan. 2002, pp89-107. [3] G. Kramer, B. Mukherjee, S. Dixit and Y.H. Ye, “Supporting differentiated classes of service in Ethernet passive optical networks,” J.Opt. Networks, vol.1, no.8/9, Aug. 2002, pp280-298. [4] C.M. Assi, Y.H. Ye, S. Dixit and M.A. Ali, “Dynamic bandwidth allocation for quality-of-service over Ethernet PONs,” IEEE Journal on Selected Areas in Communications, vol.21, no.9, Nov. 2003, pp1467-1477. [5] F.T. An, H. Bae, Y.L. Hsueh, K.S. Kim, M.S. Rogge and L.G. Kazovsky, “A new media access control protocol guaranteeing fairness among users in Ethernet-based passive optical networks,” IEEE OFC, Atlanta, GA, Mar. 2003, vol. 1, pp134-135. [6] M. Ma, Y. Zhu and T.H. Cheng, “A bandwidth guaranteed polling MAC protocol for Ethernet passive optcial networks,” in Proc. IEEE INFOCOM, San Francisco, CA, Mar. - Apr. 2003, pp22-31. 16

[7] G. Pesavento, J.C. Kuo and T. Koyama, “IEEE access standards, 802.3ah GEPON status,” ITU-T Workshop IP/Optical, Chitose, Japan, 9-11 July 2002. [8] D. Bertsekas and R. Gallager, Data Networks, Prentice Hall, Upper Saddle River, NJ, 2nd edition, 1992. [9] S. Floyd and V.Jacobson, “Random early detection gateways for congestion avoidance,” IEEE/ACM Transactions on Networking, vol.1, no.4, Aug. 1993, pp397413. [10] M. Wurtzler, “Analysis and simulation of weighted random early detection (WRED) queues,” http://www.ittc.ku.edu/research/thesis/documents.

17