rfc-5565

Softwire Mesh Framework

J. Wu, Y. Cui, C. Metz, E. Rosen
date2009-06 streamIETF areaint wgsoftwire statusPROPOSED STANDARD pages31 canonicalhttps://www.rfc-editor.org/rfc/rfc5565 doi10.17487/RFC5565
The Internet needs to be able to handle both IPv4 and IPv6 packets. However, it is expected that some constituent networks of the Internet will be "single-protocol" networks. One kind of single-protocol network can parse only IPv4 packets and can process only IPv4 routing information; another kind can parse only IPv6 packets and can process only IPv6 routing information. It is nevertheless required that either kind of single-protocol network be able to provide transit service for the "other" protocol. This is done by passing the "other kind" of routing information from one edge of the single-protocol network to the other, and by tunneling the "other kind" of data packet from one edge to the other. The tunnels are known as "softwires". This framework document explains how the routing information and the data packets of one protocol are passed through a single-protocol network of the other protocol. The document is careful to specify when this can be done with existing technology and when it requires the development of new or modified technology. [STANDARDS-TRACK]

Extracted elements (28)

design-rationale §3.2

IPv4-over-IPv6 is an emerging requirement that had not previously received significant attention. Service providers building IPv6-only backbone cores need to carry legacy IPv4 traffic without native IPv4 support in their P routers.

ip, v6ops, routing

design-rationale §6

Manual configuration of point-to-point tunnels is explicitly excluded from the framework because N dual-stack AFBRs would require N² tunnels, creating an unacceptable O(N²) provisioning problem.

routing, vpn, ip

design-rationale §6

Multipoint-to-point tunnels are sufficient for layer-3 transit services; the egress AFBR need not know which ingress router encapsulated a given packet, mirroring native IP forwarding semantics. Point-to-point tunnels are allowed but not required.

routing, vpn, ip

design-rationale §1

Softwires do not form a routing overlay: routing adjacencies are not maintained over softwires, and routing control packets are not sent through them. Backbone routing adjacencies use the native I-IP technology.

routing, bgp, ip

design-rationale §4.1

The framework terminologically distinguishes I-IP (Internal IP, the transit core protocol) from E-IP (External IP, the client-side protocol). E-IP is IPv4 if and only if I-IP is IPv6, and vice versa, so the two are always complementary.

routing, ip, v6ops

design-rationale §1

The Softwire Mesh Framework addresses the need for single-protocol transit networks to carry traffic of the opposite protocol. An IPv4-only core must provide IPv6 transit and vice versa, achieved by tunneling E-IP packets across the I-IP core using softwires between Address Family Border Routers (AFBRs).

routing, bgp, ip, v6ops, vpn

interoperability-note §5

BGP messages exchanged between AFBRs run natively over I-IP and are NOT tunneled through softwires or any other mechanism. IBGP sessions use the transit core's native network layer.

bgp, routing, ip

interoperability-note §1

The framework accommodates MPLS (LDP-based and RSVP-TE-based), L2TPv3, GRE, IP-in-IP, and IPsec as tunneling technologies. No single technology is mandated; choice is a matter of deployment policy. Most can carry MPLS packets, so MPLS in the core is not presupposed.

vpn, mpls, ip, routing, ipsec

interoperability-note §12

When the transit core spans multiple Autonomous Systems, the softwire remote endpoint is not the BGP next hop, breaking the core selection procedure. Solutions include AS-boundary AFBRs, multi-hop EBGP, or preserving next hops at ASBRs, possibly requiring stacked encapsulations.

bgp, routing, ip, vpn

normative-requirement §9 MUST

A packet decided to travel via softwire MUST be sent through a softwire whose remote endpoint address is the same as the BGP next hop address provided by routing.

routing, bgp, ip, vpn

normative-requirement §5 MUST NOT

A Route Reflector MUST NOT change the address family of a BGP next hop when reflecting routes that carry E-IP NLRI over I-IP sessions.

bgp, routing

normative-requirement §5 MUST

If a BGP capability is defined for the case where an E-IP NLRI has an I-IP next hop (as required for cross-family encoding such as RFC 5549), all AFBRs in a given transit core MUST advertise that capability.

bgp, routing, ip, v6ops

normative-requirement §13.3 SHOULD

If IPsec-protected tunnels are required, the tunnel type SHOULD be negotiated by the tunnel endpoints using the procedures in RFC 5566, which allows both IPsec tunnel mode and transport mode.

