Subject: RE: PHP

From: Shahram Davari <[email-masked]>
Date: Tue, 23 Apr 2002 11:14:57 -0700

Hi,

Please ignore the 4th option that I mentioned, because it adds one level to the label stack and therefore defeats the purpose of the PHP.

BTW, is it possible to get a new PID= IP (v4+v6) from IANA so that IPv4 and IPV6 could be multiplexed in the same LSP?

-Shahram

> -----Original Message-----
> From: Shahram Davari 
> Sent: Tuesday, April 23, 2002 1:10 PM
> To: [email-masked]'; Kireeti Kompella; Markus Jork; Vach Kompella;
> David Charlap; [email-masked]
> Subject: RE: PHP 
> 
> 
> Eric,
> 
> > 1. The penultimate  node pops the last  label off the stack,  
> > creates a data
> >    link layer frame with IPv4 as the protocol type, and 
> > transmits the frame.
> >    The receiver  of the  frame checks the  first nibble  to 
> > see what  the IP
> >    version is  and treats  the packet as  IPv4 or  IPv6 
> > depending on  the IP
> >    version.
> > 
> > 2. The penultimate node pops the stack,  checks the first 
> > nibble to see what
> >    the IP version  is, and creates a data link layer  frame 
> > with either IPv4
> >    or IPv6  as the protocol type, depending  on the value of  
> > the IP version
> >    field. 
> > 
> > What I meant was 1; I'm not sure which Kireeti meant. 
> > 
> 
> Both these methods have architectural problems. The first method
> uses IPV4 L3PID for an IPV6 packet, which could create 
> interoperability
> issues as was mentioned by some one on the list. The second method is
> not compliant with MPLS PHP (as you mentioned), since only label 
> lookup should be done at penultimate node.
> 
> There are 2 architecturally correct solutions:
> 
> 3) Use a different LSP for IPV4 a IPV6. In that case the PHP 
> knows what
> version of IP is the payload, without looking at IP header.
> 
> 4) If you like to multiplex IPV4 and IPv6 in a single LSP, 
> then use IPV4
> and IPV6 explicit null labels.
> 
> -Shahram
>