Internet DRAFT - draft-defoy-coinrg-p4-by-tenants-in-mobile-nw

draft-defoy-coinrg-p4-by-tenants-in-mobile-nw







Network Working Group                                          X. de Foy
Internet-Draft                          InterDigital Communications, LLC
Intended status: Informational                               27 May 2021
Expires: 28 November 2021


  Use Case for P4 Programmability by Tenants of Future Mobile Virtual
                                Networks
            draft-defoy-coinrg-p4-by-tenants-in-mobile-nw-00

Abstract

   Support for multi-tenancy has been the subject of recent work on P4
   switch programming.  This draft further describes a potential use
   case where a tenant programs a virtual network built over a mobile
   network, and discusses related requirements.  The use case is based
   on the existing 5GLAN feature, since it is a well documented virtual
   network architecture supported by 5G.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 28 November 2021.

Copyright Notice

   Copyright (c) 2021 IETF Trust and the persons identified as the
   document authors.  All rights reserved.











de Foy                  Expires 28 November 2021                [Page 1]

Internet-Draft        P4 for Mobile Networks Users              May 2021


   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Simplified BSD License text
   as described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  A Use Case for Programmability of 5GLANs, by Tenants  . . . .   3
   3.  Requirements for Mobile Network Programming by Tenants  . . .   6
   4.  Informative References  . . . . . . . . . . . . . . . . . . .   7
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   In the context of data centers, it has been shown that P4 programs
   provided by tenants could be used to program and control virtual
   network instances [Stoyanov].  This could be extended to virtual
   networks provided by 5G or future mobile networks.  This document
   discusses such a use case, using 5GLAN as a baseline, since this
   recent 5G feature has a well documented architecture.  However, this
   type of feature is NOT currently planned in 3GPP, it is explored here
   as a possible future evolution.

   As part of its improving integration with other networks, the 5G
   network has now the ability to provide LAN-like connectivity between
   5G devices.  This "5GLAN" feature provides a virtual LAN service
   between devices which are members of a configured group.  Section 5.1
   of [I-D.ravi-icnrg-5gc-icn] provides a description of the 5G network
   functions and interfaces relevant to 5GLAN, which are otherwise
   specified in [TS23.501] and [TS23.502].  From the 5GLAN service
   customer standpoint, the 5G network operates as a switch.

   However, today network operators do not have the option to use
   network programming (such as P4) to program 5GLANs, as they could for
   fixed network switches.  A form of network programming would
   nevertheless help to cope with the ever-increasing complexity of the
   5G network and its future evolutions.  It would also help further
   integrating mobile networks, as a piece of infrastructure, with other
   home, enterprise and data center networks.







de Foy                  Expires 28 November 2021                [Page 2]

Internet-Draft        P4 for Mobile Networks Users              May 2021


   In this document we describe a use case for P4 programming of 5GLANs
   by tenants in Section 2.  An expected outcome of this work is a list
   of requirements initiated in Section 3.  This document is also part
   of a larger effort to gather use cases related to computing in the
   network, that is documented in [I-D.irtf-coinrg-use-cases].

2.  A Use Case for Programmability of 5GLANs, by Tenants

   In the use case depicted in Figure 1, a 5G customer operates a
   network including a 5GLAN network segment (seen as a single logical
   switch), as well as fixed segments.  This can be in a plant or
   enterprise network, using for an example a 5G Non-Public Network
   (NPN).  The customer uses P4 programs to determine the operation of
   the fixed and 5GLAN switches.  The customer provisions a 5GLAN P4
   program into the mobile network, and can also operate a controller.

   In Figure 1, the mobile devices (or User Equipment nodes) UE1, UE2,
   UE3 and UE4 are in the same 5GLAN, as well as Device1 and Device2
   (through UE4).
































de Foy                  Expires 28 November 2021                [Page 3]

