Вы находитесь на странице: 1из 6

R.Sunitha,Dr.Antony Selvadoss Thanamani, Int. J. Comp. Tech. Appl.

, Vol 2 (1), 136-141 ISSN : 2229-6093


Load Sharing with OCGRR for Network Processors Which Supports

Different services
R.Sunitha , Dr. Antony Selvadoss Thanamani,
Assistant Professor, Reader in Computer Science,
CMS College of science and commerce. NGM College , Pollachi.
sunithar2001@yahoo.co.in selvdoss@yahoo.com

Abstract Networks interconnect hosts using a variety

A new scheme for packet transaction in a of network devices, including host network adapters,
router is used, which provides load sharing among routers, switches, and hubs. Each of these contains
multiple network processors for various traffic network interfaces. The interfaces interconnect the
patterns by introducing an OCGRR scheduler at the various devices via cables and fibers. Network
output port of the core router and multiprocessors . A devices generally use a combination of hardware and
feedback control mechanism prevents processor software to forward traffic from one interface to
overload. The incoming traffic is scheduled by using another. Each interface can send and receive traffic at
a mapping formula derived from the robust hash a finite rate. If the rate at which traffic is directed to
routing ( HRW scheme). For the individual flow an interface exceeds the rate at which the interface
mapping no state information need to be stored, but can forward the traffic onward, then congestion
for each packet, a predefined set of fields like a occurs. Network devices may handle this condition
mapping function is computed over the identifier by queuing traffic in the device's memory until the
vector. To the HRW scheme an adaptive extension congestion subsides.
was provided to cope with biased traffic which This paper first analyzes the results of
possesses minimal disruption property. We use a experiments measuring the performance for sharing
scheduling algorithm called OCGRR to overcome the packet-processing tasks among multiple network
difficulty of handling different traffic patterns which processors within a router and then adds the OCGRR
influence the performance of load sharing scheme at concept into it to improve its performance.
the output port of the core router and the We have extended the mapping with an
multiprocessors sharing its work.OCGRRt defines a adaptation discipline aimed at keeping the processor
stream to be the same-class packets from a given load below a dynamically derived threshold. The
immediate upstream router destined to an output port threshold reflects the total system workload intensity.
of the core router. Each stream within a class can 2 . Existing System:
transmit a number of packets in the frame based on The previously centralized router devices
its available grant .provide, but only one packet per with a single general-purpose processor could not
small round, thus reducing the inter transmission cope with the ever-increasing workloads and are
time from the same stream and achieving a smaller being replaced by routers of more effective
jitter and startup latency. Thus we introduce the architectures, distributed or parallel [2].
OCGRR algorithm concept with the adaptation In this thesis we propose QoS guaranteed
algorithm for sharing load with different traffic adaptive load sharing by granting priority to the load
patterns like text , audio , video . We also verify and incoming to the network processors. The main goal
demonstrate the good performance of our scheduler of this proposal is to maximize total network revenue
by comparison with other algorithm in terms of so that quality of service (QoS) requirements for
packets dropped , queuing delay, jitter, and start-up different traffic services is fulfilled.
latency. 2.1 Load Sharing for n/w processors :
A feedback control mechanism prevents
Keywords - QOS, HRW, load sharing, router, processor overload in the adaptive load sharing for
network processor, Packet scheduling, fair queuing, n/w processors [7].
Differentiated Services, Round Robin. Incoming traffic is scheduled to multiple
processors based on a deterministic mapping. The
1. Introduction : mapping formula is derived from the robust hash
Network QoS refers to the ability of the network routing (also known as the highest random weight—
to handle this traffic such that it meets the service HRW [2]) scheme.
needs of certain applications.

R.Sunitha,Dr.Antony Selvadoss Thanamani, Int. J. Comp. Tech. Appl., Vol 2 (1), 136-141 ISSN : 2229-6093

