Internet DRAFT - draft-elwin-l2tpext-ppvpn

draft-elwin-l2tpext-ppvpn





                                                           Elwin Stelzer
Internet Draft                                              Naveen Gowda
                                                   Corona Networks, Inc.

                                                           November 2001
Expires: May 2002





                       L2TP Extensions for PPVPN
                <draft-elwin-l2tpext-ppvpn-00.txt>




1.0 Status of this Memo

This document is an Internet-Draft and  is in full  conformance with all
provisions of Section 10 of RFC2026.

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
and may be updated,  replaced,  or obsoleted by  other  documents at any
time.  It is inappropriate 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.html. 



2.0 Abstract

Provider Provisioned  VPNs (PPVPNs)  need  a  tunneling  mechanism and a
means to automatically discover VPN membership and signal these tunnels.
This draft  elaborates the use of  L2TP as the  tunneling mechanism, and
defines  extensions  to  L2TP  to  handle  VPN  membership  discovery to
leverage  PPVPNs.  Additional AVPs  are defined, and their behaviour are
explained.  The solution presented here  is applicable  for both L3 VPNs
and L2 VPNs.






Elwin & Naveen                                                  [Page 1]

draft-elwin-l2tpext-ppvpn-00          L2TP PPVPN Extn.          Nov 2001




3.0 Table of Contents

     1.0  Status of this Memo ................................. 1
     2.0  Abstract ............................................ 1
     3.0  Table of Contents ................................... 2
     4.0  Introduction ........................................ 2
     4.1  Terminology ......................................... 2
     4.2  Overview of operations .............................. 3
     4.3  Reference Case ...................................... 3
     5.0  Control Tunnel ...................................... 4
     5.1  Overview ............................................ 4
     5.2  PPVPN-Control AVP ................................... 4
     5.3  VPN-List AVP ........................................ 5
     6.0  PerVPN tunnel ....................................... 6
     7.0  IANA Considerations ................................. 7
     8.0  Security Considerations ............................. 7
     9.0  Intellectual Property Considerations ................ 7
    10.0  References .......................................... 7
    11.0  Authors' Addresses .................................. 8



4.0 Introduction

4.1 Terminology

This draft uses the terms defined in [PPVPN-RQ] and [PPVPN-FW], and
defines the following new terms.

Control Tunnel - A tunnel or connection between two PE routers that
        controls the PerVPN tunnels in it.

P Router - Provider core router.

PE Router - Provider Edge router.

PerVPN tunnel - A tunnel between a local VPN VFI and a remote VPN VFI.
        This tunnel setup is triggered through the Control tunnel.

Virtual Tunnel Interface (VTI) - An interface created to represent a
        PerVPN tunnel. A VPN VFI may forward packet to this interface
        that can tunnel-encapsulate the packet and send it out. A VTI
        can also participate as interface in routing protocols like
        OSPF.

VPN VFI - A Virtual Forwarding Instance meant for VPNs. This is also
        loosely referred as VRF or simply VR.





Elwin & Naveen                                                  [Page 2]

draft-elwin-l2tpext-ppvpn-00          L2TP PPVPN Extn.          Nov 2001




4.2 Overview of operations

Each PE knows its peers through configuration or any other means. When
a PE router comes up, it establishes a Control Tunnel with each of its
peers. The list of VPNs that each PE supports are informed to their
peers using L2TP Hello messages, and any new VPNs getting added or being
removed are informed to other PEs in a similar way. This VPN list in the
Hello message that comes in the control tunnel triggers the
establishment and tearing down of PerVPN tunnels. There is a PerVPN
tunnel across each pair of VPN VFIs. Each PerVPN tunnel also has a
corresponding VTI that participates in the VPN routing functions.


4.3 Reference Case

The operation of the protocol extensions are illustrated with the
reference example shown below.


           (V1, V3)...........................(V1, V2)
             PE1  ----------------------------  PE2
                                                  
             .|   \.                         ./  |.
             .|     \.                     ./    |.
             .|       \.                 ./      |.
             .|         \.             ./        |.
             .|           \.         ./          |.
             .|             \.     ./            |.
             .|               \. ./              |.
             .|                .\.               |.
             .|              ./   \.             |.
             .|            ./       \.           |.
             .|          ./           \.         |.
             .|        ./               \.       |.
             .|      ./                   \.     |.
             .|    ./                       \.   |.
             .|  ./                           \. |.

              PE4 ---------------------------- PE3
            (V2, V3)                          (V1)

                 Figure 4.1 Reference Case