Internet-Draft        P4 for Mobile Networks Users              May 2021


                                           ..... Customer ......
                                P4 program :                   :
                                deployment :         Operation :
                                           V                   :
        +-----+  air interface +----------------+              :
        | UE1 +----------------+                |              :
        +-----+                |                |              :
                               |                |              :
        +-----+                |                |              V
        | UE2 +----------------+     5GLAN      |      +------------+
        +-----+                |    Logical     +------+ Controller |
                               |     Switch     |  P4  +-------+----+
        +-----+                |                |  runtime     |
        | UE3 +----------------+                |  API         |
        +-----+                |                |              |
                               |                |              |
        +-----+                |                |              |
      +-+ UE4 +----------------+                |              |
      | +-----+                +----------------+              |
      |                                                        |
      | Fixed or wireless connection                           |
      |                                    P4 runtime API      |
      |  +---------+           +-------------------------------+
      +--+ Device1 |           |
      |  +---------+           |
      |                        |
      |  +---------+    +------+-----+
      `--+ Device2 +----+ P4 Switch  +--->(fixed network)
         +---------+    +------------+

         Figure 1: Use Case for P4 Programming by a 5GLAN Customer

   Looking in more details in Figure 2, the 5GLAN P4 program can be
   split between multiple data plane nodes (PDU Session Anchor (PSA)
   User Plane Functions (UPF), other UPFs, or even mobile devices),
   although in some cases the P4 program may be hosted on a single node.
   In the most general case, a distributed deployment is useful to keep
   traffic on optimal paths, because, except in simple cases, within a
   5GLAN all traffic will not pass through a single node.

   In Figure 2, P4 programs could be deployed in UPF1, UPF2, UPF3, UE3
   and UE4.  In this example, UE1-UE2 traffic is using a local switch on
   PSA UPF1, UE1-UE3 traffic is tunneled between PSA UPF1 and PSA UPF2
   through the N19 interface, and UE1-UE4 traffic is forwarded through
   an external Data Network (DN).  Traffic between Device1 and Device2
   is forwarded through UE4.





de Foy                  Expires 28 November 2021                [Page 4]

Internet-Draft        P4 for Mobile Networks Users              May 2021


                            +-----+          +-----+      +------------+
                            | AMF |          | SMF |      | Controller |
                            +-+-+-+          +--+--+      +-----+------+
                             /  |               |             P4|
                  +---------+   |             N4|        Runtime|
             N1  /              |N2             |               V
         +------+               |               |     (all P4 programs*)
        /                       |               |
     +--+--+  air interface +---+-----+ N3 +-+--+----------+  N6  +----+
     | UE1 +----------------+  (R)AN  +----+   PSA UPF1*   +----->+    |
     +-----+                +---------+    +-+-------+-----+      |    |
        |                       |            |  |    |            |    |
     +--+--+                +---+-----+      |  |    |            |    |
     | UE2 +----------------+  (R)AN  +------'  |    | N19        | DN |
     +-----+                +---------+         |    |            |    |
        |                       |               |    |            |    |
     +--+--+                +---+-----+    +----+----+-----+      |    |
     | UE3*+----------------+  (R)AN  +----+    PSA UPF2*  +      |    |
     +-----+                +---------+    +---------+-----+      |    |
        |                       |               |    | N19        |    |
     +--+--+                +---+-----+    +----+----+-----+  N6  |    |
   +-+ UE4*+----------------+  (R)AN  +----+    PSA UPF3*  +----->+    |
   | +-----+                +---------+    +---------------+      +----+
   |
   | Fixed or wireless connection
   |
   |  +---------+
   +--+ Device1 |           (* indicates the presence of a P4 program)
   |  +---------+
   |
   |  +---------+    +------------+
   `--+ Device2 +----+ P4 Switch* +--->(fixed network)
      +---------+    +------------+

                         Figure 2: Use Case Details

   Rationale for using P4 programming by 5GLAN tenants include:

   *  A unified programming model can facilitate replacing between fixed
      and 5G technologies, as well as sharing controller, code and
      expertise.

   *  Making P4 (or equivalent) programming available to 5G customers
      can increase the level of customization available to them, when
      compared with typical configuration capabilities.






de Foy                  Expires 28 November 2021                [Page 5]

Internet-Draft        P4 for Mobile Networks Users              May 2021


   *  If P4 programs can influence the 5G service (e.g., request
      specific QoS for some flows), this increases the level of in-depth
      customization available to 5G customers.

   For example, a P4 5GLAN program could perform the following:

   *  Allow or block flows, and request rules from an SDN controller for
      each new flow, or for flows to/from specific hosts that needs
      enhanced security.

   *  Forward a copy of some flows towards a node for storage and
      analysis.

   *  Update counters based on specific sources/destinations or
      protocols, for detailed analytics.

   *  Associate traffic between specific endpoints, using specific
      protocols, or originated from a given application, to a given
      slice, while other traffic use a default slice.

   *  Experiment with a new routing protocol (e.g., ICN), using a P4
      implementation of a router for this protocol.  (This could use
      unstructured PDU sessions.)

   In the following section we discuss major requirements identified in
   this use case.

