Subject: RE: Control and Forwarding functions

From: "Sharma, Prem" <[email-masked]>
Date: Tue, 4 Sep 2001 11:42:28 -0700

In my opinion, the followings endorse the statement that MPLS provides the
good separation between control and forwarding plane:

*	the forwarding tables contain the information that is oblivious to
the control plane that has provided that information.
*	the forwarding information present in the forwarding tables is/may
be sufficient enough to take the data through the network backbone.
*	the semantics of the forwarding information may not be known to the
forwarding plane. They complexities related to the semantics could be just
confined to control plane.
*	the entries in the forwarding tables need not necessarily be
populated through control protocols.

Any comments/corrections are welcome.
 
Thanks.
Prem

-----Original Message-----
From: Sukanta Ganguly [mailto:[email-masked]]
Sent: Tuesday, September 04, 2001 8:41 AM
To: David Escobar; Hongwei
Cc: [email-masked]
Subject: Re: Control and Forwarding functions

To some extent the function is the same. In case of a standard IP router the
routing protocol does the job of route updates, which is the control paths
responsibility. The control paths learn about the routes via the OSPF, BGP
etc... and then keep an updated lookup table so that the data path can
perform the lookup and figure out the outgoing port.
With MPLS, there are the control portion which is handled via the LDP,
CR-LDP etc... After learning the labels the data path uses them for its
lookup process and does the swapping.
 Only thing that is worth noting is that this done over the IP network
(atleast in the Internet), so we can say MPLS overlays on top of an IP
network and hence creates a tunnel over IP routing.
 
SG

*********** REPLY SEPARATOR ***********

On 9/4/2001 at 10:20 AM David Escobar wrote:

Hi Hongwei:
I though that a router's Control function was the distribution of
information among routers to build the routing tables and that the
Forwarding function was the routing table look up to find the output port,
output label, etc. I think that the control function in your definition is
the signaling proccess to establish an SVC, so I think we are talking about
different things
Thanks for answering.

----- Original Message ----- 
From: Hongwei <mailto:[email-masked]>  
To: David Escobar <mailto:[email-masked]>  
Cc: [email-masked] <mailto:[email-masked]>  
Sent: Sunday, September 02, 2001 2:59 PM
Subject: RE: Control and Forwarding functions

Hi David,
 
As much as I understand, MPLS technology is connection-oriented, and is
below or at the same level of IP. Like all connection-oriented protocols,
MPLS needs a set-up procedure before traffic begins. PVC or SVC is
established then. So called Control is the setup procedure(label requesting
and label mapping in LDP and CR-LDP). It establishes the forwarding
table,and it is before the traffic begins. So called Forwarding is in the
traffic stage. The outgoing port is easily got from the forwarding table
just because the setup procedure has established an explicit VC. So the
traffic becomes easy. Label swapping is needed because the labels in the
MPLS shim are locally significant, not globally(IP address is globally
important). The locally important label can be dynamically allocated and
released by the router. This adds flexibility. ATM also needs VCI/VPI
swapping. If globally important identifiers such as (source IP, destination
IP) pair are used as label of VC, multiple traffic between different
processes in the source machine and different processes in the destination
machine can't be distinguished.
 
While IP has no setup procedure because it is a connectionless technology.
So I just see its Forwarding function. At every hop, every IP packet has to
find next hop's IP address and its corresponding MAC address by ARP. 
 
It is true that both IP and MPLS need consult the table, so MPLS forwarding
is not necessarily faster than IP if packet's destination IP address can
always match an entry in IP routing table. And now it is more apparent that
MPLS is intended to combine the advantages of ATM and IP. MPLS can help to
realize traffic engineering over IP networks, such as explicit routing can
help allocate traffic evenly, and turn to alternative route quickly in case
of network failure.
 
I am just brave(rash?) enough to make above comments. I will appreciate any
correction of my mistakes. THX in advance:)
 
--Hongwei

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]On Behalf Of David Escobar
Sent: 02 September 2001 18:32
To: [email-masked]
Subject: Control and Forwarding functions

Hi:
It is said that MPLS makes a good separation between the Control and the
Forwarding functions. It is also said that MPLS may use extensions of
existing IP protocols to piggyback label distribution (MPLS-BGP,
MPLS-RSVP-TUNNELS).
What is the meaning of good separation between the Control and the
Forwarding functions? MPLS still uses the same Control protocols, just a
little altered to provide label distribution by piggybacking and the
Forwarding function still needs to make table look up to find the next hop.
Even worse, it needs to make label swapping. Conventional IP also makes
table look up but with the advantage of not requiring label swapping. Why
can be inferred that conventional IP does not make a good separation of the
Control and Forwarding function while MPLS does?

---

From: "Sukanta Ganguly" <[email-masked]>
Date: Tue, 04 Sep 2001 21:59:33 -0700

