Subject: Qry on Traffic Policing

From: sivakumarg <[email-masked]>
Date: Mon, 09 Jun 97 15:59:00 PDT

Hi,
I have a doubt with reg to use of traffic policing.
Class based queueing is used for providing controlled-delay service right.
This algorithm also allows bandwidth borrowing(i.e classes which have
excess traffic can borrow from other classes which do not use their 
requested
b/w.). But will this feature ever be used when traffic policing sits in 
front
of CBQ? Traffic policing will make sure that the hosts don't exceed their
requested b/w's and since policing ensures that everybody conforms to
their b/w, borrowing will never occur. Am I correct?

Any help on this will be much appericated.

Regards,
Siva
([email-masked])

---

From: John Wroclawski <[email-masked]>
Date: Mon, 9 Jun 1997 10:22:09 -0400

>Class based queueing is used for providing controlled-delay service right.

I assume you mean controlled-load service.

CBQ might be one way of providing the service, if you can configure it so
that it implements the spec. It is not the only way, and there is no
implication that controlled-load must be implemented with CBQ.

>their b/w, borrowing will never occur. Am I correct?

You are misunderstanding what "traffic policing" means in the context of
controlled-load service.

C-L implementations are expected to deliver traffic which does not fit into
the agreed parameters if they have extra capacity to do so - in other
words, they forward it on a best-effort basis. However, they aren't
expected to necessarily meet the service commitment (small/short delay
bursts, mimimal loss) when a source is sending excess traffic. The policing
function determines when this is true.

---

From: Subramaniam Vincent <[email-masked]>
Date: Mon, 9 Jun 1997 15:19:15 -0700 (PDT)

> ([email-masked])
Siva,

Technically, I think your question was "how do policing and CBQ 
borrowing work together, since seem to nullify each other". 

Traffic policing is expected to be done typically at edges to ensure 
user conforms to the tspec provided. It can also be applied within the 
network under specific circumstances. (merging, branching). In other 
words traffic policing will happen at *specific*, predetermined points. 
Policing will mark a flow's nonconformant packes so that they may 
not be involved in meeting service committments.        

While CBQ allows a class to borrow resources, it also has a regulation 
mechanism that limits classes to their shares ***during congestion**.
Borrowing works only when it is possible, ie, when other classes are 
underutilizing their share. This kind of regulation will happen throughout a
CBQ based network, whenever and wherever there is congestion.

If a node is policing a flow, and has a CBQ based scheduling mechanism, 
traffic will get policed FIRST, and conformant traffic will be THEN be
scheduled to deliver the appropriate share. (IF the CBQ scheme is 
implementing CL, then it implies delivering the service committment). If a 
number of policed & conformant flows, cause a class to be regulated upon 
scheduling, the node can still fail committments. If this happens 
consistently, it could be because of admission control failure, or just 
because of short provisioning/bad configuration.

-vince 

On Mon, 9 Jun 1997, sivakumarg wrote:

---

From: "Alessio Casati" <[email-masked]>
Date: Wed, 11 Jun 1997 13:46:17 +0100

Just to add a bit to the current stream, in the Policing section of the Controlled Load 
Spec you can read

    Network elements must not assume that data sources or upstream
   elements have taken action to "police" controlled-load flows by
   limiting their traffic to conform to the flow's TSpec.  Each network
   element providing controlled-load service MUST independently ensure
   that the requirements given above are met in the presence of
   nonconformant arriving traffic for one or more controlled-load flows.

Since policing takes place independently in each and every node (in the GS, converserly,
policing can take place only at the ingress, and reshaping in merge and split points)
the marking of non conformant packets can be of little or no help if this wording is not
changed somehow. So, marking is useful in the GS framework only.

Anyway, marking may turn out to be a way to speed-up policing (and queue management) within the 
net.
I think the challenge is not only where to place the marking info, but the selection of which 
are the packets which can be marked without sourcing much performance impairment (that's a L4 an 
higher levels dependent matter, I suppose).

Regards

---------------------------------------------------

Alessio Casati        mailto:[email-masked]
C02
Central R&D
Italtel S.p.a. A Stet and Siemens Company
via per Monzoro 
20019
Settimo Milanese (MI)
ITALY
---------------------------------------------------