Here V1, V2 and V3 are three VPNs considered, and PE1, PE2, PE3 and
PE4 are four PE routers. The intermediate P routers are not shown. The
lines shown above represent Control tunnels.





Elwin & Naveen                                                  [Page 3]

draft-elwin-l2tpext-ppvpn-00          L2TP PPVPN Extn.          Nov 2001


Consider a scenario in which the routers PE1, PE2 and PE3 are up and
operational, and the router PE4 is started. First PE4 establishes
control tunnel connection with each of the other PEs. And PE4 will
indicate to all other PEs that V2 and V3 are the list of VPNs it
supports. Seeing this, PE1 and PE2 initiates PerVPN tunnel setup with
PE4, and corresponding PerVPN tunnels are setup. Note that PE3 does
not initiate a PerVPN tunnel setup, since there are no VPN VFIs in PE3
for the VPNs V2 and V3. The '.' shown in the figure above represent
PerVPN tunnels.



5.0 Control Tunnel

5.1 Overview
    
Control Tunnels are created to discover the VPN VFIs on the other PEs
using VPN-List AVP. Each VPN VFI in the PE will have its own
unique VPN-ID [VPN-ID]. Control Tunnel remains always UP through Hello
packet exchange. If a Control Tunnel to one PE goes down due to some
failure then all the PerVPN tunnels to that PE will be cleared. Control
Tunnel will follow LNS-LNS Reference model defined in [L2TP-V3]. The
solution presented here could as well be done with L2TPv2 [L2TP-V2].

Once Control Tunnel is created, it MUST NOT accept any Call Management 
Messages and any Error Reporting Messages. It MUST only accept Control 
Connection Management messages during the life of the tunnel.

Control Tunnels are differentiated from other Tunnels in the system 
by exchanging the PPVPN-Control AVP.

Once the Control Tunnel moves into established state, both the peer can
start advertising their VPN VFIs through Hello packets. Hello packets
will be sent over the Control Tunnel either when the hello timer expires
or when VPN VFI comes UP or goes DOWN in any of the PEs. Hence Hello
packets in Control Tunnel serves three purposes: i) to findout whether
the peer is DEAD or ALIVE, ii) to update the Peer with VPN List, and
iii) to act as a trigger for PerVPN tunnel when a VPN VFI comes UP.


5.2 PPVPN-Control AVP

This AVP is sent to the peer to inform about creation of PPVPN Control
tunnel. This AVP MUST be present in SCCRQ and SCCRP to support L2TP
extensions for PPVPN. The initiator of Control Tunnel will send this AVP
in SCCRQ with M-bit set. Upon receiving SCCRQ, the peer MUST send
StopCCN if it doesn't support PPVPN extension, or MUST reply with SCCRP.
If the initiator gets StopCCN then it MUST not attempt to create Control
Tunnel with the same peer. If the initiator recevies SCCRP, then it can
send SCCCN to get the Control Tunnel to Established State.




Elwin & Naveen                                                  [Page 4]

draft-elwin-l2tpext-ppvpn-00          L2TP PPVPN Extn.          Nov 2001





    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |M|H| rsvd  |      Length       |           Vendor ID           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Attribute Type        |         Reserved              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


This AVP MAY be hidden (the H-bit set to 0 or 1) and is mandatory 
(M-bit set). The length (before hiding) of this AVP is 8.

Vendor ID is a two octet value, set to 3961 to indicate that this is
a Corona-assigned attribute. Should this draft become a standard, the
Vendor ID would become 0 and an appropriate Attribute-Type value will
be assigned by IANA.


5.3 VPN-List AVP

This AVP MUST be sent only in the Hello packets. The VPN-List acts as a
trigger to initiate PerVPN tunnels. When a Control Tunnel comes up, it
sends a Hello packet with the list of VPN IDs it supports. When the peer
receives the Hello packet, it checks the received VPN List with its
local VPN list and then initiates PerVPN tunnels to each of the VPN VFI
pair.

As soon as Control Tunnel is created only the initiator of Control
Tunnel MUST transmit the first Hello packet containing the VPN-List.
Afterwards if any VPN VFI comes UP or goes DOWN, then only that
information must be sent to the peer as delta. The peer MUST update its
database after receiving Hello packet and clear PerVPN tunnels for those
VPN VFIs that went down and trigger PerVPN tunnel for those VPN VFIs
that came UP.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |M|H| rsvd  |      Length       |           Vendor ID           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Attribute Type        |        Num of VPN IDs         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           Optional Data ...                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+