I don't completely agree with your points. What ever you have mentioned does also hold true for IP routing protocols.
Forwarding plane in the MPLS or non-MPLS routers do only depend on the information in the forwarding table. This information can be generated statically or via its own discovery protocol, which holds true for IP routing where you can enter static routes or for MPLS where you can create labels manually within the network of all the nodes that support MPLS.
Information within the forwarding table is the only information that is sufficient to take the packet from one end of the network to another. In cases of table misses one does have to find a path or send it over the default route.

SG

On 9/4/2001 at 11:42 AM Sharma, Prem wrote:
In my opinion, the followings endorse the statement that MPLS provides the good separation between control and forwarding plane:
the forwarding tables contain the information that is oblivious to the control plane that has provided that information. 
the forwarding information present in the forwarding tables is/may be sufficient enough to take the data through the network backbone. 
the semantics of the forwarding information may not be known to the forwarding plane. They complexities related to the semantics could be just confined to control plane. 
the entries in the forwarding tables need not necessarily be populated through control protocols.
Any comments/corrections are welcome.

Thanks.
Prem

-----Original Message-----
From: Sukanta Ganguly [mailto:[email-masked]]
Sent: Tuesday, September 04, 2001 8:41 AM
To: David Escobar; Hongwei
Cc: [email-masked]
Subject: Re: Control and Forwarding functions

To some extent the function is the same. In case of a standard IP router the routing protocol does the job of route updates, which is the control paths responsibility. The control paths learn about the routes via the OSPF, BGP etc... and then keep an updated lookup table so that the data path can perform the lookup and figure out the outgoing port.
With MPLS, there are the control portion which is handled via the LDP, CR-LDP etc... After learning the labels the data path uses them for its lookup process and does the swapping.
 Only thing that is worth noting is that this done over the IP network (atleast in the Internet), so we can say MPLS overlays on top of an IP network and hence creates a tunnel over IP routing.

SG

On 9/4/2001 at 10:20 AM David Escobar wrote:
Hi Hongwei:
I though that a router's Control function was the distribution of information among routers to build the routing tables and that the Forwarding function was the routing table look up to find the output port, output label, etc. I think that the control function in your definition is the signaling proccess to establish an SVC, so I think we are talking about different things
Thanks for answering.
----- Original Message ----- 
From: Hongwei 
To: David Escobar 
Cc: [email-masked] 
Sent: Sunday, September 02, 2001 2:59 PM
Subject: RE: Control and Forwarding functions

Hi David,

As much as I understand, MPLS technology is connection-oriented, and is below or at the same level of IP. Like all connection-oriented protocols, MPLS needs a set-up procedure before traffic begins. PVC or SVC is established then. So called Control is the setup procedure(label requesting and label mapping in LDP and CR-LDP). It establishes the forwarding table,and it is before the traffic begins. So called Forwarding is in the traffic stage. The outgoing port is easily got from the forwarding table just because the setup procedure has established an explicit VC. So the traffic becomes easy. Label swapping is needed because the labels in the MPLS shim are locally significant, not globally(IP address is globally important). The locally important label can be dynamically allocated and released by the router. This adds flexibility. ATM also needs VCI/VPI swapping. If globally important identifiers such as (source IP, destination IP) pair are used as label of VC, multiple traffic between different processes in the source machine and different processes in the destination machine can't be distinguished.

While IP has no setup procedure because it is a connectionless technology. So I just see its Forwarding function. At every hop, every IP packet has to find next hop's IP address and its corresponding MAC address by ARP. 

It is true that both IP and MPLS need consult the table, so MPLS forwarding is not necessarily faster than IP if packet's destination IP address can always match an entry in IP routing table. And now it is more apparent that MPLS is intended to combine the advantages of ATM and IP. MPLS can help to realize traffic engineering over IP networks, such as explicit routing can help allocate traffic evenly, and turn to alternative route quickly in case of network failure.

I am just brave(rash?) enough to make above comments. I will appreciate any correction of my mistakes. THX in advance:)

--Hongwei

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]On Behalf Of David Escobar
Sent: 02 September 2001 18:32
To: [email-masked]
Subject: Control and Forwarding functions

Hi:
It is said that MPLS makes a good separation between the Control and the Forwarding functions. It is also said that MPLS may use extensions of existing IP protocols to piggyback label distribution (MPLS-BGP, MPLS-RSVP-TUNNELS).
What is the meaning of good separation between the Control and the Forwarding functions? MPLS still uses the same Control protocols, just a little altered to provide label distribution by piggybacking and the Forwarding function still needs to make table look up to find the next hop. Even worse, it needs to make label swapping. Conventional IP also makes table look up but with the advantage of not requiring label swapping. Why can be inferred that conventional IP does not make a good separation of the Control and Forwarding function while MPLS does?