IETF(と3GPP)でのモバイル・5G関連活動
ソフトバンク松嶋 聡

要約• SRv6 (Segment Routing IPv6)をモバイルユーザープレーンに適用するアイディアをIETFへ提案、さらに良き協力者を得て3GPPにも提案• 厳しい反論に遭いながらもステップバック、妥協点を見出し、ユー
ザープレーンプロトコル検討のスタディアイテム化を合意(3GPP CT4)
• 既存(GTP-U)含め、ユーザープレーン候補プロトコルのスタディを公式に開始する予定(IETF DMM WG, 3GPP CT4)

モバイルユーザープレーンとは何か• GTP(GPRS Tunneling Protocol)で構成される、世界2大トンネルプロトコルの1つ• もう片方はL2TP• 携帯ネットワーク(3G, LTE)経由のインターネットアクセスは、全てGTPトンネルを通る
Access Node(eNode-B)

L3 Anchor Node(Packet DataNetwork Gateway)

L2 Anchor Node(Serving Gateway)
IPv4/IPv6
GTP-U TunnelGTP-U Tunnel

IPv4

IPv4RANEPC

VLAN, etc.,

SGi

ServiceFunctions
Internet,Service network

SRv6とは何か

SRH (Segment Routing Header)を使います
4Segment ID(SID)SRv6とは何か
IPv6アドレスで色々な機能を表現できます
SRv6 Function*
Name

Forwarding

SRv6 Function*
Name

Forwarding

END

Lookup SRH

T

Pure IPv6 transit

END.X

L3 cross-connect to next-hop

T.Insert

Insert an SRv6 policy (SID list)

END.T

L3 lookup IPv6 table

T.Encaps

Encap SRv6 policy (SID list) byouter IPv6 hdr

END.DT6

Decap outer IPv6 hdr and lookup
IPv6 table

END.DT4

Decap outer IPv6 hdr and lookup
IPv4 table

END.DX6

Decap outer IPv6 hdr and IPv6
cross-connect

END.DX4

Decap outer IPv6 hdr and IPv4
cross-connect

END.B6

Bound to an SRv6 policy(SID list)* SRv6 Network Programming経緯(1)•7月• IETF99@プラハ• SRv6 Mobile User Plane(draft-matsushima-spring-dmm-srv6-mobile-uplane)を提案• DMM (Distributed Mobility Management) WGで発表• IETFコミュニティが関心を持つようになった経緯(2)• 8月• 3GPP CT4 WGへSRv6 UPを提案• CT4: Core and Terminal Working Group 4 (3GPPで用いるプロトコル設計の責任WG)• 激しい反論にあう• 5G Phase.1 (リリース15)の作業で手一杯• GTP-Uのなんの問題も指摘されていないし、GTP-Uで実現困難な要求もインプットされていない• SRv6がシステム全体に与えるインパクトが掴めない。でかすぎるのでは？

• 10月• モバイルにおけるIPv6普及を理由に、User Planeプロトコルのスタディするワークアイテムを提案 (3GPP CT4)
• 8月と同じ理由（忙しい、インパクトでかそう）で合意に至らずIPv6普及してるからユーザープレーン見直そう提案

http://portal.3gpp.org/ngppapp/CreateTdoc.aspx?mode=view&contributionId=835814

経緯(3)• 11月• IETF100@シンガポール• 既存システム（C PlaneやRAN）にインパクトを与えないアイディアを盛り込んで、SRv6Mobileドラフトをアップーデート (IETF100)• 更にIETFコミュニティの関心を引き、IETF DMMのWGドキュメントに• 3GPP CT#81@リノ• 既存プロトコルを含めて、広くUser Plane候補プロトコルをスタディする提案を再び3GPP
CT4 WG へインプット• 再び反論される• しかしスタディ内容そのものより、スタディの開始時期をいつにするか、が焦点に• そこで、
1）直近のRel-15作業が完了するまではCT4では作業せず
IETFにスタディアイテムの通知と、簡易な質疑応答を行い、その間IETF側で作業を進める
2) 今年7月以降に、Rel-16の要求をベースにUser Plane プロトコルのスタディを開始する• 合意にいたる提案への反論、CTチェアの援護射撃