3.  Requirements for Mobile Network Programming by Tenants

   *  Splitting/Distribution: program logic can be applied exactly once
      or at least once per packet, while allowing optimal forwarding
      path by the 5G network.

      -  A 5GLAN P4 program may run on a single UPF on a simple setup,
         but will need to be split in larger setups.

      -  It could be possible to split the program manually (i.e., by
         the programmer based on a model), or automatically (which is
         studied in [I-D.hsingh-coinrg-reqs-p4comp] and [Sultana]).

   *  Multi-Tenancy Support: multiple P4 instances can run on the same
      5G network nodes.

      -  In [Stoyanov], tenant P4 programs can run within the control of
         a host P4 program.

   *  5G Network Awareness: a P4 program can be able to influence, and
      be influenced by, the 5G network service.



de Foy                  Expires 28 November 2021                [Page 6]

Internet-Draft        P4 for Mobile Networks Users              May 2021


      -  For example, a P4 program may be aware of the slice used by a
         flow, and possibly influence slice selection.

      -  Additionally, some information and actions may be available on
         some nodes and not others.  This can impose additional
         constraints on distributed P4 programs location.

   *  Mobility Support: program logic should be applied on all packets
      of a flow even if the source or destination(s) of the flow is
      relocated to another attachment point.

   *  Security: programs and networks should be protected against
      security risks, that include overuse or misuse of network
      resources, injection of traffic, access to unauthorized traffic.

4.  Informative References

   [I-D.hsingh-coinrg-reqs-p4comp]
              Singh, H. and M. Montpetit, "Requirements for P4 Program
              Splitting for Heterogeneous Network Nodes", Work in
              Progress, Internet-Draft, draft-hsingh-coinrg-reqs-p4comp-
              03, 18 February 2021, <https://www.ietf.org/archive/id/
              draft-hsingh-coinrg-reqs-p4comp-03.txt>.

   [I-D.irtf-coinrg-use-cases]
              Kunze, I., Wehrle, K., Trossen, D., and M. Montpetit, "Use
              Cases for In-Network Computing", Work in Progress,
              Internet-Draft, draft-irtf-coinrg-use-cases-00, 17
              February 2021, <https://www.ietf.org/archive/id/draft-
              irtf-coinrg-use-cases-00.txt>.

   [I-D.ravi-icnrg-5gc-icn]
              Ravindran, R., Suthar, P., Trossen, D., Wang, C., and G.
              White, "Enabling ICN in 3GPP's 5G NextGen Core
              Architecture", Work in Progress, Internet-Draft, draft-
              ravi-icnrg-5gc-icn-04, 31 May 2019,
              <https://www.ietf.org/archive/id/draft-ravi-icnrg-5gc-icn-
              04.txt>.

   [Stoyanov] Stoyanov, R. and N. Zilberman, "MTPSA: Multi-Tenant
              Programmable Switches", ACM P4 Workshop in Europe
              (EuroP4'20) , 2020,
              <https://eng.ox.ac.uk/media/6354/stoyanov2020mtpsa.pdf>.








de Foy                  Expires 28 November 2021                [Page 7]

Internet-Draft        P4 for Mobile Networks Users              May 2021


   [Sultana]  Sultana, N., Sonchack, J., Giesen, H., Pedisich, I., Han,
              Z., Shyamkumar, N., Burad, S., DeHon, A., and B.T. Loo,
              "Flightplan: Dataplane Disaggregation and Placement for P4
              Programs", 2020,
              <https://flightplan.cis.upenn.edu/flightplan.pdf>.

   [TS23.501] 501, 3gpp-23., "Technical Specification Group Services and
              System Aspects; System Architecture for the 5G System;
              Stage 2 (Rel.17)", 3GPP , 2021,
              <https://www.3gpp.org/DynaReport/23501.htm>.

   [TS23.502] 502, 3gpp-23., "Technical Specification Group Services and
              System Aspects; Procedures for the 5G System; Stage 2
              (Rel.17)", 3GPP , 2021,
              <https://www.3gpp.org/DynaReport/23502.htm>.

Author's Address

   Xavier de Foy
   InterDigital Communications, LLC
   1000 Sherbrooke West
   Montreal  H3A 3G4
   Canada

   Email: xavier.defoy@interdigital.com


























de Foy                  Expires 28 November 2021                [Page 8]