Internet DRAFT - draft-ietf-pppext-ppp-over-aal2-class

draft-ietf-pppext-ppp-over-aal2-class



Point-to-Point Protocol Extensions Working Group         Bruce Thompson
Internet Draft                                           Tmima Koren
February 4, 2002                                         Cisco Systems
Expires July 2002                                        Bruce Buffam
draft-ietf-pppext-ppp-over-aal2-class-02.txt             Camelot Content


        Class Extensions for PPP over ATM Adaptation Layer 2

Status of this memo

This document is an Internet Draft and is in full conformance with all 
provisions of Section 10 of RFC 2026. Internet Drafts are working 
documents of the Internet Engineering Task Force (IETF), its Areas, and 
its Working Groups. Note that other groups may also distribute working 
documents as Internet Drafts.

Internet Drafts are draft documents valid for a maximum of six months. 
Internet Drafts may be updated, replaced, or obsolete by other 
documents at any time. It is not appropriate to use Internet Drafts as 
reference material or to cite them other than as "work in progress".

The list of current Internet-Drafts can be accessed at: 
http://www.ietf.org/ietf/1id-abstracts.txt

The list of Internet-Draft Shadow Directories can be accessed at: 
http://www.ietf.org/shadow.txt

This draft is being submitted as a possible work item to the IETF 
Audio/Video Transport working group.  To subscribe to the mailing list 
send a message to rem-conf-request@es.net with the line "subscribe" in 
the body of the message. Archives are available from:
ftp://ftp.es.net/pub/mail-archive/rem-conf

Copyright Notice

Copyright (C) The Internet Society (1999-2001). All Rights Reserved.

Abstract

PPP over ATM Adaptation Layer 2 defines the encapsulation that allows a PPP 
session to be transported over an ATM virtual circuit using the AAL2 adaptation 
layer. This document defines a set of class extensions to PPP over AAL2 that 
implement equivalent functionality to Multi Class Multi Link PPP over a single 
ATM virtual circuit. Instead of using Multi Link PPP as the basis for 
fragmentation functionality, this document uses the functionality of the 
Segmentation and Reassembly Service Specific Convergence Sublayer that is 
already required as the basic encapsulation format of PPP over AAL2.

1.	Introduction

Using AAL2 as an adaptation layer for PPP transport over ATM provides a 
bandwidth efficient transport for IP applications that generate small 
packets. An example IP application that generates small packets is RTP 
encapsulated voice (Voice over IP).

In addition to bandwidth efficiency, real-time applications such as voice 
require low latency. RFC 2689 [2] describes an architecture for providing 
transport services for real time applications on low bit rate links. The 
main components of the architecture are: a real-time encapsulation format 
for asynchronous and synchronous low-bitrate links, a header compression 
architecture optimized for real-time flows, elements of negotiation 
protocols used between routers (or between hosts and routers), and 
announcement protocols used by applications to allow this negotiation to 
take place.

Multi Class Multi Link PPP [3] defines a fragment-oriented solution for the 
real-time encapsulation format part of the architecture defined in [2], i.e. 
for the queues-of-fragments type sender.  As described in more detail in the 
architecture document, a real-time encapsulation format is required as, 
e.g., a 1500 byte packet on a 128 kbit/s ATM virtual circuit makes this link 
unavailable for the transmission of real-time information for about 100 ms.  
This adds a worst-case delay that causes real-time applications to operate 
with round-trip delays that are too high for many interactive tasks. Multi 
Class Multi Link PPP defines a set of extensions of Multi Link PPP [4] that 
enable the sender to fragment the packets of various priorities into 
multiple classes of fragments, allowing high-priority packets to be sent 
between fragments of lower priorities.

This document defines a set of class extensions to PPP over AAL2 [1] that 
implement equivalent functionality to Multi Class Multi Link PPP over a 
single ATM virtual circuit. Instead of using Multi Link PPP as the basis for 
fragmentation functionality, this document uses the functionality of the 
Segmentation and Reassembly Service Specific Convergence Sublayer (SSSAR)[5] 
that is already required as the basic encapsulation format of PPP over AAL2.

In addition to providing fragmentation, the real time transport service must 
allow high priority fragments to be sent between fragments of lower 
priorities. This can be accomplished in PPP over AAL2 by allowing a single 
PPP session to span multiple AAL2 CPS [6] Channel Identifiers. Once a PPP 
session spans multiple AAL2 Channel IDs, the Channel ID can be used to 
identify the class that a fragment belongs to. Fragments belonging to a high 
priority class can be sent using a particular AAL2 Channel ID. Fragments of 
lower priority classes can be sent using different AAL2 Channel IDs. Once 
multiple fragment classes are identified using different AAL2 Channel IDs, 
the AAL2 CPS layer can be used to send fragments belonging to a high 
priority class between fragments of lower priorities.

The class based extensions to PPP over AAL2 use existing services of the 
AAL2 SSCS and CPS layers already specified in PPP over AAL2. Because of 
this, the extensions described in this draft may be viewed as a desirable 
alternative to Multi Class Multi Link PPP in providing a class based 
transport service with PPP over AAL2.

1.1.  Specification Language

The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, 
RECOMMENDED, MAY, and OPTIONAL, when they appear in this document, are to be 
interpreted as described in [6].

2. Requirements

This document assumes the same service requirements as defined in Multi 
Class Multi Link PPP [3]. The reader is referred to section 2 of Multi Class 
Multi Link PPP for the general requirements of a multi class fragmentation / 
preemption service.

3. Class Extensions for PPP over AAL2