期間中、4回のリバイズを実施、粘り強く議論
①

②
③
④

今後の予定• 3GPPでの公式なスタディアイテムの承認• 今月18日からの3GPP全体ミーティング• 3GPPからIETFへのリエゾン作成、送付• User-Planeプロトコルのスタディ開始、候補プロトコルのインプット要請• IETFでのSRv6 User Planeプロトコル 開発・標準化• オープンソース実装の存在が望ましい• 3GPPでのUser Planeプロトコルのスタディ開始• 来年7月以降• IETFでの作業と、Release-16 Requirements の進捗がキー補足資料

SRv6 for Mobile User-Plane
draft-matsushima-spring-dmm-srv6-mobile-uplane-03
IETF100
S.Matsushima, C.Filsfils, M.Kohno, D.VoyerA Current Mobile Network Example• Well fragmented to RAN, EPC and SGi.
<- Redundancies lessen TCO• Per-session tunnel creation and handling.<- Can be scaled up but costy<- Hard to meet Apps reqs
• Non-optimum data-path.
Data-planeRole

Access Node(eNode-B)

L3 Anchor Node(Packet DataNetwork Gateway)

L2 Anchor Node(Serving Gateway)
IPv4/IPv6
GTP-U Tunnel

GTP-U Tunnel

IPv4IPv4RAN

EPC

VLAN, etc.,

SGiService
FunctionsInternet,Service network

3GPP Rel-15 Architecture (5G Phase.1)

U-Plane Is Dramatically Simplified, Why?

Generic Expectations for 5G Networks
U-Plane must be simplified because to meet
Complicated Optimizations
eMBB

uRLLC

mMTC

Source: NGMN white-paperBut Today’s U-plane Transports Are Well ComplicatedAlready, Why?
Stacking Multiple Small ID Space Networks to Fulfill
Requirements of Reliability, VPNs, etc.,

How We Can Simplify Complicating Stack?
User Payload
IPv6 SA (128)
IPv6 DA (128)

Tunnel ID (32)
UDP Sport(16)Consolidates All Layers Role
Into Single IPv6 Layer

UDP Dport(16)IP SA (32)
IP DA (32)
VPN Label (20)
LSP Label (20)
VLAN ID (12)SMAC (48)

DMAC (48)

Segment-ID [1]*(128)

Segment-ID [0]*(128)
IPv6 SA(128)

e.g;
TE-path,VPN/APNs,
Service-chain,etc.,

IPv6 DA(128)

VPN Label (20)
LSP Label (20)SMAC (48)
DMAC (48)*Exist in Segment Routing Extension Header (SRH)

What if SRv6 Becomes An Alternative of GTP-U Tunnel?
• Well fragmented to RAN, EPC and SGi.
• Per-session tunnel creation and handling.
• Non-optimal data-path.
• IPv6 integrates networks of the mobile and others.
• A SID represents data-plane role and function.
Access Node(eNode-B)
Access Node(eNode-B)

L2 Anchor Node(Serving Gateway)

L2 Anchor Node(Serving Gateway)

L3 Anchor Node
(Packet Data Network Gateway)

L3 Anchor Node
(Packet Data Network Gateway)

SRv6 SIDs
GTP Tunnel

GTP Tunnel

RAN

EPC

IPv4IPv4

SRv6 Network

Single UPF in GTP-U Case
SMFgNB
N3UPF
N6Internet,Service network

IPv6 or SRv6 node

Anchor type UPF nodeMultiple UPFs in GTP-U Case (1)
SMF

gNB
N3UPF

N9UPF

N9UPF

IPv6 or SRv6 node

