MPLS: Technology and Applications

So far we managed to figure out how to use BGP to construct all the necessary routes, even in the presence of nonunique IP addresses. However, the problem with using these routes is that their reachability information is expressed not in terms of IP but of VPN-IP addresses. And there is nothing in the IP header to carry these VPN-IP addresses. So how can we forward IP packets along these routes?
To provide forwarding of IP packets along the routes expressed in terms of VPN-IP addresses, we use MPLS. The reason MPLS enables us to do this is because it decouples the information used for packet forwarding (the label) from the information carried in the IP header. Therefore, we can bind LSPs to VPN-IP routes and then forward IP packets along these routes by using MPLS as the forwarding mechanism. Observe that since VPN-IP addresses are confined to the service provider, MPLS could be confined to the service provider as well.
To illustrate how the actual forwarding is done, first consider an example shown in Figure 8.3. Notice that from the MPLS point of view the PE router is an edge LSR. That is, the PE router converts unlabeled packets into labeled ones and vice versa.
When a CE router sends an IP packet to its directly connected PE router, the PE router uses the incoming port (the interface on which the PE router receives the packet)...