then sent for resolution to NPU j, f( v ) = j. At NPU j,
the packet information vector w is processed and the
resolution information about the treatment to be
applied to the packet (next hop, outgoing switch port,
QoS applied) is returned to the requesting unit. Then,
the packet is switched to the correct outgoing port
and the corresponding packet alterations or
manipulations, based on the resolution results, are

fig 2. Load sharing with feedback

No state information on individual flow

mapping has to be stored, but for each packet, a
mapping function is computed over an identifier
vector. An adaptive extension to the HRW scheme is
provided to cope with biased traffic patterns. It was
proved that adaptive load sharing for network
processors possess minimal disruption property with
respect to the mapping and minimizes the probability Fig 1. Load sharing scheme abstraction
of flow reordering.
But it is not efficient for various traffic The HRW mapping possesses properties like
patterns. In order to support different services a credit Load balancing, Minimal disruption which is useful
based algorithm called OCGRR is used capable of for providing fault tolerance. The control loop
handling different packet sizes and traffic types at the prevents over-utilization of a single processor. They
core router of a network. An OCGRR [1] scheduler also minimize the amount of packet-to-NPR re-
resides at each output port of a core router which mapping.
schedules traffic into a router at its immediate
downstream. Every core router can request its edge 2.2.2 The Adaptation scheme :
routers to adjust their arrival rates to satisfy the QoS
performance level.


2.2.1 Packet -to-NPR mapping :

In load-sharing scheme using deterministic
mapping f (see fig.1) the load of each input is
distributed for processing among the NPRs. Here the
mapping f is computed over the identifier vector v .
The computation f( v ) = j determines the particular Fig 3: An adaptation algorithm scheme
NPU j to which the packet is mapped for processing.
r The adaptation scheme works in the following
The function f( v ), f : V → {1, 2, . . .,m}, splits the
general way periodically, the CP gathers information
vector space V into m exclusive subspaces Vj .
about the workload intensity of the NPUs see fig 2. If
Packets from a particular subspace are all mapped to
an adaptation threshold is exceeded, the CP adjusts
the same processor. Upon arrival of a packet at an
the weights of the mapping f. The new multiplicative
input, the packet is parsed to extract the fields
weights vector is then downloaded to the NPUs. Let
relevant for packet processing, i.e., the identifier
r ur x(t) be the instance of weights’ vector x used to
vector v and the packet information vector w . compute f(t) at time t. In order to evaluate the status
r of individual processors, we need a processor
The packet is buffered, the mapping f( v ) is ‘workload intensity indicator’. For that purpose, we
ur introduce a smoothed, low-pass filtered processor
computed and the packet information vector w is workload intensity measure. The adaptation

R.Sunitha,Dr.Antony Selvadoss Thanamani, Int. J. Comp. Tech. Appl., Vol 2 (1), 136-141 ISSN : 2229-6093

algorithm consists of two parts (see Fig. 3):

the triggering policy, which specifies the conditions
to act, and the adaptation policy, which specifies how
to act. A trigger is periodically evaluated and, based
on the result, specific action is taken.

2.3 Output Controlled Grant_Based Round