UPF
N9UPF
N9N6Anchor type UPF nodeService function type UPF nodeMultiple UPFs in GTP-U Case (2)
SMF

gNB
N3UPF

N9UPF

N9UPF

IPv6 or SRv6 node

UPF
N9UPF
N9N6Anchor type UPF nodeService function type UPF nodeMultiple UPFs in An SRv6 Case (1)SMF

N9N9UPFUPF
N9IPv6 or SRv6 node

UPF
N9N6SID

UPF

SID

N3UPF

SID

gNB

Anchor type UPF nodeService function type UPF nodeMultiple UPFs in An SRv6 Case (2)
SMF

UPF

SI
DIPv6 or SRv6 node

N9N6SI
DN9SI
DN9UPFSI
DUPF

SI
DN9UPFSI
DN3UPFSI
DgNB

Anchor type UPF nodeService function type UPF nodeE2E Mobile Orchestration with SRv6
• Data-plane nodes are NOT dedicated to specific roles.
-> SID represents each data-plane role.

• Orchestrator puts SIDs to the nodes with its functions-> It requires some data models to instantiate the data-plane
SMF
Orchestrator/Controller
UL:T.Insert
DL:END.X

UL:END.T
DL:T.Insert

SRv6 NetworkInternet,
Service network

Data Model for Mobile Orchestration with SRv6
Tenant A
gNB#1aAbstracted
Tenants/Slices
NWon
Orchestrators

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
UPF#1aTenant X

UPF#1xSlice1aUPF#1ySlice1x
gNB#2aUPF#2agNB#NaUPF#NaSlice2a

UPF#2x

UPF#2ySlice2x

UPF#NyUPF#NxSliceNa

SliceNx

SMF
Orchestrator/Controller
UL:T.Insert
DL:END.X

UL:END.T
DL:T.Insert

SRv6 Network
Internet,
Service network

Data Model for Mobile Orchestration with SRv6Tenant A
gNB#1aAbstracted
Tenants/Slices
NWon
Orchestrators

Slice1aSlice2a・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
UPF#1aTenant X

UPF#1xUPF#1yietf-dmm-fpc.yang

UPF#2ySlice1x

gNB#2aUPF#2agNB#NaUPF#NaUPF#2xSlice2x

UPF#NyUPF#NxSliceNa

SliceNx

SMF
Orchestrator/Controller
UL:T.Insert
DL:END.X

UL:END.T
DL:T.Insert

SRv6 NetworkInternet,
Service network

Summary• SRv6 is expected to make mobile network to be:• Simple to operate in E2E basis.
• Flexible where to deploy various functions.

• SID Functions for mobile data-plane represent:• Access point, L2 Anchor, and L3 Anchor node.
• Interworking node in stateless manner with some new SRv6 function andparameters.

• Basic Mode vs. Aggregate Mode
• Basic mode works with existing c-plane protocol with no impact.
• Stateless interwork function enables interworking to existing RAN/EPC with noimpact.
• Aggregate mode introduces advanced features of SRv6 to seamless deployment
which are service chain, VPNs, TE etc,. with mobility management.

Feedbacks after IETF99/CT4#79• Many people asked: System Impacts?
• To current control-plane protocol.
• To current RAN.
• People really care degree of system impact to change U-plane protocol from currentone.

• Benefits?
• What is able to do with SRv6?
• Isn’t that possible with current u-plane protocol?
• Isn’t SRv6 just another tunneling protocol?

Updates to v03: Answer to the Feedback• Introduces “Basic Mode” User-Plane• (It is supposed) No impact to control-plane, but no advanced SRv6 features in there.
• Operator is able to gradually migrate from basic to more advanced mode.

• Introduces an Use Case “Stateless Interworking with Legacy Access”• (It is supposed) No impact to current RAN in control-plane.

• Introduces “Aggregate Mode” User-Plane• Benefits seamless deployment of service-chain, VPNs and TE within the mobile user-plane• Complicated? Mobile control-plane can focus to only manage mobility and keep simple.
• Implementing other service policies to the user-plane can be done by separate systems.
• Complicate text? May need to find concise way to describe the procedures.

