| User Plane Function (UPF) Network Configuration |
| =============================================== |
| |
| .. tip:: |
| See :doc:`User Plane Function (UPF) </advanced/upf>` to learn how UPF works in the |
| SD-Fabric project. |
| |
| The UPF configuration is split in two configurations, that can be provided independently to ONOS. |
| Th first is used to configure the UP4 ONOS application and defines UPF-related information |
| such as S1U Address, network devices implementing UPF etc. |
| The second one, instead, is used to configure parameters related to the Downlink |
| Buffering (DBUF) functionality. |
| |
| Here's a list of fields that you can configure via the UPF Network Configuration for UP4: |
| |
| * ``devices``: A list of devices IDs that implements the UPF data plane. This list |
| must include all the leaf switches in the topology. |
| The UPF state is replicated on all devices specified in this configuration field. |
| The devices specified in this list must use a P4 pipeline implementing the UPF functionality. *Required* |
| |
| * ``s1uAddr``: The IP address of the S1-U interface (equivalent to N3 for 5G). |
| It can be an arbitrary IP address. *Required* |
| |
| * ``uePools``: A list of subnets that are in use by the UEs. *Required* |
| |
| * ``dbufDrainAddr``: The IP address of the UPF data plane interface that the DBUF |
| service will drain packets towards. *Optional* |
| |
| * ``pscEncapEnabled``: Set whether the UPF should use GTP-U extension PDU Session Container |
| when doing encapsulation of downlink packets. *Optional* |
| |
| * ``defaultQfi``: The default QoS Flow Identifier to use when the PDU Session Container |
| encapsulation is enabled. *Optional* |
| |
| Here is an example of netcfg for UP4: |
| |
| .. code-block:: json |
| |
| { |
| "apps": { |
| "org.omecproject.up4": { |
| "up4": { |
| "devices": [ |
| "device:leaf1", |
| "device:leaf2" |
| ], |
| "s1uAddr": "10.32.11.126", |
| "uePools": [ |
| "10.240.0.0/16" |
| ], |
| "dbufDrainAddr": "10.32.11.126", |
| "pscEncapEnabled": false, |
| "defaultQfi": 0 |
| } |
| } |
| } |
| } |
| |
| The DBUF configuration is all *Optional*, we can use UP4 without the downlink |
| buffering functionality. |
| Here's a list of fields that you can configure via the UPF Network Configuration for DBUF: |
| |
| * ``serviceAddr``: The address DBUF service management interface in the form IP:port. |
| This address is used to communicate with the DBUF service via gRPC (for example, to trigger |
| the drain operation, or receive notification for buffered packets). |
| |
| * ``dataplaneAddr``: The address of the DBUF service data plane interface in the form IP:port. |
| Packets sent to this address by the UPF will be buffered by DBUF. |
| The IP address must be a routable fabric address. |
| |
| Here is an example of netcfg for DBUF: |
| |
| .. code-block:: json |
| |
| { |
| "apps": { |
| "org.omecproject.up4": { |
| "dbuf": { |
| "serviceAddr": "10.76.28.72:10000", |
| "dataplaneAddr": "10.32.11.3:2152" |
| } |
| } |
| } |
| } |