Robin Algorithm Concepts.
In order to support different services in the core
router of a network a credit based algorithm was number of bits to be transmitted within a frame using
used. This has the capability of handling different the variable T based on stream R, the average size of
packet sizes and traffic types. Algorithms like SRR, packet l and the class indices Ci .
DRR, DRR++, OCRR has its own drawbacks like
higher service time, higher startup latency and jitter.
To overcome it a common approach to support
DiffServ traffic saves all same class packets from
different sources in a shared FCFS (First Come First
Served) buffer. It is difficult to control the service R+1 indicate the possibility of allocating upto R+1
order of packets from different sources. buffers in each class. The frame can end when the
An OCGRR(Output Controlled Grant-based traffic transmitted within the frame exceeds T or
Round Robin) scheduler resides at each output port when the actual length is l >T.
of a core router which schedules traffic into a router Note that the lower priorities streams access
at its immediate downstream. Every core router can right to bandwidth is saved for the future frames.
request its edge routers to adjust their arrival rates to L<T when there is no backlogged stream in any class.
satisfy the QoS performance level. Each output port 2.3.2 Algorithm Explanation (OCGRR) :
can receive R streams. The traffic monitor unit gives Fig. 6 presents the OCGRR flowchart,
information on the arrival rate of streams .A where Q represents a stream, and Xbits is the total
dedicated buffer is used for each stream in a class. A transmitted bits in a frame. The Enqueue process
shared buffer is used for all traffic streams within adds a new packet of any stream in its relevant
each class into which the overflow packets from buffer. It then appends the stream reference to the
buffer i dedicated to stream i within class J will be relevant ActiveList provided that the stream not in
redirected. the ActiveList becomes backlogged (i.e., had a
The OCGRR algorithm used the Grant positive grant but was empty). The scheduling for
parameters to specify If the stream i has underused or each class is divided into two parts: 1) In the
overused its allocation. Here Gj,i(t) is the available DequeueInit process, the grant of each stream inside
grants for the stream at time t. Uj,i(t) is the total used class J is incremented by some quantum computed
grants for the stream at time t. The rate parameter based on the frame beginning time. Then, if a non
specifies the average arrival rate of stream i packets backlogged stream becomes backlogged, its reference
in class j. is appended to ActiveList J; and 2) in the
OCGRR handles the packets overflow by DequeueProcess, packet scheduling is performed.
transferring it to the shared buffer. Backlogged There are two scheduling processes: one for the
stream is a stream with at least one packet in its classes that use a dedicated buffer per stream in a
buffer with the available grant. The active list class, and the other for the classes that use one shared
contains the references of all backlogged streams buffer for all streams in a class.
within class J where a dedicated linked list is used for The scheduler visits the backlogged streams
class J. Using the active list the traffic is scheduled one by one. This continues until the last backlogged
within class J. stream in the schedule domain J is visited. Then, the
2.3.1. Frame based operation: scheduler starts visiting the backlogged streams from
The scheduling sequence starts from the EF the head of ActiveList J. We call this scheme
traffic followed by the class-2 traffic and finally Multiple Round Robin (MRR) transmission.
moves to the BE traffic. Each frame is divided into Scheduling for class J is stopped whenever there is no
EF rounds, class-2 rounds, BE rounds. In a backlogged stream left in ActiveList J or the total
Backlogged stream a round of each class can send transmitted traffic exceeds T. The latter condition is
only one packet .Within the frame we can limit the evaluated at the end of each packet transmission.
Fig. 4. The scheduling sequence model. When scheduling a packet from a stream, OCGRR
first schedules the packet with any size and then

R.Sunitha,Dr.Antony Selvadoss Thanamani, Int. J. Comp. Tech. Appl., Vol 2 (1), 136-141 ISSN : 2229-6093

updates both grant values of the stream with the to manage the bandwidth of the streams. At time t,
transmitted packet size. This update may lead to a the total given grant to stream i in class J,
negative grant if the size of the transmitted packet is Total g rant j ,i (t ) , must be proportional to its AAR
greater than the stream’s grant. When the stream’s
grant is negative, the stream becomes non (Average Arrival Rate),
backlogged . OCGRR flags.
If the frame ends right before processing
stream i in class J, this stream in the Last ListPtr J
parameter related to class J. At a future frame when it
is the turn of class J to be processed, the scheduler where the numerator is the total given grant to stream
would start processing class J from the stream I until time t. Although the parameter K could be set
referenced by LastListPtr J, but not from the as a constant value without considering the traffic
beginning of the streams referenced by ActiveList J. arrival rate and available bandwidth, say K= 1, we
This is handled by “ListPtr = determine K by the following heuristic parameter
GetStartingStreamRefInRound” in Fig. 6. This
process ensures fairness for stream i. It is also in the
direction of reducing the intertransmission time from
the same stream.