So please review

Leveraging Current Control-Plane
MAG/LMA/SGW/PGW/eNB
Control-Plane Message
 Tunnel endpoint Address (A::)
 Tunnel Identifier(0x12345678)
SL=1
SID[1]=
A::1234:5678

SRH

DA=A::1234:5678

 Tunnel endpoint Address (A::)
 Tunnel Identifier(0x12345678)
User-Plane
EntitySID[0]=D::

PayloadControl-Plane
Entity SID: A::1234:5678
SA=S::

FIB table

Payload

DA=D::

SA=S::

Stateless Interworking with Legacy Networks
PayloadDAv6

SAv6

TunnelheaderTun-ID

IPv4header

DAv4

SAv4

Internet,Service networkExisting
IPv4 NetworkIPv6header

SRHPayload

SID[0]=DAv6
SID[1]=IWv6IWv6SAv6Internet,Service network

SRv6 Enabled
IPv6NetworkLocator

DAv4SAv4

Tun-ID

128-a-b-cabc

Updates to v03: Technical Progress• Introduces New SRv6 Functions: “End.TM” and “T.Tmap”• To support Stateless Interworking with legacy user-plane with some parameters.

End.TM(Endpoint function with encaps
for mapped tunnel)

SRv6 -> Legacy

T.Tmap(Transit behavior with decapstunnel and map SRv6 policy)

Legacy-> SRv6

Work in Progress• QoS and Accounting• Enables SID to represent QoS and accounting policy.

• E2E SR and Network Slicing• Enables Apps running on MN be able to designate slices.

• IPv4 Support• Carries IPv4 user packets.
• Many IPv6 transition solutions make it can be considered as an user application on IPv6.
• MAP-E(RFC7597), MAP-T(RFC7599), 464XLAT(RFC6877) and DS-Lite(RFC6333).

• Collaborations• IETF DMM(Distributed Mobility Management) WG has issued an adoption call to the I-D.
• 3GPP CT4 to initiate study work of user-plane protocol.

Basic ModeUplink

Downlink

Access Point

T.Insert

End.X

L2 Anchor NodeEnd.B6

End.B6

L3 Anchor Node

End.T

T.Insert

Access Node(eNode-B)
UplinkL2 Anchor Node(Serving Gateway)

L3 Anchor Node(Packet Data Network Gateway)

SRv6 SIDs

Downlink

Internet,
Service network

IPv6 Network* SRv6 Network Programming

Basic Mode User-Plane Flows (Uplink)
IPv6 Network

A1::1

S::

A3::1

D::
Internet,
Service network

MN

SA=S::
IPv6Header

A2::1

DA=D::
NH=TCP
PayloadCN

Basic Mode User-Plane Flows (Uplink)
IPv6 Network

A1::1

S::

A2::1

T.Insert

SA=S::

SA=S::

DA=D::DA=A2::1

NH=TCP

NH=SRH(43)SL=1Payload

SRH

D::Internet,
Service network

MN

IPv6Header

A3::1

SID[0]=D::
SID[1]=A2::1Payload

CNBasic Mode User-Plane Flows (Uplink)
IPv6 Network

A1::1

S::

A2::1

A3::1
Internet,
Service network

MN
T.Insert

IPv6
HeaderEnd.B6

SA=S::

SA=S::

SA=S::

DA=D::

DA=A2::1

DA=A3::1

NH=TCP

NH=SRH(43)NH=SRH(43)SL=1Payload

SRH

D::

SID[0]=D::

SRH

SID[1]=A2::1

SID[0]=A3::1

SL=1
SRH

Payload

SL=0

SID[0]=D::
SID[1]=A2::1Payload

CNBasic Mode User-Plane Flows (Uplink)
IPv6 Network

A1::1

S::

A2::1

A3::1Internet,
Service network

MN
T.Insert

