Routing protocol type:??

Answered Question
Sep 12th, 2010
User Badges:

Hi,



What is mean mean by passenger, carrier and transport routing prototcol ??    

Correct Answer by Peter Paluch about 6 years 6 months ago

Abhinay,


Okay, I see the point. The passenger protocol is the protocol you want to carry over a network that does not understand it (or you do not want the network to see it). For example, you may want to tunnel IPv6 packets over an IPv4-only network. Thus, the IPv6 would become the passenger protocol here.


The carrier protocol is the one that is used to encapsulate the passenger's protocol packets as its own payload. In my example, tunneling IPv6 packets over IPv4 network would require that each IPv6 packet is inserted into an IPv4 packet and the resulting IPv4 packet is transported through the IPv4 network. Thus, the IPv4 becomes the carrier protocol.


Anytime we say "X-over-Y" if related to tunneling, the "X" is the passenger protocol and the "Y" is the carrier protocol, as packets of the type X are carried inside packets of the type Y. Common examples include IPv6-over-IPv4, CLNS-over-IPv4, even IPv4-over-IPv4 and so on.


The transport protocol in this case, or better said, a tunneling protocol is an additional protocol used to facilitate this tunneling. For example, putting IPv6 packets into IPv4 packets is easy and straightforward, but you may require various additional functions for this tunnel:


  • Multiple passenger protocols over a single tunnel. You somehow need to identify the type of the passenger protocol, and the IP Protocol header field may not have enough values to express all possible existing protocols you could tunnel over IP.
  • Sequencing. The IP is actually unable to make sure that tunneled packets arrive in their original order, and it may be your requirement that the individual tunneled packets must be processed in their original order.
  • Authentication. You may require that the tunnel is authenticated before transferring data over it.
  • Keepalives. You may require an active test whether the tunnel is indeed capable of transporting data end-to-end. The IP as a best-effort connectionless protocol does not have any means to provide you with this test.
  • Dynamic session establishement and teardown, differentiating multiple sessions within a single tunnel.


If you need any of these functions then you have to use the additional tunneling protocol. Nowadays, the most popular tunneling protocols are GRE (Generic Routing Encapsulation) and L2TP (Layer 2 Tunneling Protocol), not counting the MPLS Pseudowires (they are rather special and I don't want to cover them here).


If the GRE is used then the GRE header is placed into the carrier protocol payload just before the passenger protocol datagram comes in. If you create an IPv6-over-IP tunnel using the GRE tunneling protocol, the resulting packet would look like:


Carrier IPv4 header | Tunneling GRE header | Passenger IPv6 packet


Best regards,

Peter

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (1 ratings)
Loading.
Peter Paluch Sun, 09/12/2010 - 13:21
User Badges:
  • Cisco Employee,

Abhinay,


I have not heard of such classification of routing protocols. Are you perhaps referring to tunneling protocols? When tunneling, the terminology "passenger protocol", "carrier protocol", "transport protocol" is quite common but I haven't heard of it with respect to routing protocol.


Can you provide a reference to the document in which you have seen this classification?


Best regards,

Peter

abhi-adte Tue, 09/14/2010 - 07:32
User Badges:

Thx I confirm, from some one this is ask me this is regarding with Tunnel only not Routing??


Now please help me on same..

Correct Answer
Peter Paluch Tue, 09/14/2010 - 08:23
User Badges:
  • Cisco Employee,

Abhinay,


Okay, I see the point. The passenger protocol is the protocol you want to carry over a network that does not understand it (or you do not want the network to see it). For example, you may want to tunnel IPv6 packets over an IPv4-only network. Thus, the IPv6 would become the passenger protocol here.


The carrier protocol is the one that is used to encapsulate the passenger's protocol packets as its own payload. In my example, tunneling IPv6 packets over IPv4 network would require that each IPv6 packet is inserted into an IPv4 packet and the resulting IPv4 packet is transported through the IPv4 network. Thus, the IPv4 becomes the carrier protocol.


Anytime we say "X-over-Y" if related to tunneling, the "X" is the passenger protocol and the "Y" is the carrier protocol, as packets of the type X are carried inside packets of the type Y. Common examples include IPv6-over-IPv4, CLNS-over-IPv4, even IPv4-over-IPv4 and so on.


The transport protocol in this case, or better said, a tunneling protocol is an additional protocol used to facilitate this tunneling. For example, putting IPv6 packets into IPv4 packets is easy and straightforward, but you may require various additional functions for this tunnel:


  • Multiple passenger protocols over a single tunnel. You somehow need to identify the type of the passenger protocol, and the IP Protocol header field may not have enough values to express all possible existing protocols you could tunnel over IP.
  • Sequencing. The IP is actually unable to make sure that tunneled packets arrive in their original order, and it may be your requirement that the individual tunneled packets must be processed in their original order.
  • Authentication. You may require that the tunnel is authenticated before transferring data over it.
  • Keepalives. You may require an active test whether the tunnel is indeed capable of transporting data end-to-end. The IP as a best-effort connectionless protocol does not have any means to provide you with this test.
  • Dynamic session establishement and teardown, differentiating multiple sessions within a single tunnel.


If you need any of these functions then you have to use the additional tunneling protocol. Nowadays, the most popular tunneling protocols are GRE (Generic Routing Encapsulation) and L2TP (Layer 2 Tunneling Protocol), not counting the MPLS Pseudowires (they are rather special and I don't want to cover them here).


If the GRE is used then the GRE header is placed into the carrier protocol payload just before the passenger protocol datagram comes in. If you create an IPv6-over-IP tunnel using the GRE tunneling protocol, the resulting packet would look like:


Carrier IPv4 header | Tunneling GRE header | Passenger IPv6 packet


Best regards,

Peter

dhananjay95929 Sun, 06/26/2016 - 21:43
User Badges:

Peter Paluch, thanks for that excellent explanation. You should write a book about much more complex networking concepts and make things easier for the rest of us modest network engineers.

Joseph W. Doherty Mon, 06/27/2016 - 06:41
User Badges:
  • Super Bronze, 10000 points or more

Peter did partner on the CCIE certification two volume set.

Peter Paluch Thu, 06/30/2016 - 04:51
User Badges:
  • Cisco Employee,

Hi,

I did the first volume of CCIE R&S v5.0 Official Cert Guide together with Narbik Kocharians:

http://www.ciscopress.com/store/ccie-routing-and-switching-v5.0-official-cert-guide-9781587143960

The second volume was written by Narbik Kocharians and Terry Vinson.

In any case - thank you! It is always so encouraging to know that I have been able to explain things in an accessible way.

Best regards,
Peter

Actions

This Discussion