The parameter K is used to adjust the allocated

quantum according to the output bandwidth C, the
class indices, and the AAR values. If the average
arrival rates remain unchanged, K is constant. This
parameter can therefore control the transmission
policy from different classes. For example, in a router

ψ = 3,
C = 100 Mb / s.
C1 = 1,
C2 = 0.8,
C3 = 0.5,
λ1 = 10Mb / s,
λ2 = 30Mb / s, and
λ3 = 60Mb / s,
we have K=1.56. Consider the second case
with C1 = 1 , C2 = 0.9 , C3 = 0.7 , one obtain
Fig. 6. The flowchart of the OCGRR scheduling K=1.26. Since R and l are the same for both cases,
algorithm. the parameter Γ in the first case is smaller than the
2.3.3. Grant Calculation : second case. Hence, the service of the highest priority
Before processing the streams within class J, streams is much better in the first case. Lower traffic
each stream in class J obtains some quantum loads also lead to a higher K, and streams can use the
proportional to its AAR. Let t denote the starting time unused bandwidth flexibly. Now, let us increase class
of a new frame. The time variable t is a virtual time arrivals to, λ1 = 50Mb / s , λ2 = 70Mb / s , and
that can be measured from any convenient reference
point like when the router powers up and everything
λ3 = 80 Mb / s and keep the other parameters as
is reset. This virtual time is the same for all streams before. Then, we obtain K =0:68 and K = 0:59 in the
of all classes. Hence, only one virtual time is enough first and second cases, respectively. This gives a

R.Sunitha,Dr.Antony Selvadoss Thanamani, Int. J. Comp. Tech. Appl., Vol 2 (1), 136-141 ISSN : 2229-6093

chance to all classes to have access to the bandwidth. 4. Result and Discussion :
If we keep K = 1, class-3 will unlikely be served at We have used the java 1.6 environment on
all. Thus, by controlling K, the starvation of lower an Pentium core2duo with Microsoft Windows XP
priority traffic can be avoided in a congested machines to simulate a model of a router with
network. multiple NPUs and line cards.
At time t, stream i should obtain some quantum of It compares the number of packets dropped
QJ ,i (t ) for the new frame until the end of the frame, under the two scenarios Adaptive load sharing and
Adaptive load sharing with OCGRR concept
t + T f ,so that the total given grant to stream i in integrated within it. The dropped packet is very low
in AdaptiveLs with OCGRR. Adaptive LS[7]shows
class J at time t + T f still satisfies the above maximum packet drops. This shows that QOS
condition, i.e., guaranteed should be implemented for adaptiveLS.
Table 2 : Packets dropped at Time t
Adaptive LS Adaptive
Time with OCGRR LS

0 48 125.1

where Tf is the expected frame transmission time 50 90 148.4

obtained by
100 66.6 146.7

150 93.6 156.6

200 87.2 152

Since the exact frame period is unknown at the start

of the frame, Tf is taken as an estimate for the
duration of the logical frame period. Rearranging ,

Then, the available grant for stream i is calculated

from . Now, if
becomes positive and the stream is
nonempty, the stream reference is appended to Figure 7 Comparisons of dropped packets
ActiveList J. Fig. 8 compares the per-processor workload
3. Integration of OCGRR scheduling with intensity for each method. Clearly, AdaptiveLS
network Processors : workload intensity remains within close vicinity of
The OCGRR scheduling is integrated with the ideal workload intensity when AdaptiveLS with
all network processors to improve the quality of OCGRR sharing is deployed.
service. When the incoming traffic reaches the Table 1 : Workload Intensity at Time t
router, an OCGRR scheduler residing at each output
port of a core router schedules the traffic into a router Adaptive LS Adaptive
at its immediate downstream and grants a priority to Time With CGRR LS
it, as it is specified in the OCGRR algorithm. A
0 0.3 0.72
traffic monitor unit gives the scheduler information
on the arrival rate of streams. Thus it can handle 50 0.52 0.99
various traffic patterns efficiently. The incoming load
is shared among the NPU’s . Incoming traffic is 100 0.47 0.95
scheduled to multiple processors based on a
deterministic mapping. Using the Adaptation 150 0.67 0.89
algorithm the NPU’s workload intensity is
maintained below a dynamically derived threshold 200 0.43 1.08
value. The threshold reflects the total system
workload intensity.

