The MPLS WG Archive

Cell Relay Retreat>MPLS WG Archive>month:2003-Mar> msg00356



[Date Prev][Date Next][Thread Prev][Thread Next]  
  [Date Index][Thread Index][Author Index][Subject Index]

[PWE3] MPLS PID

  • From: Shahram Davari <Shahram_Davari@pmc-sierra.com>
  • Date: Thu, 27 Mar 2003 10:49:58 -0800
  • Cc: "'curtis@fictitious.org'" <curtis@fictitious.org>, "'Thomas D. Nadeau'" <tnadeau@lucidvision.com>, "'George Swallow'" <swallow@cisco.com>, "W. Mark Townsley" <townsley@cisco.com>, "Andrew G. Malis" <Andy.Malis@vivacenetworks.com>, "'mpls@uu.net'" <mpls@UU.NET>, tnadeau@cisco.com

>Shahram> First  of all  I meant  computing  CRC over  the 
>first  20 byte  of
>Shahram> payload header and  comparing it to the suspected  IP 
>CRC in octets
>Shahram> 11 and 12 of the payload. If  they match then it is 
>IPV4, if not it
>Shahram> is something else (similar procedure for IPV6)
>
>Shahram> Secondly  I am  proposing it  now. Is  there a  
>problem? I  feel my
>Shahram> procedure is far superior to just checking 4 bits to 
>decide whether
>Shahram> the payload is IP or not. 
>
>Certainly it's  not superior in  terms of the  amount of 
>computation  or the
>number of memory accesses required ;-)

Checksum is easy and is done all the time in routers, but the main point is that
my proposal superior in terms of probability of false positives,
which is much more important. Using the first 4 bit to detect whether
the payload is IP or not gives you a probability of false positive of
1/8=12.5%, while using CRC to detect IP gives you a probability of false
positive of 1/(2^16)= 0.0015%.

>
>Architecturally,  it doesn't  seem  superior  either.  It  is  
>based on  the
>assumption that the one's complement sum of the first 20 bytes 
>of a non-IPv4
>payload will not be zero.

Which ensures a much less probability of false positive than simply using the first nibble.

> And it doesn't seem to handle IPv6.

Correct.

-Shahram
>
>
>