IPv6Header

End.T
w/ PSP

End.B6

SA=S::

SA=S::

SA=S::

DA=D::

DA=A2::1

DA=A3::1

NH=TCP

NH=SRH(43)NH=SRH(43)SL=1PayloadSRH

D::

SID[0]=D::

SRH

SID[1]=A2::1

PayloadIPv6Header

DA=D::
NH=TCP

SL=0
SID[0]=A3::1

SL=1
SRH

SA=S::

SID[0]=D::
SID[1]=A2::1

Payload

PayloadCN

Basic Mode User-Plane Flows (Uplink)
IPv6 Network

A1::1S::

A2::1

A3::1
Internet,
Service network

MN
T.Insert

IPv6Header

End.Tw/ PSP

End.B6w/ PSP

SA=S::

SA=S::

SA=S::

DA=D::

DA=A2::1

DA=A3::1

NH=TCP

NH=SRH(43)NH=SRH(43)

SL=1

SL=1

PayloadSRH

D::

SID[0]=D::

SRH

SID[0]=D::

SID[1]=A2::1

SID[1]=A2::1

Payload

Payload

SA=S::
IPv6Header

DA=D::
NH=TCP
PayloadCN

Basic Mode User-Plane Flows (Downlink)
IPv6 Network
S::

A1::1

A2::2

A3::1

D::
Internet,
Service network

MN

SA=D::
IPv6Header

DA=S::
NH=TCPPayload

CNBasic Mode User-Plane Flows (Downlink)
IPv6 Network
S::

A1::1

A2::2

A3::1
Internet,
Service network

MN
T.Insert

SA=D::
DA=A2::2
NH=SRH(43)D::

SA=D::
IPv6Header

DA=S::
NH=TCP

SL=1
SRH

SID[0]=D::
SID[1]=A2::2

Payload

PayloadCN

Basic Mode User-Plane Flows (Downlink)
IPv6 Network
S::

A1::1

A2::2

A3::1
Internet,
Service network

MN
End.B6w/ PSP

SRH

T.Insert

SA=D::

SA=D::

DA=A1::1

DA=A2::2

NH=SRH(43)NH=SRH(43)

SL=1

SL=1

SID[0]=D::

SRH

SID[0]=D::

SID[1]=A2::2

SID[1]=A2::2Payload

PayloadD::

SA=D::
IPv6
Header

DA=S::
NH=TCP
PayloadCN

Basic Mode User-Plane Flows (Downlink)
IPv6 Network

A1::1

S::

A2::2

A3::1
Internet,
Service network

MN
End.X
w/ PSP

IPv6
HeaderEnd.B6w/ PSP

T.Insert

SA=S::

SA=D::

SA=D::

DA=D::

DA=A1::1

DA=A2::2

NH=TCP

NH=SRH(43)NH=SRH(43)

SL=1

SL=1

PayloadSRH

SID[0]=D::

SRH

SID[0]=D::

SID[1]=A2::2

SID[1]=A2::2

Payload

PayloadD::

SA=D::
IPv6Header

DA=S::
NH=TCP
Payload

CNSRv6 for Network Slicing• A set of SIDs represents Network Slice.

-> Sharing same prefix among SIDs in a slice would work.

• Then user packets could also indicate Slices by SID.
-> Applications in a MN could be able to use SID to do that.
Slice SID
payloadSRH

IPv6headerDASA

SID set of NetSlice-C
SID set of NetSlice-B
SID set of NetSlice-A

SRv6 Network

Contents for
NetSlice-C
Contents for
NetSlice-B
Contents forNetSlice-A

References• IPv6 Segment Routing Header (SRH)• draft-ietf-6man-segment-routing-header• SRv6 Network Programming• draft-filsfils-spring-srv6-network-programming• ietf-dmm-fpc.yang• A SDO neutral mobile data-plane model as a part of the FPC work in IETF
DMM working group.
• draft-ietf-dmm-fpc-cpdp