srv6 for mobile user-plane - ietf datatracker
TRANSCRIPT
SRv6 for Mobile User-Planedraft-ietf-dmm-srv6-mobile-uplane-01
IETF101S.Matsushima, C.Filsfils, M.Kohno, D.Voyer, C.Perkins, P.Camarillo
Comments since IETF100•Many positive comments from both On/Off-List
• Adopted as a WG document.
• But with some complains mainly on readability, i.e: packet flow description.
• Concerns on SRH• SRH insertion or IPv6 encaps with SRH
• Impact to size of overhead
• Applicability for 5G architecture• Need to be clear on which generation is the target
• Functions covered versus existing User Plane protocol• GTP-U Messages (e.g, End-Marker)
• GTP-U Extension headers (e.g, 5G container)
• IPv4/Ethernet PDU support
Summary of Updates from v00 to v01• Reference architecture and terminology changes• Refer to 5G arch (TS23.501), but not limited to only that.• Traditional mode ( from Basic mode in v00 )• Enhanced mode ( from Aggregate mode in v00)
• Uses IPv6 encapsulation with SRH by default• … thereby supporting other types of PDU, e.g. IPv4, Ethernet, etc.,
• Improved draft readability• Added detailed packet flows, simplified use-cases.
• Added interworking with IPv6/GTP• New SR-GW functionality at UPF• No need for an uplink classifier
Next Steps• Extend function coverage
• To support GTP-U Messages and Extension headers, i.e, 5GS Container.• Ideally, GTP-U Extension header encodings are not modified. Needs further study.
• Examples with different UPFs• Interaction with Uplink Classifier UPF and/or Branching Point UPF for use cases.• e.g, traffic measurement, lawful intercept, multi-homing, charging, etc.,
A View of 3GPP-friendly SRv6 UP Protocol Stack
Application
PDU Layer
5G-AN
Protocol
Layers
5G-AN
Protocol
Layers
Relay Relay
IPv6*
L2
L1
IPv6*
L2
L1
IPv6*
L2
L1
IPv6*
L2
L1
PDU Layer
UE UPF
(PDU Session Anchor)
UPF5G-AN N3 N9 N6
*: IPv6 header + SRH (variable size: 1 SID = 16Bytes)
No SRH in traditional mode with just an IPv6 header (40Bytes)
A View of 3GPP-friendly SRv6 UP Protocol Stack(gNB/N3 unchanged scenarios)
Application
PDU Layer
5G-ANProtocolLayers
5G-ANProtocolLayers
Relay Relay
UDP/IP
L2
L1
UDP/IP
L2
L1
L2
L1
L2
L1
PDU Layer
UE
GTP-U GTP-U
UPF(PDU Session Anchor)
UPFN3 N9 N65G-AN
IPv6*IPv6*
*: IPv6 header + SRH (variable size: 1 SID = 16Bytes) No SRH in traditional mode with just an IPv6 header (40Bytes)
Traditional mode
Reference diagram
SMF
Internet
gNB
AUPFU1
UPFU2
G1
G2
AMF
UE
N2
N3
N3
N9 N6
N4
N11
X2
AMF: Access & Mobility FunctionSMF: Session Management FunctiongNB: 5G eNodeB (i.e., base station)UPF: User Plane FunctionN2, N3, N4, N6, N9, N11: 5G reference points (functional block interfaces)X2: inter-base station reference point
• Mobile user-plane functions are the same ones as with GTP-U. It’s just a data plane replacement.
• Equivalent with existing User Plane in terms of functionality.• PDU sessions mapped 1-for-1 with a GTP-U tunnel. In this mode,
mapped with SRv6 policy.• gNB is SRv6 capable but from control plane viewpoint there’s no change.• Lower MTU overhead than GTP-U over IPv6/UDP!draft-dukes-spring-mtu-overhead-analysis-00
Traditional mode
Traditional mode - uplink
Internet
gNB
UPF1U1
UPF2U2
UEN3 N9 N6
IPv6 Hdr SA = G::, DA = U1::IPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = A::, DA = Z:: IPv6 Hdr SA = G::, DA = U2::IPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = A::, DA = Z::
T.Encaps.Red End.MAP End.DT
G
SMF
AMF
N2
N11
N4
PayloadPayload
PayloadPayload
Traditional mode - downlink
Internet
gNBUEN3 N9 N6
IPv6 Hdr SA = U2::, DA = G::1IPv6 Hdr SA = Z::, DA = A::
IPv6 Hdr SA = Z::, DA = A:: IPv6 HdrSA = U2::, DA = U1::IPv6 Hdr SA = Z::, DA = A::
IPv6 HdrSA = Z::, DA = A::
End.DX End.MAP T.Encaps.Red
UPF1U1
UPF2U2
SMF
AMF
N2
N11
N4
PayloadPayload
PayloadPayload
G::1
• The “Endpoint function with SID mapping” (End.MAP) is used in several scenarios. Particulary in mobility, is is used in the UPF for
• When N receives a packet destined to S and S is a local End.Map SID, N does:
• 1. look up the IPv6 DA in the mapping table2. update the IPv6 DA with the new mapped SID ;; Ref13. forward according to the new mapped SID 4. ELSE /* if S is NOT a local End.Map SID */ 5. Drop the packet
Ref1: SRH is NOT modified if it exists in the header.
End.Map
Enhanced mode
Reference diagram
SMF
Internet
gNB
AUPFU2
G1
G2
AMF
UE
N2
N3 N9 N6
N4
N11
X2 NFVS1
TEC1N9
C1: Traffic EngineeringS1: Service function instance running on NFV platform
AMF: Access & Mobility FunctionSMF: Session Management FunctiongNB: 5G eNodeB (i.e., base station)UPF: User Plane FunctionN2, N3, N4, N6, N9, N11: 5G reference points (functional block interfaces)X2: inter-base station reference point
• Several UE share the same SR policy (and its SIDs)
• The SR policy includes Traffic Engineering(C1) and NFV(S1)
• The gNB control-plane (N2 interface) might, or might not be unchanged:Ø If unchanged, we signal a single IP address that the gNB resolves with
PCEP, reverse DNS, LISP into a SID listØ If changed, we signal a full SID list over the N2 interface
Enhanced mode
Enhanced mode - uplink
Internet
gNB
TEC1
UPF2U2
UE
NFVS1
IPv6 Hdr SA = G::, DA = S1::SR Hdr (U2::, C1::) SL=2
IPv6 Hdr SA = A::, DA = Z::IPv6 Hdr SA = A::, DA = Z:: IPv6 Hdr SA = A::, DA = Z::
T.Encaps.Red<S1::, C1::, U2::>
End.DT with PSP
IPv6 Hdr SA = G::, DA = C1::IPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = G::, DA = C1::SR Hdr (U2::, C1::) SL=1
IPv6 Hdr SA = A::, DA = Z::
G
SMF
AMF
N2
N4
N11
PayloadPayload PayloadPayloadPayload
End.* End.*
End.*: Appropriate SRv6 End function type for the purposes.
Enhanced mode - downlink
Internet
gNBUE
IPv6 Hdr SA = U2::, DA = C1::SR Hdr (G::1, S1::) SL=2
IPv6 Hdr SA = Z::, DA = A::IPv6 Hdr SA = Z::, DA = A:: IPv6 Hdr SA = Z::, DA = A::Payload
T.Encaps.Red<C1::, S1::, G::1>End.DX with PSP
IPv6 Hdr SA = U2::, DA = G::1IPv6 Hdr SA = Z::, DA = A::
IPv6 Hdr SA = U2::, DA = S1::SR Hdr (G::1, S1::) SL=1
IPv6 Hdr SA = Z::, DA = A::
TEC1
UPF2U2
NFVS1
SMF
AMF
N2
N4
N11
Payload Payload Payload Payload
End.*End.*
G::1
End.*: Appropriate SRv6 End function type for the purposes.
Enhanced mode with unchanged gNBIPv6 GTP behavior
SRv6 (N3 unchanged – IPv6/GTP)
Application
PDU Layer
5G-ANProtocolLayers
5G-ANProtocolLayers
Relay Relay
UDP/IPv6
L2
L1
UDP/IPv6
L2
L1
IPv6*
L2
L1
IPv6*
L2
L1
PDU Layer
UE UPF(PDU Session Anchor)
UPF5G-AN
N3 N9 N6
GTP-U GTP-U
At the N3 the packet is IPv6/GTP, but IPv6 DA is an SRv6 segment. Routing is based on SRv6.
*: IPv6 header + SRH (variable size: 1 SID = 16Bytes) No SRH in traditional mode with just an IPv6 header (40Bytes)
Reference diagram
SMF
Internet
gNB
A SR GWX
UPFU2
G1
G2
AMF
UE
N2
N3N9 N6
N4
N11
X2TEC1
NFVS1 N9N9
C1: Traffic Engineering
S1: Service function instance running on NFV platform
X: GTP-U/SRv6 Interworking
AMF: Access & Mobility Function
SMF: Session Management Function
gNB: 5G eNodeB (i.e., base station)
UPF: User Plane Function
N2, N3, N4, N6, N9, N11: 5G reference points (functional block interfaces)
X2: inter-base station reference point
SR GW: Segment Routing Gateway between GTP-U/IPv6 and SRv6
Objective
• SR GW to UPF U2 is SRv6 capable for the underlay, overlay and service chaining
• GTP-U endpoint IPv6 addresses of gNB and SR GW could be treated as SRv6 SID.
• No software changes in the gNB
• To achieve this we deploy an SR GW in between gNB and UPF (N3 interface)• Any SRv6 capable router on hardware or software.
• Applies to any kind of PDU session types
SMF
Internet
gNB
A SR GWX
UPFU2
G1
G2
AMF
UE
N2
N3N9 N6
N4
N11
X2TEC1
NFVS1 N9N9
Uplink traffic
SMF
Internet
gNB
A
SR GWX
UPFU2G1
AMF
UE
N2
N3N9 N6
N4
N11
Old: IPv6 addr “X::1” + TEID (1234)New: IPv6 SID “X:A::1” + TEID (1234)
X:A:1 is BSID at XTEID (1234) could be dummy
TEC1
NFVS1 N9N9
Uplink traffic
IPv6 Hdr SA = A::, DA = Z::
Payload
IPv6 Hdr SA = G1::, DA = X:A::1
UDP -
GTP
SA = A::, DA = Z::
Payload
TEID: 1234
IPv6 Hdr
• SRGW advertise SID in LOC(64b of X ) + Algorithm(8b of A and B) format :
• X:A::/72 -> Low latency
• X:B::/72 -> High bandwidth
• SRGW does End.M.GTP6.D function for X:A:: and X:B::.
• X:A::1 is a type of End.M.GTP6.D SID that pops the GTP header without lookup
and pushes an outer header with SID list
• X:A:1 could be a flex-alg SID (end-to-end network slicing) for other SRv6 nodes.
• X:A::1 can be shared across UEs
SMF
Internet
SR GWX
UPFU2
AMF
N2
N9 N6
N4
N11Old: IPv6 addr “X::1” + TEID (1234)
New: IPv6 SID “X:A::1” + TEID (1234)X:A:1 is BSID at X
TEID (1234) could be dummy
TEC1
NFVS1 N9N9
gNB
AG1
UE
N3
Uplink traffic
IPv6 Hdr SA = A::, DA = Z::
Payload
IPv6 Hdr SA = G1::, DA = X:A::1
UDP -
GTP
SA = A::, DA = Z::
Payload
TEID: 1234
IPv6 Hdr
• Without modifying the N2 interface we are steering the UE packets to an SRGW along the designated algorithm path.
IPv6 Hdr SA = X::, DA = S1::
SR Hdr (U2::, C1::) SL=2
Payload
IPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = X::, DA = C1::
SR Hdr (U2::, C1::) SL=1
Payload
IPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = X::, DA = U2::
PayloadIPv6 Hdr SA = A::, DA = Z:: Payload
IPv6 Hdr SA = A::, DA = Z::
• SRGW advertise SID in LOC(64b of X ) + Algorithm(8b of A and B) format : • X:A::/72 -> Low latency• X:B::/72 -> High bandwidth
• SRGW does End.M.GTP6.D function for X:A:: and X:B::.• X:A::1 is a type of End.M.GTP6.D SID that pops the GTP header without lookup
and pushes an outer header with SID list• X:A:1 could be a flex-alg SID (end-to-end network slicing) for other SRv6 nodes.• X:A::1 can be shared across UEs
SMF
InternetSR GWX
UPFU2
AMF
N2
N9 N6
N4
N11
Old: IPv6 addr “X::1” + TEID (1234)New: IPv6 SID “X:A::1” + TEID (1234)
X:A:1 is BSID at XTEID (1234) could be dummy
TEC1
NFVS1 N9N9
gNB
AG1
UE
N3
End.M.GTP.6.D End.DT6End.* End.*
End.*: Appropriate SRv6 End function type for the purposes.
• The " Endpoint function with IPv6/GTP decapsulation into SR policy” (End.M.GTP6.D) is used to in interworking scenario the direction from legacy user-plane to SRv6 user- plane network.
• When N receives a packet destined to S and S is a local End.M.GTP6.D SID, N does:
• 1. IF NH=UDP and UDP.DST_PORT=GTP
• 2. pop IP, UDP and GTP headers
• 3. push an outer IPv6 header with its own SRH
• 4. set the outer IPv6 SA to A
• 5. set the outer IPv6 DA to the first segment of the SRv6 Policy
• 6. forward according to the first segment of the SRv6 Policy
• 7. ELSE
• 8. drop the packet
End.M.GTP6.D
Downlink traffic
SMF
SR GWX
AMF
IPv6 Hdr SA = Z::, DA = A::
Payload
N2
N4
N11
UPFU2N9 N6N9N9
Remote Endpoint ==G1:: + TEID (3456)G1:: is a gNB IPv6 addr
TEC1
NFVS1
• UPF U2 (anchor point) maintains state of A:• FIB lookup: A/128 is matched to <C1::, S1::, X::2:3456, G1::>
• SRGW SID X:: need be pre-configured, or through N4 or other means.
Internet
gNB
AG1
UE
N3
Downlink traffic
SMF
SR GWX
AMF
IPv6 Hdr SA= U2::, DA= X::2:3456
SR Hdr ( G1::, X::2:3456, S1::) SL=1
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv6 Hdr SA = Z::, DA = A::
Payload
N2
N4
N11
UPFU2N9 N6N9N9
IPv6 Hdr SA= U2::, DA= S1
SR Hdr ( G1::, X::2:3456, S1::) SL=2
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv6 Hdr SA= U2::, DA= C1
SR Hdr ( G1::, X::2:3456, S1::) SL=3
IPv6 Hdr SA = Z::, DA = A::
Payload
Remote Endpoint ==G1:: + TEID (3456)G1:: is a gNB IPv6 addr
• UPF U2 (anchor point) maintains state of A:• FIB lookup: A/128 is matched to <C1::, S1::, X::2:3456, G1::>
• SRGW SID X:: need be pre-configured, or through N4 or other means.
• SRGW does End.M.GTP6.E function.• X::2 is an SRv6 End.M.GTP6.E SID. • Removes SRH, adds UDP and GTP with TEID received in SID ARGs• IPv6 DA is the last segment of the SRH• Scales (no state per UE in SR gateway)• gNB could configure an IPv6 addresses per network slice.
• G1::1 -> Low latency• G1::2 -> High bandwidth
TEC1
NFVS1
Internet
gNB
AG1
UE
N3
T.Encaps.RedEnd.*End.*
End.*: Appropriate SRv6 End function type for the purposes.
Downlink traffic
SMF
SR GWX
AMF
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv6 Hdr SA = X::, DA = G1::
UDP -
GTP
SA = Z::, DA = A::
Payload
TEID: 3456
IPv6 Hdr
• SRGW does End.M.GTP6.E function.• X::2 is an SRv6 End.M.GTP6.E SID. • Removes SRH, adds UDP and GTP with TEID received in SID ARGs• IPv6 DA is the last segment of the SRH• Scales (no state per UE in SR gateway)• gNB could configure an IPv6 addresses per network slice.
• G1::1 -> Low latency• G1::2 -> High bandwidth
IPv6 Hdr SA= U2::, DA= X::2:3456
SR Hdr ( G1::, X::2:3456, S1::) SL=1
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv6 Hdr SA = Z::, DA = A::
Payload
• UPF U2 (anchor point) maintains state of A:• FIB lookup: A/128 is matched to <C1::, S1::, X::2:3456, G1::>
• SRGW SID X:: need be pre-configured, or through N4 or other means.
N2
N4
N11
UPFU2N9 N6N9N9
IPv6 Hdr SA= U2::, DA= S1
SR Hdr ( G1::, X::2:3456, S1::) SL=2
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv6 Hdr SA= U2::, DA= C1
SR Hdr ( G1::, X::2:3456, S1::) SL=3
IPv6 Hdr SA = Z::, DA = A::
Payload
Remote Endpoint ==G1:: + TEID (3456)G1:: is a gNB IPv6 addr
TEC1
NFVS1
Internet
gNB
AG1
UE
N3
End.M.GTP.6.E T.Encaps.RedEnd.*End.*
End.*: Appropriate SRv6 End function type for the purposes.
• The " Endpoint function with encapsulation for IPv6/GTP tunnel” (End.M.GTP6.E) is used in interworking scenario for the direction from SRv6 user-plane to legacy user- plane network.
• When interworking node N receives a packet P destined to S and S is a local End.RAN SID, N does:
End.M.GTP6.E
1. IF NH=SRH & SL = 1 THEN ;; Ref12. decrement SL3. store SRH[SL] in variable new_DA4 store TEID in variable new_TEID ;; Ref25. pop the (outer) IPv6 header and its extension headers6. push an IPv6 header, a UDP header and a GTP-U header7. set the IPv6 DA to new_DA8. set the GTP_TEID to new_TEID9. lookup the new_DA and forward the packet accordingly
10. ELSE11. drop the packetRef1: An End.M.GTP6.E SID must always be the penultimate SID.Ref2: TEID is extracted from the argument space of the current SID.
Enhanced mode with unchanged gNBIPv4 GTP behavior
SRv6 (N3 unchanged – IPv4/GTP)
Application
PDU Layer
5G-ANProtocolLayers
5G-ANProtocolLayers
Relay Relay
UDP/IPv4
L2
L1
UDP/IPv4
L2
L1
IPv6*
L2
L1
IPv6*
L2
L1
PDU Layer
UE
UPF(PDU Session Anchor)
UPF5G-AN
N3 N9 N6
*: IPv6 header + SRH (variable size: 1 SID = 16Byte) No SRH in traditional mode with just an IPv6 header (40Byte)
GTP-U GTP-U
At the N3 the packet is IPv4/GTP.
UE
SMF
gNB
A SR GWX
G1
G2
AMF
UE
N2
N3
N11
X2
Reference topology
InternetUPFU2N9 N6
N4
TEC1
NFVS1 N9N9
C1: Traffic Engineering
S1: Service function instance running on NFV platform
X: GTP-U/SRv6 Interworking
AMF: Access & Mobility Function
SMF: Session Management Function
gNB: 5G eNodeB (i.e., base station)
UPF: User Plane Function
N2, N3, N4, N6, N9, N11: 5G reference points (functional block interfaces)
X2: inter-base station reference point
SR GW: Segment Routing Gateway between GTP-U/IPv4 and SRv6
UE
SMF
gNB
A SR GWX
G1
G2
AMF
UE
N2
N3
N11
X2
Objective
UPFU2N9 N6
N4
TEC1
NFVS1 N9N9
• SR GW to UPF U2 is SRv6 capable for the underlay, overlay and service chaining
• GTP-U endpoint of gNB and SR GW addresses on N3 is IPv4.
• No software changes in the gNB
• To achieve this we deploy an SR GW in between gNB and UPF (N3 interface)
• Any SRv6 capable router on hardware or software.
• Applies to any kind of PDU session types
Internet
SMF
SR GWX
AMF
N2N11
Uplink
UPFU2N9 N6
N4
N9N9
IPv6 Hdr SA = A::, DA = Z::
Payload
IPv4 Hdr SA = G1, DA = SRGW
UDP -
GTP
SA = A::, DA = Z::
Payload
TEID: 1234
IPv6 Hdr
IPv6 Hdr SA = X::, DA = S1::
SR Hdr (U2::, C1::) SL=2
Payload
IPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = X::, DA = C1::
SR Hdr (U2::, C1::) SL=1
Payload
IPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = X::, DA = U2::
PayloadIPv6 Hdr SA = A::, DA = Z:: Payload
IPv6 Hdr SA = A::, DA = Z::
• SRGW does T.M.Tmap function.• SRGW is a UPF Uplink Classifier. Coexist with current UPFs.• Steers traffic into SR policy.
IPv4 addr of SRGW + TEID (1234)
TEC1
NFVS1
Internet
gNB
AG1
UE
N3
T.M.Tmap End.DTEnd.* End.*
End.*: Appropriate SRv6 End function type for the purposes.
Downlink
SMF
SR GWX
AMF
N2
N11
UPFU2N9 N6
N4
N9N9
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv4 Hdr SA = SRGW, DA = G1
UDP -
GTP
SA = Z::, DA = A::
Payload
TEID: 3456
IPv6 Hdr
IPv6 Hdr SA= U2::, DA= X::G1:SRGW:3456
SR Hdr (X::G1:SRGW:3456, S1::)SL=0
IPv6 Hdr SA = Z::, DA = A::
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv6 Hdr SA= U2::, DA= S1
SR Hdr (X::G1:SRGW:3456, S1::) SL=1
IPv6 Hdr SA = Z::, DA = A::
Payload
IPv6 Hdr SA= U2::, DA= C1
SR Hdr (X::G1:SRGW:3456, S1::) SL=2
IPv6 Hdr SA = Z::, DA = A::
Payload
• X::G1:SRGW:3456is an SRv6 End.M.GTP4.E function • Removes SRH, adds IPv4/UDP and GTP• IPv4 SA, DA and GTP TEID are part of the SID’s arguments• Scales (no state per UE in SR gateway)
Payload
IPv4 addr of gNB + TEID (3456)
TEC1
NFVS1
Internet
gNB
AG1
UE
N3
End.M.GTP.4.E T.Encaps.RedEnd.* End.*
End.*: Appropriate SRv6 End function type for the purposes.
• The “Endpoint function with encapsulation for IPv4/GTP tunnel” (End.M.GTP4.E) is used to the direction from SRv6 user-plane to legacy user-plane network.
• When interworking node N receives a packet destined to S and S is a local End.M.GTP4.E SID, N does:
End.M.GTP4.E
1. IF NH=SRH & SL > 0 THEN
2. decrement SL
3. update the IPv6 DA with SRH[SL]
4. push header of TUN-PROTO with tunnel ID from S
5. push outer IPv4 header with SA, DA from S
6. ELSE
7. Drop the packet
Ref1: TUN-PROTO indicates target tunnel type.
• The "Transit with mobile tunnel decapsulation and map to an SRv6 policy function (T.M.Tmap for short) is used to the direction from legacy user-plane to SRv6 user-plane network.
• When interworking node N receives a packet destined to a SRGW IPv4 address, N does:
• 1. IF P.PLOAD == TUN-PROTO THEN ;; Ref1
• 2. pop the outer IPv4 header and tunnel headers
• 3. copy IPv4 DA, SA, TUN-ID to form SID B with SRGW-IPv6-Prefix ;; embedding IPv4 DA/SA/TEID in a SID could be an option.
• 4. encapsulate the packet into a new IPv6 header ;; Ref2, Ref2bis
• 5. set the IPv6 DA = B
• 6. forward along the shortest path to B
• 7. ELSE
• 8. Drop the packet
• Ref1: P.PLOAD and T.PLOAD represent payload protocol of the receiving packet, and payload protocol of the tunnel respectively.
• Ref2: The received IPv6 DA is placed as last SID of the inserted SRH.
• Ref2bis: The SRH is inserted before any other IPv6 Routing Extension
T.M.Tmap
Appendix
CC E A , E AC I4
2,(
44
- -
42 C ,3A D3E
434 A )3A3
AD ,3A D3E 2 C 4B 4A
- C - C, E6
-G -G
)3A3 3
- A A2 C 4 AD
• C4 E EA . , - 4 /• - C A E 6C 4E A 4 4• ,A A E 4E4 4E
<- Redundancies lessen TCO <- Can be scaled up but costy<- Hard to meet Apps reqs
, ( 5 ) 5 -5 535 1 .
5 - 5 5-
-
D .? C .B C ?BDC B ? DB
4 8 4 CH
86 4 CH
/ ))
4 8 4 CH86 4 CH38 / (38 (
OIICH 3/ (
4 6 3/ &
/8 /8 LN &/8 8 LN &
38P / &38P &
/ ))
MCL 8 SH B
8L PFBCM 2FD O HFNS IB CHF FHFNSOHNF HC FLNO H 6CNQ LGM CRFMN
/C H SM FHC - AG OH IB LCQ 2FD O HFNS IB CHF FHFNS
0 L 8H IC IB 6CNQ LGM
1 8P& M FHC MCL 8H IC 8L N A HOHNF HCRCM CMMF IM FI OIICH -CNQCCI Q 6 BCM
38P M MCL 8/6 8L N A H
-D D - - DF?B C D?, A B DC ? , D C D
0 N 7 H R 7 ?D H ? N IC 7N ?
IM NAM - 2 RALM 6 A1IN 7 IC A 15P) 2 RAL
15P) -
15P) 7-
7ACHAIN 1
7ACHAIN 1
(* NM
*Exist in Segment Routing Extension Header (SRH)
275 2 A 54 2 A
3- 73-
275 2 A 54 2 A 15 - 15 7-
8 IIA 1
2-4 1
5 LN ) 5 7 LN )
15P) - 15P) 7-
3- 73-
MAL 5 R
( NM
C .-E 6 ? 6B C6A C E6 ? , D 6
)-
3 23 3 23
23 3 3
23 - 3 ( 3 3
) )
• 6 A 6 C6 C? - , .• ,6A B6BB ? CD 6 A6 C ?• ? ? C C C• ,E C6 A C6B 6C ?A B ? C 6 ? 6 ?C 6AB• . A6 A6B6 CB C 6 A? 6 D C ?
.-E 6C ?A
.-E . B
3- 4 2 (
3(
-1 - ) ( )
1
4 2 6 4
3 94 3 4 6 4
SMF
4
AMF
2- - ) ( )
1
4 2 6 4
3 94 3 4 6 4
SMF
4
AMF
1 )( 1
1SID
SID
SID
SID
4 2 6 4
3 94 3 4 6 4
SMF
4
AMF
2 )(
1
S I D
S I D
S I D
S I D
S I D
S I D
S I D
S I D
4 2 6 4
3 94 3 4 6 4
SMF
4
AMF
7 7=58 8 ==7 = : :5 7
Control-PlaneEntity
Control-Plane Message
ü Tunnel endpoint Address (A::)ü Tunnel Identifier(0x12345678)
MAG/LMA/SGW/PGW/eNB
User-PlaneEntity
FIB table
ü Tunnel endpoint Address (A::)ü Tunnel Identifier(0x12345678)
ü SID: A::1234:5678
2 25A: 562 2 21-5A: 56
2 ����������2 3 4
SRH (Segment Routing Header)
4
Segment ID(SID)
46 6 SRv6 Function*Name
Forwarding
( - (
( . 3
( 6 ) 6
( ) 3 6) 6
( ) 3 6) 6
( . ) 3 )
( . ) 3 )
( - 64 -) 64
SRv6 Function*Name
Forwarding
) 4
)6 ) - 64 -) 64
(6 - 64 -) 64 ) 3
* Non exhaustive list of SRv6 Network Programming
����������
• IPv6 Segment Routing Header (SRH)• draft-ietf-6man-segment-routing-header
• SRv6 Network Programming• draft-filsfils-spring-srv6-network-programming
Traditional mode - uplink
Internet
gNB
UPF1U1
UPF2U2
UEN3 N9 N6
IPv6 Hdr SA = A::, DA = U1::SR Hdr ( Z::, U2::) SL=1
Payload
IPv6 Hdr SA = A::, DA = Z::Payload
IPv6 Hdr SA = A::, DA = U2::SR Hdr ( Z::, U2::) SL=0
Payload
IPv6 Hdr SA = A::, DA = Z::Payload
T.Insert.Red End.B6 End.T
Inse
rtio
n
IPv6 Hdr SA = G::, DA = U1::
PayloadIPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = A::, DA = Z::Payload
IPv6 Hdr SA = G::, DA = U2::
PayloadIPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = A::, DA = Z::Payload
T.Encaps.Red End.MAP End.DT
Enca
psul
atio
n
G
SMF
AMF
N2
N11
N4
Traditional mode - downlink
Internet
gNBUEN3 N9 N6
IPv6 Hdr SA = Z::, DA = G::SR Hdr ( A::, G::) SL=0
Payload
IPv6 Hdr SA = Z::, DA = A::Payload
IPv6 Hdr SA = Z::, DA = U1::SR Hdr ( A::, G::) SL=1
Payload
IPv6 Hdr SA = Z::, DA = A::Payload
End.X End.B6 T.Insert.Red
Inse
rtio
n
IPv6 Hdr SA = U2::, DA = G::
PayloadIPv6 Hdr SA = Z::, DA = A::
IPv6 Hdr SA = Z::, DA = A::Payload
IPv6 Hdr SA = U2::, DA = U1::
PayloadIPv6 Hdr SA = Z::, DA = A::
IPv6 Hdr SA = Z::, DA = A::Payload
End.X End.MAP T.Encaps.Red
Enca
psul
atio
n
UPF1U1
UPF2U2G
SMF
AMF
N2
N11
N4
Enhanced mode - uplink
Internet
gNB
TEC1
UPF2U2
UE
NFVS1
IPv6 Hdr SA = A::, DA = S1::SR Hdr (Z::, U2::, C1::) SL=3
PayloadIPv6 Hdr SA = A::, DA = Z::
PayloadIPv6 Hdr SA = A::, DA = Z::
Payload
T.Insert.Red<S1::, C1::, U2::>
End.T with PSP
Inse
rt
IPv6 Hdr SA = A::, DA = U2::
Payload(Z::, U2::, C1::) SL=1SR Hdr
IPv6 Hdr SA = A::, DA = C1::SR Hdr (Z::, U2::, C1::) SL=2
Payload
IPv6 Hdr SA = G::, DA = S1::SR Hdr (U2::, C1::) SL=2
PayloadIPv6 Hdr SA = A::, DA = Z::IPv6 Hdr SA = A::, DA = Z::
PayloadIPv6 Hdr SA = A::, DA = Z::
Payload
T.Encaps.Red<S1::, C1::, U2::>
End.DT with PSP
Enca
ps
IPv6 Hdr SA = G::, DA = C1::
PayloadIPv6 Hdr SA = A::, DA = Z::
IPv6 Hdr SA = G::, DA = C1::SR Hdr (U2::, C1::) SL=1
PayloadIPv6 Hdr SA = A::, DA = Z::
G
SMF
AMF
N2
N4
N11
Enhanced mode - downlink
Internet
gNBUE
IPv6 Hdr SA = Z::, DA = G1::SR Hdr (A::, G::, S1::) SL=1
PayloadIPv6 Hdr SA = Z::, DA = A::
PayloadIPv6 Hdr SA = Z::, DA = A::
Payload
T.Insert.Red<C1::, S1::, G::>
End.T with PSP
Inse
rt
IPv6 Hdr SA = Z::, DA = C1::
Payload(A::, G::, S1::) SL=3SR Hdr
IPv6 Hdr SA = Z::, DA = S1::SR Hdr (A::, G::, S1::) SL=2
Payload
IPv6 Hdr SA = U2::, DA = C1::SR Hdr (G::, S1::) SL=2
PayloadIPv6 Hdr SA = Z::, DA = A::IPv6 Hdr SA = Z::, DA = A::
PayloadIPv6 Hdr SA = Z::, DA = A::
Payload
T.Encaps.Red<C1::, S1::, G::>End.DT with PSP
Enca
ps
IPv6 Hdr SA = U2::, DA = G::
PayloadIPv6 Hdr SA = Z::, DA = A::
IPv6 Hdr SA = U2::, DA = S1::SR Hdr (G::, S1::) SL=1
PayloadIPv6 Hdr SA = Z::, DA = A::
TEC1
UPF2U2
NFVS1
G
SMF
AMF
N2
N4
N11