[PCN] PCN termination marking algorithm - consensus?

<philip.eardley@bt.com> Wed, 27 February 2008 13:14 UTC

Return-Path: <pcn-bounces@ietf.org>
X-Original-To: ietfarch-pcn-archive@core3.amsl.com
Delivered-To: ietfarch-pcn-archive@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 8A5E03A6912; Wed, 27 Feb 2008 05:14:15 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.995
X-Spam-Level:
X-Spam-Status: No, score=0.995 tagged_above=-999 required=5 tests=[AWL=-1.669, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_ORG=0.611, HTML_MESSAGE=1, J_CHICKENPOX_24=0.6, MIME_ASCII0=1.5, MIME_HTML_MOSTLY=0.001, RDNS_NONE=0.1]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id IYf9Qqi74zZt; Wed, 27 Feb 2008 05:14:08 -0800 (PST)
Received: from core3.amsl.com (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7D69928C199; Wed, 27 Feb 2008 05:14:08 -0800 (PST)
X-Original-To: pcn@core3.amsl.com
Delivered-To: pcn@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 773F23A67F9 for <pcn@core3.amsl.com>; Wed, 27 Feb 2008 05:14:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id BEZWfYm5OlBP for <pcn@core3.amsl.com>; Wed, 27 Feb 2008 05:13:55 -0800 (PST)
Received: from smtp4.smtp.bt.com (smtp4.smtp.bt.com [217.32.164.151]) by core3.amsl.com (Postfix) with ESMTP id AA1AE3A68C8 for <pcn@ietf.org>; Wed, 27 Feb 2008 05:13:07 -0800 (PST)
Received: from E03MVZ1-UKDY.domain1.systemhost.net ([193.113.30.62]) by smtp4.smtp.bt.com with Microsoft SMTPSVC(6.0.3790.1830); Wed, 27 Feb 2008 13:13:00 +0000
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Date: Wed, 27 Feb 2008 13:12:59 -0000
Message-ID: <75A199C5D243C741BF3D3F1EBCEF9BA503B345EF@E03MVZ1-UKDY.domain1.systemhost.net>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: PCN termination marking algorithm - consensus?
Thread-Index: Ach3oGcLq+pZ9d/iRpmXKw/VF5utxgA+v1bgACTdRVAAA5ND4A==
From: philip.eardley@bt.com
To: pcn@ietf.org
X-OriginalArrivalTime: 27 Feb 2008 13:13:00.0599 (UTC) FILETIME=[7A41BC70:01C87942]
Subject: [PCN] PCN termination marking algorithm - consensus?
X-BeenThere: pcn@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: PCN WG list <pcn.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/pcn>, <mailto:pcn-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/pcn>
List-Post: <mailto:pcn@ietf.org>
List-Help: <mailto:pcn-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pcn>, <mailto:pcn-request@ietf.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============2044023834=="
Sender: pcn-bounces@ietf.org
Errors-To: pcn-bounces@ietf.org

Here also is an attempt for consensus on the termination marking
behaviour.

 

 

 If an interface of the PCN-domain performs PCN Admission Marking then
it performs three functions, which are outlined in
draft-ietf-pcn-architecture as follows:

 
   o  Packet classify - decide whether an incoming packet is a PCN-
      packet or not.  Another PCN WG document will specify encoding,
      using the DSCP and/or ECN fields.
 
   o  PCN-meter - measure the 'amount of PCN-traffic'.  The measurement
      is made as an aggregate of all PCN-packets, and not per flow.
 
   o  PCN-mark - algorithms determine whether to PCN-mark PCN-packets
      and what packet encoding is used (as specified in another PCN WG
      document).

 

These functions are now described in more detail.

Note: The PCN-node MAY implement these three functions on either its
ingoing or outgoing interfaces. The same choice MUST be made for every
PCN-node in one PCN-domain. 

[Lars has commented: do we need to allow this choice?]

 

Classify function:

If a packet's ECN/DSCP fields have the value PCN, as defined in
[RFC-encoding], then it MUST be classified as a PCN-packet. However, if
the PCN-packet is already "termination marked", as defined in
[RFC-encoding], then the Meter function SHOULD NOT be performed. (*)

If a packet's ECN/DSCP fields do not have the value PCN, as defined in
[RFC-encoding], then it MUST NOT be classified as a PCN-packet.

 

Meter function:

Note: The meter is described as a 'token bucket', however the
implementation is not standardised.

 

A packet classified as a PCN-packet MUST be metered as follows. 

The interface MUST have:

[1] a configured bit rate, termed PCN-upper-rate

[2] a meter for PCN-packets, which MUST have the following behaviour:

 

a token bucket, operating in bits: 

1A tokens are added at the PCN-upper-rate, to a maximum TB.size

1B tokens are removed equal to the size in bits of the PCN-packet, to a
minimum TB.size=0

2 if TB.fill = 0, then the meter indicates "termination mark" to the
Mark function

 

Note: Step 1A can be triggered by a packet and so can be done at the
same time as Step 1B.

Note: Step 2 can be performed before or after step 1

 

The following SHOULD be done (**) instead of Step 2 above (Step 2 is
then superfluous).

if TB.fill < maximum size of PCN-packet, then the meter indicates
"termination mark" to the Mark function

The "maximum size of PCN-packet" is the MTU in bits of any PCN-packets
in the PCN-domain. 

Note: Step 1B above is still performed. 

 

 

Mark function:

If the meter indicates to "termination mark" a PCN-packet, then:

the PCN-packet's ECN/DSCP fields MUST be set to the codepoint
"termination marked", as defined in [RFC-encoding]

 

 

(*) Explanation: for CL termination (ie the termination based on rates,
rather than the 3SM termination based on marked pkts), if the meter
counts pkts that are already termination marked then there'll be
over-termination in the event of multiple bottlenecks. However, since
this option is probably more complicated to implement than a normal
classifier (?), I suggest it is a SHOULD.

 

(**) Explanation: this captures the point that Michael makes in
http://www3.informatik.uni-wuerzburg.de/staff/menth/Publications/Menth08
-PCN-MFT.pdf
<http://www3.informatik.uni-wuerzburg.de/staff/menth/Publications/Menth0
8-PCN-MFT.pdf>  & Bob makes in
http://www.ietf.org/internet-drafts/draft-briscoe-tsvwg-byte-pkt-mark-02
.txt
<http://www.ietf.org/internet-drafts/draft-briscoe-tsvwg-byte-pkt-mark-0
2.txt>  Otherwise flows with big pkts get marked more than flows with
small pkts. However, since this option is more complicated to implement
than a normal token bucket, I suggest it is a SHOULD.

 

we could also add an example algorithm, such as that in
http://www.ietf.org/internet-drafts/draft-charny-pcn-comparison-00.txt
Fig 10.1
<http://www.ietf.org/internet-drafts/draft-charny-pcn-comparison-00.txt%
20Fig%2010.1>  on page 21.

 

Comments?

phil

_______________________________________________
PCN mailing list
PCN@ietf.org
https://www.ietf.org/mailman/listinfo/pcn