Document 7689319

Download Report

Transcript Document 7689319

MPLS-TP Loopback Draft
draft-boutros-mpls-tp-loopback-01.txt
Sami Boutros
Siva Sivabalan
George Swallow
David Ward
Rahul Aggarwal
Nabil Bitar
Background
• This draft specifies how to put an MPLSTP LSP into and out-of loopback mode.
• This extension specifies two forms of the
mode
– Intrusive: loop all traffic (including data)
or
– Non-instrusive only OAM messages, not
data traffic
Problem Definition
MPLS Bidirectional LSP
LSR-1
LSR-2
LSR-3
Consider the above scenario:
We have a bidirectional MPLS LSP going from LSR-1 to LSR-2 to LSR-3.
LSR-1 and LSR-3 are acting as MEPs and terminating the Bidirectional MPLS-LSP
and LSR-2 is acting as a MIP.
Traffic would flow on the LSP from LSR-1 to LSR-3
Problem Definition Continued…
MPLS Bidirectional LSP
LSR-1
LSR-2
LSR-3
Need to put MPLS bidirectional LSP in Loopback mode
Assume we need on LSR-2 to put the LSP in Full Loopback (FLB) or OAM Loopback
mode (OLB).
In FLB mode, data traffic sent from LSR-1 will be looped back to LSR-1.
In OLB mode, data traffic will not be looped back.
In both modes, the MPLS OAM Loopback message will be received by LSR-2, and an
Ack will be sent back to LSR-1.
Proposed Solution : LSP into Non-Intrusive
Loopback Mode
MPLS Bidirectional LSP
LSR-1
LSR-2
LSR-3
LSR-1 sends an OAM Loopback Request
to LSR-2, the message contains the LSR-2 ID
MPLS-OAM Message TTL expired at LSR-2, LSR-2
matches the ID and sends an ack back to LSR-1
OAM intercepted at MIP obecause TTL expiry
• target id used to match the MIP address
• if no match, send NACK.
Proposed Solution: LSP into Intrusive Loopback
Mode
MPLS Bidirectional LSP
LSR-1
LSR-2
LSR-3
LSR-1 sends a Lock Request to LSR-3
to take the MPLS LSP out of service
LSR-3 takes the MPLS-LSP out of service from
dataplane and sends an Ack back to LSR-1
LSR-1 sends a Loopback Request to LSR-2
To put the MPLS LSP in Full Loopback mode
LSR-2 setup dataplane to loopback traffic received
on this LSP from LSR-1 and sends an ack back to LSR-1
Proposed Solution: Intrusive Loopback Mode,
flow of data packets
MPLS Bidirectional LSP
LSR-1
LSR-2
LSR-3
LSR-1 sends data packets on the MPLS
Bidirectional LSP to test connectivity up
to LSR2, Packets may contain a sequence #’s.
LSR-2 Loops back the packets sent to LSR-1
LSR-1 could check sequence #’s on packet received
to guarantee no losses
Proposed Solution: Out-of Intrusive Loopback
Mode
MPLS Bidirectional LSP
LSR-1
LSR-2
LSR-3
LSR-1 sends a Loopback removal
Request to LSR-2
LSR-2 setup dataplane to remove the Loopback
On the MPLS LSP and sends an Ack back to LSR-1
LSR-1 sends an unLock Request to LSR-3
To put the MPLS LSP back in Service
LSR-3 puts the MPLS LSP back in service
and sends an ack back to LSR-1
Putting MPLS-TP in Loopback
using NMS
An operator should be able to provision any given LSR to:
1. Lock/Unlock any MPLS-TP LSP.
2. Setup any MPLS-TP LSP in loopback mode (either FLB
or OLB).
3. Send MPLS OAM packets from a MEP and notify NMS
when MPLS OAM response arrives.
When NMS is used to provision any of the above the
functionality, the corresponding MPLS OAM message is
not used.
Proposed Solution MPLS OAM
Message extensions
The proposed mechanism is based on a set of new TLVs
which can be transported using one of the following
methods:
–
–
Using in-band MPLS OAM messages which are
forwarded as MPLS packets (non-IP based).
Using LSP-Ping messages where IP/UDP packets
are used (IP-based) in compliance with RFC 4379.
Proposed Solution new ACH codepoint for in-band
option.
The ACH with "MPLS-TP Looback" code point (TBD) indicates the message type
A 32-bit field is added to carry the message ID
0
1
2
3
01 2 3456 78901 234 567 8901 234 567 8901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 1 |0 0 0 0 |0 0 0 0 0 0 0 0 | 0xHH (MPLS-TP Loopback) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Message ID
|
Message Length
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: MPLS-TP OAM Message Header
Proposed Solution new TLVs to be added..
•
Lock Request TLV
•
Unlock Request TLV
•
Loopback Request TLV (with a flag saying FLB or OLB)
•
Loopback Removal TLV
•
Authentication TLV
•
•
Source Identifier TLV (not need in IP MPLS-OAM message version).
In compliance with RFC 4379
Target Identifier TLV (needed to verify that the Loopback OAM message is meant
for this node).
In compliance with RFC 4379
•
Response TLV
LSPV option control packet format
0
1
2
3
01 2 3456 78901 234 567 8901 234 567 8901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
MPLS Label Stack for the MPLS-LSP …
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Label with EOS bit set
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
IP Hdr
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
UDP Hdr
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
TLV’s …
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
• Compliant with RFC 4379, 5085, draft-ietf-pwe3-ms-pw-requirements-07
cc_type used at MEP & MIP
• CW, RA and TTL cc_type at MEP
• Only TTL at MIP
• Reply can come back as IP or MPLS.
In-band Option control packet
format
0
1
2
3
01 2 3456 78901 234 567 8901 234 567 8901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
MPLS Label Stack for the MPLS-LSP …
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Label with EOS bit set
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 1 |0 0 0 0 |0 0 0 0 0 0 0 0 | 0xHH (MPLS-TP Loopback) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Message ID
|
Message Length
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
TLV’s …
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The assumption is that LSP is bidirectional or moral equivalent
Optional data packet extension in
Intrusive mode
• In FLB mode, data packets looped back to TX MEP.
• Packets may contain a sequence-id to insure order
0
1
2
3
01 234 567 8901 234 5678 901 2345 6789 01
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
MPLS Label stack
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Label with EOS bit set
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Optional Sequcence-ID
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Future Enhancements
• Clarify LSP-Ping usage as it MUST be supported
• Add code point to loop OAM packets in OLB mode.
• Make Lock a MUST in FLB mode.
• GAL used to allow OAM control packets to pass
through the LSR that loops back packets in FLB
mode.
• Optional (TBD): Set of functions for the data packets,
to measure delay, packet loss, etc.