R.Sunitha,Dr.Antony Selvadoss Thanamani, Int. J. Comp. Tech. Appl., Vol 2 (1), 136-141 ISSN : 2229-6093

[7] deterministic mapping of flows to processors. The

proposed load-sharing scheme requires no flow state
information to be stored within a router. The
OCGRR scheduling is integrated with all network
processors to improve the quality of service.
Adaptive load sharing with OCGRR keeps the
processor load below a dynamically derived
threshold. The threshold reflects the total system
workload intensity.
The adaptation is performed by adjusting the
weights of the packet-to-processor mapping, thus
Figure 8 Comparison of work load intensity
reducing or increasing the amount of flows a
In Fig. 9, the number of fraction of traffic
processor must handle. Thus, the probability of
per flow remapping for the adaptive load-sharing
packet reordering within a flow is kept low. OCGRR
method is examined. Note that the number of flows
has the features of using smaller frame lengths and
remapped per iteration is several orders of magnitude
rounds; sending traffic packet by packet in smaller
smaller than the number of flows appearing per rounds; reducing the intertransmission time from the
iteration same stream; reducing queuing delay, jitter, and
. startup latency; controlling the starvation of lower
Table 3 : Peformance achieved for the maximum
priority classes; and beginning the transmission in
fraction of traffic flow
Max Adaptive
each class from a delayed stream in the previous
fraction LS with OCGRR Adaptive LS logical frame to ensure low latency and fairness. It
can also keep the fairness for streams at an acceptable
0.2 0.0108 0.0247 level. A desired QoS performance can be obtained by
adjusting class indices.
0.4 0.0176 0.0351
References :
0.6 0.027 0.0432
[1]Akbar Ghaffar Pour Rahbar, Oliver
0.8 0.0333 0.0463
Yang,OCGRR:A new scheduling algorithm for
1 0.045 0.0549 differentiated sevices networks,IEEE Transactions on
parallel and distributed systems,may 2007.
The maximum fraction of the total rate of an [2] K. W. Ross. Hash routing for collections of
interface fig.9 (in packets per second) a single flow is shared web caches. IEEE Network, Vol. 11, No. 6,
allowed to occupy. If ,a single flow it may occupy up November-December 1997.
to 50% of the interface transport capacity. Note that [3] Cisco Express Forwarding (CEF). Cisco Systems
the study of flow results suggests that such limits on white paper, http://www.cisco.com, 1997.
the maximum per-flow rate are in agreement with [4] G. C. Fedorkow. Cisco 10000 Edge Services
reality. Router (ESR) technology overview,
http://www.cisco.com, 2000.
[5] A. Asthana, C. Delph, H. V. Jagadish, P.
Krzyzanowski. Towards a Gigabit IP router. Journal
of High Speed Networks, Vol. 1, No. 4, pp. 281-288,
[6] D. G. Thaler, C. V. Ravishankar. Using name-
based mappings to increase hit rates. IEEE/ACM
Transactions on Networking, Vol. 6, No. 1, pp. 1-14,
February 1998.
[7] ukas Kencl, Jean-Yves Le Boudec, Adaptive load
Figure 9 Max fraction of traffic flow vs result sharing for Network processors,IEEE/ACM
Transaction on networking.
5. Conclusion:
This scheme is proposed for sharing packet-
processing tasks among multiple network processors
within a router. The scheme is based on an adaptive