Subject: Reordering and MPLS?

From: [email-masked]
Date: Tue, 04 Jan 2000 09:35:04 -0600

Is there a requirement to preserve packet order in MPLS?  That is, are MPLS
enabled network elements (individual routers or a collection of routers in
a single location) required to forward IP packet in the order they are
received?

Thanks
======================================================================
Dr. Victor S. Frost                    Sabbatical contact information:
				       Sprint
Dan F. Servey Distinguished Professor  Phone: 913 534 5334
Electrical Engineering                 Fax:     913 534 2526
and Computer Science	               [email-masked] 
Information and Telecommunication     9300 Metcalf  
  Technology Center		       Overland Park, Kansas 66212    	
University of Kansas			      	
2291 Irving Hill Dr.
Lawrence, Kansas 66044-7541
Phone: (785) 864-4833  FAX:(785) 864-7789
e-mail: [email-masked]   http://www.ittc.ukans.edu/

---

From: Eric Gray <[email-masked]>
Date: Tue, 04 Jan 2000 12:17:48 -0500

Dr. Frost

> a single location) required to forward IP packet in the order they are

This is not a requirement of either network elements or 
the network as a whole.  It is probably a reasonable
expectation of network elements and may be a reasonable
expectation of the network as a whole if implementations
observe - or allow observation of - certain rules.

For example, if we assume that implementations (network
elements) do not themselves change the order of packet
delivery (either naturally as a consequence of queuing
behavior within the implementation, or as an enabled 
option), then we can get ordered behavior out of the
network as a whole if we are able to ensure (again, as
a result of natural or enabled network element behavior)
that all the packets associated with a specific stream
are forwarded from one network element to another in 
exactly the same way and at all times.

Jeremy Lawrence pointed out earlier that normal routing
changes will affect the behavior of the network as a
whole in being able to guarantee this behavior.  It is
possible to get around this using some combination of
explicit routing and route pinning.  Of course, it is
essential that packets which must be delivered in order
follow the same LSP and that this LSP either follows
exactly one path, or includes mechanisms to preserve
ordered delivery on potential multiple paths.

And, of course, what you mean by ordered delivery may
depend on whether or not you mean to include variance
in queuing treatment for different levels of service.
If you intend that packets receiving different levels
of service are to be considered separate streams from
an ordering perspective, then the above applies.