security, ipsec, vpn

normative-requirement §13.3 MUST

If the path between tunnel endpoints is not adequately secure and a control protocol is used to set up tunnels, the control protocol MUST have an authentication mechanism that MUST be used at setup time. BGP's MD5 authentication (RFC 2385) is deemed satisfactory.

security, bgp, vpn

normative-requirement §13.3 MUST

Since softwires are set up dynamically as a byproduct of routing, key distribution MUST be done automatically via IKEv2 (RFC 4306). If no PKI is available, the IPsec Tunnel Authenticator sub-TLV from RFC 5566 MUST be used and validated before establishing an SA.

security, ipsec, vpn, crypto

normative-requirement §4.3 SHOULD

The MTU of a softwire's path SHOULD be large enough so that (a) no packet will need to be fragmented before encapsulation, and (b) no encapsulated packet will need fragmentation while in transit.

ip, routing, vpn

normative-requirement §5 MUST

When a BGP speaker sends an update for an E-IP NLRI over an I-IP BGP session and advertises itself as the next hop, it MUST specify the next hop address in the I-IP family, unless explicitly overridden by policy.

bgp, routing, ip, v6ops

normative-requirement §13.3 MUST

When IPsec is used to secure softwires, it MUST provide authentication and integrity. Implementations MUST support ESP with null encryption (RFC 4303) or AH (RFC 4302); ESP with encryption MAY be supported.

security, ipsec, vpn

normative-requirement §13.3 MUST

When using ESP, the tunnel tail MUST verify that the source IP address on any packet received on a given SA matches the expected address, per RFC 4301 Section 5.2 step 4.

security, ipsec, vpn

protocol-element §8

AFBR class membership for tunnel-technology selection can be advertised as BGP communities or extended communities via RFC 5512, allowing policies such as 'use L2TPv3 to class X routers and GRE to class Y routers'.

bgp, routing, vpn

protocol-element §11.1.1

For E-IP multicast over an I-IP core using PIM, an AFBR translates E-IP PIM Join/Prune messages to I-IP and inserts an RPF Vector (RFC 5496) identifying the egress AFBR as an I-IP address, since core routers hold no E-IP routes.

multicast, routing, ip

protocol-element §6

For GRE (without options) and L2TPv3 softwires, signaling is BGP-based as specified in RFC 5512 (BGP Encapsulation SAFI and Tunnel Encapsulation Attribute). IP-in-IP and GRE without options require no signaling; MPLS uses LDP or RSVP-TE; IPsec uses IKEv2.

bgp, routing, vpn, ip, mpls

protocol-element §4.1

The Address Family Border Router (AFBR) is the PE router that handles both I-IP (the transit core's protocol) and E-IP (the client networks' protocol). Only AFBRs need to support both address families; P routers support only I-IP and CE routers support only E-IP.

routing, bgp, ip, v6ops

protocol-element §5

Use of labeled IPv4 or labeled IPv6 address families is OPTIONAL and allows the egress AFBR to associate an MPLS label with each IP prefix, enabling demultiplexing and performance enhancement at the egress.

bgp, mpls, routing, ip

protocol-element §11.1.2

When the core supports mLDP, each E-IP SSM (S,G) tree can be mapped one-to-one onto a P2MP LSP rooted at the upstream AFBR. The original (S,G) is algorithmically encoded into the mLDP FEC identifier and must be standardized.

multicast, mpls, routing, ip

security-consideration §13.1

Cryptographic techniques cannot prevent flooding/DoS attacks on tunnel receiving endpoints; applying crypto to spoofed packets increases processing cost and trades one attack vector for another. Non-cryptographic ingress filtering or address segregation is recommended within a single domain.

security, vpn, ip

security-consideration §13.1

Encapsulation headers must appear in the clear to be processed by P routers, making them vulnerable to spoofing and replay attacks. An unauthorized node could send encapsulated packets to a receiving endpoint, causing policy violations by bypassing authorized ingress filtering.

security, vpn, ip

security-consideration §13.2

Non-cryptographic defenses include giving tunnel endpoints distinct addresses known to border routers for ingress filtering, and using cleartext 64-bit L2TPv3 cookies as passwords—effective within a domain where packet interception is infeasible, but insufficient across domain boundaries.

security, vpn, ip