Patent Description:
The 3GPP has defined the Control Plane and User Plane Separation (CUPS) architecture, where Control Plane (CP) (e.g., PGW-C or SMF) can allocate the IP Address to the User Equipment (UE) Packet Data Unit (PDU) Session. When CP allocates an Internet Protocol (IP) Address to a UE PDU Session, it sends the same to the UPF in the Packet Forwarding Control Protocol (PFCP) Message. In such a case, the CP can have a local IP Pool from which it can allocate the IP Address or use Dynamic Host Configuration Protocol (DHCP) procedure to get the IP Address from external IP Pool (sequential range of IP addresses). The IP Pool are configured with IP Addresses in block of routes. For example, in IPv4 IP Address scheme, the blocks can be of varying size via routing protocol such as iBGP, eBGP towards the upstream router. Advertisement of /<NUM> routes leads to bloating of the Routing information based on the routers implementing the lookup and subsequent routing of Downlink (DL) packets time consuming.

The User Plane (UP), e.g., Packet Gate Way-User (PGW-U) or User Plane Function (UPF), has to inform the next hop router about the routes to be used, e.g., Internal Border Gateway Protocol (iBGP) or External Border Gateway Protocol (eBGP) or some other protocol, so that the downlink packets can be sent to the correct UPF by the next hop router. In the present disclosure, the terms UP, UPF and UP node will be used interchangeably.

<FIG> shows the CP and UP interworking with a router as the next hop. The CP <NUM> (which can encompass, e.g., PGW-C or Session Management Function (SMF)) is connected with two user plane nodes (UP1 <NUM> and UP2 <NUM>), and two UEs are connected with the user plane nodes, i.e., UE1 <NUM> is connected with UP1 <NUM>, and UE2 <NUM> is connected with UP2 <NUM>. The user plane traffic of both UE1 <NUM> and UE2 <NUM> goes through a router <NUM> to the internet service <NUM>.

When UE IP Address is allocated by the CP, the downlink traffic (i.e., the traffic coming from the internet service <NUM> towards a selected UE) routing creates a challenge, as the router <NUM> does not know whether it has to route to UP1 or UP2, in the absence of such information provided to the router. More specifically, the router <NUM> cannot route the downlink traffic to the correct UP, unless the router <NUM> is aware of the UE address or IP Pool details to which the UE address belongs.

In addition, during the process of UP path failure and recovery of the UP, the IP Pool allocated by the CP is to be retrieved again by the standby UP node and propagated to the next hop router, so that the downlink packets can be routed to the correct UP. The IP pools allocated by the CP are not stored at the UP node in persistent memory, because in the course of the UP path failure and recovery of the UP, the IP pools may be reallocated to some other UP.

Furthermore, during the TCP connection reset handling between the UP and the router, the IP pools are to be retrieved again from the CP and propagated to the next hop router, so that the downlink packets can be routed to the correct UP. In the scenario in which the CP allocates the IP Pools and traffic routing is done at the UP, the downlink traffic routing poses a challenge. In addition, in the scenario involving the UP path failure and recovery of the UP, where the routes are not in the persistent storage at the UP, fetching and providing the route to the next hop router for correct downlink packet routing to the updated UP poses a challenge. Proposals for UE IP address management by allocating the UE IP address management function to the control plane function of the PGW are provided by the following documents: i) <NPL>; XP051072003; and ii) <NPL>. iii) <NPL> However, the above-mentioned issues are not solved. Therefore, there is a need to provide solutions to these issues.

The present invention relates to a method and a system as claimed in the annexed claims. In accordance with the invention, in the case when the CP is allocating the IP pools and data traffic routing is done at the UP, a method is provided for obtaining the IP pool blocks and providing them to the next hop router for the correct packet routing. During the start or update of the CP-UP association, the CP sends the routes to be used to the UP in an information element (IE), e.g., a vendor-specific IE.

In accordance with the invention, during the update of the CP-UP association, the CP can decide to remove certain routes to be used by the UP (e.g., in a vendor-specific IE). An Association Update Request is sent by the CP to the UP, which Association Update Request includes, e.g., Route Aggregation IE, which in turn contains an Action IE (in this example, DELETE) and APN/DNN Route Aggregation IE. The APN/DNN Route Aggregation IE contains the field "IP Pool Route Aggregation" (the routes to be deleted by the UP).

