Subject: Re: Fragmentation and reassembly of MPLS packets

From: [email-masked]
Date: 15 May 2001 01:52:31 -0700

Hi Mohit,
    If my understanding is correct, its impossible to do fragmentation without IP header.  one has to remove (preserve for later use) MPLS label stack and check IP DF bit in IP header. If its set generate ICMP packets otherwise, fragment IP packet keep the depth of the label stack in mind and reconstruct the fragmented packets with MPLS label stack and forwards those based on the top label. At the egress IP module will reconsruct the IP packet when it gets from MPLS module.

If I am wrong pls correct me.

Thanks
YTR    

On Tue, 15 May 2001, [email-masked] wrote:

> 
> 
> 
> Hi all,
> 
> Section 3 of RFC 3032 discusses the procedure for fragmenting the labeled as
> well as unlabeled MPLS packet. In IP there are fields in the datagram header
> (IDENTIFICATION, FLAGS, and FRAGMENT OFFSET) which control fragmentation and
> reassembely of datagrams. But in MPLS header there are no such fields defined.
> So how does reassembly of the fragmented MPLS packets happens at the destination
> host.
> 
> Thanks in advance
> Mohit

______________________________________________________
123India.com - India's Premier Portal 
Get your Free Email Account at http://www.123india.com

---

From: Eric Gray <[email-masked]>
Date: Tue, 15 May 2001 09:30:16 -0400

Fragmentation of MPLS packets is, in general, a pretty bad idea.

    The main issue is knowing that the first thing after the last label
is in fact a 'normal' IP packet.  If you cannot predictably determine
this, then you do not know how valid the fields of the 'IP header'
are and it could be disastrous to attempt either to 'return' an ICMP
error message to the 'Source IP Address' (which may be random
data if the packet has a compressed RTP/UDP/IP header or is
encrypted) or to fragment the packet.

    One might be able to infer 'reliably' that - if the FEC associated
with an LSP is an IPv4 FEC, and there is only one label in the label
stack - the following header is a normal IPv4 header.  This should
always be the case if the LSP was established using LDP for hop
by hop routing.  So, if - while forwarding the packet - you can be
mindful of how the LSP was created and you know that there is
only one label in the stack, you may be able to do IP fragmentation
of an MPLS labeled packet.

    Considering that the dominant application for MPLS seems to be
based on LSP tunneling using explicit routes (as opposed to hop by
hop routed LSPs), it does not seem likely that scenarios where it
makes sense to attempt to fragment MPLS packets are likely to be
the common case.

--
Eric Gray