Elwin & Naveen                                                  [Page 5]

draft-elwin-l2tpext-ppvpn-00          L2TP PPVPN Extn.          Nov 2001





Optional Data formats:

   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   VPN-ID 1  ...
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                               |   Status-1    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   VPN-ID 2  ...
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                               |   Status-2    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    ...
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    ...                                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


M bit MUST be set to 1 and this AVP can be hidden (H-bit set 0 or 1).
Length (before hiding) 8 + Optional Data Length. Optional Data length
will be 8 * Num of VPN Ids. 

Vendor ID is a two octet value, set to 3961 to indicate that this is
a Corona-assigned attribute. Should this draft become a standard, the
Vendor ID would become 0 and an appropriate Attribute-Type value will
be assigned by IANA.

VPN-ID is 7-octet number corresponding to each VPN VFIs. Status is 
1-octet in size and it indicates the status of VPN VFI, 0 means DOWN
and 1 means UP.


6.0 PerVPN tunnel

PerVPN tunnels are individual tunnels created for each VPN. PerVPN
tunnel can transport IP traffic or other Layer-2 traffic over the
sessions created within the tunnel. Unlike Control tunnels PerVPN
tunnels are regular L2TP tunnels. Note that a PerVPN tunnel has the
same IP endpoints as that of the Control tunnel.

Sessions within PerVPN tunnel are created using Incoming Call Management
Messages.

NOTE: If two PEs want to create regular L2TP Tunnel along with Control
and PerVPN tunnel, then a seperate Tunnel must be created between same
two endpoints.




Elwin & Naveen                                                  [Page 6]

draft-elwin-l2tpext-ppvpn-00          L2TP PPVPN Extn.          Nov 2001




7.0 IANA Considerations

Should this document advance on as standards track official attribute
values need to be assigned for the PPVPN-Control AVP, and VPN-List AVP.


8.0 Security Considerations

This document does not introduce any new security issues beyond those
inherent in L2TP, and may use the same mechanisms proposed for those 
technologies, where applicable.

9.0 Intellectual Property Considerations

Corona Networks may seek patent or other intellectual property
protection for some or all of the technologies disclosed in this
document. If any standards arising from this document are or become
protected by one or more patents assigned to Corona Networks, Corona
intends to disclose those patents and license them on reasonable and
non-discriminatory terms.


10.0 References

[L2TP-V2] M. Townsley, A. Valencia, A. Rubens, G. Pall, G. Zorn,
     B. Palter, "Layer 2 Tunnel Protocol (L2TP)", RFC 2661,
     August 1999.

[L2TP-V3] J. Lau, M. Townsley, A. Valencia, G. Zorn, I. Goyret, G. Singh
     Pall, A. Rubens, B. Palter, "Layer Two Tunneling Protocol(L2TP)",
     Work in progress, July 2001 

[L2TP-SU] Naveen Gowda, Elwin Stelzer, Umesh Sirsiwal, "L2TP Session
     Update Mechanism", draft-naveen-l2tpext-sessupdate-00.txt,
     Work in progress, June 2001

[PPVPN-RQ] M. Carugi et al, "Service Requirements for Provider
     Provisioned Virtual Private Networks", Work in progress,
     draft-ietf-ppvpn-requirements-01.txt, Jun 2001

[PPVPN-FW] R. Callon et al, "A Framework for Provider Provisioned
     Virtual Private Networks", Work in progress,
     draft-ietf-ppvpn-framework-00.txt, Feb 2001.

[VPN-ID] B. Fox, B. Gleeson, "Virtual Private Networks Identifier",
     RFC 2685, Sep 1999.






Elwin & Naveen                                                  [Page 7]

draft-elwin-l2tpext-ppvpn-00          L2TP PPVPN Extn.          Nov 2001



11.0 Authors' Addresses

Elwin Stelzer Eliazer
Corona Networks, Inc.
630 Alder Drive
Milpitas, CA 95035
Email: elwinietf@yahoo.com


Naveen PN Gowda
Corona Networks, Inc.
630 Alder Drive
Milpitas, CA 95035
Email: naveenietf@yahoo.com







































Elwin & Naveen                                                  [Page 8]