According to an example embodiment of the present disclosure, during the UP path failure and recovery, when the standby UP takes over after the UP path failure and recovery, the standby UP shall send an Association Update Request to obtain the route(s). An Association Update Request is sent by the UP to the CP, which Association Update Request includes, e.g., Route Aggregation IE. In response, the CP sends the Association Update Response with Route Aggregation IE containing the Action IE (ADD) and APN/DNN Route Aggregation IE containing the field "IP Pool Route Aggregation" (the routes to be used by the UP.

According to an example embodiment of the present disclosure, in a scenario involving a reset of the Transmission Control Protocol (TCP) connection between a router and the UP, in order to handle this reset, the UP shall fetch the routes from the respective CP and install the routes to the next hop router.

In accordance with the invention, in the case when the CP is allocating the IP pools and traffic routing is done at the UP, a solution is provided for obtaining the IP pool blocks and providing them to the next hop router for the correct packet routing. As shown in <FIG>, during the start or update of the CP-UP association, the CP <NUM> shall send the routes to be used to the UP <NUM> in an information element (IE), e.g., a vendor-specific IE. As referenced by <NUM>, the "first request for the Sub IP Pool" is done at the CP <NUM>, i.e., the CP executes a procedure in which it allocates the first IP address from an unused sub IP Pool to a UE while allocating it to a Packet Data Unit (PDU) session. Next, as shown in the block <NUM>, an Association Setup Request or Association Update Request is sent by the CP <NUM> to the UP <NUM>, which Association Setup Request or Association Update Request includes the following: node ID; and Route Aggregation IE. The Route Aggregation IE in turn contains and Action IE (in this example, ADD) and ACCESS POINT NAME (APN)/DATA NETWORK NAME (DNN) Route Aggregation IE. The APN/DNN Route Aggregation IE contains the field "IP Pool Route Aggregation" (the routes to be used by the UP <NUM>). Next, as shown in the block <NUM>, UP <NUM> sends a Border Gateway Protocol (BGP) Update message to the next hop router (e.g., on N6 interface), which BGP Update message contains the route received in IP Pool Route Aggregation field. Subsequently, as shown in the block <NUM>, the UP <NUM> sends an association setup/update response to the CP <NUM>. As shown in <FIG>, the CP <NUM> is sending the Route Aggregation IE to ADD a route, which is an operation unsolicited by the UP <NUM>.

<FIG> shows an example signal flow diagram of route-deletion initiated by the CP. During the update of the Association, the CP can decide to remove certain routes to be used by the UP (e.g., in a vendor-specific IE). As referenced by <NUM>, the CP <NUM> wants to delete one or more specified routes belonging to a given pool. Next, as shown in the block <NUM>, an Association Update Request is sent by the CP <NUM> to the UP <NUM>, which Association Update Request includes the following: node ID; and Route Aggregation IE. The Route Aggregation IE in turn contains an Action IE (in this example, DELETE) and APN/DNN Route Aggregation IE. The APN/DNN Route Aggregation IE contains the field "IP Pool Route Aggregation" (the routes to be deleted by the UP <NUM>). Next, as shown in the block <NUM>, UP <NUM> sends a Border Gateway Protocol (BGP) Delete message to the next hop router, which BGP Delete message is BGP Update message with Withdrawn Routes field containing the route received in IP Pool Route Aggregation field. Subsequently, as shown in the block <NUM>, the UP <NUM> sends an Association Update Response to the CP <NUM>. As shown in <FIG>, the CP <NUM> is sending the Route Aggregation IE to DELETE a route, which is an operation unsolicited by the UP <NUM>.

In this section, previously mentioned Route Aggregation IE will be discussed in greater detail. As mentioned in connection with <FIG> and <FIG>, the UP <NUM> receives from the CP <NUM> indication of the relevant routes in a Route Aggregation IEs, e.g., vendor-specific IEs. In the Route Aggregation IE, the specific Action shall be encoded as an integer, i.e., allowed values are: ADD=<NUM>; DELETE=<NUM>; and GET=<NUM>. Number of APN/DNN Route Aggregation Information shall be encoded as an integer, i.e., allowed values are <NUM>-<NUM>. This shall be equal to the number of APN/DNN Route Aggregation Information IE in the message. It should be noted that the value <NUM> is used when there is no APN/DNN Route Aggregation Information IE in the message for the Action ADD or DELETE.

APN/DNN Route Aggregation IE shall be specified by including: Network Instance IE; Number of IP Pool Route Aggregation; and IP Pool Route Aggregation IE. Network Instance IE field shall be encoded as 3GPP-defined Network Instance IE (type <NUM>), and it shall contain Network Identifier (NI) and Operator Identifier (OI) field (i.e., APN/DNN Name) and will be provided as a string. Number of IP Pool Route Aggregation shall be encoded as an integer, i.e., allowed values are <NUM>-<NUM>. This shall be the number of IP Pool Route Aggregation IE in the message, which IP Pool Route Aggregation IE can be a vendor-specific IE. IP Pool Route Aggregation IE shall be specified by: IP Pool Route Aggregation shall be encoded as an OctetString. As an example, IP Pool Route Aggregation can be encoded <NUM>. <NUM>/<NUM>.

According to an example embodiment of the present disclosure, during the UP path failure and recovery, when the standby UP takes over after the UP path failure and recovery, the standby UP shall send an Association Update Request to obtain the route(s). <FIG> shows an example signal flow diagram for this scenario. As referenced by <NUM>, the standby UP 2002a (that has taken over after the UP path failure and recovery) wants to obtain the route. As shown in the block <NUM>, an Association Update Request is sent by the UP 2002a to the CP <NUM>, which Association Update Request includes the following: node ID; and Route Aggregation IE containing the Action IE (in this example, GET). In response, as shown in the block <NUM>, the CP <NUM> sends the Association Update Response with Route Aggregation IE containing the Action IE (ADD) and APN/DNN Route Aggregation IE. The APN/DNN Route Aggregation IE contains the field "IP Pool Route Aggregation" (the routes to be used by the UP 2002a). If there are no routes, then the CP <NUM> shall send the Association Update Response with no Route Aggregation IE. The existing session shall not be impacted due to failure of Association Update Request. Upon receiving the routes, the UP 2002a sends a Border Gateway Protocol (BGP) Update message to the next hop router (as shown in the block <NUM>), which BGP Update message contains the route received in IP Pool Route Aggregation field.

According to an example embodiment of the present disclosure, in a scenario involving a reset of the Transmission Control Protocol (TCP) connection between a router and the UP, in order to handle this reset, the UP shall fetch the routes from the respective CP and install the routes to the next hop router. This example scenario is illustrated in <FIG>, which shows two CPs (CP-<NUM>2001a, and CP-<NUM>2001b), to which the UP <NUM> is connected, and Router <NUM> is connected to the UP <NUM>. As shown at <NUM>, a BGP TCP connection with Router <NUM> restarts, and the UP <NUM> or the Router <NUM> initiates the BGP Open message (as shown at <NUM>). Next, as shown at the blocks 503a and 503b, the UP <NUM> sends the Packet Forwarding Control Protocol (PFCP) Association Update Request containing Node ID and Route Aggregation IE (which in turn contains IP Pool Action=GET) to CP-<NUM>2001b (as shown in block 503a) and CP-<NUM>2001a (as shown in block 503b) with which the UP <NUM> has the Setup. In response, the CP-<NUM>2001b and CP-<NUM>2001a send (in blocks 504a and 504b, respectively) the respective PFCP Association Update Response containing the Route Aggregation IE (which in turn contains Action IE (ADD) and APN/DNN Route Aggregation IE) to the to the UP <NUM> if there are routes association for the given UP <NUM>. The Response shall not contain any Route Aggregation IE in the case there are no routes to be advertised for the UP <NUM>. Next, as shown at <NUM>, the UP <NUM> sends the BGP Update message to the Router <NUM> for the route updates.

In summary, in accordance with an example embodiment of the present disclosure, in the case when CP is allocating the IP Pools and traffic routing is done at the UP, thereby presenting a challenge in the downlink traffic routing, the example embodiment solves the issue of obtaining the IP Pool blocks and providing it to the next hop router for the correct packet routing. In accordance with an example embodiment of the present disclosure, in the case of the UP path failure and recovery of the UP, where the routes are not in the persistent storage at the UP, the IP Pool allocated by the CP is to be retrieved again by the standby UP and propagated to the next hop router, so that the downlink packets can be routed to the correct UP.

An example method of route aggregation handling for 3rd Generation Partnership Project (3GPP) Control Plane and User Plane Separation (CUPS) architecture comprises: allocating, by a Control Plane (CP) node, an Internet Protocol (IP) Address from an IP pool to a selected User Equipment (UE) for a Packet Data Unit (PDU) session; performing, by a User Plane (UP) node, data traffic routing between an internet service provider (ISP) and the UE; and sending, by the CP node to the UP node during one of a start or update of an association between the CP node and the UP node, one of: i) transmission routes to be used for the data traffic routing between the ISP and the UE; or ii) transmission routes to be deleted for the data traffic routing between the ISP and the UE. The transmission routes to be used (or alternatively, deleted) are provided by the CP node in a route aggregation information element within one of an association setup request or an association update request sent to the UP node.

