Many of us may hear this kind of term in the Networking Technology, but what is exactly the Multi-Protocol Label Switching or MPLS technology is?
in this blog, I want to write about an overview about the MPLS Technology.
first thing first, let's discuss about why MPLS? In the Past, Service Provider (SP) have to deal with a lot of Technology to deliver their services to the customer. One Customer may need to use the TDM technology, in this case the SP have to invest the TDM Technology, while other customer may need to use the Frame-Relay Technology, the SP should provide the Frame-Relay Technology. the more the technology, such as X.25, ISDN, ATM, and so on....., they should investing a ton of US$ to deal with all of those thing, including the device, technology, and people to operate it.
from the simple illustration above, we can determine, how complex, technically and Financially, to provide lots of services to the customer. Then, in the early 2000, Cisco start to develop a Technology called 'Tag-Switching', where the router will create an additional Tag tabel, that is derived from the Routing table, for example, in the Routing Table (RIB), the router may have route to the 192.168.1.0/24 via F0/0, and then an additional tag table will be created by the router, and the router will say, If I want to get to the 192.168.1.0/24, I will add Tag "102", so other router in the path can only see the Tag, which is embedded to the Packet, without having to see All the Layer 3 information within the packet. In this case, guess what, now the forwarding dependencies is moving from the L3 RIB into the TAG Information basis.
And this TAG technology become more and more standard, so the IETF make the standard version of the Cisco Proprietary Tag-Switching into the LDP.
Ok, let's take a look the the following example and Scenario in order to get better understanding:
Topology
·
R1-R6 is being configured as MPLS CORE
·
R3 & R6
will have iBGP neighborship and use ‘bgp redistribute-internal’, so that
R3 can advertise iBGP prefix to the RIP and R6 can advertise iBGP prefizes to
the EIGRP.
Configuration
R1-R6 (LSR)
!
Interface
Mpls ip
!
End
R3(PE/Edge LSR)
!
router bgp 36
no
synchronization
bgp
router-id 3.3.3.3
bgp
log-neighbor-changes
bgp
redistribute-internal
redistribute rip
neighbor
6.6.6.6 remote-as 36
neighbor
6.6.6.6 update-source Loopback0
neighbor
6.6.6.6 next-hop-self
no
auto-summary
!
router rip
version 2
redistribute bgp 36 metric 3
network
10.0.0.0
no
auto-summary
!
end
R6 (PE/Edge LSR)
!
router eigrp 68
network
10.14.68.0 0.0.0.255
redistribute bgp 36 metric 1 1 1 1 1
!
router bgp 36
no
synchronization
bgp
router-id 6.6.6.6
bgp
log-neighbor-changes
bgp
redistribute-internal
redistribute eigrp 68
neighbor
3.3.3.3 remote-as 36
neighbor
3.3.3.3 update-source Loopback0
neighbor
3.3.3.3 next-hop-self
no
auto-summary
!
end
|
Verification
R3
Rack14R3#show mpls ldp neighbor
Peer
LDP Ident: 1.1.1.1:0; Local LDP Ident 3.3.3.3:0
TCP
connection: 1.1.1.1.646 - 3.3.3.3.40991
State: Oper; Msgs sent/rcvd: 89/87; Downstream
Up
time: 01:02:21
LDP
discovery sources:
FastEthernet0/0, Src IP addr: 150.14.13.1
Addresses bound to peer LDP Ident:
150.14.12.1 150.14.13.1 150.14.15.1 1.1.1.1
Rack14R3#show mpls forwarding-table
Local
Outgoing Prefix Bytes Label Outgoing
Next Hop
Label
Label or Tunnel Id Switched interface
300
Pop Label 1.1.1.1/32 0 Fa0/0 150.14.13.1
301
Pop Label 150.14.12.0/24 0 Fa0/0 150.14.13.1
302
101 2.2.2.2/32 0 Fa0/0 150.14.13.1
303
102 4.4.4.4/32 0 Fa0/0 150.14.13.1
304
103 5.5.5.5/32 0 Fa0/0 150.14.13.1
305
104 6.6.6.6/32 0 Fa0/0 150.14.13.1
306
105 150.14.24.0/24 0 Fa0/0 150.14.13.1
307
106 150.14.45.0/24 0 Fa0/0 150.14.13.1
308
107 150.14.56.0/24 0 Fa0/0 150.14.13.1
309
No Label 10.7.7.0/24 0 Fa0/1 10.14.37.7
Rack14R3#show ip route 10.8.8.8
Routing entry for 10.8.8.0/24
Known via
"bgp 36", distance 200, metric 156160, type internal
Redistributing via rip
Advertised by rip metric 3
Last
update from 6.6.6.6 00:36:37 ago
Routing
Descriptor Blocks:
*
6.6.6.6, from 6.6.6.6, 00:36:37 ago
Route
metric is 156160, traffic share count is 1
AS
Hops 0
MPLS
label: none
Rack14R3#show mpls forwarding-table 6.6.6.6
Local
Outgoing Prefix Bytes Label Outgoing
Next Hop
Label
Label or Tunnel Id Switched interface
305
104 6.6.6.6/32 0 Fa0/0 150.14.13.1
|
R2
So every single MPLS Router, P Router in this
case will not know the customer prefixes (10.x.x.x/24) but they know how to
route it to the both PEs, which are R3 and R6 in this case
Rack14R2#show ip route 10.8.8.8
% Network not in table
Rack14R2#show mpls forwarding-table 10.8.8.8
Local
Outgoing Prefix Bytes Label Outgoing
Next Hop
Label
Label or Tunnel Id Switched interface
Rack14R2#show mpls for
Rack14R2#show mpls forwarding-table 6.6.6.6
Local
Outgoing Prefix Bytes Label Outgoing
Next Hop
Label
Label or Tunnel Id Switched interface
204
404 6.6.6.6/32 22098 Fa0/1 150.14.24.4
|
Let’s create traffic from the R7 to the R8, then
we will use debug on the R4 in this case to prove that the traffic will be encapsulated
with mpls label ;)
Rack14R7#ping 10.8.8.8 sou lo1 rep 10000
Type escape sequence to abort.
Sending 10000, 100-byte ICMP Echos to 10.8.8.8,
timeout is 2 seconds:
Packet sent with a source address of 10.7.7.7
!!!!!.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!.!!!!!!!!!!!!!!!!!!!!.
Success rate is 98 percent (169/172), round-trip
min/avg/max = 120/150/188 ms
The traffic from R7 to the R8 is reachable,
eventhough all the P routers don’t have the prefix in their CEF, but this
scenario took advantage of the MPLS where P Routers don’t need to know the
Customer Prefix, but still, they can route them ;)
Rack14R4#show mpls forwarding-table 6.6.6.6
Local
Outgoing Prefix Bytes Label Outgoing
Next Hop
Label
Label or Tunnel Id Switched interface
404
504 6.6.6.6/32 32662
Fa0/0 150.14.45.5
Rack14R4#show mpls forwarding-table 6.6.6.6
Local
Outgoing Prefix Bytes Label Outgoing
Next Hop
Label
Label or Tunnel Id Switched interface
404
504 6.6.6.6/32 34904
Fa0/0 150.14.45.5
|
noted that form the above configuration, we can see that the MPLS Core will not know about the detail information about the Customer prefix, R7&R8.
R3 & R6 are the router that directly facing to the customer, this router will called as Provider Edge (PE) in the Cisco term or Edge LSP in the standarization term
R1-R4 are the router within MPLS Domain, where they will send the Data, based on Label/TAG instead of L3 information, in our example :)
I hope this little explanation can help you to get the understanding of the MPLS technology ;)
No comments:
Post a Comment