04-draft-xu-mpls-spring-islands-connection-over-ip-00-02
Download
Report
Transcript 04-draft-xu-mpls-spring-islands-connection-over-ip-00-02
Connecting MPLS-SPRING Islands
over IP Networks
draft-xu-mpls-spring-islands-connection-over-ip-00
Xiaohu Xu (Huawei)
Robert Raszuk (Bloomberg LP)
Uma Chunduri
Luis M. Contreras (Telefonica I+D)
Luay Jalil (Verizon)
IETF97, Seoul
www.huawei.com
Motivations
“The SPRING architecture MUST allow incremental and selective
deployment without any requirement of flag day or massive upgrade of all
network elements.” (see draft-ietf-spring-problem-statement-07)
To support incremental deployment of MPLS Segment Routing (SR), non-MPLSSR nodes is required to enable LDP (see draft-ietf-spring-segment-routing-ldp-
interop ). This is absolutely fine for brownfield networks where MPLS LDP has
already been enabled before. However, it seems a bit unreasonable for greenfield
networks as it destroys the beauty of MPLS SR (i.e., simplify network provisioning
by running a single protocol that is IGP).
The incremental deployment capability of IPv6 SR is better than MPLS SR since
non-SR nodes in the IPv6 SR case just need to support IPv6 forwarding.
Unfortunately, the encapsulation overhead is a significant concern at least in
some networks since the explicit path information is encoded as a list of 128-bit
long IPv6 addresses. This incremental deployment capability doesn’t exist for
IPv4 underlay networks.
Motivations
To facilitate the incremental deployment of MPLS-SR technology, this document
describes a mechanism which allows the outermost LSP to be replaced by an IPbased tunnel when the next-hop along the LSP is not MPLS-SR-enabled.
No need to run any other label distribution protocol (e.g., LDP, see draft-ietf-spring-segmentrouting-ldp-interop ). Therefore, keep the incremental deployment capability as perfect as
IPv6-SR (i.e., non-SR nodes just need to support IP forwarding capability).
More importantly, it’s a universal source routing method which integrates existing IP
and MPLS specifications.
The MPLS label stack contained within an IP packet (either IPv4 or IPv6) is used
to indicate the explicit path information.
If the IP packet is an IPv6 packet, it can be looked as a compact IPv6 SR variant
where the explicit path is encoded as a list of short IDs instead of IPv6 addresses.
As a hardware convenience those short IDs are formatted as MPLS labels.
Use Cases
MPLS-SR-based Service Function Chaining (SFC) (see draft-xu-sfc-mpls-
service-chaining)
Only partial SFC-related nodes (e.g., Service Function Forwarders (SFF) and
classifiers) are required to be MPLS-SR-capable while the intermediate routers
just need to support IP forwarding (either IPv4 or IPv6).
Traffic Engineering in the dual-plane network scenarios
Only a few routers (e.g., the entry and exit nodes of each plane) are required to
be MPLS-SR-capable while the intermediate routers just need to support IP
forwarding (either IPv4 or IPv6).
Connecting MPLS SPRING over IP
Node Segment : Label Z
X
Y
Z
SR
Non-SR
SR
Packet
Packet
Packet
Label Z
Label Z
Label Z
IP (X->Z)
IP (X->Z)
Upon receiving an MPLS packet with the top label indicating a next node
segment (i.e., Z), if the IGP next-hop router (i.e., Y) towards that node segment
is a non-SR router, X would forward the MPLS packet to the next node
segment (i.e., Z) through an IP-based tunnel (e.g., MPLS-over-UDP tunnel
[RFC7510]).
If the top label is not a PHP label, X SHOULD swap the top label to the corresponding label
significant to Z and then encapsulate the MPLS packet into an IP-based tunnel.
If the top label is a PHP label and not at the bottom of the label stack, X SHOULD pop that top
label before performing the above encapsulation.
Discussion: do we need this draft?
When an MPLS-SR-enabled router X receives an MPLS packet with the top
label indicating a given node segment Z, if the next-hop of the best path to Z is
a non-MPLS router, X couldn't map the packet's top label into an Next Hop
Label Forwarding Entry (NHLFE) , even though the top label itself is a valid
incoming label. As a result, X would have to drop that packet according to
RFC3031 (see Section 3.22. Lack of Outgoing Label).
Node Segment : Label Z
Packet
Label Z
X
Y
Z
SR
Non-SR
SR
Discussion: do we need this draft? (con’t)
www.huawei.com
Next Steps
Any comments and suggestions?