Claim 1:
A method of route aggregation handling for 3rd Generation Partnership Project, 3GPP, Control Plane and User Plane Separation, CUPS, architecture, comprising:
allocating (<NUM>), by a Control Plane, CP, node (<NUM>), an Internet Protocol, IP, Address from an IP pool to a selected User Equipment, UE, for a Packet Data Unit, PDU, session, the IP pool being configured with IP pool blocks comprising routes for packet routing;
performing, by a User Plane, UP, node (<NUM>), data traffic routing between an internet service provider, ISP, and the UE using routes from the IP pool; and
sending (<NUM>), by the CP node to the UP node, as part of one of an association setup request or an association update request during one of a start or update of an association between the CP node and the UP node, one of:
i) transmission routes in the IP pool to be used for the data traffic routing between the ISP and the UE, wherein the transmission routes to be used are provided by the CP node in a route aggregation information element within the one of the association setup request or the association update request sent to the UP node; or
ii) transmission routes to be deleted from the IP pool for the data traffic routing between the ISP and the UE, wherein the transmission routes to be deleted are provided by the CP node in a vendor-specific Information Element, IE, within the one of the association setup request or the association update request sent to the UP node,
wherein the transmission routes to be used by the UP are contained in an IP pool Aggregation field within said vendor-specific IE
further comprising:
sending, by the UP node to a next hop router, a Border Gateway Protocol, BGP, Update message containing the IP pool Route Aggregation field.