PPP over AAL2 uses the Segmentation and Reassembly Service Specific 
Convergence Sublayer (SSSAR) [5] for the AAL type 2. The SSSAR sublayer is 
used to segment PPP packets into frames that can be transported using the 
AAL2 CPS. The SSSAR sublayer uses different AAL2 UUI code-points to indicate 
whether a segment is the last segment of a packet or not. SSSAR provides 
basic fragmentation functionality for all packets encapsulated using PPP 
over AAL2. The SSSAR layer fragments all packets into 64 byte fragments.

The AAL2 CPS layer defines a Channel ID that is used to identify multiple 
streams of packets within a single ATM Virtual Circuit. In this document, 
the AAL2 CPS Channel ID is used to identify the preemption class that a 
packet fragment belongs to. Since the Channel ID is used to identify 
different preemption classes, packet fragments from each class of traffic 
MUST be assigned to different Channel IDs. In addition, each PPP session 
MUST have at least as many Channel IDs assigned as there are different 
classes of preemptible traffic.

To allow PPP packets to be assigned to different preemption classes, PPP 
packets must be classified into multiple preemption classes as they are 
fragmented using SSSAR. Many classification methods may be used to determine 
the class that a particular PPP packet belongs to. The architecture document 
[2] describes possible alternatives that MAY be used to implement a real 
time classification scheme.

Once packets have been classified into different premption classes, each 
class of traffic is then assigned a different Channel ID. Since fragments 
from each traffic class are now transmitted using separate Channel ID, the 
AAL2 CPS layer can be used to schedule fragments from the different classes. 
The AAL2 CPS specification [6] does not specify a method for scheduling AAL2 
CPS payloads from different Channel IDs. The scheduling method required at 
the AAL2 CPS layer depends upon the real time requirements of applications 
using this service. Some real-time applications MAY require the use of a 
priority based CID scheduler. Other applications MAY only require a fair or 
weighted fair CID scheduler. Implementations of PPP over AAL2 real time 
transport extensions SHOULD implement AAL2 CPS CID schedulers that meet the 
requirements of multi-class real time applications. 

4. Example Implementation: Class Based Extensions for Voice Service

When PPP over AAL2 is used to transport both voice and non-voice packets over 
low bandwidth ATM virtual circuits, it may be necessary to preempt the 
transmission of a large data packet in order to transmit a voice packet with 
minimal delay. The example implementation described below shows an example of 
how the class extensions for PPP over AAL2 can be used to support a real time 
voice transport service over low bandwidth AAL2 virtual circuits. To 
guarantee low latency and loss for voice transport, the ATM virtual circuit 
in this example must be provisioned using a real time traffic class such as 
VBRnrt or VBRrt.

For the simple voice service described above, 2 classes are sufficient to 
guarantee low latency for voice packets. The PPP over AAL2 session in this 
case can be configured to run across 2 AAL2 CPS Channel IDs. One channel ID 
is used to transport large data packets while the other channel ID is used to 
transport real time voice packets.

Packets that arrive at the PPP interface must first be classified as either 
belonging to the real time class or belonging to the data class. A simple 
classifier that can be used to classify packets at this layer is packet size. 
Large packets are assigned to the non-real time (or data) traffic class and 
small packets are assigned to the real time traffic class. The packet size 
used to discriminate between real time and non real time packets may vary 
based on the application and transmission rate of the virtual circuit.

Once packets have been classified, they are now fragmented using the SSSAR 
layer of PPP over AAL2. Separate instances of the SSSAR fragmentation 
function run on each of the 2 Channel IDs assigned to the PPP session. 
Fragments coming from the SSSAR functions are now scheduled into the AAL2 
virtual circuit using the AAL2 CPS layer. Most AAL2 SAR implementations 
currently implement fair scheduling across multiple AAL2 Channel IDs. Since 
the AAL2 CPS scheduler implements fair scheduling, real time fragments will 
wait for at most one non-real time fragment to be transmitted on the AAL2 
virtual circuit before being scheduled. 

7.  Security Considerations

Operation of this protocol is believed to be no more and no less secure than
operation of PPP over AAL2 [1].

8. Acknowledgements

The authors would like to thank James Carlson for his contributions to this 
proposal. 

9. References

   [1]   B. Thompson, T. Koren, B. Buffam, PPP over AAL2, January 2002

   [2]   Bormann, C., "Providing Integrated Services over Low-bitrate
         Links", RFC 2689, September 1999.

   [3]   Bormann, C., "The Multi-Class Extension to Multi-Link PPP", RFC 2686,                    
         September 1999.

   [4]   Sklower, K., Lloyd, B., McGregor, G., Carr, D. and T. Coradetti,
         "The PPP Multilink Protocol (MP)", RFC 1990, August 1996.

   [5]   ITU-T, "Segmentation and Reassembly Service Specific Convergence                      
         Sublayer for the AAL type 2", June 1998.

   [6]   ITU-T, "BISDN ATM Adaptation layer specification:
         Type 2 AAL(AAL2)", September 1997.

10. Authors' Addresses

   Bruce Thompson
   Cisco Systems, Inc.
   170 West Tasman Drive
   San Jose, CA 95134
   USA
   Phone: +1 408 527-0446
   Email: brucet@cisco.com

   Bruce Buffam
   Camelot Content Technologies
   133 Centre Point Dr
   Ottawa, Ontario,
   Canada, K2G-5X3
   Phone: +1 613 723-9161 X4017
   Email: bruce@camelotcontent.com

   Tmima Koren
   Cisco Systems, Inc.
   170 West Tasman Drive
   San Jose, CA 95134
   USA
   Phone: +1 408 527-6169
   Email: tmima@cisco.com 


11.  Full Copyright Statement

   Copyright (C) The Internet Society (2001).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph
   are included on all such copies and derivative works. However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.