Communication method, communication device and communication system
By using RDMA technology to transmit data in 5G networks, memory is accessed directly through RDMA links, which solves the bottleneck problem caused by mismatch between CPU and memory speed, and realizes data transmission with high throughput and low latency.
Patent Information
- Application Number
- CN202311806840.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-25
- Publication Date
- 2025-06-27
AI Technical Summary
In 5G networks, due to the mismatch between the CPU and memory speed during data transmission, the computer system has bottlenecks, which increases CPU overhead and cannot meet the service's demand for high throughput and low latency characteristics.
RDMA technology is used to transmit data, and memory is directly accessed through the RDMA link between the first device and the second device, reducing the data transmission process involving the CPU.
It reduces the CPU overhead of data transmission, improves the throughput and efficiency of data transmission, and meets the service's demand for high throughput and low latency.
Smart Images

Figure CN120224482A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless communication technologies, and in particular, to communication methods, communication devices, and communication systems. Background Art
[0002] In current 5th generation (5G) user plane data transmission, the data transmission method between different nodes requires a large amount of participation of a central processing unit (CPU) in the data transmission process. However, this data transmission scheme often suffers from the bottleneck problem of computer systems caused by the speed mismatch between the CPU and the memory, which is often referred to as the "memory wall". This is because the CPU speed is getting faster and faster, while the memory speed has not increased synchronously. The data transmission between the CPU and the memory takes time. When the CPU needs to read or write a large amount of data, it will wait for the memory, resulting in the CPU being unable to fully exert its computing power and affecting the overall performance of the computer system. This data transmission method that requires a large amount of CPU participation is also called the method of messaging passing through the kernel.
[0003] Since this data transmission method needs to pass through the kernel, there are high overheads for data movement and data replication. Moreover, this data transmission method may also fail to meet the requirements of some services for high throughput and low latency characteristics.
[0004] How to reduce the CPU overhead of data transmission in 5G networks or future networks and meet the requirements of services for high throughput and low latency characteristics remains to be solved. Summary of the Invention
[0005] This application provides a communication method, a communication device, and a communication system to reduce the CPU overhead of data transmission in 5G networks or future networks and meet the requirements of services for high throughput and low latency characteristics.
[0006] In a first aspect, an embodiment of this application provides a communication method, which can be executed by a first device or a module (such as a chip) of the first device. The method includes: receiving the RDMA link establishment information of the second device from the second device, and sending the RDMA link establishment information of the first device to the second device; establishing an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device.
[0007] In the above solution, applying the RDMA technology for data transmission in 5G networks or future communication networks can reduce the CPU overhead of data transmission and meet the requirements of services for high throughput and low latency characteristics.
[0008] In a possible implementation method, receiving the RDMA link establishment information of the second device from the second device and sending the RDMA link establishment information of the first device to the second device includes: receiving indication information for indicating data transmission in the RDMA manner; according to the indication information, sending an RDMA link establishment request to the second device, where the RDMA link establishment request includes the RDMA link establishment information of the first device; and receiving an RDMA link establishment response from the second device, where the RDMA link establishment response includes the RDMA link establishment information of the second device.
[0009] In the above solution, when the first device receives indication information for indicating data transmission in the RDMA manner, it sends an RDMA link establishment request to the second device according to the indication information to attempt to establish an RDMA link between the first device and the second device, which can achieve establishing an RDMA link based on requirements and helps save overhead.
[0010] In a possible implementation method, receiving the RDMA link establishment information of the second device from the second device and sending the RDMA link establishment information of the first device to the second device includes: receiving an RDMA link establishment request from the second device, where the RDMA link establishment request includes the RDMA link establishment information of the second device; and sending an RDMA link establishment response to the second device, where the RDMA link establishment response includes the RDMA link establishment information of the first device.
[0011] In a possible implementation method, the first device is an access network device and the second device is a user plane network element; receiving the RDMA link establishment information of the second device from the second device includes: receiving the RDMA link establishment information of the second device through the interface between the first device and the second device; or receiving the RDMA link establishment information of the second device through the interface between the first device and the mobility management network element, where the RDMA link establishment information of the second device is sent by the second device to the mobility management network element through the session management network element.
[0012] In the above solution, establishing an RDMA link between the access network device and the user plane network element can reduce the CPU overhead for data transmission between the access network device and the user plane network element.
[0013] In a possible implementation method, the user plane network element is an uplink shunt user plane network element or a fork point user plane network element.
[0014] In a possible implementation method, the first device is an access network device, and the second device is a mobility management network element; receiving the RDMA link establishment information of the second device from the second device includes: receiving the RDMA link establishment information of the second device through an interface between the first device and the second device.
[0015] In the above solution, establishing an RDMA link between the access network device and the mobility management network element can reduce the CPU overhead for data transmission between the access network device and the mobility management network element.
[0016] In a possible implementation method, the first device is a user plane network element, and the second device is an access network device; sending the RDMA link establishment information of the first device to the second device includes: sending the RDMA link establishment information of the first device through an interface between the first device and the second device; or sending the RDMA link establishment information of the first device through an interface between the first device and a session management network element, and the RDMA link establishment information of the first device is sent to the second device by the session management network element through the mobility management network element.
[0017] In the above solution, establishing an RDMA link between the access network device and the user plane network element can reduce the CPU overhead for data transmission between the access network device and the user plane network element.
[0018] In a possible implementation method, the user plane network element is an uplink shunt user plane network element or a fork point user plane network element; the method further includes: sending the RDMA link establishment information of the first device to an anchor user plane network element, and receiving the RDMA link establishment information of the anchor user plane network element from the anchor user plane network element; establishing an RDMA link between the anchor user plane network element and the first device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the anchor user plane network element.
[0019] In a possible implementation method, the first device is a mobility management network element, and the second device is an access network device or a session management network element; sending the RDMA link establishment information of the first device to the second device includes: sending the RDMA link establishment information of the first device through an interface between the first device and the second device.
[0020] In the above solution, establishing an RDMA link between the mobility management network element and the access network device or the session management network element can reduce the CPU overhead for data transmission between the mobility management network element and the access network device or the session management network element.
[0021] In a possible implementation method, receiving the RDMA link establishment information of the second device from the second device and sending the RDMA link establishment information of the first device to the second device includes: in the session establishment or modification process, receiving the RDMA link establishment information of the second device from the second device and sending the RDMA link establishment information of the first device to the second device.
[0022] In a possible implementation method, the method further includes: receiving the RDMA link disconnection information of the second device from the second device and sending the RDMA link disconnection information of the first device to the second device; disconnecting the RDMA link between the first device and the second device according to the RDMA link disconnection information of the first device and the RDMA link disconnection information of the second device.
[0023] In the above solution, when the RDMA link is not needed, releasing the RDMA link can save resources.
[0024] In a possible implementation method, receiving the RDMA link disconnection information of the second device from the second device and sending the RDMA link disconnection information of the first device to the second device includes: receiving an RDMA link disconnection request from the second device, where the RDMA link disconnection request includes the RDMA link disconnection information of the second device; sending an RDMA link disconnection response to the second device, where the RDMA link disconnection response includes the RDMA link disconnection information of the first device.
[0025] In a possible implementation method, the method further includes: judging whether to allow disconnecting the RDMA link between the first device and the second device according to the RDMA link disconnection information of the first device; the sending the RDMA link disconnection response to the second device includes: in the case of allowing disconnecting the RDMA link between the first device and the second device, sending the RDMA link disconnection response to the second device.
[0026] In a possible implementation method, receiving the RDMA link disconnection information of the second device from the second device and sending the RDMA link disconnection information of the first device to the second device includes: sending an RDMA link disconnection request to the second device, where the RDMA link disconnection request includes the RDMA link disconnection information of the first device; receiving an RDMA link disconnection response from the second device, where the RDMA link disconnection response includes the RDMA link disconnection information of the second device.
[0027] In a second aspect, an embodiment of the present application provides a communication method, which can be executed by a third device or a module (such as a chip) of the third device. The method includes: determining to establish an RDMA link; and sending indication information to a fourth device, where the indication information is used to indicate that data transmission is performed in an RDMA manner.
[0028] In the above solution, when the third device determines to establish an RDMA link, it instructs the fourth device to establish an RDMA link, so that the RDMA technology can be applied for data transmission in a 5G network or a future communication network, which can reduce the CPU overhead of data transmission and meet the requirements of services for high throughput and low latency characteristics.
[0029] In a possible implementation, the third device is a session management network element, and the fourth device is an access network device, a user plane network element, or a mobility management network element.
[0030] In a possible implementation, the third device is a mobility management network element, and the fourth device is an access network device, a user plane network element, or a session management network element.
[0031] In a possible implementation, the determining to establish an RDMA link includes: receiving a request message from a terminal device, where the request message is used to request to establish an RDMA link; and determining to establish an RDMA link according to the request message.
[0032] In a possible implementation, the determining to establish an RDMA link includes: receiving a QoS request, where the QoS request includes a QoS level, and the data transmission method corresponding to the QoS level is RDMA transmission; and determining to establish an RDMA link according to the QoS request.
[0033] In the above solution, an RDMA link can be established based on the QoS requirements of services, which can meet the requirements of services for high throughput and low latency characteristics.
[0034] In a possible implementation, the determining to establish an RDMA link includes: determining to establish an RDMA link according to the local configuration information of the third device.
[0035] In a third aspect, an embodiment of the present application provides a communication device, which can be a first device or a module (such as a chip) of the first device. The device has the function of implementing any implementation method of the first aspect above. This function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.
[0036] Fourthly, an embodiment of the present application provides a communication device, which may be a third device or a module (such as a chip) of the third device. The device has the function of implementing any implementation method of the second aspect above. This function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.
[0037] Fifthly, an embodiment of the present application provides a communication device, including units or means for performing each step of any implementation method in the first aspect to the second aspect above.
[0038] Sixthly, an embodiment of the present application provides a communication device, including a processor and an interface circuit. The processor is used to communicate with other devices through the interface circuit and execute any implementation method in the first aspect to the second aspect above. The processor includes one or more.
[0039] Seventhly, an embodiment of the present application provides a communication device, including a processor. The processor is used to call a program to execute any implementation method in the first aspect to the second aspect above. And the processor may be one or more.
[0040] Optionally, the communication device may further include a memory, which is coupled to the processor. The memory may be located inside the device or outside the device.
[0041] Eighthly, an embodiment of the present application provides a communication device, including a processor; when the device runs, the processor executes computer instructions to enable the device to execute any implementation method in the first aspect to the second aspect above.
[0042] Optionally, the communication device may further include a memory, which is used to store the computer instructions.
[0043] Ninthly, an embodiment of the present application further provides a computer program product, which includes a computer program or instructions. When the computer program or instructions are run by a communication device, any implementation method in the first aspect to the second aspect above is executed.
[0044] Tenthly, an embodiment of the present application further provides a computer-readable storage medium. Instructions are stored in the computer-readable storage medium. When they run on a communication device, any implementation method in the first aspect to the second aspect above is executed.
[0045] Eleventhly, an embodiment of the present application further provides a chip system, including: a processor for executing any implementation method in the first aspect to the second aspect above.
[0046] In a twelfth aspect, an embodiment of the present application further provides a communication system, including a first device and a second device; the first device is configured to receive the RDMA link establishment information of the second device from the second device, and send the RDMA link establishment information of the first device to the second device; establish an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device; the second device is configured to receive the RDMA link establishment information of the first device from the first device, and send the RDMA link establishment information of the second device to the first device; establish an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device.
[0047] In a possible implementation, the communication system further includes a third device according to any implementation of the second aspect. Description of the Drawings
[0048] FIG. 1(a) is a schematic diagram of a 5G network architecture based on a service-based architecture;
[0049] FIG. 1(b) is a schematic diagram of a 5G network architecture based on a peer-to-peer interface;
[0050] Figure 2 is a schematic diagram of memory access without DMA;
[0051] Figure 3 is a schematic diagram of memory access with DMA;
[0052] Figure 4 is a schematic diagram of memory access between different nodes in a traditional network;
[0053] Figure 5 is a schematic diagram of memory access between different nodes with RDMA;
[0054] Figures 6 to 15 is a schematic flowchart of the communication method provided by the embodiment of the present application;
[0055] Figures 16 to 17 is a schematic diagram of the communication device provided by the embodiment of the present application. Detailed Embodiments
[0056] To address the challenges of wireless broadband technology and maintain the leading edge of the 3rd generation partnership project (3GPP) network, the 3GPP standards group has developed the architecture of the next generation mobile communication network system, known as the 5th generation (5G) network architecture. This architecture not only supports the access of wireless access technologies defined by the 3GPP standards group (such as long term evolution (LTE) access technology, 5G radio access network (RAN) access technology, etc.) to the 5G core network (CN), but also supports the access to the core network using non-3GPP access technology through the non-3GPP interworking function (N3IWF) or the next generation packet data gateway (ngPDG).
[0057] FIG. 1(a) is a schematic diagram of a 5G network architecture based on a service-oriented architecture. The 5G network architecture shown in FIG. 1(a) may include access network devices and core network devices. The terminal device accesses the data network (DN) through the access network devices and the core network devices. Among them, the core network devices include, but are not limited to, some or all of the following network elements: authentication server function (AUSF) network element (not shown in the figure), unified data management (UDM) network element, unified data repository (UDR) network element, network repository function (NRF) network element (not shown in the figure), network exposure function (NEF) network element (not shown in the figure), application function (AF) network element, policy control function (PCF) network element, access and mobility management function (AMF) network element, session management function (SMF) network element, user plane function (UPF) network element, binding support function (BSF) network element (not shown in the figure).
[0058] The terminal device may be a user equipment (UE), a mobile station, a mobile terminal device, etc. The terminal device can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), Internet of Things (IOT), virtual reality, augmented reality, industrial control, autonomous driving, remote medical treatment, smart grid, smart furniture, smart office, smart wearables, smart transportation, smart city, etc. The terminal device can be a mobile phone, a tablet computer, a computer with wireless transceiver function, a wearable device, a vehicle, an urban air vehicle (such as an unmanned aircraft, a helicopter, etc.), a ship, a robot, a robotic arm, a smart home device, etc. For the convenience of description, this application takes the UE as an example of the terminal device for description, and the UE that appears at any subsequent position can be replaced by the terminal device.
[0059] The access network device can be a wireless access network device or a wired access network device. Among them, the wireless access network device includes 3GPP access network devices, non-trusted non-3GPP access network devices, and trusted non-3GPP access network devices. The 3GPP access network devices include, but are not limited to: evolved NodeB (eNodeB) in LTE, next generation NodeB (gNB) in the 5G mobile communication system, base stations in future mobile communication systems, or modules or units that complete part of the base station functions, such as central unit (CU), distributed unit (DU), etc. The non-trusted non-3GPP access network devices include, but are not limited to: non-trusted non-3GPP access gateways or N3IWF devices, non-trusted wireless local area network (WLAN) access points (APs), switches, routers. The trusted non-3GPP access network devices include, but are not limited to: trusted non-3GPP access gateways, trusted WLAN APs, switches, routers. The wired access network devices include, but are not limited to: wireline access gateways, fixed telephone network devices, switches, routers. For the convenience of description, this application takes the base station as an example of the access network device for description, and the base station that appears at any subsequent position can be replaced by the access network device.
[0060] The base station and the UE can be in fixed positions or movable. The base station and the UE can be deployed on land, including indoor or outdoor, handheld or vehicle-mounted; they can also be deployed on the water surface; they can also be deployed on airplanes, balloons, and artificial satellites in the air. The embodiments of this application do not limit the application scenarios of the base station and the UE.
[0061] The AMF network element includes functions such as performing mobility management, or access authentication / authorization, etc. In addition, it is also responsible for transmitting user policies between the UE and the PCF.
[0062] The SMF network element includes functions such as performing session management, executing control policies issued by the PCF network element, selecting the UPF network element, or allocating the internet protocol (IP) address of the UE, etc.
[0063] The UPF network element includes functions such as completing user plane data forwarding, session / flow-level charging statistics, or bandwidth limitation, etc.
[0064] The UDM network element includes functions such as performing management of subscription data, or user access authorization, etc.
[0065] The UDR includes access functions for executing types of data such as subscription data, policy data, or application data.
[0066] The NEF network element is used to support the opening of capabilities and events.
[0067] The AF network element transmits the requirements of the application side to the network side. For example, QoS requirements or user status event subscriptions, etc. The AF can be a third - party functional entity or an application service deployed by the operator, such as an IP Multimedia Subsystem (IMS) voice call service. Among them, the AF network element includes the AF network element within the core network (i.e., the operator's AF network element) and the third - party AF network element (such as an application server of an enterprise).
[0068] The PCF network element includes policy control functions such as being responsible for charging, QoS bandwidth guarantee, and mobility management at the session and service flow levels, or UE policy decision - making, etc. The PCF network element includes the access and mobility management policy control function (AM PCF) network element and the session management policy control function (SM PCF) network element. Among them, the AM PCF network element is used to formulate AM policies and user policies for the UE. The AM PCF network element can also be called the policy control network element providing services for the UE (PCF for a UE). The SM PCF network element is used to formulate session management policies (SM policies) for sessions. The SM PCF network element can also be called the policy control network element providing services for the protocol data unit (PDU) session (PCF for a PDU session).
[0069] The NRF network element can be used to provide a network element discovery function. Based on the requests of other network elements, it provides network element information corresponding to the network element type. The NRF network element also provides network element management services, such as network element registration, update, deregistration, or network element status subscription and push, etc.
[0070] The BSF network element can provide functions such as BSF service registration / deregistration / update, connection detection with the NRF network element, creation of session binding information, acquisition of UE information, and query of session binding information with duplicate IP addresses.
[0071] The AUSF network element is responsible for authenticating users to determine whether to allow users or devices to access the network.
[0072] DN is a network outside the operator network. The operator network can access multiple DNs. Multiple services can be deployed on DN, which can provide data and / or voice services to UE. For example, DN is the private network of a smart factory. The sensors installed in the workshop of the smart factory can be UEs. The control server of the sensors is deployed in DN, and the control server can provide services for the sensors. The sensors can communicate with the control server, obtain instructions from the control server, and transmit the collected sensor data to the control server according to the instructions. For another example, DN is the internal office network of a company. The mobile phones or computers of the company's employees can be UEs. The employees' mobile phones or computers can access information, data resources, etc. on the company's internal office network.
[0073] In Figure 1(a), Npcf, Nudr, Nudm, Naf, Namf, and Nsmf are service-oriented interfaces provided by the above PCF, UDR, UDM, AF, AMF, and SMF, respectively, for invoking corresponding service-oriented operations. N1, N2, N3, N4, and N6 are interface serial numbers, and the meanings of these interface serial numbers are as follows:
[0074] 1) N1: The interface between the AMF network element and the UE, which can be used to transmit non-access stratum (NAS) signaling (such as QoS rules from the AMF network element) to the UE.
[0075] 2) N2: The interface between the AMF network element and the base station, which can be used to transmit radio bearer control information from the core network side to the base station.
[0076] 3) N3: The interface between the base station and the UPF network element, mainly used to transmit uplink and downlink user plane data between the base station and the UPF network element.
[0077] 4) N4: The interface between the SMF network element and the UPF network element can be used to transmit information between the control plane and the user plane, including controlling the issuance of forwarding rules, QoS rules, traffic statistics rules, etc. for the user plane and reporting of information on the user plane.
[0078] 5) N6: The interface between UPF network element and DN, used to transmit the uplink and downlink user data flows between UPF network element and DN.
[0079] Figure 1(b) is a schematic diagram of a 5G network architecture based on a point-to-point interface. The functions of the network elements therein can be referred to the functions of the corresponding network elements in Figure 1(a), and will not be repeated here. The main difference between Figure 1(b) and Figure 1(a) is that the interface between the control plane network elements in Figure 1(a) is a service-oriented interface, while the interface between the control plane network elements in Figure 1(b) is a point-to-point interface.
[0080] In the architecture shown in Figure 1(b), the interface names and functions between each network element are as follows:
[0081] 1) The meanings of the N1, N2, N3, N4, and N6 interfaces can be referred to the foregoing descriptions.
[0082] 2) N5: The interface between the AF network element and the PCF network element, which can be used for the application service request to be sent down and the network event to be reported.
[0083] 3) N7: The interface between the PCF network element and the SMF network element, which can be used for sending down the PDU session granularity and the service data flow granularity control policies.
[0084] 4) N8: The interface between the AMF network element and the UDM network element, which can be used for the AMF network element to obtain the access and mobility management related subscription data and authentication data from the UDM network element, and for the AMF to register the UE mobility management related information with the UDM, etc.
[0085] 5) N9: The user plane interface between the UPF network element and the UPF network element, which is used for transmitting the uplink and downlink user data flows between the UPF network elements.
[0086] 6) N10: The interface between the SMF network element and the UDM network element, which can be used for the SMF network element to obtain the session management related subscription data from the UDM network element, and for the SMF network element to register the UE session related information with the UDM, etc.
[0087] 7) N11: The interface between the SMF network element and the AMF network element, which can be used for transmitting the PDU session tunnel information between the base station and the UPF network element, transmitting the control messages sent to the UE, transmitting the radio resource control information sent to the base station, etc.
[0088] 8) N15: The interface between the PCF network element and the AMF network element, which can be used for sending down the UE policy and the access control related policies.
[0089] 9) N35: The interface between the UDM network element and the UDR network element, which can be used for the UDM network element to obtain the user subscription data information from the UDR network element.
[0090] 10) N36: The interface between the PCF network element and the UDR network element, which can be used for the PCF network element to obtain the policy related subscription data and the application data related information from the UDR network element.
[0091] It can be understood that the above network element or function can be either a network element in a hardware device, a software function running on dedicated hardware, or a virtualized function instantiated on a platform (such as a cloud platform). Optionally, the above network element or function can be implemented by one device, jointly implemented by multiple devices, or can also be a functional module within a device. The embodiments of the present application do not make specific limitations in this regard.
[0092] The user plane network element, mobility management network element, and session management network element in this application can respectively be the UPF network element, AMF network element, and SMF network element in Figure 1(a) or Figure 1(b), or can also be network elements with the functions of the above UPF network element, AMF network element, and SMF network element in future communications such as 6G networks. The present application does not limit this. In the embodiments of the present application, the UPF network element, AMF network element, and SMF network element are described as an example of the user plane network element, mobility management network element, and session management network element respectively, and the UPF network element, AMF network element, and SMF network element are respectively abbreviated as UPF, AMF, and SMF.
[0093] To facilitate understanding of the content of the present application, the background technology related to the present application will be introduced first below.
[0094] I. Direct Memory Access (DMA)
[0095] DMA refers to the process that the external device can directly read and write the memory without the participation of the central processing unit (CPU).
[0096] Figure 2 Figure 16 is a schematic diagram of memory access without DMA. Assume that the input / output (I / O) device is an ordinary network card. To obtain the data to be sent from the memory and then assemble the data packet and send it to the physical link, the network card needs to inform the CPU of its data request through the bus. Then, based on this data request, the CPU copies the corresponding data in the memory buffer to its own internal register and then to the storage space of the I / O device. If the data volume is relatively large, the CPU will be busy moving data for a long time and unable to engage in other work. The main work of the CPU is computing, not data copying. Therefore, this data copying work wastes the computing power of the CPU. To "reduce the burden" on the CPU and let it engage in more meaningful work, the DMA mechanism was designed.
[0097] Figure 3It is a schematic diagram of memory access when there is DMA. It can be seen that a DMA controller is also connected to the bus. It is a device dedicated to reading and writing memory. When the network card wants to copy data from memory, except for some necessary control commands, the entire data copying process is completed by the DMA controller. This process is the same as Figure 2 the CPU copying shown. It's just that in the DMA mode, the data in memory is copied through the bus to the register inside the DMA controller, and then copied to the storage space of the I / O device. The CPU can do other things at other times except paying attention to the start and end of this process. The DMA controller can generally be set inside the I / O device, that is, there are both modules responsible for data transceiver and DMA modules in the I / O device.
[0098] II. Remote Direct Memory Access (RDMA)
[0099] RDMA can enable a local node to directly access the memory of a remote node. By "directly", it means that it can access the remote memory by bypassing the complex Transmission Control Protocol (TCP) / IP network protocol stack of traditional Ethernet, just like accessing local memory. And this process is not perceived by the peer, and most of the work in this read-write process is completed by hardware rather than software.
[0100] Figure 4 It is a schematic diagram of memory access between different nodes in a traditional network. In a traditional network, "node A sends a message to node B" is actually "moving a piece of data in the memory of node A to the memory of node B through the network link". And this process requires the command and control of the CPU at both the sending end and the receiving end, including the control of the network card, the handling of interrupts, the encapsulation and parsing of packets, etc. Figure 4 The data of the left node in the memory user space in the figure needs to be copied by the CPU to the buffer in the kernel space before it can be accessed by the network card. During this period, the data will pass through the software-implemented TCP / IP protocol stack, adding headers and checksum at each layer, such as TCP header, IP header, etc. The network card copies the data in the kernel to the buffer inside the network card through DMA, processes it and sends it to the peer through the physical link. After the peer receives the data, it will perform the reverse process: copy the data from the internal storage space of the network card to the buffer in the kernel space of the memory through DMA, and then the CPU will parse it through the TCP / IP protocol stack and take out the data and copy it to the user space. It can be seen that even with the DMA technology, the above process still has a strong dependence on the CPU.
[0101] Figure 5It is a schematic diagram of memory access between different nodes when there is RDMA. Similarly, a segment of data in the local memory is copied to the memory of the peer. When the RDMA technology is used, the CPUs at both ends hardly participate in the data transmission process (only participate in the control plane). The local RDMA network card directly DMA-copies the data from the user space of the memory to the internal storage space of the RDMA network card, and then the hardware assembles the packets at each layer and sends them to the RDMA network card of the peer through the physical link. After receiving the data, the RDMA network card of the peer strips the packet headers and check codes at each layer and directly copies the data to the user space memory of the memory through DMA.
[0102] The RDMA technology has the following advantages:
[0103] 1) Zero-copy, which means that there is no need to copy data back and forth between the user space and the kernel space.
[0104] 2) Kernel Bypass: It means that the I / O data stream can bypass the kernel, that is, the data can be prepared at the user layer and the hardware can be notified to prepare for sending and receiving, avoiding the overhead of system calls and context switches.
[0105] 3) CPU offloading: It means that the memory can be read and written without the participation of the remote node CPU (of course, it is necessary to hold the "key" to access a certain segment of memory in the remote end). This actually puts the encapsulation and parsing of packets in the hardware. In traditional Ethernet communication, both CPUs must participate in the parsing of packets at each layer. If the data volume is large and the interaction is frequent, it will be a significant overhead for the CPU, and these occupied CPU computing resources could have been used for some more valuable work.
[0106] Therefore, the RDMA technology can achieve high throughput, low latency of network transmission and reduce the CPU load.
[0107] There are multiple versions of the RDMA protocol stack. In chronological order, they are IB -> RoCEv1 -> iWARP -> RoCEv2. Among them, IB is the abbreviation of Infiniband, RoCE is the abbreviation of RDMA over converged ethernet, and iWARP is the abbreviation of internet wide area RDMA protocol. Among them, RoCE includes version 1 (v1) and version 2 (v2). It should be noted that here, taking the RDMA protocol including the IB protocol, RoCEv1 protocol, iWARP protocol and RoCEv2 protocol as an example, other types of protocols may also be included in actual applications, and this application is not limited thereto.
[0108] RDMA uses work queues to queue a series of service requests. The work queue is called a queue pair (QP) in RDMA. One queue in the queue pair is for send operations, and the other queue is for receive operations. Generally, the send work queue holds instructions that cause data to be transferred between the memory of a consumer and the memory of another consumer, while the receive work queue holds instructions on where to place the data to be received from another consumer. The other consumer is called a remote consumer, even if it may be on the same node. RDMA supports both connection-oriented and datagram services. For connection-oriented services, each QP is associated with only one remote user. In this case, the QP context is configured as the identifier of the queue pair of the remote consumer. The remote consumer is identified by the port and the queue pair number (QPN). The port is identified by the local ID (LID), or by the local ID and the global ID (GID).
[0109] RDMA includes, but is not limited to, the following four connection types, as follows:
[0110] 1) Reliable connection (RC): Provides message-oriented reliable transmission. The QPs at both ends of the communication are bound one-to-one. This is the most commonly used RDMA connection type.
[0111] 2) Unreliable connection (UC): Provides message-oriented unreliable transmission. The QPs at both ends of the communication are bound one-to-one.
[0112] 3) Unreliable datagram (UD): Provides message-oriented unreliable transmission. The QPs at both ends of the communication are not bound one-to-one. This transmission type is very similar to the user datagram protocol (UDP).
[0113] 4) Reliable datagram (RD): Currently, most network card manufacturers do not support it.
[0114] III. User Plane Data Transmission Mode
[0115] The user plane is an important part of the 5G network and is responsible for transmitting user data. It involves data transmission from the UE to the network and from the network to the UE.
[0116] The interfaces of the user plane are mainly the N3 interface and the N9 interface. The N3 interface is the interface between the base station and the UPF, and the General Packet Radio Service (GPRS) Tunnelling Protocol User Plane (GTP-U) protocol is used for the tunnelling transmission of user data. The N3 interface is mainly used to transfer the uplink and downlink user plane data between the base station and the UPF. The N9 interface is the interface between different UPFs. In a mobile scenario, an intermediate UPF (I-UPF) can be inserted between the UE and the PDU session anchor (PSA) UPF for traffic forwarding, and the GTP-U protocol is used for the transmission of user plane messages between the two UPFs.
[0117] The GTP-U protocol is used to transmit user plane data in a mobile communication network. Through the establishment of tunnels and protocol encapsulation, efficient data transmission is carried out between different network nodes. The specific transmission mode used varies according to different network versions and network nodes.
[0118] In the current 5G user plane data transmission, the data transmission method between different nodes (such as the base station and the UPF) is similar to the data transmission method shown Figure 4 and requires a large amount of CPU participation in the data transmission process. However, this data transmission scheme often suffers from the bottleneck problem of the computer system caused by the speed mismatch between the CPU and the memory, which is often referred to as the "memory wall". This is because the CPU speed is getting faster and faster, while the memory speed has not increased synchronously. The data transmission between the CPU and the memory takes time. When the CPU needs to read or write a large amount of data, it will wait for the memory, resulting in the CPU being unable to fully utilize its computing power and affecting the overall performance of the computer system. This data transmission method that requires a large amount of CPU participation is also called the method of Messaging passing through kernel. Since this data transmission method needs to pass through the kernel, there are high overheads of data movement and data replication. Moreover, this data transmission method may also lead to the inability to meet the requirements of certain services for high throughput and low latency characteristics.
[0119] To reduce the CPU overhead of data transmission in the 5G network or future networks and meet the requirements of services for high throughput and low latency characteristics, the present application provides corresponding solutions.
[0120] Figure 6Schematic flowchart of a communication method provided by an embodiment of this application. This method is executed by a first device or a module (such as a chip) of the first device, and a second device or a module (such as a chip) of the second device. Hereinafter, an example in which the first device and the second device execute this method will be used for illustration.
[0121] This method includes the following steps:
[0122] Step 601, the first device receives the RDMA link establishment information of the second device from the second device, and sends the RDMA link establishment information of the first device to the second device.
[0123] The RDMA link establishment information of the first device includes the port identifier and queue pair identifier of the first device. Optionally, the RDMA link establishment information of the first device further includes one or more of access permission information, source host address, destination host address, connection type, service level, protocol type, operation mode, or virtual memory address. Exemplarily, the port identifier of the first device includes a local identifier (LID), or includes a local identifier and a global identifier (GID). Exemplarily, the queue pair identifier may be a queue pair number (QPN). The port identifier and queue pair identifier of the first device can jointly indicate a QP address. Specifically, the port is indicated by the port identifier, and the QP in the port is indicated by the queue pair identifier. Exemplarily, the access permission information may be a key, which is used to represent the permission to access the memory of the first device. The source host address is the IP address of the first device. The destination host address is the IP address of the second device. The connection type is a reliable connection, unreliable connection, reliable datagram, unreliable datagram, or other connection types. The service level is mainly applied to the QoS requirements of the RDMA service, and different service levels in RDMA reflect the priority of different services. The protocol type is IB, RoCEv1, iWARP, or RoCEv2. The operation mode is read, write, send, etc. The virtual memory address is the virtual address used by RDMA during communication in a work request, and the channel adapter can convert the virtual address into a physical address.
[0124] The RDMA link establishment information of the second device includes the port identifier and queue pair identifier of the second device. Optionally, the RDMA link establishment information of the second device further includes one or more of access permission information, source host address, destination host address, connection type, service level, protocol type, operation mode, or virtual memory address. Exemplarily, the port identifier of the second device includes a local identifier, or includes a local identifier and a global identifier. Exemplarily, the queue pair identifier may be a QPN. The port identifier and queue pair identifier of the second device can jointly indicate a QP address. Specifically, the port is indicated by the port identifier, and the QP in the port is indicated by the queue pair identifier. Exemplarily, the access permission information may be a key, which is used to represent the permission to access the memory of the second device. The source host address is the IP address of the second device. The destination host address is the IP address of the first device. The connection type is a reliable connection, unreliable connection, reliable datagram, unreliable datagram, or other connection types. The service level is mainly applied to the QoS requirements of the RDMA service, and different service levels in RDMA reflect the priority of different services. The protocol type is IB, RoCEv1, iWARP, or RoCEv2. The operation mode is read, write, send, etc. The virtual memory address is the virtual address used by RDMA for communication in a work request, and the channel adapter can convert the virtual address into a physical address.
[0125] As an implementation method, step 601 is specifically as follows: The first device receives an indication message, for example, receives the indication message from the AMF or SMF. The indication message is used to indicate that data transmission is to be performed in the RDMA manner. The first device sends an RDMA link establishment request to the second device according to the indication message. The RDMA link establishment request includes the RDMA link establishment information of the first device. After receiving the RDMA link establishment request, the second device sends an RDMA link establishment response to the first device. The RDMA link establishment response includes the RDMA link establishment information of the second device.
[0126] As another implementation method, step 601 is specifically as follows: The second device receives an indication message, for example, receives the indication message from the AMF or SMF. The indication message is used to indicate that data transmission is to be performed in the RDMA manner. The second device sends an RDMA link establishment request to the first device according to the indication message. The RDMA link establishment request includes the RDMA link establishment information of the second device. After receiving the RDMA link establishment request, the first device sends an RDMA link establishment response to the second device. The RDMA link establishment response includes the RDMA link establishment information of the first device.
[0127] Step 602, the first device and the second device establish an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device.
[0128] Among them, for the specific implementation process of step 602, reference can be made to the implementation process of establishing an RDMA link between two devices in the prior art, and details will not be elaborated here.
[0129] As an implementation method, the above steps 601 and 602 can be executed in the session establishment or modification process.
[0130] In the above solution, applying the RDMA technology for data transmission in a 5G network or a future communication network can reduce the CPU overhead of data transmission and meet the requirements of services for high throughput and low latency characteristics.
[0131] Next, specific examples of the first device and the second device will be introduced.
[0132] In Case 1, the first device is a base station and the second device is a UPF.
[0133] Exemplarily, the UPF can be a branching point (BP) UPF or an uplink classifier (UL CL) UPF.
[0134] Based on Case 1, in one implementation method, the above step 601 can be implemented in the following way: The first device receives the second device's RDMA link establishment information from the second device through the interface between the first device and the second device, and sends the first device's RDMA link establishment information to the second device through the interface between the first device and the second device.
[0135] Based on Case 1, in another implementation method, the above step 601 can be implemented in the following way: The second device sends the second device's RDMA link establishment information to the SMF, the SMF sends the second device's RDMA link establishment information to the AMF, and the AMF sends the second device's RDMA link establishment information to the first device through the interface between the first device and the AMF; and the first device sends the first device's RDMA link establishment information to the AMF through the interface between the first device and the AMF, the AMF sends the first device's RDMA link establishment information to the SMF, and the SMF sends the first device's RDMA link establishment information to the second device.
[0136] In Case 2, the first device is a base station and the second device is an AMF.
[0137] Based on Case 2, in one implementation method, the above step 601 can be implemented in the following way: The first device receives the second device's RDMA link establishment information from the second device through the interface between the first device and the second device, and sends the first device's RDMA link establishment information to the second device through the interface between the first device and the second device.
[0138] In Case 3, the first device is a UPF and the second device is a base station.
[0139] Exemplarily, the UPF can be a BP UPF or a UL CL UPF.
[0140] Based on Case 3, in one implementation method, step 601 above can be implemented in the following manner: The first device receives the RDMA link establishment information of the second device from the second device through the interface between the first device and the second device; and, sends the RDMA link establishment information of the first device to the second device through the interface between the first device and the second device.
[0141] Based on Case 3, in another implementation method, step 601 above can be implemented in the following manner: The second device sends the RDMA link establishment information of the second device to the AMF through the interface between the second device and the AMF, the AMF sends the RDMA link establishment information of the second device to the SMF, and the SMF sends the RDMA link establishment information of the second device to the first device; and, the first device sends the RDMA link establishment information of the first device to the SMF through the interface between the first device and the SMF, the SMF sends the RDMA link establishment information of the first device to the AMF, and the AMF sends the RDMA link establishment information of the first device to the second device through the interface between the second device and the AMF.
[0142] Exemplarily, when the UPF in Case 3 is a BP UPF or a UL CL UPF, the following operations can also be performed: The first device (i.e., the BP UPF or the UL CL UPF) sends the RDMA link establishment information of the first device to the anchor UPF and receives the RDMA link establishment information of the anchor UPF from the anchor UPF; The first device and the anchor UPF establish an RDMA link between the anchor UPF and the first device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the anchor UPF. Among them, the anchor UPF is also called the protocol data unit session anchor (PSA) UPF.
[0143] In Case 4, the first device is an AMF and the second device is a base station or an SMF.
[0144] Based on Case 4, in one implementation method, step 601 above can be implemented in the following manner: The first device receives the RDMA link establishment information of the second device from the second device through the interface between the first device and the second device, and sends the RDMA link establishment information of the first device to the second device through the interface between the first device and the second device.
[0145] In Case 5, the first device is an SMF and the second device is a UPF.
[0146] Based on this fifth scenario, in one implementation method, the above step 601 can be implemented as follows: The first device receives the RDMA link establishment information of the second device from the second device through the interface between the first device and the second device, and sends the RDMA link establishment information of the first device to the second device through the interface between the first device and the second device.
[0147] The above introduced the link establishment process between the first device and the second device, and introduced different specific examples of the first device and the second device. Next, the link disconnection process between the first device and the second device will be introduced.
[0148] As one implementation method, the first device receives the RDMA link disconnection information of the second device from the second device, and sends the RDMA link disconnection information of the first device to the second device. The first device and the second device disconnect the RDMA link between the first device and the second device according to the RDMA link disconnection information of the first device and the RDMA link disconnection information of the second device.
[0149] Exemplarily, the first device receiving the RDMA link disconnection information of the second device from the second device, and sending the RDMA link disconnection information of the first device to the second device, can be: The second device sends an RDMA link disconnection request to the first device, and the RDMA link disconnection request includes the RDMA link disconnection information of the second device; when the first device receives the RDMA link disconnection request, it sends an RDMA link disconnection response to the second device, and the RDMA link disconnection response includes the RDMA link disconnection information of the first device. Optionally, when the first device receives the RDMA link disconnection request, it determines whether to allow disconnecting the RDMA link between the first device and the second device. If it allows disconnecting the RDMA link between the first device and the second device, the first device sends an RDMA link disconnection response to the second device; if it does not allow disconnecting the RDMA link between the first device and the second device, the first device does not send an RDMA link disconnection response to the second device.
[0150] Exemplarily, the first device receives the RDMA disconnection information of the second device from the second device and sends the RDMA disconnection information of the first device to the second device. It can also be that the first device sends an RDMA disconnection request to the second device, and the RDMA disconnection request includes the RDMA disconnection information of the first device. When the second device receives the RDMA disconnection request, it sends an RDMA disconnection response to the first device, and the RDMA disconnection response includes the RDMA disconnection information of the second device. Optionally, when the second device receives the RDMA disconnection request, it determines whether to allow the disconnection of the RDMA link between the first device and the second device. If it allows the disconnection of the RDMA link between the first device and the second device, the second device sends an RDMA disconnection response to the first device; if it does not allow the disconnection of the RDMA link between the first device and the second device, the second device does not send an RDMA disconnection response to the first device.
[0151] Figure 7 It is a schematic flowchart of a communication method provided by an embodiment of the present application. This method is executed by a third device or a module (such as a chip) of the third device, and a fourth device or a module (such as a chip) of the fourth device. Hereinafter, an example in which the third device and the fourth device execute this method will be described.
[0152] This method includes the following steps:
[0153] Step 701, the third device determines to establish an RDMA link.
[0154] In one implementation method, step 701 may be that the third device receives a request message from the UE, and the request message is used to request the establishment of an RDMA link. The third device determines to establish an RDMA link according to the request message.
[0155] In another implementation method, step 701 may be that the third device receives a QoS request, and the QoS request includes a QoS level, and the data transmission method corresponding to the QoS level is RDMA transmission. The third device determines to establish an RDMA link according to the QoS request.
[0156] In another implementation method, step 701 may be that the third device determines to establish an RDMA link according to the local configuration information of the third device.
[0157] Step 702, the third device sends indication information to the fourth device. Correspondingly, the fourth device receives the indication information.
[0158] The indication information is used to indicate that data transmission is performed in the RDMA manner.
[0159] Exemplarily, the third device is an SMF, and the fourth device is a base station, a UPF, or an AMF.
[0160] Exemplarily, the third device is an AMF, and the fourth device is a base station, a UPF, or an SMF.
[0161] In the above solution, when the third device determines to establish an RDMA link, it instructs the fourth device to establish an RDMA link, so that the RDMA technology can be applied for data transmission in a 5G network or a future communication network, which can reduce the CPU overhead of data transmission and meet the requirements of services for high throughput and low latency characteristics.
[0162] The above Figure 6 embodiments and Figure 7 the embodiments of
[0163] can be combined and implemented, or can be implemented separately, and the present application does not limit this. Figure 6 embodiments and Figure 7 the embodiments of
[0164] Figure 8 The following is a schematic flowchart of a communication method provided by an embodiment of the present application. This method establishes an RDMA link for data transmission in the PDU session establishment process, and the UPF sends an RDMA link establishment request, and the base station replies with an RDMA link establishment response. This method includes the following steps:
[0165] Step 801, the precondition steps of the PDU session establishment process.
[0166] This step 801 specifically includes steps 1 to 9 of the PDU session establishment process. For details, refer to the description of the PDU session establishment process in Section 4.3.2.2.1 of 3GPP TS 23.502.
[0167] Step 802, the SMF determines to establish an RDMA link.
[0168] For the specific implementation of this step, reference can be made to step 701 of the foregoing Figure 7 embodiment.
[0169] Step 803, the SMF sends an N4 session establishment request (N4 Session Establishment Request) to the UPF. Correspondingly, the UPF receives this N4 session establishment request.
[0170] This N4 session establishment request includes indication information, and this indication information is used to indicate that data transmission is performed in an RDMA manner.
[0171] This indication information can be carried in the fixed bit positions of the N4 session establishment request and occupies a small number of bits or bytes.
[0172] Step 804, the UPF sends an N4 Session Establishment Response to the SMF. Correspondingly, the SMF receives the N4 Session Establishment Response.
[0173] The N4 Session Establishment Response includes an RDMA link establishment request, and the RDMA link establishment request includes the RDMA link establishment information of the UPF.
[0174] Step 805, the SMF sends a request message to the AMF. Correspondingly, the AMF receives the request message.
[0175] The request message includes an RDMA link establishment request.
[0176] Exemplarily, the request message can be Namf_Communicaiton_N1N2MessageTransferRequest.
[0177] Step 806, the AMF sends a response message to the SMF. Correspondingly, the SMF receives the response message.
[0178] Exemplarily, the response message can be Namf_Communicaiton_N1N2MessageTransferResponse.
[0179] Step 807, the AMF sends an N2 session request to the base station. Correspondingly, the base station receives the N2 session request.
[0180] The N2 session request includes an RDMA link establishment request. The base station receives the RDMA link establishment request and obtains the link establishment information of the UPF therefrom.
[0181] Exemplarily, the N2 session request can be N2 PDU Session Request.
[0182] Step 808, the base station and the UE perform specific signaling exchange.
[0183] Specifically, during the AN-specific resource setup process, the base station and the UE perform specific signaling exchange. For a detailed description, see Section 4.3.2.2.1 of 3GPP TS23.502.
[0184] Step 809, the base station sends an N2 session response to the AMF. Correspondingly, the AMF receives the N2 session response.
[0185] The N2 session response includes an RDMA link establishment response, and the RDMA link establishment response contains the RDMA link establishment information of the base station.
[0186] Exemplarily, the N2 session response may be an N2 PDU Session Response.
[0187] Step 810a, the AMF sends an RDMA link establishment response to the SMF. Correspondingly, the SMF receives the RDMA link establishment response.
[0188] Step 810b, the SMF sends an RDMA link establishment response to the UPF. Correspondingly, the UPF receives the RDMA link establishment response.
[0189] The UPF obtains the RDMA link establishment information of the base station from the RDMA link establishment response.
[0190] Step 811, an RDMA link is established between the base station and the UPF.
[0191] Exemplarily, the UPF and the base station establish a link with each other according to the RDMA link establishment information of the base station and the RDMA link establishment information of the UPF. For the specific implementation process of establishing the link, reference can be made to the relevant descriptions in the prior art and will not be elaborated here.
[0192] Step 812, data transmission is performed between the base station and the UPF based on the established RDMA link.
[0193] In the above solution, in the PDU session establishment process, an RDMA link is established between the base station and the UPF, so that data transmission can be performed between the base station and the UPF in the RDMA manner, which can meet the requirements of high throughput and low latency characteristics of services and reduce the CPU overhead.
[0194] Figure 9 It is a schematic flow diagram of a communication method provided by an embodiment of the present application. This method establishes an RDMA link for data transmission in the PDU session establishment process, and the base station sends an RDMA link establishment request and the UPF replies with an RDMA link establishment response. The method includes the following steps:
[0195] Step 901, the pre - step of the PDU session establishment process.
[0196] This step 901 specifically includes steps 1 to 9 of the PDU session establishment process. For details, refer to the description of the PDU session establishment process in section 4.3.2.2.1 of 3GPP TS23.502.
[0197] Step 902, the SMF determines to establish an RDMA link.
[0198] For the specific implementation of this step, reference can be made to Figure 7 step 701 of the foregoing
[0199] Step 903, the SMF sends a request message to the AMF. Correspondingly, the AMF receives the request message.
[0200] The request message includes indication information for indicating data transmission using the RDMA method.
[0201] The indication information can be carried in the fixed bit positions of the N4 session establishment request and occupies a small number of bits or bytes.
[0202] Exemplarily, the request message can be Namf_Communicaiton_N1N2MessageTransferRequest.
[0203] Step 904, the AMF sends a response message to the SMF. Correspondingly, the SMF receives the response message.
[0204] Exemplarily, the response message can be Namf_Communicaiton_N1N2MessageTransferResponse.
[0205] Step 905, the AMF sends an N2 session request to the base station. Correspondingly, the base station receives the N2 session request.
[0206] The N2 session request includes the above indication information.
[0207] Exemplarily, the N2 session request can be N2 PDU Session Request.
[0208] Step 906, the base station and the UE perform specific signaling exchange.
[0209] Specifically, during the AN-specific resource setup process, the base station and the UE perform specific signaling exchange. For a detailed description, see Section 4.3.2.2.1 of 3GPP TS23.502.
[0210] Step 907, the base station sends an N2 session response to the AMF. Correspondingly, the AMF receives the N2 session response.
[0211] The N2 session response includes an RDMA link establishment request, which contains the base station's RDMA link establishment information.
[0212] Exemplarily, the N2 session response can be N2 PDU Session Response.
[0213] Step 908, the AMF sends a request message to the SMF. Correspondingly, the SMF receives the request message.
[0214] The request message includes an RDMA link establishment request.
[0215] Exemplarily, the request message may be Namf_PDUSession_UpdateSMContext_Request.
[0216] Step 909, the SMF sends an N4 session establishment request (N4 Session Establishment Request) to the UPF. Correspondingly, the UPF receives the N4 session establishment request.
[0217] The N4 session establishment request includes an RDMA link establishment request.
[0218] Step 910, the UPF sends an N4 session establishment response (N4 Session EstablishmentResponse) to the SMF. Correspondingly, the SMF receives the N4 session establishment response.
[0219] The N4 session establishment response includes an RDMA link establishment response, and the RDMA link establishment response includes the RDMA link establishment information of the UPF.
[0220] Step 911, the SMF sends a response message to the AMF. Correspondingly, the AMF receives the response message.
[0221] The response message includes an RDMA link establishment response.
[0222] Exemplarily, the response message may be Namf_PDUSession_UpdateSMContext_Response.
[0223] Step 912, the AMF sends an RDMA link establishment response to the base station. Correspondingly, the base station receives the RDMA link establishment response.
[0224] The base station receives the RDMA link establishment response and obtains the link establishment information of the UPF therefrom.
[0225] Step 913, an RDMA link is established between the base station and the UPF.
[0226] Exemplarily, the UPF and the base station establish a link with each other according to the RDMA link establishment information of the base station and the RDMA link establishment information of the UPF. For the specific implementation process of establishing the link, reference can be made to the relevant descriptions in the prior art and will not be elaborated here.
[0227] Step 914, the base station and the UPF perform data transmission based on the established RDMA link.
[0228] In the above solution, during the PDU session establishment process, an RDMA connection is established between the base station and the UPF, so that data can be transmitted between the base station and the UPF in the RDMA manner, which can meet the requirements of high throughput and low latency of services and reduce the CPU overhead.
[0229] Figure 10 It is a schematic flowchart of a communication method provided by an embodiment of the present application. This method establishes an RDMA connection for data transmission during the PDU session modification process, and the UPF sends an RDMA connection establishment request and the base station replies with an RDMA connection establishment response. The method includes the following steps:
[0230] Step 1001, the UE sends a PDU session modification request (PDU Session Modification Request) to the AMF. Correspondingly, the AMF receives the PDU session modification request.
[0231] This PDU session modification request is used to request the modification of the PDU session.
[0232] Step 1002, the AMF sends a session management context request to the SMF. Correspondingly, the SMF receives the session management context request.
[0233] This session management context request is used to request the SMF to modify the corresponding information.
[0234] Exemplarily, this session management context request is Nsmf PDUSession UpdateSMcontextRequest.
[0235] Step 1003, the SMF determines to establish an RDMA connection.
[0236] For the specific implementation of this step, reference can be made to step 701 of the foregoing Figure 7 embodiment.
[0237] Step 1004, the SMF sends a policy association modification request to the PCF. Correspondingly, the PCF receives the policy association modification request.
[0238] Exemplarily, this policy association modification request can be PCF_initiated SM Policy Association Modification Request.
[0239] Step 1005, the PCF sends a policy association modification response to the SMF. Correspondingly, the SMF receives the policy association modification response.
[0240] Exemplarily, the policy association modification response may be a PCF_initiated SM Policy Association Modification Response.
[0241] Through the above steps 1004 and 1005, the PCF and the SMF exchange session management information.
[0242] Step 1006, the SMF sends an N4 session modification request (N4 Session Modification Request) to the UPF. Correspondingly, the UPF receives the N4 session modification request.
[0243] The N4 session modification request includes indication information for indicating data transmission in the RDMA manner.
[0244] The indication information may be carried in the fixed bit positions of the N4 session establishment request and occupies a small number of bits or bytes.
[0245] Step 1007, the UPF sends an N4 session modification response (N4 Session Modification Response) to the SMF. Correspondingly, the SMF receives the N4 session modification response.
[0246] The N4 session modification response includes an RDMA link establishment request, and the RDMA link establishment request includes the UPF's RDMA link establishment information. For the description of the UPF's RDMA link establishment information, refer to the foregoing embodiments.
[0247] Step 1008, the SMF sends a session management context response to the AMF. Correspondingly, the AMF receives the session management context response.
[0248] The session management context response includes an RDMA link establishment request.
[0249] Exemplarily, the session management context response is an Nsmf PDUSession UpdateSMcontextResponse.
[0250] Step 1009, the AMF sends an N2 message to the base station. Correspondingly, the base station receives the N2 message.
[0251] The N2 message includes an RDMA link establishment request. The base station receives the RDMA link establishment request and obtains the UPF's link establishment information therefrom.
[0252] Step 1010, the base station performs specific signaling exchange with the UE.
[0253] Specifically, during the establishment process of specific access network resources, the base station and the UE perform specific signaling exchanges. For detailed descriptions, refer to Section 3GPP TS23.502 4.3.3.2-1.
[0254] Step 1011: The base station sends an N2 message to the AMF. Correspondingly, the AMF receives the N2 message.
[0255] This N2 message includes an RDMA link establishment response, which contains the base station's RDMA link establishment information. For the description of the base station's RDMA link establishment information, refer to the foregoing embodiments.
[0256] Step 1012: The AMF sends a session management context request to the SMF. Correspondingly, the SMF receives the session management context request.
[0257] This session management context request includes an RDMA link establishment response.
[0258] Exemplarily, this session management context request is Nsmf PDUSession UpdateSMcontextRequest.
[0259] Step 1013: The SMF sends a session management context response to the AMF. Correspondingly, the AMF receives this session management context response.
[0260] Exemplarily, this session management context response is Nsmf PDUSession UpdateSMcontextResponse.
[0261] Step 1014: The SMF sends an N4 session modification request to the UPF. Correspondingly, the UPF receives this N4 session modification request.
[0262] This N4 session modification request includes an RDMA link establishment response.
[0263] Step 1015: The UPF sends an N4 session modification response to the SMF. Correspondingly, the SMF receives the N4 session modification response.
[0264] Step 1016: An RDMA link is established between the base station and the UPF.
[0265] The UPF and the base station establish a link with each other based on the base station's RDMA link establishment information and the UPF's RDMA link establishment information. For the specific implementation process of establishing the link, reference can be made to the relevant descriptions in the prior art and will not be elaborated here.
[0266] Step 1017: The base station and the UPF perform data transmission based on the established RDMA link.
[0267] In the above solution, during the PDU session modification process, an RDMA link is established between the base station and the UPF, so that data can be transmitted between the base station and the UPF in the RDMA manner, which can meet the requirements of high throughput and low latency of services and reduce the CPU overhead.
[0268] Figure 11 It is a schematic flowchart of a communication method provided by an embodiment of the present application. This method establishes an RDMA link for data transmission during the PDU session modification process, and the base station sends an RDMA link establishment request, and the UPF replies with an RDMA link establishment response. This method includes the following steps:
[0269] Step 1101, the base station sends an N2 message to the AMF. Correspondingly, the AMF receives the N2 message.
[0270] The N2 message contains an RDMA link establishment request, and the RDMA link establishment request contains the RDMA link establishment information of the base station.
[0271] Step 1102, the AMF sends a session management context request to the SMF. Correspondingly, the SMF receives the session management context request.
[0272] The session management context request is used to request the SMF to modify corresponding information, and the session management context request contains an RDMA link establishment request.
[0273] Exemplarily, the session management context request is Nsmf PDUSession UpdateSMcontextRequest.
[0274] Step 1103, the SMF sends an N4 session modification request (N4 Session Modification Request) to the UPF. Correspondingly, the UPF receives the N4 session modification request.
[0275] The N4 session modification request includes an RDMA link establishment request.
[0276] Step 1104, the UPF sends an N4 session modification response (N4 Session ModificationResponse) to the SMF. Correspondingly, the SMF receives the N4 session modification response.
[0277] The N4 session modification response includes an RDMA link establishment response, and the RDMA link establishment response includes the RDMA link establishment information of the UPF. For the description of the RDMA link establishment information of the UPF, refer to the foregoing embodiments.
[0278] Step 1105, the SMF sends a session management context response to the AMF. Correspondingly, the AMF receives the session management context response.
[0279] The session management context response includes an RDMA link establishment response.
[0280] Exemplarily, the session management context response is Nsmf PDUSession UpdateSMcontextResponse.
[0281] Step 1106, the AMF sends an N2 message to the base station. Correspondingly, the base station receives the N2 message.
[0282] The N2 message includes an RDMA link establishment response. The base station receives the RDMA link establishment response and obtains the link establishment information of the UPF therefrom.
[0283] Step 1107, an RDMA link is established between the base station and the UPF.
[0284] The UPF and the base station establish a link with each other according to the RDMA link establishment information of the base station and the RDMA link establishment information of the UPF. For the specific implementation process of establishing the link, reference can be made to the relevant descriptions in the prior art and will not be elaborated here.
[0285] Step 1108, the base station and the UPF perform data transmission based on the established RDMA link.
[0286] In the above solution, in the PDU session modification process, an RDMA link is established between the base station and the UPF, so that the base station and the UPF can perform data transmission in the RDMA manner, which can meet the requirements of high throughput and low latency characteristics of services and reduce the CPU overhead.
[0287] Figure 12 It is a schematic flowchart of a communication method provided by an embodiment of the present application. This method introduces the release process of the RDMA link, and the base station sends an RDMA link disconnection request and the UPF replies with an RDMA link disconnection response. The method includes the following steps:
[0288] Step 1201, the UE sends a PDU session modification request to the AMF. Correspondingly, the AMF receives the PDU session modification request.
[0289] The PDU session modification request is used to request the release of the PDU session.
[0290] Step 1202, the AMF sends a session management context request to the SMF. Correspondingly, the SMF receives the session management context request.
[0291] The session management context request is used to request the SMF to modify the corresponding information.
[0292] Exemplarily, the session management context request is Nsmf PDUSession UpdateSMcontextRequest.
[0293] Step 1203, the session management policy association termination information (SM policyAssociation Termination) is exchanged between the SMF and the PCF.
[0294] Step 1204, the base station sends N2 information to the AMF. Correspondingly, the AMF receives the N2 message.
[0295] The N2 message contains an RDMA disconnection request, which is used to request the release of the RDMA link. The RDMA disconnection request includes the RDMA disconnection information of the base station, and the RDMA disconnection information of the base station includes the port identifier and queue pair identifier of the base station. Optionally, the RDMA disconnection information of the base station further includes access permission information and / or virtual memory address. The virtual memory address is used to indicate the memory that needs to be released.
[0296] Step 1205, the AMF sends a session management context request to the SMF. Correspondingly, the SMF receives the session management context request.
[0297] The session management context request contains an RDMA disconnection request.
[0298] Exemplarily, the session management context request is Nsmf PDUSession UpdateSMcontextRequest.
[0299] Step 1206, the SMF sends an N4 session release request to the UPF. Correspondingly, the UPF receives the N4 session release request.
[0300] The N4 session release request includes an RDMA disconnection request.
[0301] After receiving the RDMA disconnection request, the UPF determines whether to allow the disconnection according to the RDMA disconnection information of the base station in the disconnection request. If the disconnection is allowed, the following steps 1207 to 1210 are executed. If the disconnection is not allowed, the disconnection request is rejected.
[0302] Step 1207, the UPF sends an N4 session release response to the SMF. Correspondingly, the SMF receives the N4 session release response.
[0303] The N4 session release response includes an RDMA disconnection response, which contains the RDMA disconnection information of the UPF. The RDMA disconnection information of the UPF includes the port identifier and queue pair identifier of the UPF. Optionally, the RDMA disconnection information of the UPF further includes access permission information and / or virtual memory address. The virtual memory address is used to indicate the memory that needs to be released.
[0304] Step 1208, the SMF sends a session release request to the AMF. Correspondingly, the AMF receives the session release request.
[0305] The session release request includes an RDMA disconnection response.
[0306] Exemplarily, the session release request is an Nsmf PDUSession ReleaseSMcontext Request.
[0307] Step 1209, the AMF sends an N2 message to the base station. Correspondingly, the base station receives the N2 message.
[0308] The N2 message includes an RDMA disconnection response.
[0309] Step 1210, the RDMA link between the UPF and the base station is disconnected.
[0310] The UPF and the base station disconnect from each other according to the RDMA disconnection information of the base station and the RDMA disconnection information of the UPF. For the specific implementation process of disconnecting the link, reference can be made to the relevant descriptions in the prior art and will not be elaborated here.
[0311] The above solution realizes the release process of the RDMA link in the user plane, so that the link can be released in time when the RDMA link is not needed, thereby saving resources.
[0312] Figure 13 It is a schematic flowchart of a communication method provided by an embodiment of the present application. This method introduces the release process of the RDMA link, and the UPF sends an RDMA disconnection request and the base station replies with an RDMA disconnection response. The method includes the following steps:
[0313] Step 1301, the UE sends a PDU session modification request to the AMF. Correspondingly, the AMF receives the PDU session modification request.
[0314] The PDU session modification request is used to request the release of the PDU session.
[0315] Step 1302, the AMF sends a session management context request to the SMF. Correspondingly, the SMF receives the session management context request.
[0316] This session management context request is used to request the SMF to modify the corresponding information.
[0317] Exemplarily, this session management context request is Nsmf PDUSession UpdateSMcontextRequest.
[0318] Step 1303, the SMF sends an N4 session release request to the UPF. Correspondingly, the UPF receives this N4 session release request.
[0319] This N4 session release request includes indication information, which is used to indicate disconnecting the RDMA link.
[0320] Step 1304, the UPF sends an N4 session release response to the SMF. Correspondingly, the SMF receives the N4 session release response.
[0321] This N4 session release response includes an RDMA disconnection request, which contains the UPF's RDMA disconnection information. The UPF's RDMA disconnection information includes the UPF's port identifier and queue pair identifier. Optionally, the UPF's RDMA disconnection information further includes access permission information and / or virtual memory address. This virtual memory address is used to indicate the memory that needs to be released.
[0322] Step 1305, the SMF sends a session release request to the AMF. Correspondingly, the AMF receives this session release request.
[0323] This session release request includes an RDMA disconnection request.
[0324] Exemplarily, this session release request is Nsmf PDUSession ReleaseSMcontext Request.
[0325] Step 1306, the AMF sends a resource release request to the base station. Correspondingly, the base station receives the resource release request.
[0326] This resource release request includes an RDMA disconnection request.
[0327] After receiving the RDMA disconnection request, the base station determines whether to allow the disconnection according to the UPF's RDMA disconnection information in the disconnection request. If the disconnection is allowed, the following steps 1307 to 1310 are executed. If the disconnection is not allowed, the disconnection request is rejected.
[0328] Step 1307, the base station sends a resource release response to the AMF. Correspondingly, the AMF receives the resource release response.
[0329] The resource release response contains an RDMA disconnection response, which includes the RDMA disconnection information of the base station. The RDMA disconnection information of the base station includes the port identifier and queue pair identifier of the base station. Optionally, the RDMA disconnection information of the base station further includes access permission information and / or virtual memory address. The virtual memory address is used to indicate the memory that needs to be released.
[0330] Step 1308, the AMF sends a session release response to the SMF. Correspondingly, the SMF receives the session release response.
[0331] The session release response contains an RDMA disconnection response.
[0332] Exemplarily, the session release response is an Nsmf PDUSession ReleaseSMcontext Response.
[0333] Step 1309, the SMF sends an RDMA disconnection response to the UPF. Correspondingly, the UPF receives the RDMA disconnection response.
[0334] Step 1310, the RDMA link between the UPF and the base station is disconnected.
[0335] The UPF and the base station disconnect from each other according to the RDMA disconnection information of the base station and the RDMA disconnection information of the UPF. For the specific implementation process of disconnecting the link, reference can be made to the relevant descriptions in the prior art and will not be elaborated here.
[0336] The above solution realizes the release process of the RDMA link on the user plane, so that the link can be released in time when the RDMA link is not needed, thereby saving resources.
[0337] Figure 14 It is a schematic flow diagram of a communication method provided by an embodiment of the present application. This method is for data transmission based on the RDMA method in the BP / ULCL splitting scenario. The method includes the following steps:
[0338] Step 1401, the UE has established a PDU session with UPF1.
[0339] The UPF1 is a PSA UPF, called PSA UPF1.
[0340] Step 1402, the UE has established a PDU session with UPF2.
[0341] The UPF2 is a PSA UPF, called PSA UPF2.
[0342] Step 1403, the SMF inserts UPF3.
[0343] The UPF3 is a BP UPF or a UL CL UPF.
[0344] In step 1404, UPF1 and UPF3 exchange RDMA link establishment information and establish an RDMA link according to the exchanged RDMA link establishment information.
[0345] Specifically, UPF1 sends the RDMA link establishment information of UPF1 to UPF3, and UPF3 sends the RDMA link establishment information of UPF3 to UPF1. For the specific content of the link establishment information, reference can be made to the description of the foregoing embodiments.
[0346] UPF1 and UPF3 can exchange RDMA link establishment information through the N9 interface or through the forwarding of the SMF.
[0347] In step 1405, UPF2 and UPF3 exchange RDMA link establishment information and establish an RDMA link according to the exchanged RDMA link establishment information.
[0348] Specifically, UPF2 sends the RDMA link establishment information of UPF2 to UPF3, and UPF3 sends the RDMA link establishment information of UPF3 to UPF2. For the specific content of the link establishment information, reference can be made to the description of the foregoing embodiments.
[0349] UPF2 and UPF3 can exchange RDMA link establishment information through the N9 interface or through the forwarding of the SMF.
[0350] In step 1406, the base station and UPF3 exchange RDMA link establishment information and establish an RDMA link according to the exchanged RDMA link establishment information.
[0351] Specifically, the base station sends the RDMA link establishment information of the base station to UPF3, and UPF3 sends the RDMA link establishment information of UPF3 to the base station. For the specific content of the link establishment information, reference can be made to the description of the foregoing embodiments.
[0352] The base station and UPF3 can exchange RDMA link establishment information through the N3 interface or through the forwarding of the AMF and the SMF.
[0353] In the above solution, in the BP UPF / ULCL UPF traffic splitting scenario, by segmentally establishing an RDMA link, that is, establishing an RDMA link between the base station and UPF3, an RDMA link between UPF3 and UPF1, and an RDMA link between UPF3 and UPF2, data transmission based on the RDMA method in the BP UPF / ULCL UPF traffic splitting scenario can be realized, thereby meeting the requirements of high throughput and low latency characteristics of services and reducing the CPU overhead.
[0354] Figure 15 The figure is a schematic flow chart of a communication method provided by an embodiment of the present application. This method is a data transmission based on the RDMA method for the user data packet scenario of the chain internet of things (CIoT). The method includes the following steps:
[0355] Step 1501, the UE establishes an RRC connection.
[0356] Step 1502, the UE sends uplink information to the AMF. Correspondingly, the AMF receives the uplink information.
[0357] The uplink information may be an initial UE message or an uplink NAS message.
[0358] Step 1503, the AMF determines to establish an RDMA connection.
[0359] For the specific implementation of this step, reference may be made to step 701 of the foregoing Figure 7 embodiment.
[0360] Step 1504, the base station and the AMF exchange RDMA connection establishment information, and establish an RDMA connection according to the exchanged RDMA connection establishment information.
[0361] Specifically, the base station sends the base station's RDMA connection establishment information to the AMF, and the AMF sends the AMF's RDMA connection establishment information to the base station. For the specific content of the connection establishment information, reference may be made to the description of the foregoing embodiment.
[0362] Step 1505, the AMF and the SMF exchange RDMA connection establishment information, and establish an RDMA connection according to the exchanged RDMA connection establishment information.
[0363] Specifically, the AMF sends the AMF's RDMA connection establishment information to the SMF, and the SMF sends the SMF's RDMA connection establishment information to the AMF. For the specific content of the connection establishment information, reference may be made to the description of the foregoing embodiment.
[0364] Step 1506, the SMF and the UPF exchange RDMA connection establishment information, and establish an RDMA connection according to the exchanged RDMA connection establishment information.
[0365] Specifically, the SMF sends the SMF's RDMA connection establishment information to the UPF, and the UPF sends the UPF's RDMA connection establishment information to the SMF. For the specific content of the connection establishment information, reference may be made to the description of the foregoing embodiment.
[0366] After establishing the above three segmented links, uplink and downlink information can be transmitted.
[0367] Step 1507, the AMF sends uplink information to the SMF. Correspondingly, the SMF receives the uplink information.
[0368] Specifically, the AMF sends the uplink information received in Step 1502 or the uplink information received through other steps to the SMF via the RDMA link between the AMF and the SMF.
[0369] Step 1508, the SMF sends uplink information to the UPF. Correspondingly, the UPF receives the uplink information.
[0370] Specifically, the SMF sends the received uplink information to the UPF via the RDMA link between the SMF and the UPF.
[0371] Through the above process, the uplink information is transmitted from the base station to the UPF via the RDMA link.
[0372] Step 1509, the UPF sends downlink information to the SMF. Correspondingly, the SMF receives the downlink information.
[0373] Specifically, the UPF sends the downlink information to the SMF via the RDMA link between the SMF and the UPF.
[0374] Step 1510, the SMF sends downlink information to the AMF. Correspondingly, the AMF receives the downlink information.
[0375] Specifically, the SMF sends the downlink information to the AMF via the RDMA link between the SMF and the AMF.
[0376] Step 1511, the AMF sends downlink information to the base station. Correspondingly, the base station receives the downlink information.
[0377] Specifically, the AMF sends the downlink information to the base station via the RDMA link between the base station and the AMF.
[0378] Through the above process, the downlink information is transmitted from the UPF to the base station via the RDMA link.
[0379] In the above solution, in the scenario of CIoT user data packets, by establishing RDMA links in segments, that is, establishing an RDMA link between the base station and the AMF, an RDMA link between the AMF and the SMF, and an RDMA link between the SMF and the UPF, data transmission based on the RDMA method under CIoT user data packets can be achieved, which can further meet the requirements of high throughput and low latency characteristics of services and reduce the CPU overhead.
[0380] It can be understood that, in order to implement the functions in the above embodiments, the first device, the second device, or the third device includes the corresponding hardware structure and / or software module for executing each function. Those skilled in the art should easily realize that, in combination with the units and method steps of each example described in the embodiments disclosed in the present application, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed in the way of hardware or computer software driving hardware depends on the specific application scenario and design constraint conditions of the technical solution.
[0381] Figure 16 and Figure 17 FIG. is a schematic structural diagram of a communication device provided by an embodiment of the present application. These communication devices can be used to implement the functions of the first device, the second device, or the third device in the above method embodiments, and thus can also achieve the beneficial effects possessed by the above method embodiments. In the embodiments of the present application, the communication device can be the first device, the second device, or the third device, or can also be a module (such as a chip) applied to the first device, the second device, or the third device.
[0382] Figure 16 The shown communication device 1600 includes a processing unit 1610 and a transceiver unit 1620. The communication device 1600 is used to implement the functions of the first device, the second device, or the third device in the above method embodiments.
[0383] When the communication device 1600 is used to implement the function of the first device in the above method embodiment, the transceiver unit 1620 is used to receive the RDMA link establishment information of the second device from the second device, and send the RDMA link establishment information of the first device to the second device; the processing unit 1610 is used to establish an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device.
[0384] In a possible implementation method, the transceiver unit 1620 is used to receive the RDMA link establishment information of the second device from the second device, and send the RDMA link establishment information of the first device to the second device, and specifically includes: being used to receive an indication information, the indication information being used to indicate that data transmission is performed in the RDMA manner; according to the indication information, sending an RDMA link establishment request to the second device, the RDMA link establishment request including the RDMA link establishment information of the first device; receiving an RDMA link establishment response from the second device, the RDMA link establishment response including the RDMA link establishment information of the second device.
[0385] In a possible implementation method, the transceiver unit 1620 is configured to receive the RDMA link establishment information of the second device from the second device, and send the RDMA link establishment information of the first device to the second device, specifically including: being configured to receive an RDMA link establishment request from the second device, where the RDMA link establishment request includes the RDMA link establishment information of the second device; and sending an RDMA link establishment response to the second device, where the RDMA link establishment response includes the RDMA link establishment information of the first device.
[0386] In a possible implementation method, the first device is an access network device, and the second device is a user plane network element; the transceiver unit 1620 is configured to receive the RDMA link establishment information of the second device from the second device, specifically including: being configured to receive the RDMA link establishment information of the second device through the interface between the first device and the second device; or receiving the RDMA link establishment information of the second device through the interface between the first device and the mobility management network element, where the RDMA link establishment information of the second device is sent by the second device to the mobility management network element through the session management network element.
[0387] In a possible implementation method, the user plane network element is an uplink shunt user plane network element or a fork point user plane network element.
[0388] In a possible implementation method, the first device is an access network device, and the second device is a mobility management network element; the transceiver unit 1620 is configured to receive the RDMA link establishment information of the second device from the second device, specifically including: being configured to receive the RDMA link establishment information of the second device through the interface between the first device and the second device.
[0389] In a possible implementation method, the first device is a user plane network element, and the second device is an access network device; the transceiver unit 1620 is configured to send the RDMA link establishment information of the first device to the second device, specifically including: being configured to send the RDMA link establishment information of the first device through the interface between the first device and the second device; or sending the RDMA link establishment information of the first device through the interface between the first device and the session management network element, where the RDMA link establishment information of the first device is sent by the session management network element to the second device through the mobility management network element.
[0390] In a possible implementation method, the user plane network element is an uplink shunt user plane network element or a fork point user plane network element; the transceiver unit 1620 is further configured to send the RDMA link establishment information of the first device to the anchor user plane network element, and receive the RDMA link establishment information of the anchor user plane network element from the anchor user plane network element; the processing unit 1610 is further configured to establish an RDMA link between the anchor user plane network element and the first device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the anchor user plane network element.
[0391] In a possible implementation method, the first device is a mobility management network element, and the second device is an access network device or a session management network element; the transceiver unit 1620 is configured to send the RDMA link establishment information of the first device to the second device, specifically including: being configured to send the RDMA link establishment information of the first device through the interface between the first device and the second device.
[0392] In a possible implementation method, the transceiver unit 1620 is configured to receive the RDMA link establishment information of the second device from the second device, and send the RDMA link establishment information of the first device to the second device, specifically including: being configured to receive the RDMA link establishment information of the second device from the second device and send the RDMA link establishment information of the first device to the second device during a session establishment or modification process.
[0393] In a possible implementation method, the transceiver unit 1620 is further configured to receive the RDMA link disconnection information of the second device from the second device, and send the RDMA link disconnection information of the first device to the second device; the processing unit 1610 is further configured to disconnect the RDMA link between the first device and the second device according to the RDMA link disconnection information of the first device and the RDMA link disconnection information of the second device.
[0394] In a possible implementation method, the transceiver unit 1620 is configured to receive the RDMA link disconnection information of the second device from the second device, and send the RDMA link disconnection information of the first device to the second device, specifically including: being configured to receive an RDMA link disconnection request from the second device, where the RDMA link disconnection request includes the RDMA link disconnection information of the second device; and send an RDMA link disconnection response to the second device, where the RDMA link disconnection response includes the RDMA link disconnection information of the first device.
[0395] In a possible implementation method, the processing unit 1610 is further configured to determine whether to allow disconnecting the RDMA link between the first device and the second device according to the RDMA disconnection information of the first device; the transceiver unit 1620 is configured to send an RDMA disconnection response to the second device, specifically including: being configured to send the RDMA disconnection response to the second device when it is allowed to disconnect the RDMA link between the first device and the second device.
[0396] In a possible implementation method, the transceiver unit 1620 is configured to receive the RDMA disconnection information of the second device from the second device, and send the RDMA disconnection information of the first device to the second device, specifically including: being configured to send an RDMA disconnection request to the second device, where the RDMA disconnection request includes the RDMA disconnection information of the first device; receiving an RDMA disconnection response from the second device, where the RDMA disconnection response includes the RDMA disconnection information of the second device.
[0397] When the communication device 1600 is used to implement the function of the third device in the above method embodiment, the processing unit 1610 is configured to determine to establish an RDMA link; the transceiver unit 1620 is configured to send indication information to the fourth device, where the indication information is used to indicate that data transmission is performed in an RDMA manner.
[0398] In a possible implementation method, the third device is a session management network element, and the fourth device is an access network device, a user plane network element, or a mobility management network element.
[0399] In a possible implementation method, the third device is a mobility management network element, and the fourth device is an access network device, a user plane network element, or a session management network element.
[0400] In a possible implementation method, the processing unit 1610 is configured to determine to establish an RDMA link, specifically including: being configured to receive a request message from a terminal device through the transceiver unit 1620, where the request message is used to request to establish an RDMA link; determining to establish an RDMA link according to the request message.
[0401] In a possible implementation method, the processing unit 1610 is configured to determine to establish an RDMA link, specifically including: being configured to receive a QoS request through the transceiver unit 1620, where the QoS request includes a QoS level, and the data transmission method corresponding to the QoS level is RDMA transmission; determining to establish an RDMA link according to the QoS request.
[0402] In a possible implementation method, the processing unit 1610 is configured to determine to establish an RDMA link, specifically including: determining to establish an RDMA link according to the local configuration information of the third device.
[0403] For a more detailed description of the above processing unit 1610 and transceiver unit 1620, reference can be directly made to the relevant descriptions in the above method embodiments, and details are not repeated here.
[0404] Figure 17 The communication device 1700 shown includes a processor 1710 and an interface circuit 1720. The processor 1710 and the interface circuit 1720 are coupled to each other. It can be understood that the interface circuit 1720 can be a transceiver or an input / output interface. Optionally, the communication device 1700 may further include a memory 1730, configured to store instructions executed by the processor 1710, or input data required for the processor 1710 to run the instructions, or data generated after the processor 1710 runs the instructions.
[0405] When the communication device 1700 is used to implement the above method embodiments, the processor 1710 is configured to implement the functions of the above processing unit 1610, and the interface circuit 1720 is configured to implement the functions of the above transceiver unit 1620.
[0406] It can be understood that the processor in the embodiments of the present application may be a CPU, or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The general-purpose processor may be a microprocessor or any conventional processor.
[0407] The method steps in the embodiments of the present application can be implemented in a hardware manner or by a processor executing software instructions. The software instructions can be composed of corresponding software modules, and the software modules can be stored in a random access memory, a flash memory, a read-only memory, a programmable read-only memory, an erasable programmable read-only memory, an electrically erasable programmable read-only memory, a register, a hard disk, a removable hard disk, a CD-ROM, or any other form of storage medium well-known in the art. An exemplary storage medium is coupled to the processor, so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an ASIC. In addition, the ASIC can be located in an access network device or a terminal device. Of course, the processor and the storage medium can also exist as discrete components in the access network device or the terminal device.
[0408] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present application are executed in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, an access network device, a terminal device, or other programmable devices. The computer program or instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer program or instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center in a wired or wireless manner. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or a data center integrating one or more available media. The available medium can be a magnetic medium, such as a floppy disk, a hard disk, or a magnetic tape; it can also be an optical medium, such as a digital video disc; it can also be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium can be a volatile or non-volatile storage medium, or can include both volatile and non-volatile types of storage media.
[0409] In the various embodiments of the present application, if there is no special explanation and logical conflict, the terms and / or descriptions between different embodiments are consistent and can be referenced to each other. The technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships.
[0410] In this application, "at least one" means one or more, and "a plurality" means two or more. "And / or" describes the relationship between associated objects and indicates that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, or B exists alone, where A and B can be singular or plural. In the textual description of this application, the character " / " generally represents an "or" relationship between the associated objects before and after; in the formulas of this application, the character " / " represents a "division" relationship between the associated objects before and after.
[0411] It can be understood that the various numerical numbers involved in the embodiments of this application are only for convenience of description and are not used to limit the scope of the embodiments of this application. The magnitudes of the serial numbers of the above processes do not mean the order of execution, and the order of execution of each process should be determined by its function and internal logic.
Claims
1. A communication method, characterized in that, Applied to a first device or a module of the first device, the method includes: Receiving remote direct memory access (RDMA) link establishment information of the second device from the second device, and sending RDMA link establishment information of the first device to the second device; Establishing an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device.
2. The method according to claim 1, wherein The receiving the RDMA link establishment information of the second device from the second device, and sending the RDMA link establishment information of the first device to the second device includes: Receiving indication information for indicating data transmission in an RDMA manner; Sending an RDMA link establishment request to the second device according to the indication information, where the RDMA link establishment request includes the RDMA link establishment information of the first device; Receiving an RDMA link establishment response from the second device, where the RDMA link establishment response includes the RDMA link establishment information of the second device.
3. The method according to claim 1 or 2, characterized in that, The receiving the RDMA link establishment information of the second device from the second device, and sending the RDMA link establishment information of the first device to the second device includes: Receiving an RDMA link establishment request from the second device, where the RDMA link establishment request includes the RDMA link establishment information of the second device; Sending an RDMA link establishment response to the second device, where the RDMA link establishment response includes the RDMA link establishment information of the first device.
4. The method according to any one of claims 1 to 3, characterized in that, The first device is an access network device, and the second device is a user plane network element; The receiving the RDMA link establishment information of the second device from the second device includes: Receiving the RDMA link establishment information of the second device through an interface between the first device and the second device; or, Receiving the RDMA link establishment information of the second device through an interface between the first device and a mobility management network element, where the RDMA link establishment information of the second device is sent by the second device to the mobility management network element through a session management network element.
5. The method according to claim 4, characterized in that The user plane network element is an uplink shunt user plane network element or a fork point user plane network element.
6. The method according to any one of claims 1 to 3, characterized in that, The first device is an access network device, and the second device is a mobility management network element; The receiving the RDMA link establishment information of the second device from the second device includes: Receiving the RDMA link establishment information of the second device through an interface between the first device and the second device.
7. The method according to any one of claims 1 to 3, characterized in that, The first device is a user plane network element, and the second device is an access network device; The sending the RDMA link establishment information of the first device to the second device includes: Sending the RDMA link establishment information of the first device through an interface between the first device and the second device; or, Sending the RDMA link establishment information of the first device through an interface between the first device and a session management network element, where the RDMA link establishment information of the first device is sent by the session management network element to the second device through a mobility management network element.
8. The method according to claim 7, wherein The user plane network element is an uplink shunt user plane network element or a fork point user plane network element; the method further includes: Sending the RDMA link establishment information of the first device to the anchor user plane network element, and receiving the RDMA link establishment information of the anchor user plane network element from the anchor user plane network element; Establishing an RDMA link between the anchor user plane network element and the first device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the anchor user plane network element.
9. The method according to any one of claims 1 to 3, characterized in that, The first device is a mobility management network element, and the second device is an access network device or a session management network element; The sending the RDMA link establishment information of the first device to the second device includes: Sending the RDMA link establishment information of the first device through the interface between the first device and the second device.
10. The method according to any one of claims 1 to 9, characterized in that, The receiving the RDMA link establishment information of the second device from the second device and sending the RDMA link establishment information of the first device to the second device includes: Receiving the RDMA link establishment information of the second device from the second device and sending the RDMA link establishment information of the first device to the second device in a session establishment or modification process.
11. The method according to any one of claims 1 to 10, characterized in that The method further includes: Receiving the RDMA link disconnection information of the second device from the second device, and sending the RDMA link disconnection information of the first device to the second device; Disconnecting the RDMA link between the first device and the second device according to the RDMA link disconnection information of the first device and the RDMA link disconnection information of the second device.
12. The method according to claim 11, wherein The receiving the RDMA link disconnection information of the second device from the second device and sending the RDMA link disconnection information of the first device to the second device includes: Receiving an RDMA link disconnection request from the second device, where the RDMA link disconnection request includes the RDMA link disconnection information of the second device; Sending an RDMA link disconnection response to the second device, where the RDMA link disconnection response includes the RDMA link disconnection information of the first device.
13. The method according to claim 12, wherein The method further includes: Judging whether to allow disconnecting the RDMA link between the first device and the second device according to the RDMA link disconnection information of the first device; The sending the RDMA link disconnection response to the second device includes: Sending the RDMA link disconnection response to the second device when it is allowed to disconnect the RDMA link between the first device and the second device.
14. The method according to claim 11, wherein The receiving the RDMA link disconnection information of the second device from the second device and sending the RDMA link disconnection information of the first device to the second device includes: Sending an RDMA link disconnection request to the second device, where the RDMA link disconnection request includes the RDMA link disconnection information of the first device; Receiving an RDMA link disconnection response from the second device, where the RDMA link disconnection response includes the RDMA link disconnection information of the second device.
15. A communication method, characterized in that, Applied to a third device or a module of a third device, the method includes: Determining to establish a Remote Direct Memory Access (RDMA) link; Send indication information to a fourth device, where the indication information is used to indicate data transmission in the RDMA manner.
16. The method according to claim 15, wherein The third device is a session management network element, and the fourth device is an access network device, a user plane network element, or a mobility management network element.
17. The method according to claim 15, wherein The third device is a mobility management network element, and the fourth device is an access network device, a user plane network element, or a session management network element.
18. The method according to any one of claims 15 to 17, characterized in that The determination of establishing an RDMA link includes: Receive a request message from a terminal device, where the request message is used to request the establishment of an RDMA link; Determine to establish an RDMA link according to the request message.
19. The method according to any one of claims 15 to 17, characterized in that, The determination of establishing an RDMA link includes: Receive a quality of service (QoS) request, where the QoS request includes a QoS level, and the data transmission mode corresponding to the QoS level is RDMA transmission; Determine to establish an RDMA link according to the QoS request.
20. The method according to any one of claims 15 to 17, characterized in that The determination of establishing an RDMA link includes: Determine to establish an RDMA link according to the local configuration information of the third device.
21. A communication device, characterized in that, Includes a module for performing the method according to any one of claims 1 to 14, or performing the method according to any one of claims 15 to 20.
22. A communication device, characterized in that, Includes a processor and an interface circuit, where the processor is used to communicate with other devices through the interface circuit and perform the method according to any one of claims 1 to 14, or perform the method according to any one of claims 15 to 20.
23. A computer program product, characterized in that, The computer program product includes instructions, and when the instructions run on a processor, the processor is caused to perform the method according to any one of claims 1 to 14, or perform the method according to any one of claims 15 to 20.
24. A computer-readable storage medium, characterized in that, A computer program or instructions are stored in the storage medium, and when the computer program or instructions are executed by a communication device, the method according to any one of claims 1 to 14 is implemented, or the method according to any one of claims 15 to 20 is implemented.
25. A communication system, characterized in that, Includes: A first device, configured to receive the RDMA link establishment information of the second device from the second device, and send the RDMA link establishment information of the first device to the second device; Establish an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device; The second device, configured to receive the RDMA link establishment information of the first device from the first device, and send the RDMA link establishment information of the second device to the first device; Establish an RDMA link between the first device and the second device according to the RDMA link establishment information of the first device and the RDMA link establishment information of the second device.
Citation Information
Cited By
PCIe (Peripheral Component Interconnect Express) endpoint equipment communication method, device and equipment based on software defined interconnection
CN121542207A
Communication method, communication apparatus, and communication system
EP4808260A1