Communication method and apparatus
By directly negotiating media information through the first and second media functional entities, the problem of complex and inefficient media negotiation in communication networks is solved, and a more efficient media negotiation process is achieved.
Patent Information
- Application Number
- PCT/CN2025/105141
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-13
- Filing Date
- 2025-06-28
- Publication Date
- 2026-02-19
AI Technical Summary
In communication networks, the media negotiation process is complex and inefficient, requiring information to be transmitted through multiple network elements.
Media information is negotiated directly between the first and second media function entities, avoiding relaying through control function network elements, and media negotiation requests and responses are sent and received directly.
It simplifies the media consultation process, improves the efficiency of media consultation, and reduces the steps involved by online intermediaries.
Smart Images

Figure CN2025105141_19022026_PF_FP_ABST
Abstract
Description
Communication method and apparatus
[0001] The present application claims priority from the Chinese patent application No. 202411111090.1 filed on August 13, 2024, and entitled "Communication method and apparatus", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0002] The present application relates to the field of communication technology, in particular to a communication method and apparatus. BACKGROUND
[0003] In a communication network, one terminal can initiate a call procedure to one or more terminals except itself to realize audio / video communication among multiple users. In addition, in the call procedure, the terminals can also negotiate media information for audio / video communication, such as codec information required for audio / video communication.
[0004] For example, the process of negotiating media information by terminals is introduced by taking audio / video communication between user A and user B as an example. The terminal of user A (hereinafter referred to as the calling terminal) can send an invitation request (such as an INVITE request) to the network (hereinafter referred to as the calling network) where the calling terminal is located, and the invitation request carries the codec format information supported by the calling terminal. The invitation request can be routed to the network (hereinafter referred to as the called network) where the terminal of user B (hereinafter referred to as the called terminal) is located through multiple network elements in the calling network, and then routed to the called terminal through multiple network elements in the called network. Subsequently, the called terminal can send a response message of the invitation request to the called network based on the codec format supported by the called terminal and the codec format supported by the calling terminal, and the response message carries the codec format information used by the calling terminal and the called terminal for audio / video communication. The response message can be routed to the calling network through multiple network elements in the called network, and then routed to the calling terminal through multiple network elements in the calling network. After that, the calling terminal and the called terminal can transmit audio / video streams based on the codec format information carried in the response message.
[0005] It can be seen that the above invitation request and its response message can complete a media negotiation, so that the calling terminal and the called terminal use the codec format information in the response message to encode and transmit audio / video media. However, in the above process, the invitation request and its response message need to pass through multiple network elements in the calling and called networks to reach from one terminal to another terminal, resulting in a complex media negotiation process and low media negotiation efficiency. SUMMARY
[0006] The present application provides a communication method and apparatus, which can simplify the media negotiation process and improve the media negotiation efficiency.
[0007] To achieve the above object, the application adopts the following technical scheme:
[0008] In a first aspect, a communication method is provided, which can be performed by a first media function entity. The first media function entity herein can refer to the first media function entity itself, or a processor, circuit, module, logic node, chip, or chip system, etc. in the first media function entity that implements the method.
[0009] The method comprises: receiving address information of a second media function entity; sending a first media negotiation request to the second media function entity according to the address information of the second media function entity, receiving a first media negotiation response from the second media function entity, and sending a media stream to the second media function entity according to second media information, or receiving a media stream from the second media function entity according to the second media information. The first media negotiation request carries first media information, and the first media information is media information proposed by the first media function entity. The first media negotiation response carries second media information, and the second media information is media information answered by the second media function entity.
[0010] Based on the method provided in the first aspect, the first media function entity can receive the address information of the second media function entity, and initiate a media negotiation request to the second media function entity based on the address information. In other words, the media negotiation in the above method can be completed between the first media function entity and the second media function entity, and does not need to be completed through a control function network element (such as the first control function entity and the second control function entity in the application, etc.). Therefore, the media negotiation process can be simplified, and the media negotiation efficiency can be improved.
[0011] In a possible implementation, the method further comprises: sending the address information of the first media function entity.
[0012] Based on the above possible implementation, the media function entity that receives the address information can directly negotiate with the first media function entity.
[0013] In a possible implementation, the method further comprises: receiving a first request from the first control function entity, the first request being used to request the address information of the first media function entity; and sending the address information of the first media function entity, comprising: sending a response to the first request to the first control function entity, the response to the first request carrying the address information of the first media function entity.
[0014] Based on the above possible implementation, the first media function entity can send the address information of the first media function entity to the first control function entity based on the request of the first control function entity.
[0015] In a possible implementation, the address information of the third media function entity is carried in a header field or a message body of the first request, and the address information of the first media function entity is carried in a header field or a message body of the response of the first request; the address information of the first media function entity includes first address information and second address information, the first address information is used to connect the first media function entity to the third media function entity, and the second address information is used to connect the first media function entity to the second media function entity.
[0016] Based on the possible implementation, when the first request carries the address information of the third media function entity, the first media function entity can allocate one address information (for example, the first address information) to the third media function entity, so as to connect the first media function entity to the third media function entity, and can also allocate one address information (for example, the second address information) to the second media function entity, so as to connect the first media function entity to the second media function entity.
[0017] In a possible implementation, before sending the first media negotiation request to the second media function entity according to the address information of the second media function entity, the method further includes: receiving a fourth media negotiation request from the third media function entity, the fourth media negotiation request carrying seventh media information, the seventh media information being media information proposed by the third media function entity, and the seventh media information being used to determine the first media information; after receiving the first media negotiation response from the second media function entity, the method further includes: sending a fourth media negotiation response to the third media function entity according to the address information of the third media function entity, the fourth media negotiation response carrying eighth media information, the eighth media information being media information answered by the first media function entity, and the eighth media information being determined based on the second media information.
[0018] Based on the possible implementation, the first media function entity and the third media function entity can also directly negotiate the media information.
[0019] In a possible implementation, the method is applied to a call process between a first terminal and a second terminal, and at least one of the first request or the response of the first request further carries a first identifier, the first identifier being used to indicate a first session between the first terminal and the second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
[0020] Based on the possible implementation, the first media function entity and the first control function entity can identify the first session based on the first identifier.
[0021] In a possible implementation, the first media negotiation request further carries the first identifier.
[0022] Based on the possible implementation manners above, the second media function entity can identify which media negotiation the first media negotiation request is for.
[0023] In a possible implementation manner, the first media negotiation response also carries the first identifier.
[0024] Based on the possible implementation manners above, the first media function entity can identify which media negotiation the first media negotiation response is for based on the first identifier.
[0025] In a possible implementation manner, the method further includes: determining that the media information of the first session needs to be updated; sending a second media negotiation request to the second media function entity according to the address information of the second media function entity, the second media negotiation request carrying third media information, the third media information being updated media information; receiving a second media negotiation response from the second media function entity, the second media negotiation response carrying fourth media information, the fourth media information being media information responded by the second media function entity based on the third media information; and sending a media stream to the second media function entity according to the fourth media information, or receiving a media stream from the second media function entity according to the fourth media information.
[0026] Based on the possible implementation manners above, when the first media function entity determines that the media information of the first session needs to be updated, such as determining that a voice call is switched to a video call, or determining that a video call is switched to a voice call, etc., the first media function entity can directly initiate media negotiation to the second media function entity to re-negotiate the media information between the first media function entity and the second media function entity.
[0027] In a possible implementation, the first control function entity and the first media function entity are deployed on a first terminal in the first communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem (IMS) access media gateway or a media function network element in the first communication network; or the first control function entity is deployed on a proxy call session control function (P-CSCF) network element in the first communication network, the first media function entity is deployed on an IMS access media gateway in the first communication network, and the second media function entity is deployed on a translation gateway in the first communication network; or the first control function entity is deployed on an Inter-Working Border Control Function (I-BCF) network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, and the second media function entity is deployed on a translation gateway in the second communication network; or the first control function entity is deployed on an I-BCF network element in the second communication network, the first media function entity is deployed on a translation gateway in the second communication network, and the second media function entity is deployed on an IMS access media gateway in the second communication network; or the first control function entity is deployed on a P-CSCF network element in the second communication network, the first media function entity is deployed on an IMS access media gateway in the second communication network, and the second media function entity is deployed on a second terminal in the second communication network; or the first control function entity is deployed on a P-CSCF network element in the first communication network, the first media function entity is deployed on an IMS access media gateway in the first communication network, and the second media function entity is deployed on an IMS access media gateway in the second communication network; or the first control function entity is deployed on a unified session control function (US-CSCF) network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on a media function network element in the second communication network; or the first control function entity is deployed on a US-CSCF network element in the second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity is deployed on a second terminal in the second communication network; or the first control function entity is deployed on a US-CSCF network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on a translation gateway in the first communication network; or the first control function entity is deployed on an I-BCF network element in the second communication network, the first media function entity is deployed on a translation gateway in the second communication network, and the second media function entity is deployed on a media function network element in the second communication network.Alternatively, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, and the second media function entity is deployed on a media function network element in the second communication network.
[0028] Based on the above possible implementation manners, the first control function entity, the first media function entity, and the second media function entity can be deployed in the network in various ways.
[0029] In a possible implementation manner, the first communication network is a calling network, and the second communication network is a called network; or the first communication network is a called network, and the second communication network is a calling network.
[0030] Based on the above possible implementation manners, the first control function entity, the first media function entity, or the second media function entity can be deployed in the calling network or the called network.
[0031] In a second aspect, a communication method is provided, which can be executed by the second media function entity. The second media function entity herein can refer to the second media function entity itself, or a processor, circuit, module, logic node, chip, or chip system, etc. in the second media function entity that implements the method.
[0032] The method comprises: receiving address information of the first media function entity; receiving a first media negotiation request from the first media function entity, the first media negotiation request carrying first media information; sending a first media negotiation response to the first media function entity according to the address information of the first media function entity; and sending a media stream to the first media function entity according to second media information, or receiving a media stream from the first media function entity according to the second media information. The first media information is media information proposed by the first media function entity, and the first media negotiation response carries the second media information, which is media information answered by the second media function entity.
[0033] Based on the method in the second aspect, the second media function entity can receive the address information of the first media function entity, and after receiving the first media negotiation request, directly send the first media negotiation response to the first media function entity based on the address information to complete the media negotiation. In other words, the media negotiation in the method can be completed between the first media function entity and the second media function entity, and does not need to be completed through the control function network element (such as the first control function entity and the second control function entity in the present application), so that the media negotiation process can be simplified and the media negotiation efficiency can be improved.
[0034] In a possible implementation, the method further includes: sending the address information of the second media function entity.
[0035] Based on the possible implementation, the media function entity receiving the address information can directly negotiate with the second media function entity.
[0036] In a possible implementation, the receiving of the address information of the first media function entity includes: receiving a second request from the second control function entity, the second request carrying the address information of the first media function entity; and the sending of the address information of the second media function entity includes: sending a response of the second request to the second control function entity, the response of the second request carrying the address information of the second media function entity.
[0037] Based on the possible implementation, the second media function entity can send the address information of the second media function entity to the second control function entity based on the request of the second control function entity.
[0038] In a possible implementation, the header field or the message body of the second request carries the address information of the first media function entity, and the header field or the message body of the response of the second request carries the address information of the second media function entity.
[0039] Based on the possible implementation, the second media function entity can obtain the address information of the first media function entity through the header field or the message body of the second request, and send the address information of the second media function entity through the header field or the message body of the response of the second request.
[0040] In a possible implementation, the address information of the second media function entity includes third address information and fourth address information, the third address information being used to connect the second media function entity to the first media function entity, and the fourth address information being used to connect the second media function entity to a fourth media function entity.
[0041] Based on the possible implementation manner, the second media function entity can allocate one address information (such as the third address information) to the first media function entity, so that the second media function entity is connected to the first media function entity, and can also allocate one address information (such as the fourth address information) to the fourth media function entity, so that the second media function entity is connected to the fourth media function entity.
[0042] In a possible implementation manner, after receiving the first media negotiation request from the first media function entity, the method further includes: sending a fifth media negotiation request to the fourth media function entity, the fifth media negotiation request carrying ninth media information, the ninth media information being media information proposed by the second media function entity, the ninth media information being determined based on the first media information; receiving a fifth media negotiation response from the fourth media function entity, the fifth media negotiation response carrying tenth media information, the tenth media information being media information answered by the fourth media function entity, the tenth media information being used to determine the second media information.
[0043] Based on the possible implementation manner, the second media function entity and the fourth media function entity can also directly negotiate the media information.
[0044] In a possible implementation manner, the method is applied to a call process between a first terminal and a second terminal, and at least one of the second request or the response of the second request further carries a first identifier, the first identifier being used to indicate a first session between the first terminal and the second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
[0045] Based on the possible implementation manner, the second media function entity and the second control function entity can identify the first session based on the first identifier.
[0046] In a possible implementation manner, the first media negotiation request further carries the first identifier.
[0047] Based on the possible implementation manner, the second media function entity can identify, based on the first identifier, which session the first media negotiation request is for.
[0048] In a possible implementation manner, the first media negotiation response further carries the first identifier.
[0049] Based on the possible implementation manner, the first media function entity can identify, based on the first identifier, which session the first media negotiation response is for.
[0050] In a possible implementation, the method further includes: determining that the media information of the first session needs to be updated; sending a third media negotiation request to the first media function entity according to the address information of the first media function entity, the third media negotiation request carrying fifth media information, the fifth media information being the updated media information; receiving a third media negotiation response from the first media function entity, the third media negotiation response carrying sixth media information, the sixth media information being media information responded by the first media function entity based on the fifth media information; and sending a media stream to the first media function entity according to the sixth media information, or receiving a media stream from the first media function entity according to the sixth media information.
[0051] Based on the possible implementation, when the second media function entity determines that the media information of the first session needs to be updated, such as determining that a voice call is switched to a video call, or determining that a video call is switched to a voice call, etc., the second media function entity can directly initiate media negotiation to the first media function entity to re-negotiate the media information between the first media function entity and the second media function entity.
[0052] In a possible implementation, the first media function entity is deployed on a first terminal in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the first communication network; or, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, the second media function entity is deployed on a Transcoder Gateway in the first communication network, and the second control function entity is deployed on an Interconnection Border Control Function network element in the first communication network; or, the first media function entity is deployed on a Transcoder Gateway in the first communication network, the second media function entity is deployed on a Transcoder Gateway in the second communication network, and the second control function entity is deployed on an Interconnection Border Control Function network element in the second communication network; or, the first media function entity is deployed on a Transcoder Gateway in the second communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the second communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the second communication network; or, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the second communication network, the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the second communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the second communication network; or, the first media function entity is deployed on a first terminal in the first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a Unified Session Control Function network element in the first communication network; or, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a Unified Session Control Function network element in the second communication network; or, the first media function entity is deployed on a media function network element in the second communication network, the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a Transcoder Gateway in the first communication network, and the second control function entity is deployed on an Interconnection Border Control Function network element in the first communication network; or, the first media function entity is deployed on a Transcoder Gateway in the second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a Unified Session Control Function network element in the second communication network.Alternatively, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
[0053] Based on the above possible implementation manners, the second control function entity, the first media function entity, and the second media function entity can be deployed in the network in various ways.
[0054] In a possible implementation manner, the first communication network is a calling network, and the second communication network is a called network; or, the first communication network is a called network, and the second communication network is a calling network.
[0055] Based on the above possible implementation manners, the second control function entity, the first media function entity, or the second media function entity can be deployed in the calling network or the called network.
[0056] In a third aspect, a communication method is provided, which can be executed by a first control function entity. The first control function entity herein can refer to the first control function entity itself, or a processor, circuit, module, logic node, chip, or chip system, etc. in the first control function entity that implements the method.
[0057] The method comprises: receiving address information of a second media function entity from a second control function entity; and sending the address information to a first media function entity, the address information being used by the first media function entity to send a media negotiation request to the second media function entity, the media negotiation request being used by the first media function entity to negotiate media information with the second media function entity.
[0058] Based on the method provided in the third aspect, the first control function entity can obtain the address information of the second media function entity from the second control function entity, and send the address information to the first media function entity, so that the first media function entity can initiate a media negotiation request directly to the second media function entity based on the address information, thereby simplifying the media negotiation process and improving the media negotiation efficiency.
[0059] In a possible implementation, the method further includes: sending a first request to the first media function entity, the first request being used to request address information of the first media function entity; receiving a response of the first request from the first media function entity, the response of the first request carrying the address information of the first media function entity; and sending the address information of the first media function entity to the second control function entity.
[0060] Based on the possible implementation, the first control function entity can request the address information of the first media function entity from the first media function entity, and send the requested address information to the second control function entity, so that the second control function entity sends the address information to media function entities that need to perform media negotiation with the first media function entity.
[0061] In a possible implementation, the address information of the third media function entity is carried in a header field or a message body of the first request, and the address information of the first media function entity is carried in a header field or a message body of the response of the first request; the address information of the first media function entity includes first address information and second address information, the first address information being used to connect the first media function entity to the third media function entity, and the second address information being used to connect the first media function entity to the second media function entity.
[0062] Based on the possible implementation, when the first request carries the address information of the third media function entity, the first media function entity can allocate an address information (such as the first address information) to the third media function entity, so that the first media function entity is connected to the third media function entity, and can also allocate an address information (such as the second address information) to the second media function entity, so that the first media function entity is connected to the second media function entity.
[0063] In a possible implementation, the method further includes: receiving the address information of the third media function entity from the third control function entity; sending the first address information to the third control function entity; and sending the address information of the first media function entity to the second control function entity, including: sending the second address information to the second control function entity.
[0064] Based on the possible implementation, the first control function entity can send the first address information to the third control function entity, so that the third control function entity sends the address information to media function entities that need to perform media negotiation with the first media function entity.
[0065] In a possible implementation, the method is applied to a call process between a first terminal and a second terminal, and at least one of the first request or the response of the first request further carries a first identifier, the first identifier being used to indicate a first session between the first terminal and the second terminal, the first session passing through a first media function entity and a second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
[0066] Based on the possible implementation, the first media function entity and the first control function entity can identify the first session based on the first identifier.
[0067] In a possible implementation, the address information of the second media function entity from the second control function entity is received, including: receiving first information from the second control function entity, the first information including the address information of the second media function entity and the first identifier.
[0068] Based on the possible implementation, the first control function entity can identify that the address information of the second media function entity is for the first session.
[0069] In a possible implementation, the address information of the first media function entity is sent to the second control function entity, including: sending second information to the second control function entity, the second information including the address information of the first media function entity and the first identifier.
[0070] Based on the possible implementation, the second control function entity can identify that the address information of the first media function entity is for the first session.
[0071] In a possible implementation, the first control function entity and the first media function entity are deployed on a first terminal in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, and the second control function entity is deployed on a proxy call session control function network element in the first communication network; or the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the first communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in the first communication network, the first media function entity is deployed on a conversion gateway in the first communication network, the second media function entity is deployed on a conversion gateway in the second communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the second communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in the second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in the second communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity and the first media function entity are deployed on a first terminal in the first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a unified session control function network element in the first communication network; or the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.Alternatively, the first control function entity is deployed on a unified session control function network element in the second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on a network interconnection border control function network element in the first communication network; or the first control function entity is deployed on a network interconnection border control function network element in the second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
[0072] Based on the above possible implementation manners, the first control function entity, the second control function entity, the first media function entity, and the second media function entity can be deployed in the network in various manners.
[0073] In a possible implementation manner, the first communication network is a calling network, and the second communication network is a called network; or the first communication network is a called network, and the second communication network is a calling network.
[0074] Based on the above possible implementation manners, the first control function entity, the second control function entity, the first media function entity, or the second media function entity can be deployed in the calling network or the called network.
[0075] In a fourth aspect, a communication method is provided, which can be performed by a second control function entity. The second control function entity herein can refer to the second control function entity itself, or a processor, circuit, module, logic node, chip, or chip system, etc. in the second control function entity that implements the method.
[0076] The method comprises: receiving address information of the first media function entity from the first control function entity; and sending the address information of the first media function entity to the second media function entity. The address information is used by the second media function entity to send a media negotiation response to the first media function entity after receiving a media negotiation request, the media negotiation request and the media negotiation response being used to negotiate media information between the first media function entity and the second media function entity.
[0077] Based on the method provided in the fourth aspect, the second control function entity can obtain the address information of the first media function entity from the first control function entity, and send the address information to the second media function entity, so that the second media function entity can send a media negotiation response directly to the first media function entity based on the address information, thereby simplifying the media negotiation process and improving the media negotiation efficiency.
[0078] In a possible implementation, the sending of the address information of the first media function entity to the second media function entity comprises: sending a second request to the second media function entity, the second request carrying the address information of the first media function entity; and the method further comprises: receiving a response to the second request from the second media function entity, the response to the second request carrying address information of the second media function entity; and sending the address information of the second media function entity to the first control function entity.
[0079] Based on the possible implementation, the second control function entity can request the address information of the second media function entity from the second media function entity, and send the requested address information to the first control function entity, so that the first control function entity sends the address information to a media function entity that needs to perform media negotiation with the second media function entity.
[0080] In a possible implementation, the address information of the first media function entity is carried in a header field or a message body of the second request, and the address information of the second media function entity is carried in a header field or a message body of the response to the second request.
[0081] Based on the possible implementation, the second control function entity can send the address information of the first media function entity to the second media function entity through the header field or the message body of the second request, and obtain the address information of the second media function entity through the header field or the message body of the response to the second request.
[0082] In a possible implementation, the address information of the second media function entity comprises third address information and fourth address information, the third address information being used by the second media function entity to connect to the first media function entity, and the fourth address information being used by the second media function entity to connect to a fourth media function entity.
[0083] Based on the possible implementation manner, the second media function entity can allocate one address information (such as the third address information) to the first media function entity, so that the second media function entity is connected to the first media function entity, and can also allocate one address information (such as the fourth address information) to the fourth media function entity, so that the second media function entity is connected to the fourth media function entity.
[0084] In a possible implementation manner, the method further includes: sending the fourth address information to the fourth control function entity; and sending the address information of the second media function entity to the first control function entity, including: sending the third address information to the first control function entity.
[0085] Based on the possible implementation manner, the fourth control function entity can send the fourth address information to a media function entity that needs to perform media negotiation with the second media function entity, and the first control function entity can send the third address information to a media function entity that needs to perform media negotiation with the second media function entity.
[0086] In a possible implementation manner, the method is applied to a call process between a first terminal and a second terminal, and at least one of the second request or the response of the second request further carries a first identifier, the first identifier being used to indicate a first session between the first terminal and the second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
[0087] Based on the possible implementation manner, the second media function entity and the second control function entity can identify the first session based on the first identifier.
[0088] In a possible implementation manner, the address information of the first media function entity received from the first control function entity includes: receiving second information from the first control function entity, the second information including the address information of the first media function entity and the first identifier.
[0089] Based on the possible implementation manner, the second control function entity can identify that the address information of the first media function entity is for the first session.
[0090] In a possible implementation manner, the address information of the second media function entity sent to the first control function entity includes: sending first information to the first control function entity, the first information including the address information of the second media function entity and the first identifier.
[0091] Based on the possible implementation manner, the first control function entity can identify that the address information of the second media function entity is for the first session.
[0092] In a possible implementation, the first control function entity and the first media function entity are deployed on a first terminal in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, and the second control function entity is deployed on a proxy call session control function network element in the first communication network; or the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the first communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in the first communication network, the first media function entity is deployed on a conversion gateway in the first communication network, the second media function entity is deployed on a conversion gateway in the second communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the second communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in the second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in the second communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity and the first media function entity are deployed on a first terminal in the first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a unified session control function network element in the first communication network; or the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.Alternatively, the first control function entity is deployed on a unified session control function network element in the second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on a network interworking border control function network element in the first communication network; or the first control function entity is deployed on a network interworking border control function network element in the second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
[0093] Based on the above possible implementation manners, the first control function entity, the second control function entity, the first media function entity, and the second media function entity can be deployed in the network in various ways.
[0094] In a possible implementation manner, the first communication network is a calling network, and the second communication network is a called network; or the first communication network is a called network, and the second communication network is a calling network.
[0095] Based on the above possible implementation manners, the first control function entity, the second control function entity, the first media function entity, or the second media function entity can be deployed in the calling network or the called network.
[0096] In a fifth aspect, a communication apparatus is provided for implementing the method in the first aspect. The communication apparatus can be the first media function entity in the first aspect. The communication apparatus comprises modules, units, or means corresponding to the method, which can be implemented by hardware, software, or by a combination of hardware and software. The hardware or software comprises one or more modules or units corresponding to the functions described above.
[0097] In a possible implementation, the communication apparatus can comprise a processing module and an interface module. The processing module can be configured to implement the processing functions in the first aspect and any possible implementation of the first aspect. The processing module can be a processor for example. The interface module, which can also be referred to as an interface unit, can be configured to implement the sending and / or receiving functions in the first aspect and any possible implementation of the first aspect. The interface module can be constituted by an interface circuit, a transceiver, a transceiver, or a communication interface.
[0098] In a possible implementation, the interface module is configured to receive the address information of the second media function entity; the processing module is configured to control the interface module to send, to the second media function entity, a first media negotiation request according to the address information of the second media function entity, the first media negotiation request carrying first media information, the first media information being media information proposed by the first media function entity; the interface module is further configured to receive a first media negotiation response from the second media function entity, the first media negotiation response carrying second media information, the second media information being media information answered by the second media function entity; and the processing module is further configured to control the interface module to send, to the second media function entity, a media stream according to the second media information, or receive, from the second media function entity, a media stream according to the second media information.
[0099] In a possible implementation, the interface module is further configured to send the address information of the first media function entity.
[0100] In a possible implementation, the interface module is further configured to receive a first request from the first control function entity, the first request being used to request the address information of the first media function entity; and the interface module is specifically configured to send, to the first control function entity, a response of the first request, the response of the first request carrying the address information of the first media function entity.
[0101] In a possible implementation, the first request carries address information of the third media function entity in a header field or a message body of the first request, and the response of the first request carries address information of the first media function entity in a header field or a message body of the response of the first request; the address information of the first media function entity includes first address information and second address information, the first address information being used to connect the first media function entity to the third media function entity, and the second address information being used to connect the first media function entity to the second media function entity.
[0102] In a possible implementation, the interface module is further configured to receive a fourth media negotiation request from the third media function entity, the fourth media negotiation request carrying seventh media information, the seventh media information being proposed media information of the third media function entity, and the seventh media information being used to determine the first media information; and the interface module is further configured to send a fourth media negotiation response to the third media function entity, the fourth media negotiation response carrying eighth media information, the eighth media information being answered media information of the first media function entity, and the eighth media information being determined based on the second media information.
[0103] In a possible implementation, at least one of the first request or the response of the first request further carries a first identifier, the first identifier being used to indicate a first session between a first terminal and a second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
[0104] In a possible implementation, the first media negotiation request further carries the first identifier.
[0105] In a possible implementation, the first media negotiation response further carries the first identifier.
[0106] In a possible implementation, the processing module is further configured to determine that media information of the first session needs to be updated, and control the interface module to send a second media negotiation request to the second media function entity according to the address information of the second media function entity, the second media negotiation request carrying third media information, the third media information being updated media information; the interface module is further configured to receive a second media negotiation response from the second media function entity, the second media negotiation response carrying fourth media information, the fourth media information being answered media information of the second media function entity based on the third media information; and the processing module is further configured to control the interface module to send a media stream to the second media function entity according to the fourth media information, or receive a media stream from the second media function entity according to the fourth media information.
[0107] In a possible implementation, the first control function entity and the first media function entity are deployed on a first terminal in a first communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem (IMS) access media gateway or a media function network element in the first communication network; or the first control function entity is deployed on a proxy call session control function (P-CSCF) network element in the first communication network, the first media function entity is deployed on an IMS access media gateway in the first communication network, and the second media function entity is deployed on a translation gateway in the first communication network; or the first control function entity is deployed on an Inter-Working Border Control Function (I-BCF) network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, and the second media function entity is deployed on a translation gateway in a second communication network; or the first control function entity is deployed on an I-BCF network element in the second communication network, the first media function entity is deployed on a translation gateway in the second communication network, and the second media function entity is deployed on an IMS access media gateway in the second communication network; or the first control function entity is deployed on a P-CSCF network element in the second communication network, the first media function entity is deployed on an IMS access media gateway in the second communication network, and the second media function entity is deployed on a second terminal in the second communication network; or the first control function entity is deployed on a P-CSCF network element in the first communication network, the first media function entity is deployed on an IMS access media gateway in the first communication network, and the second media function entity is deployed on an IMS access media gateway in the second communication network; or the first control function entity is deployed on a unified session control function (US-CSCF) network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on a media function network element in the second communication network; or the first control function entity is deployed on a US-CSCF network element in the second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity is deployed on a second terminal in the second communication network; or the first control function entity is deployed on a US-CSCF network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on a translation gateway in the first communication network; or the first control function entity is deployed on an I-BCF network element in the second communication network, the first media function entity is deployed on a translation gateway in the second communication network, and the second media function entity is deployed on a media function network element in the second communication network.Or, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network; or, the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, and the second media function entity is deployed on a media function network element in the second communication network.
[0108] In a possible implementation, the first communication network is a calling network, and the second communication network is a called network; or, the first communication network is a called network, and the second communication network is a calling network.
[0109] In a sixth aspect, a communication apparatus is provided for implementing the method in the second aspect. The communication apparatus can be the second media function entity in the second aspect. The communication apparatus includes modules, units, or means corresponding to the method, which can be implemented by hardware, software, or by executing corresponding software by hardware. The hardware or software includes one or more modules or units corresponding to the above functions.
[0110] In a possible implementation, the communication apparatus can include a processing module and an interface module. The processing module can be used to implement the processing functions in the second aspect and any possible implementation of the second aspect. The processing module can be, for example, a processor. The interface module, which can also be referred to as an interface unit, is used to implement the sending and / or receiving functions in the second aspect and any possible implementation of the second aspect. The interface module can be composed of an interface circuit, a transceiver, a transceiver, or a communication interface.
[0111] In a possible implementation, the interface module is configured to receive address information of the first media function entity; the interface module is further configured to receive a first media negotiation request from the first media function entity, the first media negotiation request carrying first media information, the first media information being media information proposed by the first media function entity; the processing module is configured to control the interface module to send, to the first media function entity, a first media negotiation response according to the address information of the first media function entity, the first media negotiation response carrying second media information, the second media information being media information answered by the second media function entity; and the processing module is further configured to control the interface module to send, to the first media function entity, a media stream according to the second media information, or receive, from the first media function entity, a media stream according to the second media information.
[0112] In a possible implementation, the interface module is further configured to send the address information of the second media function entity.
[0113] In a possible implementation, the interface module is specifically configured to receive a second request from the second control function entity, the second request carrying the address information of the first media function entity; and the interface module is further specifically configured to send a response to the second request to the second control function entity, the response to the second request carrying the address information of the second media function entity.
[0114] In a possible implementation, the header field or the message body of the second request carries the address information of the first media function entity, and the header field or the message body of the response to the second request carries the address information of the second media function entity.
[0115] In a possible implementation, the address information of the second media function entity comprises third address information and fourth address information, the third address information being used to connect the second media function entity to the first media function entity, and the fourth address information being used to connect the second media function entity to a fourth media function entity.
[0116] In a possible implementation, the interface module is further configured to send a fifth media negotiation request to the fourth media function entity, the fifth media negotiation request carrying ninth media information, the ninth media information being media information proposed by the second media function entity, the ninth media information being determined based on the first media information; and the interface module is further configured to receive a fifth media negotiation response from the fourth media function entity, the fifth media negotiation response carrying tenth media information, the tenth media information being media information answered by the fourth media function entity, the tenth media information being used to determine the second media information.
[0117] In a possible implementation, at least one of the second request or the response to the second request further carries a first identifier, the first identifier being used to indicate a first session between a first terminal and a second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
[0118] In a possible implementation, the first media negotiation request further carries the first identifier.
[0119] In a possible implementation, the first media negotiation response further carries the first identifier.
[0120] In a possible implementation, the processing module is further configured to determine that the media information of the first session needs to be updated, and control the interface module to send a third media negotiation request to the first media function entity according to the address information of the first media function entity, where the third media negotiation request carries fifth media information, and the fifth media information is updated media information. The interface module is further configured to receive a third media negotiation response from the first media function entity, where the third media negotiation response carries sixth media information, and the sixth media information is media information that the first media function entity answers based on the fifth media information. The processing module is further configured to control the interface module to send a media stream to the first media function entity according to the sixth media information, or receive a media stream from the first media function entity according to the sixth media information.
[0121] In a possible implementation, the first media function entity is deployed on a first terminal in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem (IMS) access media gateway in the first communication network, and the second control function entity is deployed on a proxy call session control function (P-CSCF) network element in the first communication network; or the first media function entity is deployed on an IMS access media gateway in the first communication network, the second media function entity is deployed on a transcoder gateway in the first communication network, and the second control function entity is deployed on an Inter-Working Border Control Function (I-BCF) network element in the first communication network; or the first media function entity is deployed on a transcoder gateway in the first communication network, the second media function entity is deployed on a transcoder gateway in a second communication network, and the second control function entity is deployed on an I-BCF network element in the second communication network; or the first media function entity is deployed on a transcoder gateway in the second communication network, the second media function entity is deployed on an IMS access media gateway in the second communication network, and the second control function entity is deployed on a P-CSCF network element in the second communication network; or the first media function entity is deployed on an IMS access media gateway in the second communication network, the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first media function entity is deployed on an IMS access media gateway in the first communication network, the second media function entity is deployed on an IMS access media gateway in the second communication network, and the second control function entity is deployed on a P-CSCF network element in the second communication network; or the first media function entity is deployed on a first terminal in the first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a unified session control function (U-SCF) network element in the first communication network; or the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a U-SCF network element in the second communication network; or the first media function entity is deployed on a media function network element in the second communication network, the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a transcoder gateway in the first communication network, and the second control function entity is deployed on an I-BCF network element in the first communication network.Or, the first media function entity is deployed on a conversion gateway in a second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or, the first media function entity is deployed on a media function network element in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
[0122] In a possible implementation, the first communication network is a calling network, and the second communication network is a called network; or, the first communication network is a called network, and the second communication network is a calling network.
[0123] In a seventh aspect, a communication apparatus is provided for implementing the method in the third aspect. The communication apparatus can be the first control function entity in the third aspect. The communication apparatus includes modules, units, or means corresponding to the method, which can be implemented by hardware, software, or by a combination of hardware and software. The hardware or software includes one or more modules or units corresponding to the functions described above.
[0124] In a possible implementation, the communication apparatus can include a processing module and an interface module. The processing module can be configured to perform the processing functions in the third aspect and any possible implementation thereof. The processing module can be, for example, a processor. The interface module, which can also be referred to as an interface unit, is configured to perform the sending and / or receiving functions in the third aspect and any possible implementation thereof. The interface module can be implemented by an interface circuit, a transceiver, a transceiver, or a communication interface.
[0125] In a possible implementation, the processing module is configured to control the interface module to receive address information of the second media function entity from the second control function entity, and control the interface module to send the address information to the first media function entity, where the address information is used by the first media function entity to send a media negotiation request to the second media function entity, and the media negotiation request is used by the first media function entity to negotiate media information with the second media function entity.
[0126] In a possible implementation, the processing module is further configured to control the interface module to send a first request to the first media function entity, where the first request is used to request address information of the first media function entity; the processing module is further configured to control the interface module to receive a response to the first request from the first media function entity, where the response to the first request carries the address information of the first media function entity; and the processing module is further configured to control the interface module to send the address information of the first media function entity to the second control function entity.
[0127] In a possible implementation, the address information of the third media function entity is carried in a header field or a message body of the first request, and the address information of the first media function entity is carried in a header field or a message body of the response to the first request; the address information of the first media function entity includes first address information and second address information, where the first address information is used to connect the first media function entity to the third media function entity, and the second address information is used to connect the first media function entity to the second media function entity.
[0128] In a possible implementation, the processing module is further configured to control the interface module to receive the address information of the third media function entity from a third control function entity; the processing module is further configured to control the interface module to send the first address information to the third control function entity; and the processing module is specifically configured to control the interface module to send the second address information to the second control function entity.
[0129] In a possible implementation, at least one of the first request or the response to the first request further carries a first identifier, where the first identifier is used to indicate a first session between a first terminal and a second terminal, the first session passes through the first media function entity and the second media function entity, and the first session is used to transmit a media stream between the first terminal and the second terminal.
[0130] In a possible implementation, the processing module is specifically configured to control the interface module to receive first information from the second control function entity, where the first information includes the address information of the second media function entity and the first identifier.
[0131] In a possible implementation, the processing module is specifically configured to control the interface module to send second information to the second control function entity, where the second information includes the address information of the first media function entity and the first identifier.
[0132] In a possible implementation, the first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, and the second control function entity is deployed on a proxy call session control function network element in the first communication network; or the first control function entity is deployed on a proxy call session control function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the first communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in a first communication network, the first media function entity is deployed on a conversion gateway in the first communication network, the second media function entity is deployed on a conversion gateway in a second communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the second communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in a second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in a second communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a unified session control function network element in the first communication network.Or, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or, the first control function entity is deployed on a unified session control function network element in the second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on an interconnection border control function network element in the first communication network; or, the first control function entity is deployed on an interconnection border control function network element in the second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or, the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
[0133] In a possible implementation, the first communication network is a calling network, and the second communication network is a called network; or, the first communication network is a called network, and the second communication network is a calling network.
[0134] In an eighth aspect, a communication apparatus is provided for implementing the method in the fourth aspect. The communication apparatus can be the second control function entity in the fourth aspect. The communication apparatus comprises modules, units, or means corresponding to the method, which can be implemented by hardware, software, or by a combination of hardware and software. The hardware or software comprises one or more modules or units corresponding to the functions described above.
[0135] In a possible implementation, the communication apparatus can comprise a processing module and an interface module. The processing module can be configured to implement the processing functions in the fourth aspect and any possible implementation thereof. The processing module can be, for example, a processor. The interface module, which can also be referred to as an interface unit, is configured to implement the sending and / or receiving functions in the fourth aspect and any possible implementation thereof. The interface module can be constituted by an interface circuit, a transceiver, a transceiver, or a communication interface.
[0136] In a possible implementation, the processing module is configured to control the interface module to receive address information of a first media function entity from a first control function entity; and the processing module is further configured to control the interface module to send the address information of the first media function entity to a second media function entity, the address information being used by the second media function entity to send a media negotiation response to the first media function entity after receiving a media negotiation request, the media negotiation request and the media negotiation response being used to negotiate media information between the first media function entity and the second media function entity.
[0137] In a possible implementation, the processing module is specifically configured to control the interface module to send a second request to the second media function entity, the second request carrying the address information of the first media function entity; the processing module is further configured to control the interface module to receive a response to the second request from the second media function entity, the response to the second request carrying address information of the second media function entity; and the processing module is further configured to control the interface module to send the address information of the second media function entity to the first control function entity.
[0138] In a possible implementation, the address information of the first media function entity is carried in a header field or a message body of the second request, and the address information of the second media function entity is carried in a header field or a message body of the response to the second request.
[0139] In a possible implementation, the address information of the second media function entity comprises third address information and fourth address information, the third address information being used by the second media function entity to connect to the first media function entity, and the fourth address information being used by the second media function entity to connect to a fourth media function entity.
[0140] In a possible implementation, the processing module is further configured to control the interface module to send the fourth address information to a fourth control function entity; and the processing module is specifically configured to control the interface module to send the third address information to the first control function entity.
[0141] In a possible implementation, at least one of the second request or the response of the second request further carries a first identifier, the first identifier being used to indicate a first session between the first terminal and the second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
[0142] In a possible implementation, the processing module is specifically configured to control the interface module to receive second information from the first control function entity, the second information comprising address information of the first media function entity and the first identifier.
[0143] In a possible implementation, the processing module is specifically configured to control the interface module to send first information to the first control function entity, the first information comprising address information of the second media function entity and the first identifier.
[0144] In a possible implementation, the first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, and the second control function entity is deployed on a proxy call session control function network element in the first communication network; or the first control function entity is deployed on a proxy call session control function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the first communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in a first communication network, the first media function entity is deployed on a conversion gateway in the first communication network, the second media function entity is deployed on a conversion gateway in a second communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the second communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in a second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in a second communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or the first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a unified session control function network element in the first communication network.Or, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or, the first control function entity is deployed on a unified session control function network element in the second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on an interconnection border control function network element in the first communication network; or, the first control function entity is deployed on an interconnection border control function network element in the second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or, the first control function entity is deployed on a unified session control function network element in the first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or, the first control function entity is deployed on a proxy call session control function network element in the first communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the first communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
[0145] In a possible implementation, the first communication network is a calling network, and the second communication network is a called network; or, the first communication network is a called network, and the second communication network is a calling network.
[0146] A ninth aspect provides a communication device, comprising: a processor; configured to cause the communication device to perform the method described in any of the preceding aspects by executing a computer program (or computer-executable instructions) stored in a memory, and / or by means of logic circuitry. The communication device may be a first media function entity as described in the first aspect; or, the communication device may be a second media function entity as described in the second aspect; or, the communication device may be a first control function entity as described in the third aspect; or, the communication device may be a second control function entity as described in the fourth aspect. Optionally, the number of processors may be one or more.
[0147] In one possible implementation, the communication device also includes a memory.
[0148] In one possible implementation, the processor and memory are integrated together; or, the memory is independent of the processor.
[0149] In one possible implementation, the communication device further includes a communication interface for communicating with other devices, such as transmitting or receiving data and / or signals. Exemplarily, the communication interface may be a transceiver, circuit, bus, module, or other type of communication interface.
[0150] In one possible implementation, the communication device is a chip or a chip system. Optionally, when the communication device is a chip system, it can be composed of chips or may include chips and other discrete components.
[0151] A tenth aspect provides a communication device, comprising: a processor and an interface circuit; the interface circuit being configured to receive a computer program or instructions and transmit them to the processor; the processor being configured to execute the computer program or instructions to cause the communication device to perform the method described in any of the preceding aspects. The communication device may be a first media function entity as described in the first aspect; or, the communication device may be a second media function entity as described in the second aspect; or, the communication device may be a first control function entity as described in the third aspect; or, the communication device may be a second control function entity as described in the fourth aspect. Optionally, the number of processors may be one or more.
[0152] In one possible implementation, the communication device is a chip or a chip system. Optionally, when the communication device is a chip system, it can be composed of chips or may include chips and other discrete components.
[0153] Eleventhly, a computer-readable storage medium is provided, which stores instructions that, when executed on a computer, enable the computer to perform the methods described in any of the preceding aspects.
[0154] In a twelfth aspect, a computer program product containing instructions, which when executed on a computer, enable the computer to perform the method of any one of the preceding aspects.
[0155] In a thirteenth aspect, a communication system is provided, which comprises at least one of: a first media function entity configured to perform the method of the first aspect, a second media function entity configured to perform the method of the second aspect, a first control function entity configured to perform the method of the third aspect, or a second media function entity configured to perform the method of the fourth aspect.
[0156] The technical effects brought by any possible implementation of the fifth aspect to the thirteenth aspect can be referred to the technical effects brought by any one of the first aspect to the fourth aspect or any possible implementation of any one of the first aspect to the fourth aspect, which will not be repeated here.
[0157] It can be understood that the solutions in each of the aspects can be combined, provided that the solutions are not contradictory. BRIEF DESCRIPTION OF DRAWINGS
[0158] FIG. 1A is a schematic diagram of an internet protocol multimedia subsystem (IMS) network according to the present application;
[0159] FIG. 1B is a schematic diagram of an IMS network according to the present application;
[0160] FIG. 1C is a schematic diagram of a real-time communication network according to the present application;
[0161] FIG. 1D is a schematic diagram of a mixed network of an IMS network and a real-time communication network according to the present application;
[0162] FIG. 1E is a schematic diagram of a mixed network of an IMS network and a real-time communication network according to the present application;
[0163] FIG. 1F is a schematic diagram of an interaction between an SDP offerer and an SDP answerer according to the present application;
[0164] FIG. 2 is a schematic diagram of a communication system architecture according to the present application;
[0165] FIG. 3 is a schematic diagram of a hardware structure of a communication apparatus according to the present application;
[0166] FIG. 4 is a schematic diagram of a communication method according to the present application;
[0167] Fig. 5 is a flowchart of a communication method provided by the present application;
[0168] Fig. 6 is a flowchart of a communication method provided by the present application;
[0169] Fig. 7 is a flowchart of a communication method provided by the present application;
[0170] Fig. 8 is a flowchart of a communication method provided by the present application;
[0171] Fig. 9 is a flowchart of a communication method provided by the present application;
[0172] Fig. 10 is a structural diagram of a communication device provided by the present application. DETAILED DESCRIPTION
[0173] Before the technical solutions of the present application are introduced, the related technical terms involved in the present application are explained and described. It can be understood that these explanations and descriptions are for the purpose of making the present application easier to be understood, and should not be regarded as limiting the scope of protection required by the present application.
[0174] 1. Terminal
[0175] The terminal in this application is a device with wireless transceiving function, which can be deployed on land, including indoor, outdoor, handheld or vehicle-mounted; can also be deployed on water surface (such as ships, etc.); can also be deployed in the air (such as airplanes, balloons and satellites, etc.). The terminal can also be called terminal equipment, which can be user equipment (UE), mobile station (MS), mobile terminal (MT), etc., or a device for providing voice or data connectivity to users. Among them, the UE includes handheld devices with wireless communication function, vehicle-mounted devices (such as cars, bicycles, electric vehicles, airplanes, ships, trains, high-speed rails, etc.), wearable devices (such as smart watches, smart bracelets, pedometers, etc.) or computing devices. Exemplarily, the UE can be a mobile phone, a tablet computer, a notebook computer, a palm computer, a mobile internet device (MID), a satellite terminal or a computer with wireless transceiving function. The UE can also be a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless modem, a smart point of sale (POS) machine, a customer-premises equipment (CPE), a smart robot, a mechanical arm, a workshop device, a smart home device (such as a refrigerator, a television, an air conditioner, an electric meter, etc.), a wireless terminal in industrial control, a wireless terminal in unmanned driving, a wireless terminal in remote medical treatment, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in smart traffic, a wireless terminal in smart city, a wireless terminal in smart home, a vehicle-mounted terminal, a road side unit (RSU) with terminal function, or a flight device (such as a smart robot, a hot air balloon, a drone, an airplane), etc. The terminal can also be other devices with terminal function, for example, the terminal can also be a device with terminal function in device to device (D2D) communication.
[0176] By way of example, and without limitation, in the present application, a terminal can be a wearable device. A wearable device can also be referred to as a wearable smart device, which is a general term for devices that are designed by applying wearable technology to daily wear, such as glasses, gloves, watches, clothing, and shoes, etc. A wearable device is a portable device that is directly worn on the body or integrated into a user's clothes or accessories. For example, a wearable device is not only a hardware device, but also a device that achieves powerful functions through software support and data interaction, cloud interaction. Broadly, a wearable smart device includes devices with full functions and large sizes that can achieve complete or partial functions without relying on a smart phone, such as smart watches or smart glasses, etc., and devices that focus on a certain type of application function and need to be used in cooperation with other devices, such as smart phones, such as various types of smart wristbands, smart jewelry, etc.
[0177] In the present application, a terminal can be a terminal in an internet of things (IoT) system, which is an important part of future information technology development, and its main technical feature is to connect objects through communication technology and network to realize the intelligent network of man-machine interconnection and object-object interconnection. The terminal in the present application can be a terminal in machine type communication (MTC).
[0178] The terminal of the present application can be an on-board module, an on-board module group, an on-board component, an on-board chip, an on-board unit (OBU) or a telematics box (T-BOX) built into a vehicle as one or more components or units, and the vehicle can implement the method of the present application through the built-in on-board module, on-board module group, on-board component, on-board chip, on-board unit or T-BOX. The terminal can also be a whole vehicle device. Therefore, the present application can be applied to the Internet of Vehicles, such as vehicle to everything (V2X), long term evolution vehicle (LTE-V), vehicle to vehicle (V2V), etc.
[0179] 2. Call process
[0180] The call process in the present application refers to a process in which a terminal participates as a calling party or a called party, and is connected to one or more other terminals for voice call or video call through a communication network (such as an IMS network, a real-time communication network or a mixed network of the two, etc.). The IMS network can be as shown in FIG. 1A or FIG. 1B, the real-time communication network can be as shown in FIG. 1C, and the mixed network can be as shown in FIG. 1D or FIG. 1E.
[0181] In the present application, the call process can cover the whole process from the start of dialing to the end of the call, or can cover part of the process from the start of dialing to the end of the call, such as the process from the start of dialing to the user taking off the handset, without limitation. The call process in the present application can be a one-to-one call process, or a one-to-many (such as a conference) call process; the present application is described by taking the one-to-one call process as an example, but the related solutions can be used for the one-to-many call process.
[0182] 3. IMS network
[0183] The IMS network described in the present application is an open system based on Internet Protocol (IP) and providing various multimedia services to users. For example, the IMS network can include one or more of the following network elements: a proxy-call session control function (P-CSCF) network element, an interrogating-call session control function (I-CSCF) network element, a serving-call session control function (S-CSCF) network element, a multimedia telephony application server (MMTel AS), an interconnection border control function (IBCF) network element, an IMS-access media gateway (IMS-AGW), or a transition gateway (TrGW). It should be understood that the above network elements can be independently deployed on various physical devices, or part of the above network elements can be deployed on the same physical device, which is not specifically limited in the present application.
[0184] In the IMS network, the P-CSCF network element, the I-CSCF network element, the S-CSCF network element, the MMTel AS, and the IBCF network element are control plane network elements or signaling plane network elements, which are used to process operations related to session control, such as creating a session or updating a session. The IMS-AGW and the TrGW are media plane network elements, which are used to process operations related to media, such as media negotiation or transmitting a media stream. The session (e.g., the first session in the embodiments described below) described in the present application refers to a logical connection between terminals, and the session can pass through one or more media plane network elements. The session can be used to transmit a media stream between terminals. The media stream described in the present application refers to media data generated by a terminal, such as one or more of audio data, video data, text data, or image data. The functions of the network elements are briefly described below.
[0185] The P-CSCF network element is located in a visited network, is an entry node for a user to access the IMS network, and is mainly responsible for forwarding signaling between the user and a home network.
[0186] The I-CSCF network element is located in a home network, is a unified entry point of the home network, and is mainly responsible for allocating or querying an S-CSCF serving a user.
[0187] The S-CSCF network element is also located in the home network, is a central node of the IMS network, and is mainly responsible for registration, authentication, session, routing, and service triggering of a user.
[0188] The MMTel AS is used to provide multimedia services, such as multimedia conferencing, call waiting, or call holding.
[0189] The IBCF network element is used to provide signaling interworking functions with other IP networks.
[0190] The IMS-AGW is used to provide a media anchor point for accessing an entry of the IMS network.
[0191] The TrGW is used to provide media interworking functions with other IP networks.
[0192] The IMS network is described below by taking FIG. 1A and FIG. 1B as examples. It should be understood that FIG. 1A and FIG. 1B are only examples of the IMS network, and in specific applications, the IMS network can also be in other forms, for example, the IMS network can include more or fewer network elements than those shown in FIG. 1A or FIG. 1B, or one or more network elements in FIG. 1A or FIG. 1B can also be replaced by other network elements with similar functions, without limitation.
[0193] The IMS network 10 shown in FIG. 1A includes a P-CSCF network element 1005, an I / S-CSCF network element 1004, an MMTEL AS 1003, an MMTEL AS 1007, an I / S-CSCF network element 1008, a P-CSCF network element 1009, an IMS-AGW 1006, and an IMS-AGW 1010. Among them, the I / S-CSCF network element is provided with an I-CSCF and an S-CSCF. It should be understood that the I / S-CSCF network element in the present application is a short form of the I-CSCF network element and the S-CSCF network element, but does not mean that the I-CSCF network element and the S-CSCF network element are the same physical device. In a specific application, the I-CSCF and the S-CSCF can be independently deployed on different physical devices, or can be deployed on the same physical device, which is not limited. Here, a unified description is made, and the following will not be repeated. In FIG. 1A, the signaling message (such as an invitation request, a 183 message, or an update request) sent by the terminal 1001 can pass through the P-CSCF network element 1005, the I / S-CSCF network element 1004, the MMTEL AS 1003, the I / S-CSCF network element 1004, the I / S-CSCF network element 1008, the MMTEL AS 1007, the I / S-CSCF network element 1008, the P-CSCF network element 1009, and reach the terminal 1002. The media message (such as a media negotiation request (MediaNegotiationRequest) or a media negotiation response (MediaNegotiationResponse)) sent by the terminal 1001 (or the terminal 1002) can pass through the IMS-AGW 1006 and the IMS-AGW 1010 to reach the terminal 1002 (or the terminal 1001). Conversely, the signaling message or the media message sent by the terminal 1002 can reach the terminal 1001 along the opposite path. The session between the terminal 1001 and the terminal 1002 can pass through the IMS-AGW 1006 and the IMS-AGW 1010, and the session can transmit the media stream between the terminal 1001 and the terminal 1002.
[0194] It can be understood that when the terminal 1001 participates in the call process as a caller and the terminal 1002 participates in the call process as a callee, the P-CSCF network element 1005, the I / S-CSCF network element 1004, the MMTEL AS 1003, and the IMS-AGW 1006 can be regarded as network elements in a caller domain or network elements in a caller network, and the P-CSCF network element 1009, the I / S-CSCF network element 1008, the MMTEL AS 1007, and the IMS-AGW 1010 can be regarded as network elements in a callee domain or network elements in a callee network. Similarly, when the terminal 1001 participates in the call process as a callee and the terminal 1002 participates in the call process as a caller, the P-CSCF network element 1005, the I / S-CSCF network element 1004, the MMTEL AS 1003, and the IMS-AGW 1006 can be regarded as network elements in a callee domain or network elements in a callee network, and the P-CSCF network element 1009, the I / S-CSCF network element 1008, the MMTEL AS 1007, and the IMS-AGW 1010 can be regarded as network elements in a caller domain or network elements in a caller network.
[0195] The IMS network 11 shown in FIG. 1B includes a P-CSCF network element 1105, an I / S-CSCF network element 1104, an MMTEL AS 1103, an IBCF network element 1106, an IBCF network element 1107, an MMTEL AS 1108, an I / S-CSCF network element 1109, a P-CSCF network element 1110, an IMS-AGW 1111, a TrGW 1112, a TrGW 1113, and an IMS-AGW 1114. In FIG. 1B, a signaling message (such as an INVITE request, a 183 message, or an UPDATE request) sent by the terminal 1101 can reach the terminal 1102 via the P-CSCF network element 1105, the I / S-CSCF network element 1104, the MMTEL AS 1103, the I / S-CSCF network element 1104, the IBCF network element 1106, the IBCF network element 1107, the I / S-CSCF network element 1109, the MMTEL AS 1108, the I / S-CSCF network element 1109, the P-CSCF network element 1110. A media message (such as a media negotiation request or a media negotiation response) sent by the terminal 1101 can reach the terminal 1102 via the IMS-AGW 1111, the TrGW 1112, the TrGW 1113, and the IMS-AGW 1114. Conversely, a signaling message or a media message sent by the terminal 1102 can reach the terminal 1101 along the reverse path. A session between the terminal 1101 and the terminal 1102 can pass through the IMS-AGW 1111, the TrGW 1112, the TrGW 1113, and the IMS-AGW 1114, and the session can transmit a media stream between the terminal 1101 and the terminal 1102.
[0196] It can be understood that when the terminal 1101 participates in the call process as a caller and the terminal 1102 participates in the call process as a callee, the P-CSCF network element 1105, the I / S-CSCF network element 1104, the MMTEL AS 1103, the IBCF network element 1106, the IMS-AGW 1111 and the TrGW 1112 can be regarded as network elements in a caller domain or network elements in a caller network, and the P-CSCF network element 1110, the I / S-CSCF network element 1109, the MMTEL AS 1108, the IBCF network element 1107, the IMS-AGW 1114 and the TrGW 1113 can be regarded as network elements in a callee domain or network elements in a callee network. Similarly, when the terminal 1101 participates in the call process as a callee and the terminal 1102 participates in the call process as a caller, the P-CSCF network element 1105, the I / S-CSCF network element 1104, the MMTEL AS 1103, the IBCF network element 1106, the IMS-AGW 1111 and the TrGW 1112 can be regarded as network elements in a callee domain or network elements in a callee network, and the P-CSCF network element 1110, the I / S-CSCF network element 1109, the MMTEL AS 1108, the IBCF network element 1107, the IMS-AGW 1114 and the TrGW 1113 can be regarded as network elements in a caller domain or network elements in a caller network.
[0197] Compared with the IMS network 10 shown in FIG. 1A, the signaling messages in the IMS network 11 can also pass through the IBCF network element (such as the IBCF network element 1106 and the IBCF network element 1107), and the media messages in the IMS network 11 can also pass through the TrGW (such as the TrGW 1112 and the TrGW 1113). In specific applications, whether the signaling messages pass through the IBCF network element and whether the media messages pass through the TrGW are related to whether the networks in which the caller terminal and the callee terminal are located are the same. If the networks in which the caller terminal and the callee terminal are located are the same (such as being in the same network managed by an operator), the signaling messages do not need to pass through the IBCF network element, and the media messages do not need to pass through the TrGW; if the networks in which the caller terminal and the callee terminal are located are different (such as being in different networks managed by different operators), the signaling messages pass through the IBCF network element, and the media messages pass through the TrGW.
[0198] 4. Real-time communication network
[0199] The real-time communication network described in the present application can also provide multimedia services to users. Compared with the IMS network, the network architecture of the real-time communication network is simple, so that the multimedia services can be provided to the users more timely. For example, the real-time communication network can include one or more of the following network elements: a unified session control function (USF) network element, or a media function (MF) network element. It should be understood that the above network elements can be independently deployed on various physical devices, or part of the above network elements can be deployed on the same physical device, and the present application does not make specific limitations.
[0200] In the real-time communication network, the USF network element is a control plane network element or a signaling plane network element, which is used to process operations related to session control, such as creating a session or updating a session. The MF network element is a media plane network element, which is used to process operations related to media, such as media negotiation or transmission of media stream. Among them, the USF network element can implement session access or session connection control. Optionally, the USF network element can also provide signaling interworking function with other IP networks. The MF network element can implement media processing functions such as media negotiation and media forwarding. Optionally, the MF network element can also provide media interworking function with other IP networks. In addition, in the real-time communication network, the USF network element can also allocate the MF network element to the terminal according to the location of the terminal access.
[0201] In the real-time communication network, the messages between the terminal and the network can be real-time communication protocol messages carried based on user datagram protocol (UDP), quick UDP internet connection (QUIC), websocket or webtransport, or can be session initiation protocol (SIP) messages, without limitation. The messages between the network elements (or network functions) in the network can be messages carried based on hypertext transfer protocol (HTTP).
[0202] The following will take FIG. 1C as an example to introduce the real-time communication network. It should be understood that FIG. 1C is only an example of the real-time communication network, and in specific applications, the real-time communication network can also be in other forms, for example, the real-time communication network can include more or fewer network elements than those shown in FIG. 1C, or one or more network elements in FIG. 1C can also be replaced by other network elements with similar functions, without limitation.
[0203] The real-time communication network 12 shown in FIG. 1C includes a USF network element 1203, a USF network element 1204, a MF network element 1205, and a MF network element 1206. In FIG. 1C, a signaling message (e.g., an invite request, a 183 message, or an update request) sent by the terminal 1201 can reach the terminal 1202 via the USF network element 1203 and the USF network element 1204. A media message (e.g., a media negotiation request or a media negotiation response) sent by the terminal 1201 can reach the terminal 1202 via the MF network element 1205 and the MF network element 1206. Conversely, a signaling message or a media message sent by the terminal 1202 can reach the terminal 1201 along the reverse path. A session between the terminal 1201 and the terminal 1202 can pass through the MF network element 1205 and the MF network element 1206, and the session can transmit a media stream between the terminal 1201 and the terminal 1202.
[0204] It can be understood that when the terminal 1201 participates in a call process as a calling terminal and the terminal 1202 participates in the call process as a called terminal, the USF network element 1203 and the MF network element 1205 can be regarded as network elements in a calling domain or network elements in a calling network, and the USF network element 1204 and the MF network element 1206 can be regarded as network elements in a called domain or network elements in a called network. Similarly, when the terminal 1201 participates in a call process as a called terminal and the terminal 1202 participates in the call process as a calling terminal, the USF network element 1203 and the MF network element 1205 can be regarded as network elements in a called domain or network elements in a called network, and the USF network element 1204 and the MF network element 1206 can be regarded as network elements in a calling domain or network elements in a calling network.
[0205] 5. Mixed network of IMS network and real-time communication network
[0206] The mixed network described in the present application refers to a network in which some terminals are in an IMS network and some terminals are in a real-time communication network during a call process. For example, the mixed network can be as shown in FIG. 1D or FIG. 1E. It should be understood that FIG. 1D and FIG. 1E are merely examples of the mixed network, and in specific applications, the mixed network can also be in other forms, for example, the mixed network can include more or fewer network elements than those shown in FIG. 1D or FIG. 1E, or one or more network elements in FIG. 1D or FIG. 1E can be replaced by other network elements with similar functions, without limitation.
[0207] The mixed network 14 shown in FIG. ID includes a P-CSCF network element 1405, an I / S-CSCF network element 1404, an MMTEL AS 1403, a USF network element 1407, an IMS-AGW 1406, and an MF network element 1408. In FIG. ID, a signaling message (such as an INVITE request, a 183 message, or an UPDATE request) sent by the terminal 1401 can reach the terminal 1402 via the P-CSCF network element 1405, the I / S-CSCF network element 1404, the MMTEL AS 1403, the I / S-CSCF network element 1404, and the USF network element 1407. A media message (such as a media negotiation request or a media negotiation response) sent by the terminal 1401 can reach the terminal 1402 via the IMS-AGW 1406 and the MF network element 1408. Conversely, a signaling message or a media message sent by the terminal 1402 can reach the terminal 1401 along the reverse path. A session between the terminal 1401 and the terminal 1402 can pass through the IMS-AGW 1406 and the MF network element 1408, and the session can transport media streams between the terminal 1401 and the terminal 1402.
[0208] It can be understood that when the terminal 1401 participates in a call process as a calling terminal and the terminal 1402 participates in the call process as a called terminal, the P-CSCF network element 1405, the I / S-CSCF network element 1404, the MMTEL AS 1403, and the IMS-AGW 1406 can be regarded as network elements in a calling domain or network elements in a calling network, and the USF network element 1407 and the MF network element 1408 can be regarded as network elements in a called domain or network elements in a called network. Similarly, when the terminal 1401 participates in a call process as a called terminal and the terminal 1402 participates in the call process as a calling terminal, the P-CSCF network element 1405, the I / S-CSCF network element 1404, the MMTEL AS 1403, and the IMS-AGW 1406 can be regarded as network elements in a called domain or network elements in a called network, and the USF network element 1407 and the MF network element 1408 can be regarded as network elements in a calling domain or network elements in a calling network.
[0209] The mixed network 15 shown in FIG. IE includes a USF network element 1503, an IBCF network element 1505, an MMTEL AS 1506, an I / S-CSCF network element 1507, a P-CSCF network element 1508, an MF network element 1509, a TrGW 1511, and an IMS-AGW 1512. In FIG. IE, a signaling message (such as an INVITE request, a 183 message, or an UPDATE request) sent by the terminal 1501 can reach the terminal 1502 via the USF network element 1503, the IBCF network element 1505, the I / S-CSCF network element 1507, the MMTEL AS 1506, the I / S-CSCF network element 1507, the P-CSCF network element 1508. A media message (such as a media negotiation request or a media negotiation response) sent by the terminal 1501 can reach the terminal 1502 via the MF network element 1509, the TrGW 1511, and the IMS-AGW 1512. Conversely, a signaling message or a media message sent by the terminal 1502 can reach the terminal 1501 along the reverse path. A session between the terminal 1501 and the terminal 1502 can pass through the MF network element 1509, the TrGW 1511, and the IMS-AGW 1512, and the session can transmit a media stream between the terminal 1501 and the terminal 1502.
[0210] It can be understood that, when the terminal 1501 participates in a call process as a calling terminal and the terminal 1502 participates in the call process as a called terminal, the USF network element 1503 and the MF network element 1509 can be regarded as network elements in a calling domain or network elements in a calling network, and the P-CSCF network element 1508, the I / S-CSCF network element 1507, the MMTEL AS 1506, the IBCF network element 1505, the IMS-AGW 1512, and the TrGW 1511 can be regarded as network elements in a called domain or network elements in a called network. Similarly, when the terminal 1501 participates in a call process as a called terminal and the terminal 1502 participates in the call process as a calling terminal, the USF network element 1503 and the MF network element 1509 can be regarded as network elements in a called domain or network elements in a called network, and the P-CSCF network element 1508, the I / S-CSCF network element 1507, the MMTEL AS 1506, the IBCF network element 1505, the IMS-AGW 1512, and the TrGW 1511 can be regarded as network elements in a calling domain or network elements in a calling network.
[0211] 6、SIP
[0212] The SIP described in the present application is an application layer control protocol for multimedia communication over IP network, which is proposed and studied by the Internet Engineering Task Force (IETF). The SIP can be used to create, modify or terminate a session process in which one or more participants participate. In addition, the SIP can support one or more signaling functions of multimedia communication. For example, the SIP signaling can be used to determine the location of the terminal participating in the communication, i.e., for user positioning. And / or, the SIP signaling can be used for user communication capability negotiation to determine the media type and / or parameters of the communication. And / or, the SIP signaling can be used to determine the user's willingness to interact, such as determining whether the called user is willing to participate in a certain communication. And / or, the SIP signaling can be used to establish a call, such as instructing the called terminal to ring, or determining the session parameters of the calling terminal and the called terminal. And / or, the SIP signaling can be used for call management, such as call transfer, terminating a call, modifying session parameters or invoking services, etc.
[0213] In the present application, SIP signaling communication can be used between control plane network elements (or signaling plane network elements).
[0214] 7、SDP
[0215] The SDP described in the present application is an application layer protocol that can be used to describe a multimedia session, and the SDP is also a text-based protocol. The SIP can use the SDP to complete media negotiation between the calling party and the called party. Among them, the party initiating the media negotiation can be referred to as the SDP offerer, and the party responding to the media negotiation can be referred to as the SDP answerer.
[0216] Exemplarily, as shown in FIG. 1F, the SDP offerer can send SDP offer information (SDP Offer) to the SDP answerer, and the SDP answerer can send SDP answer information (SDP Answer) to the SDP offerer after receiving the SDP Offer. The SDP Offer can carry the capability information of the SDP offerer for sending and receiving media, and the address information of the media for sending and receiving. The SDP Answer carries the information of the SDP answerer responding to the SDP offerer, which can be determined by the SDP answerer based on the capability information of the SDP answerer for sending and receiving media, the address information of the media for sending and receiving, and the information in the SDP Offer. Taking the negotiation of audio and video media information between the SDP offerer and the SDP answerer as an example, the information carried by the SDP Offer can be as shown in Table 1, and the information carried by the SDP Answer can be as shown in Table 2. In Table 1, “c=IN IP4 192.168.0.1” represents the IP address of the SDP offerer; “m=audio 49170 RTP / AVP 0 18” represents that the audio media port of the SDP offerer is “49170”, and the supported audio codec formats are RTP / AVP 0 (the corresponding specific format is PCMU / 8000) and RTP / AVP 18 (the corresponding specific format is G729 / 8000); and “m=video 51372 RTP / AVP 31 32” represents that the video media port of the SDP offerer is “51372”, and the supported video codec formats are RTP / AVP 31 and RTP / AVP 32. In Table 2, “c=IN IP4 192.168.0.3” represents the IP address of the SDP answerer; “m=audio 49172 RTP / AVP 0” represents that the audio media port of the SDP answerer is “49172”, and the audio codec format responded by the SDP answerer is RTP / AVP 0; and “m=video 51372 RTP / AVP 31” represents that the video media port of the SDP answerer is “51372”, and the video codec format responded by the SDP answerer is RTP / AVP 31.
[0217] Table 1
[0218] Table 2
[0219] Based on the above media negotiation, the SDP offerer can determine that the audio data sent to the SDP answerer is encoded based on "PCMU / 8000" and the destination address of the audio data is 192.168.0.3 and the destination port is 49172, and the received audio data from the SDP answerer is decoded based on "PCMU / 8000". The SDP offerer can also determine that the video data sent to the SDP answerer is encoded based on "H261 / 90000" and the destination address of the video data is 192.168.0.3 and the destination port is 51372, and the received video data from the SDP answerer is decoded based on "H261 / 90000".
[0220] Based on the above media negotiation, the SDP answerer can determine that the audio data sent to the SDP offerer is encoded based on "PCMU / 8000" and the destination address of the audio data is 192.168.0.1 and the destination port is 49170, and the received audio data from the SDP offerer is decoded based on "PCMU / 8000". The SDP answerer can also determine that the video data sent to the SDP offerer is encoded based on "H261 / 90000" and the destination address of the video data is 192.168.0.1 and the destination port is 51372, and the received video data from the SDP offerer is decoded based on "H261 / 90000".
[0221] The embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0222] The method provided by the present application can be used in various communication systems. For example, the communication system can be a long term evolution (LTE) system, a 5th generation (5G) communication system, a wireless fidelity (WiFi) system, a 3rd generation partnership project (3GPP) related communication system, a communication system evolved after 5G or a system integrating multiple systems, etc., without limitation. The 5G can also be referred to as new radio (NR). The method provided by the present application will be described below taking the communication system 20 shown in FIG. 2 as an example. FIG. 2 is merely a schematic diagram and does not constitute a limitation on the applicable scenarios of the technical solutions provided by the present application.
[0223] As shown in Fig. 2, an architecture diagram of a communication system 20 provided by the present application is shown. In Fig. 2, the communication system 20 includes a control function entity 201, a control function entity 203 connected with the control function entity 201, and a media function entity 202 connected with the control function entity 203 and the media function entity 202. The communication system 20 further includes a media function entity 204 connected with the control function entity 203 and the media function entity 202.
[0224] The control function entity in the present application, such as the control function entity 201 or the control function entity 203, can be used to process control plane function or signaling plane function during a call process, such as session control. The control function entity 201 can further obtain address information of the media function entity 204 from the control function entity 203, and send the obtained address information to the media function entity 202. The control function entity 203 can further obtain address information of the media function entity 202 from the control function entity 201, and send the obtained address information to the media function entity 204. Exemplarily, the control function entity can be deployed in a terminal, a P-CSCF network element, an IBCF network element, or a USF network element.
[0225] The media function entity in the present application, such as the media function entity 202 or the media function entity 204, can be used to process media plane function during a call process, such as media negotiation, and / or media stream transmission. For example, the media function entity 202 can send a media negotiation request to the media function entity 204 according to the address information of the media function entity 204. After receiving the media negotiation request, the media function entity 204 can send a media negotiation response to the media function entity 202 according to the address information of the media function entity 202. Subsequently, the media function entity 202 and the media function entity 204 can transmit media stream according to the media negotiation result. Exemplarily, the media function entity can be deployed in a terminal, an IMS-AGW, a TrGW, or a MF network element.
[0226] It can be understood that the above-mentioned communication system 20 can be applied to various communication networks, such as an IMS network or a real-time communication network, a hybrid network of the IMS network and the real-time communication network, and the like, which will be described in detail below.
[0227] Case 1: The communication system 20 is applied to an IMS network.
[0228] One possible design, the control function entity 201 and the media function entity 202 are deployed on a first terminal in the first communication network, the media function entity 204 is deployed on an IMS-AGW in the first communication network, and the control function entity 203 is deployed on a P-CSCF network element in the first communication network. Alternatively, the control function entity 201 is deployed on a P-CSCF network element in the first communication network, the media function entity 202 is deployed on an IMS-AGW in the first communication network, the media function entity 204 is deployed on a TrGW in the first communication network, and the control function entity 203 is deployed on an IBCF network element in the first communication network. Alternatively, the control function entity 201 is deployed on an IBCF network element in the first communication network, the media function entity 202 is deployed on a TrGW in the first communication network, the media function entity 204 is deployed on a TrGW in the second communication network, and the control function entity 203 is deployed on an IBCF network element in the second communication network. Alternatively, the control function entity 201 is deployed on an IBCF network element in the second communication network, the media function entity 202 is deployed on a TrGW in the second communication network, the media function entity 204 is deployed on an IMS-AGW in the second communication network, and the control function entity 203 is deployed on a P-CSCF network element in the second communication network. Alternatively, the control function entity 201 is deployed on a P-CSCF network element in the second communication network, the media function entity 202 is deployed on an IMS-AGW in the second communication network, and the media function entity 204 and the control function entity 203 are deployed on a second terminal in the second communication network. Alternatively, the control function entity 201 is deployed on a P-CSCF network element in the first communication network, the media function entity 202 is deployed on an IMS-AGW in the first communication network, the media function entity 204 is deployed on an IMS-AGW in the second communication network, and the control function entity 203 is deployed on a P-CSCF network element in the second communication network. Wherein, the first communication network is the calling network, and the second communication network is the called network; or the first communication network is the called network, and the second communication network is the calling network.
[0229] As an example, when the communication system 20 is applied to the IMS network 10 shown in FIG. 1A, the control function entity 201 and the media function entity 202 are deployed on the terminal 1001, the media function entity 204 is deployed on the IMS-AGW 1006, and the control function entity 203 is deployed on the P-CSCF network element 1005. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1005, the media function entity 202 is deployed on the IMS-AGW 1006, the control function entity 203 is deployed on the P-CSCF network element 1009, and the media function entity 204 is deployed on the IMS-AGW 1010. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1009, the media function entity 202 is deployed on the IMS-AGW 1010, the media function entity 204 and the control function entity 203 are deployed on the terminal 1002. Alternatively, the control function entity 201 and the media function entity 202 are deployed on the terminal 1002, the media function entity 204 is deployed on the IMS-AGW 1010, and the control function entity 203 is deployed on the P-CSCF network element 1009. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1009, the media function entity 202 is deployed on the IMS-AGW 1010, the control function entity 203 is deployed on the P-CSCF network element 1005, and the media function entity 204 is deployed on the IMS-AGW 1006. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1005, the media function entity 202 is deployed on the IMS-AGW 1006, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1001.
[0230] As another example, when the communication system 20 is applied to the IMS network 11 shown in FIG. IB, the control function entity 201 and the media function entity 202 are deployed on the terminal 1101, the media function entity 204 is deployed on the IMS-AGW 1111, and the control function entity 203 is deployed on the P-CSCF network element 1105. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1105, the media function entity 202 is deployed on the IMS-AGW 1111, the media function entity 204 is deployed on the TrGW 1112, and the control function entity 203 is deployed on the IBCF network element 1106. Alternatively, the control function entity 201 is deployed on the IBCF network element 1106, the media function entity 202 is deployed on the TrGW 1112, the media function entity 204 is deployed on the TrGW 1113, and the control function entity 203 is deployed on the IBCF network element 1107. Alternatively, the control function entity 201 is deployed on the IBCF network element 1107, the media function entity 202 is deployed on the TrGW 1113, the media function entity 204 is deployed on the IMS-AGW 1114, and the control function entity 203 is deployed on the P-CSCF network element 1110. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1110, the media function entity 202 is deployed on the IMS-AGW 1114, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1102. Alternatively, the control function entity 201 and the media function entity 202 are deployed on the terminal 1102, the media function entity 204 is deployed on the IMS-AGW 1114, and the control function entity 203 is deployed on the P-CSCF network element 1110. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1110, the media function entity 202 is deployed on the IMS-AGW 1114, the media function entity 204 is deployed on the TrGW 1113, and the control function entity 203 is deployed on the IBCF network element 1107. Alternatively, the control function entity 201 is deployed on the IBCF network element 1107, the media function entity 202 is deployed on the TrGW 1113, the media function entity 204 is deployed on the TrGW 1112, and the control function entity 203 is deployed on the IBCF network element 1106. Alternatively, the control function entity 201 is deployed on the IBCF network element 1106, the media function entity 202 is deployed on the TrGW 1112, the media function entity 204 is deployed on the IMS-AGW 1111, and the control function entity 203 is deployed on the P-CSCF network element 1105. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1105, the media function entity 202 is deployed on the IMS-AGW 1111, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1101.
[0231] Case 2: The communication system 20 is applied to a real-time communication network.
[0232] A possible design, the control function entity 201 and the media function entity 202 are deployed on a first terminal in a first communication network, the media function entity 204 is deployed on a MF network element in the first communication network, and the control function entity 203 is deployed on a USF network element in the first communication network. Alternatively, the control function entity 201 is deployed on a USF network element in the first communication network, the media function entity 202 is deployed on a MF network element in the first communication network, the media function entity 204 is deployed on a MF network element in a second communication network, and the control function entity 203 is deployed on a USF network element in the second communication network. Alternatively, the control function entity 201 is deployed on an IBCF network element in the first communication network, the media function entity 202 is deployed on a TrGW in the first communication network, the media function entity 204 is deployed on a TrGW in the second communication network, and the control function entity 203 is deployed on an IBCF network element in the second communication network. Alternatively, the control function entity 201 is deployed on a USF network element in the first communication network, the media function entity 202 is deployed on a MF network element in the first communication network, the media function entity 204 is deployed on a TrGW in the first communication network, and the control function entity 203 is deployed on an IBCF network element in the first communication network. Alternatively, the control function entity 201 is deployed on an IBCF network element in the second communication network, the media function entity 202 is deployed on a TrGW in the second communication network, the media function entity 204 is deployed on a MF network element in the second communication network, and the control function entity 203 is deployed on a USF network element in the second communication network. Alternatively, the control function entity 201 is deployed on a USF network element in the second communication network, the media function entity 202 is deployed on a MF network element in the second communication network, and the media function entity 204 and the control function entity 203 are deployed on a second terminal in the second communication network. Wherein, the first communication network is a calling network, and the second communication network is a called network; or the first communication network is a called network, and the second communication network is a calling network.
[0233] As an example, when the communication system 20 is applied to the real-time communication network 12 shown in FIG. 1C, the control function entity 201 and the media function entity 202 are deployed on the terminal 1201, the media function entity 204 is deployed on the MF network element 1205, and the control function entity 203 is deployed on the USF network element 1203. Alternatively, the control function entity 201 is deployed on the USF network element 1203, the media function entity 202 is deployed on the MF network element 1205, the media function entity 204 is deployed on the MF network element 1206, and the control function entity 203 is deployed on the USF network element 1204. Alternatively, the control function entity 201 is deployed on the USF network element 1204, the media function entity 202 is deployed on the MF network element 1206, the media function entity 204 and the control function entity 203 are deployed on the terminal 1202. Alternatively, the control function entity 201 and the media function entity 202 are deployed on the terminal 1202, the media function entity 204 is deployed on the MF network element 1206, and the control function entity 203 is deployed on the USF network element 1204. Alternatively, the control function entity 201 is deployed on the USF network element 1204, the media function entity 202 is deployed on the MF network element 1206, the media function entity 204 is deployed on the MF network element 1205, and the control function entity 203 is deployed on the USF network element 1203. Alternatively, the control function entity 201 is deployed on the USF network element 1203, the media function entity 202 is deployed on the MF network element 1205, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1201.
[0234] Case 3: The communication system 20 is applied to a mixed network.
[0235] A possible design, the control function entity 201 and the media function entity 202 are deployed on a first terminal in the first communication network, the media function entity 204 is deployed on an IMS-AGW in the first communication network, and the control function entity 203 is deployed on a P-CSCF network element in the first communication network. Alternatively, the control function entity 201 is deployed on a P-CSCF network element in the first communication network, the media function entity 202 is deployed on an IMS-AGW in the first communication network, the media function entity 204 is deployed on a TrGW in the first communication network, and the control function entity 203 is deployed on an IBCF network element in the first communication network. Alternatively, the control function entity 201 is deployed on an IBCF network element in the first communication network, the media function entity 202 is deployed on a TrGW in the first communication network, the media function entity 204 is deployed on a TrGW in the second communication network, and the control function entity 203 is deployed on an IBCF network element in the second communication network. Alternatively, the control function entity 201 is deployed on an IBCF network element in the second communication network, the media function entity 202 is deployed on a TrGW in the second communication network, the media function entity 204 is deployed on an IMS-AGW in the second communication network, and the control function entity 203 is deployed on a P-CSCF network element in the second communication network. Alternatively, the control function entity 201 is deployed on a P-CSCF network element in the second communication network, the media function entity 202 is deployed on an IMS-AGW in the second communication network, and the media function entity 204 and the control function entity 203 are deployed on a second terminal in the second communication network. Alternatively, the control function entity 201 and the media function entity 202 are deployed on a first terminal in the first communication network, the media function entity 204 is deployed on an MF network element in the first communication network, and the control function entity 203 is deployed on a USF network element in the first communication network. Alternatively, the control function entity 201 is deployed on a USF network element in the second communication network, the media function entity 202 is deployed on an MF network element in the second communication network, and the media function entity 204 and the control function entity 203 are deployed on a second terminal in the second communication network. Alternatively, the control function entity 201 is deployed on a USF network element in the first communication network, the media function entity 202 is deployed on an MF network element in the first communication network, the media function entity 204 is deployed on a TrGW in the first communication network, and the control function entity 203 is deployed on an IBCF network element in the first communication network. Alternatively, the control function entity 201 is deployed on an IBCF network element in the second communication network, the media function entity 202 is deployed on a TrGW in the second communication network, the media function entity 204 is deployed on an MF network element in the second communication network, and the control function entity 203 is deployed on a USF network element in the second communication network.Alternatively, the control function entity 201 is deployed on a USF network element in the first communication network, the media function entity 202 is deployed on a MF network element in the first communication network, the media function entity 204 is deployed on an IMS-AGW in the second communication network, and the control function entity 203 is deployed on a P-CSCF network element in the second communication network. Alternatively, the control function entity 201 is deployed on a P-CSCF network element in the first communication network, the media function entity 202 is deployed on an IMS-AGW in the first communication network, the media function entity 204 is deployed on a MF network element in the second communication network, and the control function entity 203 is deployed on a USF network element in the second communication network. Wherein, the first communication network is the calling network, and the second communication network is the called network; or the first communication network is the called network, and the second communication network is the calling network.
[0236] As an example, when the communication system 20 is applied to the hybrid network 14 shown in FIG. ID, the control function entity 201 and the media function entity 202 are deployed on the terminal 1401, the media function entity 204 is deployed on the IMS-AGW 1406, and the control function entity 203 is deployed on the P-CSCF network element 1405. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1405, the media function entity 202 is deployed on the IMS-AGW 1406, the media function entity 204 is deployed on the MF network element 1408, and the control function entity 203 is deployed on the USF network element 1407. Alternatively, the control function entity 201 is deployed on the USF network element 1407, the media function entity 202 is deployed on the MF network element 1408, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1402. Alternatively, the control function entity 201 and the media function entity 202 are deployed on the terminal 1402, the media function entity 204 is deployed on the MF network element 1408, and the control function entity 203 is deployed on the USF network element 1407. Alternatively, the control function entity 201 is deployed on the USF network element 1407, the media function entity 202 is deployed on the MF network element 1408, the media function entity 204 is deployed on the IMS-AGW network element 1406, and the control function entity 203 is deployed on the P-CSCF network element 1405. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1405, the media function entity 202 is deployed on the IMS-AGW network element 1406, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1401.
[0237] As another example, when the communication system 20 is applied to the hybrid network 15 shown in FIG. IE, the control function entity 201 and the media function entity 202 are deployed on the terminal 1501, the media function entity 204 is deployed on the MF network element 1509, and the control function entity 203 is deployed on the USF network element 1503. Alternatively, the control function entity 201 is deployed on the USF network element 1503, the media function entity 202 is deployed on the MF network element 1509, the media function entity 204 is deployed on the TrGW 1511, and the control function entity 203 is deployed on the IBCF network element 1505. Alternatively, the control function entity 201 is deployed on the IBCF network element 1505, the media function entity 202 is deployed on the TrGW 1511, the media function entity 204 is deployed on the IMS-AGW 1512, and the control function entity 203 is deployed on the P-CSCF network element 1508. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1508, the media function entity 202 is deployed on the IMS-AGW 1512, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1502. Alternatively, the control function entity 201 and the media function entity 202 are deployed on the terminal 1502, the media function entity 204 is deployed on the IMS-AGW network element 1512, and the control function entity 203 is deployed on the P-CSCF network element 1508. Alternatively, the control function entity 201 is deployed on the P-CSCF network element 1508, the media function entity 202 is deployed on the IMS-AGW network element 1512, the media function entity 204 is deployed on the TrGW 1511, and the control function entity 203 is deployed on the IBCF network element 1505. Alternatively, the control function entity 201 is deployed on the IBCF network element 1505, the media function entity 202 is deployed on the TrGW 1511, the media function entity 204 is deployed on the MF network element 1509, and the control function entity 203 is deployed on the USF network element 1503. Alternatively, the control function entity 201 is deployed on the USF network element 1503, the media function entity 202 is deployed on the MF network element 1509, and the media function entity 204 and the control function entity 203 are deployed on the terminal 1501.
[0238] It can be understood that the communication system 20 shown in FIG. 2 is only used for example and does not limit the technical solutions of the present application. Those skilled in the art should understand that, in the specific implementation process, the communication system 20 can also include other devices, and the number of control function entities and media function entities can also be determined according to specific needs, and is not limited.
[0239] Optionally, each entity in FIG. 2 (such as the control function entity 201, the media function entity 202, the control function entity 203, or the media function entity 204, etc.) can also be referred to as a communication apparatus, which can be a general-purpose device or a special-purpose device, and the present application does not make a specific limitation thereon.
[0240] Optionally, the functions of each entity in FIG. 2 (such as the control function entity 201, the media function entity 202, the control function entity 203, or the media function entity 204, etc.) can be implemented by one device, or by multiple devices together, or by one or more functional modules within a device, and the present application does not make a specific limitation thereon. It can be understood that the above functions can be network elements in a hardware device, software functions running on a special-purpose hardware, or a combination of hardware and software, or virtualized functions instantiated on a platform (such as a cloud platform).
[0241] In a specific implementation, each entity in FIG. 2 (such as the control function entity 201, the media function entity 202, the control function entity 203, or the media function entity 204, etc.) can adopt the constituent structure shown in FIG. 3, or include the components shown in FIG. 3. FIG. 3 shows a hardware structure diagram of a communication apparatus applicable to the present application. The communication apparatus 30 includes at least one processor 301 and at least one communication interface 304, for implementing the method provided by the present application. The communication apparatus 30 can also include a communication line 302 and a memory 303.
[0242] The processor 301 can be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of programs of the present application.
[0243] The communication line 302 can include a path for transmitting information between the above components, such as a bus.
[0244] The communication interface 304 is configured to communicate with other devices or communication networks. The communication interface 304 can be any transceiver-like device, such as an Ethernet interface, a radio access network (RAN) interface, a wireless local area networks (WLAN) interface, a transceiver, a pin, a bus, an interface circuit, or a transceiver circuit, etc.
[0245] The memory 303 can be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM), a cache, or other type of dynamic storage device that can store information and instructions, and can be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM), or other optical disc storage, a magneto-optical disc storage (including a compact disc, a laser disc, an optical disc, a digital versatile disc, a Blu-ray disc, etc.), a magnetic disc storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to this. The memory can exist independently and be coupled to the processor 301 through the communication line 302. The memory 303 can also be integrated with the processor 301. The memory provided in the present application can generally have non-volatility.
[0246] The memory 303 is configured to store computer-executed instructions related to the schemes provided in the present application, and the processor 301 is configured to control the execution. The processor 301 is configured to execute the computer-executed instructions stored in the memory 303, so as to implement the method provided in the present application. Alternatively, in the present application, the processor 301 can also be configured to perform the processing-related functions in the method provided in the present application, and the communication interface 304 is responsible for communication with other devices or communication networks, which is not limited in the present application.
[0247] Alternatively, the computer-executed instructions in the present application can also be referred to as application program codes, which are not limited in the present application.
[0248] The coupling in the present application is an indirect coupling or communication connection between devices, units or modules, which can be electrical, mechanical or other forms, and is used for information interaction between devices, units or modules.
[0249] As an embodiment, the processor 301 can include one or more CPUs, such as CPU0 and CPU1 in FIG. 3.
[0250] As an example, the communication device 30 can include multiple processors, such as the processor 301 and the processor 307 in FIG. 3. Each of these processors can be a single-CPU processor or a multi-CPU processor. A processor here can refer to one or more devices, circuits, and / or processing cores for processing data, such as computer program instructions.
[0251] As an example, the communication device 30 can also include an output device 305 and / or an input device 306. The output device 305 is coupled to the processor 301 and can present information in a variety of forms. For example, the output device 305 can be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, a projector, or the like. The input device 306 is coupled to the processor 301 and can receive user input in a variety of forms. For example, the input device 306 can be a mouse, a keyboard, a touch screen device, a sensor device, or the like.
[0252] It can be appreciated that the constituent structure shown in FIG. 3 does not limit the communication device, and the communication device can include more or fewer components than those shown in FIG. 3, or combine some components, or have different arrangement of components.
[0253] The method provided by the present application will be described below in conjunction with the accompanying drawings. Each entity or network element in the following embodiments can have the components shown in FIG. 3, which will not be described herein.
[0254] It can be appreciated that, in the present application, the first media function entity, the second media function entity, the first control function entity, or the second control function entity can perform some or all of the steps in the present application, which are only examples, and the present application can also perform other steps or variations of various steps. In addition, each step can be performed in a different order from that presented in the present application, and it is possible that not all steps in the present application are performed.
[0255] It can be understood that the media function entity (such as the first media function entity or the second media function entity) and the control function entity (such as the first control function entity or the second control function entity) provided in the method provided in the present application are taken as an example to illustrate the execution subject of the interaction, but the present application does not limit the execution subject of the interaction. For example, the media function entity in the method provided in the embodiment of the present application can also be a chip, a chip system, or a processor supporting the media function entity to implement the method, and can also be a logical node, a logical module or software capable of implementing all or part of the functions of the media function entity; the control function entity in the method provided in the present application can also be a chip, a chip system, or a processor supporting the control function entity to implement the method, and can also be a logical node, a logical module or software capable of implementing all or part of the functions of the control function entity.
[0256] As shown in FIG. 4, a communication method provided in the present application is provided. The communication method can be applied to a call process between a first terminal and a second terminal. For example, a process in which the first terminal calls the second terminal, or a process in which the second terminal calls the first terminal. Taking the IMS network 10 shown in FIG. 1A as an example, the first terminal is the terminal 1001, and the second terminal is the terminal 1002; taking the IMS network 11 shown in FIG. 1B as an example, the first terminal is the terminal 1101, and the second terminal is the terminal 1102; taking the real-time communication network 12 shown in FIG. 1C as an example, the first terminal is the terminal 1201, and the second terminal is the terminal 1202; taking the hybrid network 14 shown in FIG. 1D as an example, the first terminal is the terminal 1401, and the second terminal is the terminal 1402; and taking the hybrid network 15 shown in FIG. 1E as an example, the first terminal is the terminal 1501, and the second terminal is the terminal 1502. The communication method can include the following steps:
[0257] S401: The first media function entity obtains address information of the second media function entity, and the second media function entity obtains address information of the first media function entity.
[0258] In the present application, the first media function entity can be the media function entity 202 in the communication system 20 shown in FIG. 2, and the second media function entity can be the media function entity 204 in the communication system 20 shown in FIG. 2.
[0259] In the present application, the address information of the second media function entity is used for the first media function entity to send a message to the second media function entity.
[0260] As an example, the address information of the second media function entity comprises an IP address of the second media function entity. Optionally, the address information of the second media function entity further comprises a port identification or a port number corresponding to the IP address. For example, the address information of the second media function entity comprises: 192.168.176.2:5061. Wherein, "192.168.176.2" is the IP address of the second media function entity, and "5061" is the port number corresponding to the IP address.
[0261] As another example, the address information of the second media function entity comprises a host name or a domain name of the second media function entity. Optionally, the address information of the second media function entity further comprises a port identification or a port number corresponding to the host name or the domain name. For example, the address information of the second media function entity comprises: uas.domain11.com:5060. Wherein, "uas.domain11.com" is the host name of the second media function entity, and "5060" is the port number corresponding to the host name.
[0262] In the present application, the address information of the first media function entity is used by the second media function entity to send a message to the first media function entity.
[0263] As an example, the address information of the first media function entity comprises an IP address of the first media function entity. Optionally, the address information of the first media function entity further comprises a port identification or a port number corresponding to the IP address. For example, the address information of the first media function entity comprises: 192.168.176.1:5061. Wherein, "192.168.176.1" is the IP address of the second media function entity, and "5061" is the port number corresponding to the IP address.
[0264] As another example, the address information of the first media function entity comprises a host name or a domain name of the first media function entity. Optionally, the address information of the first media function entity further comprises a port identification or a port number corresponding to the host name or the domain name. For example, the address information of the first media function entity comprises: uac.domain11.com:5061. Wherein, "uac.domain11.com" is the host name of the first media function entity, and "5061" is the port number corresponding to the host name.
[0265] In the present application, the first media function entity can obtain the address information of the second media function entity from a first control function entity or a second control function entity. The first control function entity can be the control function entity 201 in the communication system 20 shown in Fig. 2, and the second control function entity can be the control function entity 203 in the communication system 20 shown in Fig. 2.
[0266] In a possible implementation, the second media function entity sends the address information of the second media function entity to the second control function entity. After receiving the address information, the second control function entity sends the address information to the first control function entity. After receiving the address information, the first control function entity sends the address information to the first media function entity, so that the first media function entity sends a media negotiation request (e.g., the first media negotiation request in S402 described below) to the second media function entity based on the address information to perform media negotiation.
[0267] It can be understood that the first media function entity and the first control function entity can be deployed on different physical devices or on the same physical device. When the first media function entity and the first control function entity are deployed on the same physical device, the interaction between the first media function entity and the first control function entity is internal interaction of the device, so the first media function entity can obtain the address information from the first control function entity through an internal interface (e.g., an application programming interface (API)) of the device or through internal signaling (e.g., signaling between internal modules of the device); or the first media function entity can directly receive the address information from the second control function entity. Similarly, when the second media function entity and the second control function entity are deployed on the same physical device, the interaction between the second media function entity and the second control function entity is internal interaction of the device, so the second control function entity can obtain the address information from the second media function entity through an internal interface (e.g., an API) of the device or through internal signaling (e.g., signaling between internal modules of the device); or the second media function entity can directly send the address information to the first control function entity.
[0268] In this application, the second media function entity can obtain the address information of the first media function entity from the first control function entity or the second control function entity.
[0269] In a possible implementation, the first media function entity sends the address information of the first media function entity to the first control function entity. After receiving the address information, the first control function entity sends the address information to the second control function entity. After receiving the address information, the second control function entity sends the address information to the second media function entity, so that the second media function entity sends a media negotiation response (e.g., the first media negotiation response in S403 described below) to the first media function entity based on the address information after receiving a media negotiation request (e.g., the first media negotiation request in S402 described below), to negotiate media information between the first media function entity and the second media function entity.
[0270] It can be understood that when the second media function entity and the second control function entity are deployed on the same physical device, the interaction between the second media function entity and the second control function entity is internal interaction of the device, so the second media function entity can obtain the address information of the first media function entity from the second control function entity through an internal interface (such as an API) of the device or through internal signaling (such as signaling between internal modules of the device); or the second media function entity can directly receive the above address information from the first control function entity. Similarly, when the first media function entity and the first control function entity are deployed on the same physical device, the interaction between the first media function entity and the first control function entity is internal interaction of the device, and the first control function entity can obtain the above address information from the first media function entity through an internal interface (such as an API) of the device or through internal signaling (such as signaling between internal modules of the device), or the first media function entity can directly send the above address information to the second control function entity.
[0271] S402: The first media function entity sends a first media negotiation request to the second media function entity according to the address information of the second media function entity. Correspondingly, the second media function entity receives the first media negotiation request from the first media function entity.
[0272] It can be understood that since the first media function entity knows the address information of the second media function entity, the first media function entity can directly send the first media negotiation request to the second media function entity to initiate media negotiation. In other words, the media negotiation in the present application does not need to pass through the control function entity (such as the first control function entity or the second control function entity), so the media negotiation process can be simplified and the media negotiation efficiency can be improved.
[0273] In the present application, the first media negotiation request is used to request media information negotiation with the second media function entity. The first media negotiation request can be a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission, or the first media negotiation request is a SIP message.
[0274] In a possible design, the first media negotiation request carries first media information. The first media information is the media information proposed by the first media function entity. For example, the first media information includes an SDP Offer. The introduction of the SDP Offer can refer to the description of the technical terms involved in the present application in the foregoing.
[0275] It can be understood that, in order to enable the second media function entity to identify the first media negotiation request is for media negotiation of which session, the first media negotiation request can carry an identifier, such as a first identifier, to indicate the first session. The first session is a session between the first terminal and the second terminal, and the first session passes through the first media function entity and the second media function entity. The first session is used to transmit a media stream between the first terminal and the second terminal.
[0276] It can be understood that the first identifier can indicate the first session, so the first identifier can be an identifier of the first session, or the first identifier can be an identifier associated with the first session, for example, the first identifier is an identifier of a media context corresponding to the first session (media context ID). The media context corresponding to the first session includes media information negotiated for the first session, for example, includes the first media information described above, and / or the second media information in S403 described below. For ease of description, the present application takes the first identifier as an identifier of the media context corresponding to the first session as an example for description.
[0277] For example, taking the first media negotiation request as a real-time communication protocol message based on UDP, QUIC, websocket or webtransport transmission as an example, the information carried by the first media negotiation request can be as shown in Table 3-1. The first identifier is “eadgeadgfdddaegddaefadge@uac.domain11.com”, and the information included in “SDP” is the first media information.
[0278] Table 3-1
[0279] For example, taking the first media negotiation request as a real-time communication protocol message based on HTTP transmission as an example, the information carried by the first media negotiation request can be as shown in Table 3-2. The first identifier is “eadgeadgfdddaegddaefadge@uac.domain11.com”, and the content from the attribute line “v=0” to the attribute line “a=sendrecv” is the first media information.
[0280] Table 3-2
[0281] S403: The second media function entity sends a first media negotiation response to the first media function entity according to the address information of the first media function entity. Correspondingly, the first media function entity receives the first media negotiation response from the second media function entity.
[0282] It can be understood that, since the second media function entity knows the address information of the first media function entity, the second media function entity can directly send the first media negotiation response to the first media function entity to respond to the first media negotiation request.
[0283] In this application, the first media negotiation response is a response to the first media negotiation request. The first media negotiation response can be a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission, or the first media negotiation response is a SIP message.
[0284] In a possible design, the first media negotiation response carries second media information. The second media information is the media information responded by the second media function entity. For example, the second media information includes an SDP Answer. The introduction of the SDP Answer can refer to the description of the technical terms involved in this application.
[0285] Optionally, the first media negotiation response also carries a first identifier, so that the first media function entity identifies which session the first media negotiation response is for.
[0286] For example, taking the case that the first media negotiation response is a real-time communication protocol message based on UDP, QUIC, websocket or webtransport transmission, the information carried by the first media negotiation response can be as shown in Table 4-1. Among them, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and the information included in “SDP” is the second media information.
[0287] Table 4-1
[0288] For example, taking the case that the first media negotiation response is a real-time communication protocol message based on HTTP transmission, the information carried by the first media negotiation response can be as shown in Table 4-2. Among them, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and the content from the attribute line “v=0” to the attribute line “a=sendrecv” is the second media information.
[0289] Table 4-2
[0290] It can be understood that, through S402-S403, the media negotiation between the first media function entity and the second media function entity is completed. Subsequently, the first media function entity and the second media function entity can transmit media streams based on the media negotiation result.
[0291] S404: The first media function entity and the second media function entity transmit media stream according to the second media information.
[0292] In one possible implementation, the first media function entity sends media stream to the second media function entity according to the second media information, and correspondingly, the second media function entity receives media stream from the first media function entity according to the second media information. And / or, the second media function entity sends media stream to the first media function entity according to the second media information, and correspondingly, the first media function entity receives media stream from the second media function entity according to the second media information.
[0293] For example, if the second media information is as shown in Table 4-1 or 4-2, the media stream includes audio stream and video stream. For the audio stream, the first media function entity can encode the audio stream according to "AMR-WB / 16000 / 1", and send the encoded audio stream to the second media function entity. The second media function entity receives the audio stream, and decodes the received audio stream according to "AMR-WB / 16000 / 1". Similarly, the second media function entity can encode the audio stream according to "AMR-WB / 16000 / 1", and send the encoded audio stream to the first media function entity. The first media function entity receives the audio stream, and decodes the received audio stream according to "AMR-WB / 16000 / 1". For the video stream, the first media function entity can encode the video stream according to "H261 / 90000", and send the encoded video stream to the second media function entity. The second media function entity receives the video stream, and decodes the received video stream according to "H261 / 90000". Similarly, the second media function entity can encode the video stream according to "H261 / 90000", and send the encoded video stream to the first media function entity. The first media function entity receives the video stream, and decodes the received video stream according to "H261 / 90000".
[0294] Based on the method shown in FIG. 4, the first media function entity can obtain the address information of the second media function entity, and the second media function entity can obtain the address information of the first media function entity. Therefore, the first media function entity can directly send the first media negotiation request to the second media function entity based on the obtained address information, and the second media function entity can also directly reply the response (i.e., the above-mentioned first media negotiation response) of the first media negotiation request to the first media function entity based on the obtained address information. In summary, the media negotiation in the above-mentioned method can be completed between the first media function entity and the second media function entity, and does not need to be completed through the first control function entity and the second control function entity, i.e., the media negotiation process can be separated or decoupled from the session control process, so that the media negotiation process can be simplified and the media negotiation efficiency can be improved.
[0295] Optionally, in a possible implementation of the method shown in FIG. 4, the first media function entity can send the address information of the first media function entity to the first control function entity based on the request of the first control function entity, so that the first control function entity sends the address information to the second media function entity through the second control function entity. Similarly, the second media function entity can send the address information of the second media function entity to the second control function entity based on the request of the second control function entity, so that the second control function entity sends the address information to the first media function entity through the first control function entity. Specifically, as shown in FIG. 5, the above-mentioned S401 can include the following steps:
[0296] S4011: The first control function entity sends a first request to the first media function entity. Correspondingly, the first media function entity receives the first request from the first control function entity.
[0297] In this application, the first request can be used to request the address information of the first media function entity. Optionally, the first request can carry a first identifier. The first request can be a real-time communication protocol message transmitted based on UDP, QUIC, HTTP, websocket or webtransport, etc. The first identifier can be carried in the header field of the first request or the message body of the first request.
[0298] For example, taking the first request as an HTTP message and the first identifier being carried in the header field of the first request as an example, the content included in the first request can be as shown in Table 5. Among them, “Media-Context-ID” is the header field of the first request, and “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier.
[0299] Table 5
[0300] S4012: The first media function entity sends a response of the first request to the first control function entity. Correspondingly, the first control function entity receives the response of the first request from the first media function entity.
[0301] In the present application, the response of the first request carries the address information of the first media function entity. Optionally, the response of the first request also carries the first identifier. The response of the first request can be a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. The above-mentioned address information of the first media function entity and the first identifier can be carried in the header field or the message body of the response of the first request.
[0302] Exemplarily, taking the response of the first request as an HTTP message such as a 200 OK message, and taking the address information of the first media function entity and the first identifier carried in the header field of the response of the first request as an example, the content included in the response of the first request can be as shown in Table 6. Among them, “Media-Conn-Info” and “Media-Context-ID” are the header fields of the response of the first request, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and “192.168.176.1:5061” is the address information of the first media function entity. “192.168.176.1:5061” can also be replaced by “uac.domain11.com:5061”.
[0303] Table 6
[0304] It can be understood that when the first control function entity and the first media function entity are deployed on the same physical device, the first control function entity can call the interface of the first media function entity to obtain the address information of the first media function entity, for example, the first request is an API interface command, and the response of the first request is the information obtained through the interface command. Alternatively, the first control function entity sends the first request to the first media function entity through the signaling between the first control function entity and the first media function entity, and receives the response of the first request.
[0305] S4013: The first control function entity sends the address information of the first media function entity to the second control function entity. Correspondingly, the second control function entity receives the address information of the first media function entity from the first control function entity.
[0306] In a possible design, the address information of the first media function entity is carried in the second information. Optionally, the second information also includes the first identifier. The second information can be a SIP message, or a real-time communication protocol message based on a transmission such as UDP, QUIC, HTTP, websocket, or webtransport. The address information of the first media function entity and the first identifier can be carried in a header field or a message body of the second information.
[0307] For example, when the second information is a SIP message, and the address information of the first media function entity and the first identifier are carried in a header field of the second information, the second information can include the contents shown in Table 7. In Table 7, "Media-Conn-Info" and "Media-Context-ID" are header fields of the second information, "eadgeadgfdddaegddaefadge@uac.domain11.com" is the first identifier, and "192.168.176.1:5061" is the address information of the first media function entity. "192.168.176.1:5061" can be replaced with "uac.domain11.com:5061".
[0308] Table 7
[0309] Optionally, before S4013, the first control function entity can register at the second control function entity, so that the second control function entity confirms, in S4013, that the first control function entity is a legitimate device. For example, before S4013, the first control function entity sends registration information to the second control function entity. The registration information can include at least one of an identifier of the first control function entity or address information of the first control function entity. When the first control function entity is deployed on a terminal, the identifier of the first control function entity can be a mobile phone number corresponding to the terminal.
[0310] S4014: The second control function entity sends a second request to the second media function entity. Correspondingly, the second media function entity receives the second request from the second control function entity.
[0311] In this application, the second request can be used to request address information of the second media function entity. The second request carries the address information of the first media function entity. Optionally, the second request also carries the first identifier. The second request can be a real-time communication protocol message based on a transmission such as UDP, QUIC, HTTP, websocket, or webtransport. The address information of the second media function entity and the first identifier can be carried in a header field of the second request or a message body of the second request.
[0312] Exemplarily, taking the second request as an HTTP message, the address information of the first media function entity and the first identifier being carried in the header field of the second request, the content included in the second request can be as shown in Table 8. Among them, “Media-Conn-Info” and “Media-Context-ID” are the header fields of the second request, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and “192.168.176.1:5060” is the address information of the first media function entity. “192.168.176.1:5061” can also be replaced by “uac.domain11.com:5061”.
[0313] Table 8
[0314] S4015: The second media function entity sends a response of the second request to the second control function entity. Correspondingly, the second control function entity receives the response of the second request from the second media function entity.
[0315] In the present application, the response of the second request carries the address information of the second media function entity. Optionally, the response of the second request also carries the first identifier. The response of the second request can be a real-time communication protocol message transmitted based on UDP, QUIC, HTTP, websocket or webtransport, etc. The above-mentioned address information of the second media function entity and the first identifier can be carried in the header field or the message body of the response of the second request.
[0316] Exemplarily, taking the response of the second request as an HTTP message, such as a 200 OK message, the address information of the second media function entity and the first identifier being carried in the header field of the response of the second request, the content included in the response of the second request can be as shown in Table 9. Among them, “Media-Conn-Info” and “Media-Context-ID” are the header fields of the response of the second request, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and “192.168.176.2:5061” is the address information of the second media function entity. “192.168.176.2:5061” can also be replaced by “uas.domain11.com:5061”.
[0317] Table 9
[0318] It can be understood that when the second control function entity and the second media function entity are deployed on the same physical device, the second control function entity can call the interface of the second media function entity to obtain the address information of the second media function entity, for example, the second request is an API interface command, and the response of the second request is information obtained through the interface command. Alternatively, the second control function entity sends the second request to the second media function entity through signaling between the second control function entity and the second media function entity, and receives the response of the second request.
[0319] S4016: The second control function entity sends the address information of the second media function entity to the first control function entity. Correspondingly, the first control function entity receives the address information of the second media function entity from the second control function entity.
[0320] In a possible design, the address information of the second media function entity is carried in the first information. Optionally, the first information further includes the first identifier. The first information can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. The address information of the second media function entity and the first identifier can be carried in a header field or a message body of the first information.
[0321] For example, when the first information is a SIP message, and the address information of the second media function entity and the first identifier are carried in the header field of the first information, the content included in the first information can be as shown in Table 10. Wherein, “Media-Conn-Info” and “Media-Context-ID” are the header fields of the first information, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and “192.168.176.2:5061” is the address information of the second media function entity. “192.168.176.2:5061” can also be replaced by “uas.domain11.com:5061”.
[0322] Table 10
[0323] Optionally, the first information can be response information of the second information.
[0324] S4017: The first control function entity sends the address information of the second media function entity to the first media function entity. Correspondingly, the first media function entity receives the address information of the second media function entity from the first control function entity.
[0325] In a possible design, the address information of the second media function entity is carried in the third information. Optionally, the third information also includes the first identifier. The third information can be a real-time communication protocol message based on a UDP, QUIC, HTTP, websocket, or webtransport transmission. The first identifier can be carried in a header field of the third information or in a message body.
[0326] For example, the third information is an HTTP message, and the first identifier is carried in a header field of the third information. The third information includes the contents shown in Table 11. In Table 11, "Media-Conn-Info" and "Media-Context-ID" are header fields of the third information, "eadgeadgfdddaegddaefadge@uac.domain11.com" is the first identifier, and "192.168.176.2:5061" is the address information of the second media function entity. "192.168.176.2:5061" can be replaced with "uas.domain11.com:5061".
[0327] Table 11
[0328] In a possible implementation, the first identifier can be generated by the first control function entity, the first media function entity, the second control function entity, or the second media function entity.
[0329] For example, if the first identifier is generated by the first control function entity, the first identifier is carried in the first request, the second information, the second request, and the third information. The first identifier can or can not be carried in the response to the first request, the response to the second request, and the first information. If the first identifier is generated by the first media function entity, the first identifier is not carried in the first request. The first identifier is carried in the response to the first request, the second information, the second request, and the third information. The first identifier can or can not be carried in the response to the second request and the first information. If the first identifier is generated by the second control function entity, the first identifier is not carried in the first request, the response to the first request, and the second information. The first identifier is carried in the second request, the first information, and the third information. The first identifier can or can not be carried in the response to the second request. If the first identifier is generated by the second media function entity, the first identifier is not carried in the first request, the response to the first request, the second request, and the second information. The first identifier is carried in the response to the second request, the first information, and the third information.
[0330] One possible implementation, the S4011-S4017 are performed in the process of session control. For example, the first request and the second request are Session Create Request, the response of the first request and the response of the second request are Session Create Response, the second information is an invitation request (such as an INVITE request) or a Session Connect Request, the first information is a 183 message or a Session Connect Response, and the third information is a Session Update Request. Optionally, when the third information is a Session Update Request, the first media function entity can further send a Session Update Response to the first control function entity to indicate whether the address information of the second media function entity is sent successfully.
[0331] It can be understood that in the present application, the first control function entity and the second control function entity do not perform media negotiation in the process of session control, and the messages exchanged between them do not carry SDP Offer or SDP Answer. Therefore, the first control function entity and the second control function entity do not need to be aware of the media negotiation state, and do not need to send different messages according to different media negotiation states, for example, they do not need to convert the 18X (such as 183 or 180) message carrying SDP into an update message (such as an UPDATE message) after the media negotiation is completed, so the operation of the first control function entity and the second control function entity can be simplified.
[0332] In addition, the first control function entity is the initiator of session control, the first media function entity is the initiator of media negotiation, the second control function entity is the responder of session control, and the second media function entity is the responder of media negotiation. Therefore, the first control function entity and the first media function entity can be regarded as a user agent client (UAC), and the second control function entity and the second media function entity can be regarded as a user agent server (UAS).
[0333] Optionally, in a possible implementation of the method shown in FIG. 4, the first session can also pass through a media function entity other than the first media function entity and the second media function entity, for example, the first session also passes through at least one of a third media function entity or a fourth media function entity. The third media function entity can perform media negotiation with the first media function entity, and the fourth media function entity can perform media negotiation with the second media function entity. Before performing media negotiation, the third media function entity can also obtain address information of the first media function entity, and the fourth media function entity can also obtain address information of the second media function entity, which will be described in detail below.
[0334] In a possible implementation, the third media function entity sends the address information of the third media function entity to its corresponding control function entity, such as a third control function entity. After receiving the address information, the third control function entity can send the address information to the first control function entity. The address information includes similar content to the address information of the first media function entity or the address information of the second media function entity, and the corresponding description is referred to the foregoing description.
[0335] It can be understood that, after receiving the address information, the first control function entity can carry the address information in the first request in S4011, such as in a header field or a message body of the first request. The address information of the first media function entity carried in the response of the first request in S4012 includes the first address information and the second address information. The first address information is used to connect the first media function entity to the third media function entity, and the second address information is used to connect the first media function entity to the second media function entity. In other words, the first media function entity can assign address information to the third media function entity and the second media function entity respectively, for example, the first address information includes 192.168.176.1:5062, and the second address information includes 192.168.176.1:5061; or the first address information includes uac.domain11.com:5062, and the second address information includes uac.domain11.com:5061. In addition, in S4013, the first control function entity sends the second address information to the second control function entity, and the second request also carries the second address information. After S4016 or S4017, the first control function entity sends the first address information to the third control function entity, so that the third control function entity sends the first address information to the third media function entity.
[0336] It can be understood that after the third media function entity obtains the first address information, the third media function entity can initiate media negotiation to the first media function entity according to the first address information. For example, the third media function entity sends a fourth media negotiation request to the first media function entity according to the first address information. The fourth media negotiation request carries seventh media information, and the seventh media information is the media information proposed by the third media function entity, for example, the seventh media information includes SDP Offer. The fourth media negotiation request can also carry the first identifier. For example, when the fourth media negotiation request is a real-time communication protocol message transmitted based on UDP, QUIC, websocket or webtransport, the information carried by the fourth media negotiation request can be as shown in Table 12-1. Among them, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and the information included in “SDP” is the seventh media information.
[0337] Table 12-1
[0338] For another example, when the fourth media negotiation request is a real-time communication protocol message transmitted based on HTTP, the information carried by the fourth media negotiation request can be as shown in Table 12-2. Among them, “eadgeadgfdddaegddaefadge@uac.domain11.com” is the first identifier, and the content from the attribute line “v=0” to the attribute line “a=sendrecv” is the seventh media information.
[0339] Table 12-2
[0340] It can be understood that the seventh media information is used to determine the first media information. That is, after the first media function entity receives the fourth media negotiation request, the first media function entity can determine the first media information according to the seventh media information. For example, the first media function entity can replace the address information (such as "192.168.176.3") of the third media function entity in Table 12-1 or Table 12-2 with the address information (such as "192.168.176.1") of the first media function entity, replace the audio media port (such as 19021) provided by the third media function entity in Table 12-1 or Table 12-2 with the audio media port (such as 19024) provided by the first media function entity, and replace the video media port (such as 19022) provided by the third media function entity in Table 12-1 or Table 12-2 with the video media port (such as 19026) provided by the first media function entity. Subsequently, the first media function entity can send a first media negotiation request to the second media function entity according to the address information of the second media function entity. In addition, after the first media function entity receives the first media negotiation response, the first media function entity can also send a fourth media negotiation response to the third media function entity. The fourth media negotiation response carries eighth media information, and the eighth media information is the media information answered by the first media function entity, for example, the eighth media information includes an SDP Answer. The eighth media information can be determined based on the second media information. The process of determining the eighth media information by the first media function entity according to the second media information is similar to the process of determining the first media information according to the seventh media information, and will not be described again. In addition, other introductions of the fourth media negotiation request can refer to the description of the first media negotiation request in the foregoing, and other introductions of the fourth media negotiation response can refer to the description of the first media negotiation response in the foregoing.
[0341] In summary, the third media function entity can initiate a media negotiation to the first media function entity, and the third control function entity can initiate a session control process to the first control function entity. That is, the relationship between the third media function entity and the first media function entity is similar to the relationship between the first media function entity and the second media function entity, and the relationship between the third control function entity and the first control function entity is similar to the relationship between the first control function entity and the second control function entity. Therefore, the device that the third media function entity can be deployed is similar to the device that the first media function entity can be deployed, which can refer to the description of the device deployed by the first media function entity in the foregoing, and the device that the third control function entity can be deployed is similar to the device that the first control function entity can be deployed, which can refer to the description of the device deployed by the first control function entity in the foregoing, and will not be described again.
[0342] The specific process in which the fourth media function entity obtains the address information of the second media function entity and performs media negotiation with the second media function entity will be introduced below.
[0343] In a possible implementation, the address information of the second media function entity carried in the response to the second request in S4015 includes third address information and fourth address information. The third address information is used to connect the second media function entity to the first media function entity, and the fourth address information is used to connect the second media function entity to the fourth media function entity. In other words, the second media function entity can assign address information to the first media function entity and the fourth media function entity respectively. For example, the third address information includes 192.168.176.2:5060, and the fourth address information includes 192.168.176.2:5064; or the third address information includes uas.domain11.com:5060, and the fourth address information includes uas.domain11.com:5064. In S4016, the second control function entity sends the third address information to the first control function entity. In addition, the third information in S4017 carries the third address information.
[0344] After S4015, the second control function entity can send the fourth address information to the control function entity corresponding to the fourth media function entity, such as the fourth control function entity. After receiving the address information, the fourth control function entity can send the address information to the fourth media function entity. After receiving the address information, the fourth media function entity sends the address information of the fourth media function entity to the fourth control function entity. After receiving the address information, the fourth control function entity sends the address information of the fourth media function entity to the second media function entity through the second control function entity. The address information of the fourth media function entity includes similar content to the address information of the first media function entity or the address information of the second media function entity, and the corresponding description is referred to the foregoing description.
[0345] It can be understood that after receiving the first media negotiation request, the second media function entity can initiate media negotiation with the fourth media function entity according to the address information of the fourth media function entity. For example, the second media function entity sends a fifth media negotiation request to the fourth media function entity according to the address information of the fourth media function entity. The fifth media negotiation request carries ninth media information, and the ninth media information is the media information proposed by the second media function entity, for example, the ninth media information includes an SDP offer. The fifth media negotiation request can also carry the first identifier. The above-mentioned ninth media information can be determined based on the first media information. That is, after receiving the first media negotiation request, the second media function entity can determine the ninth media information according to the first media information. The process of determining the ninth media information by the second media function entity according to the first media information is similar to the process of determining the first media information by the first media function entity according to the seventh media information, and will not be described herein again.
[0346] After receiving the fifth media negotiation request, the fourth media function entity can send a fifth media negotiation response to the second media function entity. The fifth media negotiation response carries a tenth media information, and the tenth media information is the media information that the fourth media function entity answers. For example, the tenth media information includes an SDP Answer. The tenth media information can be used to determine the second media information. The process of determining the second media information by the second media function entity according to the tenth media information is similar to the process of determining the first media information by the first media function entity according to the seventh media information, and thus is not described herein.
[0347] In addition, other descriptions of the fifth media negotiation request can refer to the descriptions of the first media negotiation request, and other descriptions of the fifth media negotiation response can refer to the descriptions of the first media negotiation response.
[0348] In summary, the fourth media function entity can answer the media negotiation initiated by the second media function entity, and the fourth control function entity can answer the session control procedure initiated by the second control function entity. That is, the relationship between the fourth media function entity and the second media function entity is similar to the relationship between the second media function entity and the first media function entity, and the relationship between the fourth control function entity and the second control function entity is similar to the relationship between the second control function entity and the first control function entity. Therefore, the device in which the fourth media function entity can be deployed is similar to the device in which the second media function entity can be deployed, and thus can refer to the descriptions of the device in which the second media function entity is deployed. The device in which the fourth control function entity can be deployed is similar to the device in which the second control function entity can be deployed, and thus can refer to the descriptions of the device in which the second control function entity is deployed, and thus is not described herein.
[0349] Optionally, in a possible implementation of the method shown in FIG. 4, when the first media function entity determines that the media information of the first session needs to be updated, such as determining that a voice call is switched to a video call, or determining that a video call is switched to a voice call, etc., the first media function entity can directly initiate a media negotiation to the second media function entity to re-negotiate the media information between the first media function entity and the second media function entity. Specifically, as shown in FIG. 5, the method shown in FIG. 4 can further include the following steps:
[0350] S405: The first media function entity determines that the media information of the first session needs to be updated.
[0351] In a possible implementation, when the first media function entity is deployed on the first terminal, the first media function entity determines that the media information of the first session needs to be updated in response to a first operation of a user of the first terminal. The first operation indicates switching a current voice call to a video call, or indicates switching a current video call to a voice call.
[0352] Another possible implementation, when the first media function entity is not deployed on the first terminal, after the first media function entity receives a media negotiation request for the first session from another media function entity (such as the third media function entity), the first media function entity determines that the media information of the first session needs to be updated.
[0353] S406: The first media function entity sends a second media negotiation request to the second media function entity according to the address information of the second media function entity. Correspondingly, the second media function entity receives the second media negotiation request from the first media function entity.
[0354] It can be understood that, since the first media function entity obtains the address information of the second media function entity in S401, the first media function entity can directly send the second media negotiation request to the second media function entity to initiate media negotiation.
[0355] In this application, the second media negotiation request is used to request media information negotiation with the second media function entity. The second media negotiation request can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. The second media negotiation request carries third media information, and the third media information is updated media information. For example, the second media information includes an SDP Offer. The introduction of the SDP Offer can refer to the description of the technical terms involved in this application in the foregoing. In addition, the second media negotiation request can also carry the first identifier.
[0356] S407: The second media function entity sends a second media negotiation response to the first media function entity according to the address information of the first media function entity. Correspondingly, the first media function entity receives the second media negotiation response from the second media function entity.
[0357] It can be understood that, since the second media function entity obtains the address information of the first media function entity in S401, the second media function entity can directly send the second media negotiation response to the first media function entity to respond to the second media negotiation request.
[0358] In this application, the second media negotiation response is a response to the second media negotiation request. The second media negotiation response can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. The second media negotiation response carries fourth media information, and the fourth media information is media information responded by the second media function entity based on the third media information. For example, the second media information includes an SDP Answer. The introduction of the SDP Answer can refer to the description of the technical terms involved in this application in the foregoing.
[0359] Optionally, the second media negotiation response further carries the first identifier.
[0360] S408: transmitting, between the first media function entity and the second media function entity, a media stream according to the fourth media information.
[0361] In a possible implementation, the first media function entity sends a media stream to the second media function entity according to the fourth media information, and correspondingly, the second media function entity receives the media stream from the first media function entity according to the fourth media information. Alternatively, the second media function entity sends a media stream to the first media function entity according to the fourth media information, and correspondingly, the first media function entity receives the media stream from the second media function entity according to the fourth media information.
[0362] It can be understood that the specific processes of S406-S408 are similar to those of S402-S404, and thus the corresponding descriptions in S402-S404 can be referred to and will not be repeated here.
[0363] Optionally, in a possible implementation of the method shown in FIG. 4, when the second media function entity determines that the media information of the first session needs to be updated, such as determining that a voice call is switched to a video call, or determining that a video call is switched to a voice call, etc., the second media function entity can directly initiate a media negotiation with the first media function entity to re-negotiate the media information between the first media function entity and the second media function entity. Specifically, as shown in FIG. 5, the method shown in FIG. 4 can further include the following steps:
[0364] S409: The second media function entity determines that the media information of the first session needs to be updated.
[0365] In a possible implementation, when the second media function entity is deployed on the second terminal, the second media function entity determines that the media information of the first session needs to be updated in response to a second operation of a user of the second terminal. The second operation indicates switching a current voice call to a video call, or indicates switching a current video call to a voice call.
[0366] In another possible implementation, when the second media function entity is not deployed on the second terminal, the second media function entity determines that the media information of the first session needs to be updated after receiving a media negotiation request for the first session from another media function entity (such as a fourth media function entity).
[0367] S410: The second media function entity sends a third media negotiation request to the first media function entity according to the address information of the first media function entity. Correspondingly, the first media function entity receives the third media negotiation request from the second media function entity.
[0368] It can be understood that, since the second media function entity acquires the address information of the first media function entity at S401, the second media function entity can directly send a third media negotiation request to the first media function entity to initiate media negotiation.
[0369] In this application, the third media negotiation request is used to request media information negotiation with the first media function entity. The third media negotiation request can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission, etc. The third media negotiation request carries fifth media information, and the fifth media information is updated media information. For example, the fifth media information includes an SDP Offer. The introduction of the SDP Offer can refer to the description of the technical terms involved in this application in the foregoing. In addition, the fifth media negotiation request can also carry the first identifier.
[0370] S411: The first media function entity sends a third media negotiation response to the second media function entity according to the address information of the second media function entity. Correspondingly, the second media function entity receives the third media negotiation response from the first media function entity.
[0371] It can be understood that, since the first media function entity acquires the address information of the second media function entity at S401, the first media function entity can directly send a third media negotiation response to the second media function entity to respond to the third media negotiation request.
[0372] In this application, the third media negotiation response is a response to the third media negotiation request. The third media negotiation response can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission, etc. The third media negotiation response carries sixth media information, and the sixth media information is media information responded by the first media function entity based on the fifth media information. For example, the sixth media information includes an SDP Answer. The introduction of the SDP Answer can refer to the description of the technical terms involved in this application in the foregoing.
[0373] Optionally, the third media negotiation response also carries the first identifier.
[0374] S412: The first media function entity and the second media function entity transmit media streams according to the sixth media information.
[0375] In a possible implementation, the first media function entity sends the media stream to the second media function entity according to the sixth media information, and correspondingly, the second media function entity receives the media stream from the first media function entity according to the sixth media information. Alternatively, the second media function entity sends the media stream to the first media function entity according to the sixth media information, and correspondingly, the first media function entity receives the media stream from the second media function entity according to the sixth media information.
[0376] It can be understood that the specific process of S409-S412 is similar to the process of S402-S404, and thus the corresponding description in S402-S404 can be referred to, and details are not described herein.
[0377] It can be understood that the method provided by the present application can include S405-S408 but not S409-S412, or can include S409-S412 but not S405-S408, or can include S405-S408 and S409-S412. For example, the method provided by the present application can first perform S405-S408, and then perform S409-S412, or first perform S409-S412, and then perform S405-S408, without limitation.
[0378] It can be understood that S405-S408 or S409-S412 can be performed after S403 and before S404, or can be performed when the first media function entity and the second media function entity perform S404, or can be performed after S404, without limitation.
[0379] It can be understood that the actions of the first media function entity, the second media function entity, the third media function entity, the first control function entity, the second control function entity, or the third control function entity in the above steps can be performed by the processor 301 in the communication device 30 in FIG. 3 invoking the application program code stored in the memory 303, and the present application does not make any limitation in this regard.
[0380] In order to better understand the communication method provided by the present application, the communication method provided by the present application will be introduced below in combination with the IMS network 10 shown in FIG. 1A and the real-time communication network 12 shown in FIG. 1C.
[0381] First, the method is introduced by taking the terminal 1001 in FIG. 1A as an example, in which the third media communication entity and the third control function entity are deployed, the first media function entity is deployed in the IMS-AGW 1006 in FIG. 1A, the first control function entity is deployed in the P-CSCF network element 1005 in FIG. 1A, the second media function entity is deployed in the IMS-AGW 1010 in FIG. 1A, the second control function entity is deployed in the P-CSCF network element 1009 in FIG. 1A, and the fourth media communication entity and the fourth control function entity are deployed in the terminal 1002 in FIG. 1A.
[0382] As shown in FIG. 6, another communication method is provided in the present application, which can be applied to a call process between the terminal 1001 and the terminal 1002. The communication method can include the following steps:
[0383] S601: The terminal 1001 sends a first invitation request to the P-CSCF network element 1005. Correspondingly, the P-CSCF network element 1005 receives the first invitation request from the terminal 1001.
[0384] In a possible implementation, the terminal 1001 determines to initiate a voice call to the terminal 1002, and then the terminal 1001 can initiate a session establishment process to establish a first session. For example, the terminal 1001 sends a first invitation request to the P-CSCF network element 1005 to trigger the session establishment process.
[0385] The first session is a session between the terminal 1001 and the terminal 1002, and is used to transmit a media stream between the terminal 1001 and the terminal 1002. The terminal 1001 and the terminal 1002 can be understood as end points of the first session. In addition to the terminal 1001 and the terminal 1002, the first session also passes through the IMS-AGW 1006 and the IMS-AGW 1010. For other descriptions of the first session, reference can be made to the description of the first session in the method shown in FIG. 4 or FIG. 5. The first invitation request does not carry an SDP Offer. The first invitation request can carry address information of the terminal 1001 and a number of the terminal 1002. Optionally, the first invitation request also carries a first identifier. For example, the first invitation request carries the address information of the terminal 1001 and the first identifier in a header field or a message body of the first invitation request. For descriptions of the address information of the terminal 1001, reference can be made to the description of the address information of the third media function entity in the method shown in FIG. 4 or FIG. 5, and for descriptions of the first identifier, reference can be made to the description of the first identifier in the method shown in FIG. 4 or FIG. 5, which will not be repeated here.
[0386] For example, the first INVITE request can include the content as shown in Table 13-1. Wherein, "Media-Conn-Info" and "Media-Context-ID" are header fields of the first INVITE request, "eadgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identification, and "192.168.176.1:5060" is the address information of the terminal 1001. "192.168.176.1:5060" can also be replaced by "ue1001.domain11.com:5060".
[0387] Table 13-1
[0388] S602: The P-CSCF network element 1005 sends a first session creation request (SessionCreateRequest) to the IMS-AGW 1006. Correspondingly, the IMS-AGW 1006 receives the first session creation request from the P-CSCF network element 1005.
[0389] Wherein, the first session creation request is used to request to create a session. The first session creation request does not carry an SDP Offer. The first session creation request carries the address information of the terminal 1001. Optionally, the first session creation request also carries the first identification. For example, the first session creation request carries the address information of the terminal 1001 and the first identification in the header field or the message body of the first session creation request. It should be understood that if the first identification is not carried in the first INVITE request, the P-CSCF network element 1005 can generate the first identification and carry it in the first session creation request.
[0390] For example, the first session creation request includes the content as shown in Table 13-2. Wherein, "Media-Conn-Info" and "Media-Context-ID" are header fields of the first session creation request, "eadgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identification, and "192.168.176.1:5060" is the address information of the terminal 1001. "192.168.176.1:5060" can also be replaced by "ue1001.domain11.com:5060".
[0391] Table 13-2
[0392] S603: The IMS-AGW 1006 sends a first session creation response (SessionCreateResponse) to the P-CSCF network element 1005. Correspondingly, the P-CSCF network element 1005 receives the first session creation response from the IMS-AGW 1006.
[0393] In one possible implementation, after receiving the first session creation request, the IMS-AGW 1006 saves the first session creation request and allocates address information of the IMS-AGW 1006. For example, the IMS-AGW 1006 allocates first address information and second address information. The first address information is used to connect the IMS-AGW 1006 to the terminal 1001, and the second address information is used to connect the IMS-AGW 1006 to the IMS-AGW 1010. For more information about the first address information and the second address information, refer to the description of the two in the method shown in FIG. 4 or FIG. 5.
[0394] In one possible design, the first session creation response does not carry an SDP Answer. The first session creation response carries the first address information and the second address information. Optionally, the first session creation response also carries the first identifier. For example, the first address information, the second address information, and the first identifier are carried in a header field or a message body of the first session creation response. It should be understood that if the first identifier is not carried in the first session creation request, the IMS-AGW 1006 can generate the first identifier and carry the first identifier in the first session creation response.
[0395] For example, the first session creation response includes the contents shown in Table 14. In Table 14, “Media-Conn-Info” and “Media-Context-ID” are header fields of the first session creation response, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identifier, “192.168.176.2:5060” is the first address information, and “192.168.176.3:5061” is the second address information. “192.168.176.2:5060” can also be replaced with “agw1006.domain11.com:5060”, and “192.168.176.3:5061” can also be replaced with “agw1006.domain11.com:5061”.
[0396] Table 14
[0397] It can be understood that, in order to make the P-CSCF network element 1005 identify which device the first address information and the second address information are connected to respectively, the position of the first address information and the position of the second address information in Table 14 are agreed in advance or specified in a protocol. For example, it is specified in the protocol that the address information in the front of the two address information is used to connect the IMS-AGW 1006 to the terminal 1001, and the address information in the back is used to connect the IMS-AGW 1006 to the IMS-AGW 1010. Of course, in a specific application, the P-CSCF network element 1005 can also identify which device the first address information and the second address information are connected to respectively by other ways. For example, the first address information and the second address information can be carried in different header fields, such as the first address information is carried in the header field "Media-Conn-Outer", and the second address information is carried in the header field "Media-Conn-Inner". Or, the first address information and the second address information correspond to different number segments. Or, the first session creation request and the first session creation response also carry the identification of each address information.
[0398] S604: The P-CSCF network element 1005 sends a second INVITE request to the P-CSCF network element 1009. Correspondingly, the P-CSCF network element 1009 receives the second INVITE request from the P-CSCF network element 1005.
[0399] In a possible implementation, the second INVITE request sent by the P-CSCF network element 1005 can be routed to the P-CSCF network element 1009 through the I / S-CSCF network element 1004, the MMTEL AS 1003, the I / S-CSCF network element 1004, the I / S-CSCF network element 1008, the MMTEL AS 1007, and the I / S-CSCF network element 1008 in turn.
[0400] The second INVITE request does not carry an SDP Offer. The second INVITE request can carry the second address information. Optionally, the second INVITE request also carries the first identification. For example, the second INVITE request carries the second address information and the first identification in the header field or the message body of the second INVITE request.
[0401] For example, the content included in the second INVITE request can be as shown in Table 15. Among them, "Media-Conn-Info" and "Media-Context-ID" are the header fields of the second INVITE request, "eadgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identification, and "192.168.176.3:5061" is the second address information. "192.168.176.3:5061" can also be replaced by "agw1006.domain11.com:5061".
[0402] Table 15
[0403] S605: The P-CSCF network element 1009 sends a second session creating request to the IMS-AGW 1010. Correspondingly, the IMS-AGW 1010 receives the second session creating request from the P-CSCF network element 1009.
[0404] The second session creating request is used to request creating a session. The second session creating request does not carry the SDP Offer. The second session creating request carries the second address information. Optionally, the second session creating request further carries the first identity. For example, the second address information and the first identity are carried in the header field or the message body of the second session creating request. It should be understood that if the first identity is not carried in the second invitation request, the P-CSCF network element 1009 can generate the first identity and carry it in the second session creating request.
[0405] For example, the content included in the second session creating request can be as shown in Table 16. Wherein, "Media-Conn-Info" and "Media-Context-ID" are the header fields of the second session creating request, "eadgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identity, and "192.168.176.3:5061" is the second address information. "192.168.176.3:5061" can also be replaced by "agw1006.domain11.com:5061".
[0406] Table 16
[0407] S606: The IMS-AGW 1010 sends a second session creating response to the P-CSCF network element 1009. Correspondingly, the P-CSCF network element 1009 receives the second session creating response from the IMS-AGW 1010.
[0408] In one possible implementation, after receiving the second session creating request, the IMS-AGW 1010 saves the second session creating request and allocates the address information of the IMS-AGW 1010. For example, the IMS-AGW 1010 allocates third address information and fourth address information. Wherein, the third address information is used to connect the IMS-AGW 1010 to the IMS-AGW 1006, and the fourth address information is used to connect the IMS-AGW 1010 to the terminal 1002. For more information about the third address information and the fourth address information, please refer to the description of the two in the above-mentioned method shown in FIG. 4 or FIG. 5.
[0409] A possible design, the second session creation response does not carry the SDP Answer. The second session creation response carries the third address information and the fourth address information. Optionally, the second session creation response further carries the first identity. For example, the third address information, the fourth address information and the first identity are carried in a header field or a message body of the second session creation response. It should be appreciated that if the first identity is not carried in the second session creation request, the IMS-AGW 1010 can generate the first identity and carry it in the second session creation response.
[0410] For example, the second session creation response includes the following information as shown in Table 17. In Table 17, "Media-Conn-Info" and "Media-Context-ID" are header fields of the second session creation response, "edgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identity, "192.168.176.4:5060" is the third address information, and "192.168.176.5:5061" is the fourth address information. "192.168.176.4:5060" can also be replaced by "agw1010.domain11.com:5060", and "192.168.176.5:5061" can also be replaced by "agw1010.domain11.com:5061".
[0411] Table 17
[0412] It should be appreciated that, in order to enable the P-CSCF network element 1009 to identify which device is connected by the third address information and the fourth address information respectively, the position of the third address information and the position of the fourth address information in Table 17 are agreed in advance or specified in a protocol. In addition, in a specific application, the P-CSCF network element 1009 can also identify which device is connected by the third address information and the fourth address information respectively by other manners. For example, the third address information and the fourth address information can be carried in different header fields, such as the fourth address information is carried in a header field "Media-Conn-Outer" and the third address information is carried in a header field "Media-Conn-Inner". Alternatively, the third address information and the fourth address information correspond to different number segments. Alternatively, the second session creation request and the second session creation response further carry an identity of each address information.
[0413] S607: The P-CSCF network element 1009 sends a third INVITE request to the terminal 1002. Correspondingly, the terminal 1002 receives the third INVITE request from the P-CSCF network element 1009.
[0414] The third invitation request does not carry the SDP Offer. The third invitation request can carry the fourth address information. Optionally, the third invitation request further carries the first identity. For example, the fourth address information and the first identity are carried in a header field or a message body of the third invitation request.
[0415] For example, the third invitation request includes the contents as shown in Table 18. In Table 18, "Media-Conn-Info" and "Media-Context-ID" are header fields of the third invitation request, "edgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identity, and "192.168.176.5:5061" is the fourth address information. "192.168.176.5:5061" can also be replaced by "agw1010.domain11.com:5061".
[0416] Table 18
[0417] S608: The terminal 1002 sends a response (e.g., a 183 message) of the third invitation request to the P-CSCF network element 1009. Correspondingly, the P-CSCF network element 1009 receives the response of the third invitation request from the terminal 1002.
[0418] The response of the third invitation request does not carry the SDP Answer. The response of the third invitation request carries address information of the terminal 1002. Optionally, the response of the third invitation request further carries the first identity. For example, the address information of the terminal 1002 and the first identity are carried in a header field or a message body of the response of the third invitation request. It should be understood that if the first identity is not carried in the third invitation request, the terminal 1002 can generate the first identity and carry the first identity in the response of the third invitation request.
[0419] For example, the response of the third invitation request includes the contents as shown in Table 19. In Table 19, "Media-Conn-Info" and "Media-Context-ID" are header fields of the response of the third invitation request, "edgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identity, and "192.168.176.6:5060" is the address information of the terminal 1002. "192.168.176.6:5060" can also be replaced by "ue1002.domain11.com:5060".
[0420] Table 19
[0421] S609: The P-CSCF network element 1009 sends a first session update request (SessionUpdateRequest) to the IMS-AGW 1010. Correspondingly, the IMS-AGW 1010 receives the first session update request from the P-CSCF network element 1009.
[0422] The first session update request carries the address information of the terminal 1002. Optionally, the first session update request also carries the first identifier. For example, the first session update request carries the address information of the terminal 1002 and the first identifier in a header field or a message body of the first session update request.
[0423] For example, the first session update request includes the contents shown in Table 20. In Table 20, “Media-Conn-Info” and “Media-Context-ID” are header fields of the first session update request, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identifier, and “192.168.176.6:5060” is the address information of the terminal 1002. “192.168.176.6:5060” can also be replaced by “ue1002.domain11.com:5060”.
[0424] Table 20
[0425] It can be understood that, after receiving the first session update request, the IMS-AGW 1010 can save the request. Optionally, the IMS-AGW 1010 can also send a first session update response (SessionUpdateResponse) to the P-CSCF network element 1009 to indicate whether the first session update request is successfully received.
[0426] S610: The P-CSCF network element 1009 sends a response (such as a 183 message) of the second invitation request to the P-CSCF network element 1005. Correspondingly, the P-CSCF network element 1005 receives the response of the second invitation request from the P-CSCF network element 1009.
[0427] In a possible implementation, the response of the second invitation request sent by the P-CSCF network element 1009 can be routed to the P-CSCF network element 1005 through the I / S-CSCF network element 1008, the MMTEL AS 1007, the I / S-CSCF network element 1008, the I / S-CSCF network element 1004, the MMTEL AS 1003, and the I / S-CSCF network element 1004 in sequence.
[0428] The response of the second invitation request does not carry the SDP Answer. The response of the second invitation request carries the third address information. Optionally, the response of the second invitation request further carries the first identity. For example, the third address information and the first identity are carried in a header field or a message body of the response of the second invitation request.
[0429] For example, the response of the second invitation request includes the contents as shown in Table 21. Wherein, "Media-Conn-Info" and "Media-Context-ID" are header fields of the response of the second invitation request, "edgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identity, and "192.168.176.4:5060" is the third address information. "192.168.176.4:5060" can also be replaced by "agw1010.domain11.com:5060".
[0430] Table 21
[0431] It can be understood that the application does not limit the execution order of S609 and S610. For example, S609 can be executed first and then S610, or S610 can be executed first and then S609, or S609 and S610 can be executed simultaneously.
[0432] S611: The P-CSCF network element 1005 sends a second session update request to the IMS-AGW 1006. Correspondingly, the IMS-AGW 1006 receives the second session update request from the P-CSCF network element 1005.
[0433] The second session update request carries the third address information. Optionally, the second session update request further carries the first identity. For example, the second session update request carries the third address information and the first identity in a header field or a message body of the second session update request.
[0434] For example, the response of the second invitation request includes the contents as shown in Table 21. Wherein, "Media-Conn-Info" and "Media-Context-ID" are header fields of the response of the second invitation request, "edgeadgfdddaegddaefadge@ue1001.domain11.com" is the first identity, and "192.168.176.4:5060" is the third address information. "192.168.176.4:5060" can also be replaced by "agw1010.domain11.com:5060".
[0435] Table 22
[0436] It can be understood that the IMS-AGW 1006 can save the second session update request after receiving the second session update request. Optionally, the IMS-AGW 1006 can also send a second session update response to the P-CSCF network element 1005 to indicate whether the second session update request is successfully received.
[0437] S612: The P-CSCF network element 1005 sends a response (such as a 183 message) of the first invitation request to the terminal 1001. Correspondingly, the terminal 1001 receives the response of the first invitation request from the P-CSCF network element 1005.
[0438] The response of the first invitation request does not carry an SDP Answer. The response of the first invitation request carries the first address information. Optionally, the response of the first invitation request also carries the first identifier. For example, the first address information and the first identifier are carried in a header field or a message body of the response of the first invitation request.
[0439] For example, the response of the first invitation request includes the contents shown in Table 23. Wherein, “Media-Conn-Info” and “Media-Context-ID” are header fields of the response of the first invitation request, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identifier, and “192.168.176.2:5060” is the first address information. “192.168.176.2:5060” can also be replaced by “agw1006.domain11.com:5060”.
[0440] Table 23
[0441] It can be understood that the present application does not limit the execution order of S611 and S612. For example, S611 can be executed first and then S612, or S612 can be executed first and then S611, or S611 and S612 can be executed simultaneously.
[0442] So far, the session creation procedure between the terminal 1001, the P-CSCF network element 1005, the P-CSCF network element 1009 and the terminal 1002 is completed. In the above procedure, the terminal 1001 obtains the address information of the IMS-AGW 1006, such as the first address information. The IMS-AGW 1006 obtains the address information of the terminal 1001 and the address information of the IMS-AGW 1010, such as the third address information. The IMS-AGW 1010 obtains the address information of the terminal 1002 and the address information of the IMS-AGW 1006, such as the second address information. The terminal 1002 obtains the address information of the IMS-AGW 1010, such as the fourth address information. Subsequently, the terminal 1001, the IMS-AGW 1006, the IMS-AGW 1010 and the terminal 1002 can perform media negotiation based on the address information obtained by each of them, which will be described in detail below.
[0443] S613: The terminal 1001 sends a media negotiation request (MediaNegotiationRequest) 1 to the IMS-AGW 1006 according to the first address information. Correspondingly, the IMS-AGW 1006 receives the media negotiation request 1 from the terminal 1001.
[0444] A possible implementation is that if the first address information includes the IP address of the IMS-AGW 1006, the terminal 1001 can directly send the media negotiation request 1 to the IMS-AGW 1006. If the first address information includes the hostname or domain name of the IMS-AGW 1006, the terminal 1001 can query the IP address of the IMS-AGW 1006 based on the first address information, and send the media negotiation request 1 to the IMS-AGW 1006 according to the IP address of the IMS-AGW 1006.
[0445] The media negotiation request 1 carries the first identifier and the media information proposed by the terminal 1001, such as the first SDP Offer. The media negotiation request 1 can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission.
[0446] Exemplarily, the media negotiation request 1 is used to negotiate audio media information, and the media negotiation request 1 is a real-time communication protocol message based on UDP, QUIC, websocket or webtransport transmission, and the content included in the media negotiation request 1 can be as shown in Table 24. Wherein, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identifier, and the information included in the “SDP” is the first SDP Offer.
[0447] Table 24
[0448] Other introductions of the media negotiation request 1 can refer to the description of the fourth media negotiation request in the methods shown in FIG. 4 or FIG. 5.
[0449] S614: The IMS-AGW 1006 sends the media negotiation request 2 to the IMS-AGW 1010 according to the third address information. Correspondingly, the IMS-AGW 1010 receives the media negotiation request 2 from the IMS-AGW 1006.
[0450] In one possible implementation, after receiving the media negotiation request 1, the IMS-AGW 1006 can match to the first session according to the first identifier, and send the media negotiation request 2 to the IMS-AGW 1010 according to the third address information.
[0451] It can be understood that if the third address information includes the IP address of the IMS-AGW 1010, the IMS-AGW 1006 can directly send the media negotiation request 2 to the IMS-AGW 1010. If the third address information includes the hostname or domain name of the IMS-AGW 1010, the IMS-AGW 1006 can query the IP address of the IMS-AGW 1010 based on the third address information, and send the media negotiation request 2 to the IMS-AGW 1010 according to the IP address of the IMS-AGW 1010.
[0452] Wherein, the media negotiation request 2 carries the first identifier and the media information proposed by the IMS-AGW 1006, and the media information proposed by the IMS-AGW 1006 is, for example, the second SDP Offer. The media negotiation request 2 can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. The second SDP Offer is determined according to the first SDP Offer, for example, the IMS-AGW 1006 can modify the IP address information and port information in the first SDP Offer to the IP address information and port information allocated by the IMS-AGW 1006.
[0453] Exemplarily, taking the media negotiation request 2 as an example based on the real-time communication protocol message of UDP, QUIC, websocket or webtransport transmission, the content included in the media negotiation request 2 can be as shown in Table 25. Wherein, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identity, and the information included in the “SDP” is the second SDP Offer. The IMS-AGW 1006 modifies the IP address “192.168.176.1” in the first SDP Offer to “192.168.176.3”, and modifies the audio media port “19024” in the first SDP Offer to “19028”.
[0454] Table 25
[0455] Other introductions of the media negotiation request 2 can refer to the description of the first media negotiation request in the above-mentioned methods shown in FIG. 4 or FIG. 5.
[0456] S615: The IMS-AGW 1010 sends the media negotiation request 3 to the terminal 1002 according to the address information of the terminal 1002. Correspondingly, the terminal 1002 receives the media negotiation request 3 from the IMS-AGW 1010.
[0457] In a possible implementation, after receiving the media negotiation request 1, the IMS-AGW 1006 can match to the first session according to the first identity, and send the media negotiation request 3 to the terminal 1002 according to the address information of the terminal 1002.
[0458] It can be understood that if the address information of the terminal 1002 includes the IP address of the terminal 1002, the IMS-AGW 1010 can directly send the media negotiation request 3 to the terminal 1002. If the address information of the terminal 1002 includes the host name or domain name of the terminal 1002, the IMS-AGW 1010 can query the IP address of the terminal 1002 based on the address information of the terminal 1002, and send the media negotiation request 3 to the terminal 1002 according to the IP address of the terminal 1002.
[0459] The media negotiation request 3 carries the first identifier and the media information proposed by the IMS-AGW 1010, for example, a third SDP Offer. The media negotiation request 3 can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket, webtransport, etc. The third SDP Offer is determined according to the second SDP Offer, for example, the IMS-AGW 1010 can modify the IP address information and the port information in the second SDP Offer to the IP address information and the port information allocated by the IMS-AGW 1010.
[0460] For example, if the media negotiation request 3 is a real-time communication protocol message based on UDP, QUIC, websocket, or webtransport, the content included in the media negotiation request 3 can be as shown in Table 26. The first identifier is “eadgeadgfdddaegddaefadge@ue1001.domain11.com”, and the information included in the “SDP” is the third SDP Offer. The IMS-AGW 1010 modifies the IP address “192.168.176.3” in the second SDP Offer to “192.168.176.5”, and modifies the audio media port “19028” in the second SDP Offer to “19032”.
[0461] Table 26
[0462] Other introductions of the media negotiation request 3 can refer to the description of the fifth media negotiation request in the methods shown in FIG. 4 or FIG. 5.
[0463] S616: The terminal 1002 sends a media negotiation response 3 to the IMS-AGW 1010 according to the fourth address information. Correspondingly, the IMS-AGW 1010 receives the media negotiation response 3 from the terminal 1002.
[0464] One possible implementation, after receiving the media negotiation request 3, the terminal 1002 determines the media negotiation result, and sends the media negotiation response 3 to the IMS-AGW 1010 according to the fourth address information. The media negotiation result is carried in the media negotiation response 3. For example, the media information that the terminal 1002 answers is carried in the media negotiation response 3, such as the third SDP Answer. The media negotiation response 3 can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. Optionally, the media negotiation response 3 also carries the first identifier.
[0465] For example, the media negotiation response 3 is a real-time communication protocol message based on UDP, QUIC, websocket or webtransport transmission, the content included in the media negotiation response 3 can be as shown in Table 27. Among them, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identifier, the information included in “SDP” is the third SDP Answer. “192.168.176.6” is the IP address of the terminal 1002, and “19036” is the audio media port provided by the terminal 1002.
[0466] Table 27
[0467] Other introductions of the media negotiation response 3 can refer to the description of the fifth media negotiation response in the above-mentioned methods shown in FIG. 4 or FIG. 5.
[0468] S617: The IMS-AGW 1010 sends the media negotiation response 2 to the IMS-AGW 1006 according to the second address information. Correspondingly, the IMS-AGW 1006 receives the media negotiation response 2 from the IMS-AGW 1010.
[0469] Among them, the media information that the IMS-AGW 1010 answers is carried in the media negotiation response 2, such as the second SDP Answer. The media negotiation response 2 can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. Optionally, the media negotiation response 2 also carries the first identifier.
[0470] Exemplarily, taking the case that the media negotiation response 2 is a real-time communication protocol message based on UDP, QUIC, websocket or webtransport transmission, the content included in the media negotiation response 2 can be as shown in Table 28. Wherein, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identity, and the information included in the “SDP” is the second SDP Answer. The IMS-AGW 1010 modifies the IP address “192.168.176.6” in the third SDP Answer to “192.168.176.4”, and modifies the audio media port “19036” in the third SDP Answer to “19040”.
[0471] Table 28
[0472] Other introductions of the media negotiation response 2 can refer to the description of the first media negotiation response in the above-mentioned method shown in FIG. 4 or FIG. 5.
[0473] S618: The IMS-AGW 1006 sends the media negotiation response 1 to the terminal 1001 according to the address information of the terminal 1001. Correspondingly, the terminal 1001 receives the media negotiation response 1 from the IMS-AGW 1006.
[0474] Wherein, the media negotiation response 1 carries the media information answered by the IMS-AGW 1006, such as the first SDP Answer. The media negotiation response 1 can be a SIP message, or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission. Optionally, the media negotiation response 1 also carries a first identity.
[0475] Exemplarily, taking the case that the media negotiation response 1 is a real-time communication protocol message based on UDP, QUIC, websocket or webtransport transmission, the content included in the media negotiation response 1 can be as shown in Table 29. Wherein, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identity, and the information included in the “SDP” is the first SDP Answer. The IMS-AGW 1006 modifies the IP address “192.168.176.4” in the second SDP Answer to “192.168.176.2”, and modifies the audio media port “19040” in the second SDP Answer to “19044”.
[0476] Table 29
[0477] Other descriptions of the media negotiation response 1 can refer to the descriptions of the fourth media negotiation response in the methods shown in FIG. 4 or FIG. 5.
[0478] Up to now, the media negotiation between the terminal 1001, the IMS-AGW 1006, the IMS-AGW 1010 and the terminal 1002 is completed.
[0479] S619: The terminal 1001, the IMS-AGW 1006, the IMS-AGW 1010 and the terminal 1002 transmit audio media streams based on the media negotiation result.
[0480] In one possible implementation, after the terminal 1002 rings and goes off hook, the user of the terminal 1001 and the user of the terminal 1002 have a voice call, and the terminal 1001, the IMS-AGW 1006, the IMS-AGW 1010 and the terminal 1002 transmit audio media streams based on the media negotiation result.
[0481] Based on the method shown in FIG. 6, the terminal 1001, the P-CSCF network element 1005, the P-CSCF network element 1009 and the terminal 1002 can create a first session, and in the process of creating the first session, media negotiation is not performed, but the address information required for media negotiation is carried to each device. Subsequently, the terminal 1001, the IMS-AGW 1006, the IMS-AGW 1010 and the terminal 1002 can perform media negotiation based on the corresponding address information. Through the above method, the session creation and the media negotiation can be separated, so the media negotiation request or the media negotiation response in FIG. 6 does not need to be forwarded through the control function network element (such as the P-CSCF network element 1005 and the P-CSCF network element 1009). Therefore, the media negotiation request and the media negotiation response can avoid passing through more network elements to reach the corresponding media function network element (such as the IMS-AGW 1006 and the IMS-AGW 1010), so the media negotiation process can be simplified and the media negotiation efficiency can be improved.
[0482] Optionally, in a possible implementation of the method shown in FIG. 6, the terminal 1001 or the terminal 1002 can trigger the switching of the current voice call to a video call. Since the terminal 1001, the IMS-AGW 1006, the IMS-AGW 1010 and the terminal 1002 save the corresponding media negotiation addresses, the terminal 1001, the IMS-AGW 1006 and the IMS-AGW 1010 can directly initiate a media negotiation request to the corresponding media function network element to negotiate the video media information without the participation of the control function network element, which can simplify the operation of the control function network element. Hereinafter, the terminal 1001 triggers the switching of the current voice call to a video call is taken as an example for illustration. Specifically, as shown in FIG. 7, the method shown in FIG. 6 further includes the following steps:
[0483] S620: The terminal 1001 determines that the media information of the first session needs to be updated.
[0484] The specific process of S620 can refer to the corresponding description of S405 described above, and will not be repeated here.
[0485] S621: The terminal 1001 sends a media negotiation request 4 to the IMS-AGW 1006 according to the first address information. Correspondingly, the IMS-AGW 1006 receives the media negotiation request 4 from the terminal 1001.
[0486] The media negotiation request 4 carries the first identifier and the updated media information. The updated media information includes audio media information and video media information. The audio media information can be the previously negotiated audio media information or the newly negotiated audio media information, which is not limited. The updated media information is, for example, the fourth SDP Offer. The media negotiation request 4 can be a SIP message or a real-time communication protocol message based on UDP, QUIC, HTTP, websocket or webtransport transmission.
[0487] For example, when the media negotiation request 4 is a real-time communication protocol message based on UDP, QUIC, websocket or webtransport transmission, the content included in the media negotiation request 4 can be as shown in Table 30. Wherein, “eadgeadgfdddaegddaefadge@ue1001.domain11.com” is the first identifier, and the information included in “SDP” is the fourth SDP Offer.
[0488] Table 30
[0489] S622: The IMS-AGW 1006 sends a media negotiation request 5 to the IMS-AGW 1010 according to the third address information. Correspondingly, the IMS-AGW 1010 receives the media negotiation request 5 from the IMS-AGW 1006.
[0490] S623: The IMS-AGW 1010 sends a media negotiation request 6 to the terminal 1002 according to the address information of the terminal 1002. Correspondingly, the terminal 1002 receives the media negotiation request 6 from the IMS-AGW 1010.
[0491] S624: The terminal 1002 sends a media negotiation response 6 to the IMS-AGW 1010 according to the fourth address information. Correspondingly, the IMS-AGW 1010 receives the media negotiation response 6 from the terminal 1002.
[0492] S625: The IMS-AGW 1010 sends a media negotiation response 5 to the IMS-AGW 1006 according to the second address information. Correspondingly, the IMS-AGW 1006 receives the media negotiation response 5 from the IMS-AGW 1010.
[0493] S626: The IMS-AGW 1006 sends a media negotiation response 4 to the terminal 1001 according to the address information of the terminal 1001. Correspondingly, the terminal 1001 receives the media negotiation response 4 from the IMS-AGW 1006.
[0494] S627: The terminal 1001, the IMS-AGW 1006, the IMS-AGW 1010 and the terminal 1002 transmit audio and video media streams based on the media negotiation result.
[0495] It can be understood that the specific process of S622-S627 is similar to the process of S614-S619, except that the audio media information and the video media information are carried in each media negotiation request and each media negotiation response. Therefore, the specific process of S622-S627 can refer to the corresponding description in S614-S619, and will not be described again.
[0496] It can be understood that the actions of the terminal 1001, the IMS-AGW 1006, the P-CSCF network element 1005, the IMS-AGW 1010, the P-CSCF network element 1009 or the terminal 1002 in the above steps can be performed by the processor 301 in the communication apparatus 30 in FIG. 3 invoking the application program code stored in the memory 303, and the present application does not make any limitation in this regard.
[0497] The following describes the method provided by the present application by taking the terminal 1201 in FIG. 1C as an example, in which the third media communication entity and the third control function entity are deployed, the first media function entity is deployed in the MF network element 1205 in FIG. 1C, the first control function entity is deployed in the USF network element 1203 in FIG. 1C, the second media function entity is deployed in the MF network element 1206 in FIG. 1C, the second control function entity is deployed in the USF network element 1204 in FIG. 1C, and the fourth media communication entity and the fourth control function entity are deployed in the terminal 1202 in FIG. 1C.
[0498] As shown in FIG. 8, another communication method is provided by the present application, which can be applied to a call process between the terminal 1201 and the terminal 1202. The communication method can include the following steps:
[0499] S801: The terminal 1201 sends a first session connection request (Session Connect Request) to the USF network element 1203. Correspondingly, the USF network element 1203 receives the first session connection request from the terminal 1201.
[0500] In one possible implementation, the terminal 1201 determines to initiate a video call to the terminal 1202, and then the terminal 1201 can initiate a session establishment process to establish a first session. For example, the terminal 1201 sends the first session connection request to the USF network element 1203 to trigger the session establishment process.
[0501] The first session is a session between the terminal 1201 and the terminal 1202, and is used to transmit a media stream between the terminal 1201 and the terminal 1202. The terminal 1201 and the terminal 1202 can be understood as end points of the first session. In addition to the terminal 1201 and the terminal 1202, the first session also passes through the MF network element 1205 and the MF network element 1206. For more information about the first session, refer to the description of the first session in the method shown in FIG. 4 or FIG. 5. The first session connection request does not carry an SDP Offer. The first session connection request can carry address information of the terminal 1201 and a number of the terminal 1202. Optionally, the first session connection request also carries a first identifier. For example, the first session connection request carries the address information of the terminal 1201 and the first identifier in a header field or a message body of the first session connection request. For more information about the address information of the terminal 1201, refer to the description of the address information of the third media function entity in the method shown in FIG. 4 or FIG. 5. For more information about the first identifier, refer to the description of the first identifier in the method shown in FIG. 4 or FIG. 5, which will not be repeated here.
[0502] Exemplarily, the content of the first session connection request can be as shown in Table 31. Wherein, "Callee", "Media-Conn-Info" and "Media-Context-ID" are header fields of the first session connection request, "+8618812345678" is the number of the terminal 1202, "eadgeadgfdddaegddaefadge@ue1201.domain11.com" is the first identity, and "192.168.176.1:6060" is the address information of the terminal 1201. "192.168.176.1:6060" can also be replaced by "ue1201.domain11.com:6060".
[0503] Table 31
[0504] S802: The USF network element 1203 sends a first session creation request (SessionCreateRequest) to the MF network element 1205. Correspondingly, the MF network element 1205 receives the first session creation request from the USF network element 1203.
[0505] In a possible implementation, the USF network element 1203 can determine the MF network element 1205 according to the location information of the terminal 1201, and send the first session creation request to the MF network element 1205. Wherein, the location information of the terminal 1201 can be reported by the terminal 1201 when registering or through the first session connection request. Optionally, in addition to the location information of the terminal 1201, the USF network element 1203 can also determine the MF network element 1205 in combination with the load of the MF network element.
[0506] Wherein, the first session creation request is used to request to create a session. The first session creation request does not carry an SDP Offer. The first session creation request carries the address information of the terminal 1201. Optionally, the first session creation request also carries the first identity. For example, the first session creation request carries the address information of the terminal 1201 and the first identity in the header field or the message body. It should be understood that if the first session connection request does not carry the first identity, the USF network element 1203 can generate the first identity and carry it in the first session creation request.
[0507] Exemplarily, the content of the first session creation request can be as shown in Table 32.
[0508] Table 32
[0509] S803: The MF network element 1205 sends a first session create response (SessionCreateResponse) to the USF network element 1203. Correspondingly, the USF network element 1203 receives the first session create response from the MF network element 1205.
[0510] In a possible implementation, after receiving the first session create request, the MF network element 1205 saves the first session create request and allocates address information of the MF network element 1205. For example, the MF network element 1205 allocates first address information and second address information. The first address information is used to connect the MF network element 1205 to the terminal 1201, and the second address information is used to connect the MF network element 1205 to the MF network element 1206. For more information about the first address information and the second address information, refer to the description of the two in the method shown in FIG. 4 or FIG. 5.
[0511] In a possible design, the first session create response does not carry an SDP Answer. The first session create response carries the first address information and the second address information. Optionally, the first session create response further carries the first identifier. For example, the first address information, the second address information, and the first identifier are carried in a header field or a message body of the first session create response. It should be understood that if the first identifier is not carried in the first session create request, the MF network element 1205 can generate the first identifier and carry it in the first session create response.
[0512] For example, the first session create response includes the contents shown in Table 33. In Table 33, “192.168.176.3:6060” is the first address information, and “192.168.176.4:6061” is the second address information.
[0513] Table 33
[0514] It can be understood that, in order to enable the USF network element 1203 to identify which device is connected by the first address information and the second address information respectively, the positions of the first address information and the second address information in Table 33 are agreed in advance or specified in a protocol. In addition, in a specific application, the USF network element 1203 can identify which device is connected by the first address information and the second address information respectively by other manners. For example, the first address information and the second address information can be carried in different header fields. For example, the first address information is carried in a header field “Media-Conn-Outer”, and the second address information is carried in a header field “Media-Conn-Inner”. Alternatively, the first address information and the second address information correspond to different number segments. Alternatively, the first session create request and the first session create response further carry an identifier of each address information.
[0515] S804: The USF network element 1203 sends a second session connection request to the USF network element 1204. Correspondingly, the USF network element 1204 receives the second session connection request from the USF network element 1203.
[0516] In a possible implementation, the USF network element 1203 determines the USF network element 1204 that can provide services for the terminal 1202 according to the registration information of the number of the terminal 1202, and sends the second session connection request to the USF network element 1204.
[0517] The second session connection request does not carry the SDP Offer. The second session connection request can carry the second address information. Optionally, the second session connection request also carries the first identifier. For example, the second address information and the first identifier are carried in the header field or the message body of the second session connection request. Exemplarily, the content included in the second session connection request can be as shown in Table 34.
[0518] Table 34
[0519] S805: The USF network element 1204 sends a second session creation request to the MF network element 1206. Correspondingly, the MF network element 1206 receives the second session creation request from the USF network element 1204.
[0520] In a possible implementation, the USF network element 1204 can determine the MF network element 1206 according to the location information of the terminal 1202, and send the second session creation request to the MF network element 1206. The location information of the terminal 1202 can be reported by the terminal 1202 when registering. Optionally, in addition to the location information of the terminal 1202, the USF network element 1204 can also determine the MF network element 1206 in combination with the load of the MF network element.
[0521] The second session creation request is used to request to create a session. The second session creation request does not carry the SDP Offer. The second session creation request carries the second address information. Optionally, the second session creation request also carries the first identifier. For example, the second address information and the first identifier are carried in the header field or the message body of the second session creation request. It should be understood that if the first identifier is not carried in the second session connection request, the USF network element 1204 can generate the first identifier and carry it in the second session creation request. The specific format of the second session creation request is similar to that of the first session creation request, and reference can be made to the foregoing description of the first session creation request, which will not be described herein again.
[0522] S806: The MF network element 1206 sends a second session creation response to the USF network element 1204. Correspondingly, the USF network element 1204 receives the second session creation response from the MF network element 1206.
[0523] In one possible implementation, after receiving the second session creation request, the MF network element 1206 saves the second session creation request and allocates address information of the MF network element 1206. For example, the MF network element 1206 allocates third address information and fourth address information. The third address information is used to connect the MF network element 1206 to the MF network element 1205, and the fourth address information is used to connect the MF network element 1206 to the terminal 1202. For more information about the third address information and the fourth address information, refer to the description of the two in the method shown in FIG. 4 or FIG. 5.
[0524] In one possible design, the second session creation response does not carry the SDP Answer. The second session creation response carries the third address information and the fourth address information. Optionally, the second session creation response also carries the first identifier. For example, the third address information, the fourth address information, and the first identifier are carried in a header field or a message body of the second session creation response. It should be understood that if the first identifier is not carried in the second session creation request, the MF network element 1206 can generate the first identifier and carry it in the second session creation response. The specific format of the second session creation response is similar to that of the first session creation response, and refer to the description of the first session creation response.
[0525] S807: The USF network element 1204 sends a third session connection request to the terminal 1202. Correspondingly, the terminal 1202 receives the third session connection request from the USF network element 1204.
[0526] The third session connection request does not carry the SDP Offer. The third session connection request can carry the fourth address information. Optionally, the third session connection request also carries the first identifier. For example, the fourth address information and the first identifier are carried in a header field or a message body of the third session connection request. The specific format of the third session connection request is similar to that of the first session connection request and the second session connection request, and refer to the corresponding description.
[0527] S808: The terminal 1202 sends a third session connection response (SessionConnectResponse) to the USF network element 1204. Correspondingly, the USF network element 1204 receives the third session connection response from the terminal 1202.
[0528] The third session connection response does not carry the SDP Answer. The third session connection response carries address information of the terminal 1202. Optionally, the third session connection response also carries the first identifier. For example, the address information of the terminal 1202 and the first identifier are carried in a header field or a message body of the third session connection response. It should be understood that if the first identifier is not carried in the third session connection request, the terminal 1202 can generate the first identifier and carry it in the third session connection response.
[0529] For example, the content included in the third session connection response can be as shown in Table 35. Wherein, "Media-Conn-Info" and "Media-Context-ID" are the header fields of the third session connection response, "edgeadgfdddaegddaefadge@ue1201.domain11.com" is the first identifier, and "192.168.176.6:6060" is the address information of the terminal 1202. "192.168.176.6:6060" can also be replaced by "ue1202.domain11.com:6060".
[0530] Table 35
[0531] S809: The USF network element 1204 sends a first session update request (SessionUpdateRequest) to the MF network element 1206. Correspondingly, the MF network element 1206 receives the first session update request from the USF network element 1204.
[0532] Wherein, the first session update request carries the address information of the terminal 1202. Optionally, the first session update request also carries the first identifier. For example, the address information of the terminal 1202 and the first identifier are carried in the header field or the message body of the first session update request. For example, the content included in the first session update request can be as shown in Table 36.
[0533] Table 36
[0534] It can be understood that after receiving the first session update request, the MF network element 1206 can save the request. Optionally, the MF network element 1206 can also send a first session update response (SessionUpdateResponse) to the USF network element 1204 to indicate whether the first session update request is successfully received.
[0535] S810: The USF network element 1204 sends a second session connection response to the USF network element 1203. Correspondingly, the USF network element 1203 receives the second session connection response from the USF network element 1204.
[0536] Wherein, the second session connection response does not carry the SDP Answer. The second session connection response carries the third address information. Optionally, the second session connection response also carries the first identifier. For example, the third address information and the first identifier are carried in the header field or the message body of the second session connection response.
[0537] Exemplarily, the second session connection response includes contents as shown in Table 37. Wherein, "Media-Conn-Info" and "Media-Context-ID" are header fields of the second session connection response, "edgeadgfdddaegddaefadge@ue1201.domain11.com" is the first identifier, and "192.168.176.4:6060" is the third address information.
[0538] Table 37
[0539] It can be understood that the application does not limit the execution order of S809 and S810. For example, S809 can be executed first and then S810, or S810 can be executed first and then S809, or S809 and S810 can be executed simultaneously.
[0540] S811: The USF network element 1203 sends a second session update request to the MF network element 1205. Correspondingly, the MF network element 1205 receives the second session update request from the USF network element 1203.
[0541] Wherein, the second session update request carries the third address information. Optionally, the second session update request also carries the first identifier. For example, the third address information and the first identifier are carried in the header field or the message body of the second session update request. The format of the second session update request is similar to the format of the first session update request described above, and reference can be made to the foregoing description of the first session update request, and details are not repeated herein.
[0542] It can be understood that after receiving the second session update request, the MF network element 1205 can save the request. Optionally, the MF network element 1205 can also send a second session update response to the USF network element 1203 to indicate whether the second session update request is successfully received.
[0543] S812: The USF network element 1203 sends a first session connection response to the terminal 1201. Correspondingly, the terminal 1201 receives the first session connection response from the USF network element 1203.
[0544] Wherein, the first session connection response does not carry the SDP Answer. The first session connection response carries the first address information. Optionally, the first session connection response also carries the first identifier. For example, the first address information and the first identifier are carried in the header field or the message body of the first session connection response. The format of the first session connection response is similar to the format of the second session connection response and the third session connection response described above, and reference can be made to the foregoing description, and details are not repeated herein.
[0545] It can be understood that the application does not limit the execution order of S811 and S812, for example, S811 can be executed first and then S812, or S812 can be executed first and then S811, or S811 and S812 can be executed simultaneously.
[0546] So far, the session creation process between the terminal 1201, the USF network element 1203, the USF network element 1204 and the terminal 1202 is completed. In the above process, the terminal 1201 obtains the address information of the MF network element 1205, such as the first address information. The MF network element 1205 obtains the address information of the terminal 1201 and the address information of the MF network element 1206, such as the third address information. The MF network element 1206 obtains the address information of the terminal 1202 and the address information of the MF network element 1205, such as the second address information. The terminal 1202 obtains the address information of the MF network element 1206, such as the fourth address information. Subsequently, the terminal 1201, the MF network element 1205, the MF network element 1206 and the terminal 1202 can perform media negotiation based on the address information obtained by each of them, which will be described in detail below.
[0547] S813: The terminal 1201 sends a media negotiation request (MediaNegotiationRequest) 1 to the MF network element 1205 according to the first address information. Correspondingly, the MF network element 1205 receives the media negotiation request 1 from the terminal 1201.
[0548] In one possible implementation, the terminal 1201 generates the media negotiation request 1 according to the call type (the method shown in FIG. 8 is exemplified by taking the call type as a video call) and t...
Claims
1. A communication method characterized by comprising: The method is applied to a first media function entity, and comprises the following steps: receiving address information of a second media function entity; sending a first media negotiation request to the second media function entity according to the address information of the second media function entity, the first media negotiation request carrying first media information, the first media information being media information proposed by the first media function entity; receiving a first media negotiation response from the second media function entity, the first media negotiation response carrying second media information, the second media information being media information answered by the second media function entity; sending a media stream to the second media function entity according to the second media information, or receiving a media stream from the second media function entity according to the second media information.
2. The method of claim 1, wherein, The method further comprises the following steps: sending address information of the first media function entity.
3. The method of claim 2, wherein, The method further comprises the following steps: receiving a first request from a first control function entity, the first request being used for requesting the address information of the first media function entity; the sending of the address information of the first media function entity comprises the following steps: sending a response to the first request to the first control function entity, the response to the first request carrying the address information of the first media function entity.
4. The method of claim 3, wherein, The first request carries address information of a third media function entity in a header field or a message body of the first request, and the response to the first request carries the address information of the first media function entity in a header field or a message body of the response to the first request; The address information of the first media function entity comprises first address information and second address information, the first address information being used for connecting the first media function entity to the third media function entity, and the second address information being used for connecting the first media function entity to the second media function entity.
5. The method according to claim 3 or 4, characterized in that, At least one of the first request or the response to the first request further carries a first identifier, the first identifier being used for indicating a first session between a first terminal and a second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used for transmitting a media stream between the first terminal and the second terminal.
6. The method of claim 5, wherein, The first media negotiation request further carries the first identifier.
7. The method according to any one of claims 1 to 6, characterized in that, The method further comprises the following steps: determining that media information of the first session needs to be updated; sending a second media negotiation request to the second media function entity according to the address information of the second media function entity, the second media negotiation request carrying third media information, the third media information being updated media information; receiving a second media negotiation response from the second media function entity, the second media negotiation response carrying fourth media information, the fourth media information being media information answered by the second media function entity based on the third media information; sending a media stream to the second media function entity according to the fourth media information, or receiving a media stream from the second media function entity according to the fourth media information.
8. The method according to any one of claims 3-7, characterized in that, The first control function entity and the first media function entity are deployed on a first terminal in a first communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway or a media function network element in the first communication network; or, The first control function entity is deployed on a Proxy Call Session Control Function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, and the second media function entity is deployed on a Transcoder Gateway in the first communication network; or, The first control function entity is deployed on a Network Interworking Border Control Function network element in a first communication network, the first media function entity is deployed on a Transcoder Gateway in the first communication network, and the second media function entity is deployed on a Transcoder Gateway in a second communication network; or, The first control function entity is deployed on a Network Interworking Border Control Function network element in a second communication network, the first media function entity is deployed on a Transcoder Gateway in the second communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the second communication network; or, The first control function entity is deployed on a Proxy Call Session Control Function network element in a second communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the second communication network, and the second media function entity is deployed on a second terminal in the second communication network; or, The first control function entity is deployed on a Proxy Call Session Control Function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in a second communication network; or, The first control function entity is deployed on a Unified Session Control Function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on a media function network element in a second communication network; or, The first control function entity is deployed on a Unified Session Control Function network element in a second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity is deployed on a second terminal in the second communication network; or, The first control function entity is deployed on a Unified Session Control Function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on a Transcoder Gateway in the first communication network; or, The first control function entity is deployed on a network interconnection border control function network element in a second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, and the second media function entity is deployed on a media function network element in the second communication network; or The first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, and the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a second communication network; or The first control function entity is deployed on a proxy call session control function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, and the second media function entity is deployed on a media function network element in a second communication network.
9. The method of claim 8, wherein The first communication network is a calling network, and the second communication network is a called network; or The first communication network is a called network, and the second communication network is a calling network.
10. A communication method characterized by comprising: The method applied to the second media function entity comprises: receiving address information of the first media function entity; receiving a first media negotiation request from the first media function entity, the first media negotiation request carrying first media information, the first media information being media information proposed by the first media function entity; sending a first media negotiation response to the first media function entity according to the address information of the first media function entity, the first media negotiation response carrying second media information, the second media information being media information answered by the second media function entity; and sending a media stream to the first media function entity according to the second media information or receiving a media stream from the first media function entity according to the second media information.
11. The method of claim 10, wherein, The method further comprises: sending address information of the second media function entity.
12. The method of claim 11, wherein The receiving of the address information of the first media function entity comprises: receiving a second request from a second control function entity, the second request carrying the address information of the first media function entity; and The sending of the address information of the second media function entity comprises: sending a response to the second request to the second control function entity, the response to the second request carrying the address information of the second media function entity.
13. The method of claim 12, wherein, The header field or message body of the second request carries the address information of the first media function entity, and the header field or message body of the response to the second request carries the address information of the second media function entity.
14. The method according to claim 12 or 13, characterized in that, The method is applied to a call process between a first terminal and a second terminal, at least one of the second request or a response of the second request further carries a first identifier, the first identifier is used to indicate a first session between the first terminal and the second terminal, the first session passes through the first media function entity and the second media function entity, and the first session is used to transmit a media stream between the first terminal and the second terminal.
15. The method of claim 14, wherein, The first media negotiation request further carries the first identifier.
16. The method according to any one of claims 10-15, characterized in that, The method further comprises: determining that media information of the first session needs to be updated; sending a third media negotiation request to the first media function entity according to address information of the first media function entity, the third media negotiation request carrying fifth media information, the fifth media information being updated media information; receiving a third media negotiation response from the first media function entity, the third media negotiation response carrying sixth media information, the sixth media information being media information responded by the first media function entity based on the fifth media information; sending a media stream to the first media function entity according to the sixth media information, or receiving a media stream from the first media function entity according to the sixth media information.
17. The method of any of claims 12-16, wherein: the first media function entity is deployed on a first terminal in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the first communication network; or, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in a first communication network, the second media function entity is deployed on a Translation Gateway in the first communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the first communication network; or, the first media function entity is deployed on a Translation Gateway in a first communication network, the second media function entity is deployed on a Translation Gateway in a second communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the second communication network; or, the first media function entity is deployed on a Translation Gateway in a second communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the second communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the second communication network; or, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in a second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or, the first media function entity is deployed on a second terminal in a second communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the second communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the second communication network. The first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; Or, The first media function entity is deployed on a first terminal in a first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a unified session control function network element in the first communication network; Or, The first media function entity is deployed on a media function network element in a first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; Or, The first media function entity is deployed on a media function network element in a second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or The first media function entity is deployed on a media function network element in a first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on an interconnection border control function network element in the first communication network; or The first media function entity is deployed on a conversion gateway in a second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; Or, The first media function entity is deployed on a media function network element in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; Or, The first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
18. The method of claim 17, wherein: The first communication network is a calling network, and the second communication network is a called network; or The first communication network is a called network, and the second communication network is a calling network.
19. A method of communication, comprising: The method applied to a first control function entity comprises: Receiving address information of a second media function entity from a second control function entity; sending the address information to a first media function entity, the address information being used by the first media function entity to send a media negotiation request to a second media function entity, the media negotiation request being used by the first media function entity to negotiate media information with the second media function entity.
20. The method of claim 19, wherein, The method further comprises: sending a first request to the first media function entity, the first request being used to request address information of the first media function entity; receiving a response to the first request from the first media function entity, the response to the first request carrying the address information of the first media function entity; sending the address information of the first media function entity to the second control function entity.
21. The method of claim 20, wherein, The address information of the first media function entity comprises first address information and second address information, the first address information being used to connect the first media function entity to a third media function entity, the second address information being used to connect the first media function entity to the second media function entity. The method is applied to a call process between a first terminal and a second terminal, at least one of the first request or the response to the first request further carrying a first identifier, the first identifier being used to indicate a first session between the first terminal and the second terminal, the first session passing through the first media function entity and the second media function entity, the first session being used to transmit a media stream between the first terminal and the second terminal.
22. The method of claim 20 or 21, wherein, 23. The method of claim 22, wherein The receiving the address information of the second media function entity from the second control function entity comprises: receiving first information from the second control function entity, the first information comprising the address information of the second media function entity and the first identifier.
24. The method of claim 22 or 23, wherein The sending the address information of the first media function entity to the second control function entity comprises: sending second information to the second control function entity, the second information comprising the address information of the first media function entity and the first identifier.
25. The method of any of claims 19-24, wherein The first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the first communication network; or The first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the first communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or the first control function entity is deployed on a network interworking border control function network element in the first communication network, the first media function entity is deployed on a translation gateway in the first communication network, the second media function entity is deployed on a translation gateway in the second communication network, and the second control function entity is deployed on a network interworking border control function network element in the second communication network; or The first control function entity is deployed on a unified session control function network element in a second communication network, the first media function entity is deployed on a media function network element in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or The first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a conversion gateway in the first communication network, and the second control function entity is deployed on a network interconnection border control function network element in the first communication network; or The first control function entity is deployed on a network interconnection border control function network element in a second communication network, the first media function entity is deployed on a conversion gateway in the second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or The first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in a second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network; or The first control function entity is deployed on a proxy call session control function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem access media gateway in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
26. The method of claim 25, wherein The first communication network is a calling network, and the second communication network is a called network; or The first communication network is a called network, and the second communication network is a calling network. The method applied to the second control function entity comprises:
27. A method of communication, comprising: receiving address information of the first media function entity from the first control function entity; sending the address information of the first media function entity to the second media function entity, the address information being used by the second media function entity to send a media negotiation response to the first media function entity after receiving a media negotiation request, the media negotiation request and the media negotiation response being used to negotiate media information between the first media function entity and the second media function entity.
28. The method of claim 27, wherein The sending of the address information of the first media function entity to the second media function entity comprises: sending a second request to the second media function entity, the second request carrying address information of the first media function entity; the method further comprising: receiving a response to the second request from the second media function entity, the response to the second request carrying address information of the second media function entity; sending the address information of the second media function entity to the first control function entity.
29. The method of claim 28, wherein, the address information of the first media function entity is carried in a header field or a message body of the second request, and the address information of the second media function entity is carried in a header field or a message body of the response to the second request.
30. The method of claim 28 or 29, wherein, the method is applied to a call process between a first terminal and a second terminal, and at least one of the second request or the response to the second request further carries a first identifier, the first identifier being used to indicate a first session between the first terminal and the second terminal, the first session passing through the first media function entity and the second media function entity, and the first session being used to transmit a media stream between the first terminal and the second terminal.
31. The method of claim 30, wherein the receiving the address information of the first media function entity from the first control function entity comprises: receiving second information from the first control function entity, the second information comprising the address information of the first media function entity and the first identifier.
32. The method of claim 30 or 31, wherein the sending the address information of the second media function entity to the first control function entity comprises: sending first information to the first control function entity, the first information comprising the address information of the second media function entity and the first identifier.
33. The method of any of claims 27-32, wherein the first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, and the second control function entity is deployed on a Proxy Call Session Control Function network element in the first communication network; or the first control function entity is deployed on a Proxy Call Session Control Function network element in a first communication network, the first media function entity is deployed on an Internet Protocol Multimedia Subsystem Access Media Gateway in the first communication network, the second media function entity is deployed on a Translation Gateway in the first communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the first communication network; or the first control function entity is deployed on an Interworking Border Control Function network element in a first communication network, the first media function entity is deployed on a Translation Gateway in the first communication network, the second media function entity is deployed on a Translation Gateway in a second communication network, and the second control function entity is deployed on an Interworking Border Control Function network element in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in a second communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in a second communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity is deployed on a proxy call session control function network element in a second communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the second communication network, and the second media function entity and the second control function entity are deployed on a second terminal in the second communication network; or the first control function entity and the first media function entity are deployed on a first terminal in a first communication network, the second media function entity is deployed on a media function network element in the first communication network, and the second control function entity is deployed on a unified session control function network element in the first communication network; or the first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or the first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network; or The first control function entity is deployed on a network interworking border control function network element in a second communication network, the first media function entity is deployed on a translation gateway in the second communication network, the second media function entity is deployed on a media function network element in the second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network. Alternatively, The first control function entity is deployed on a unified session control function network element in a first communication network, the first media function entity is deployed on a media function network element in the first communication network, the second media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in a second communication network, and the second control function entity is deployed on a proxy call session control function network element in the second communication network. The first control function entity is deployed on a proxy call session control function network element in a first communication network, the first media function entity is deployed on an Internet protocol multimedia subsystem access media gateway in the first communication network, the second media function entity is deployed on a media function network element in a second communication network, and the second control function entity is deployed on a unified session control function network element in the second communication network.
34. The method of claim 33, wherein: The first communication network is a calling network, and the second communication network is a called network; or The first communication network is a called network, and the second communication network is a calling network.
35. A communications device, characterized by comprising means or modules for performing the method of any one of claims 1 to 9, or comprising means or modules for performing the method of any one of claims 10 to 18, or comprising means or modules for performing the method of any one of claims 19 to 26, or comprising means or modules for performing the method of any one of claims 27 to 34.
36. A communications device, characterized by comprising: a processor coupled to a memory for storing programs or instructions, which when executed by the processor, cause the apparatus to perform the method of any one of claims 1 to 9, or perform the method of any one of claims 10 to 18, or perform the method of any one of claims 19 to 26, or perform the method of any one of claims 27 to 34.
37. A computer readable storage medium having stored thereon a computer program or instructions, characterized in that, The computer program or instructions, when executed, cause a computer to perform the method of any one of claims 1 to 9, or the method of any one of claims 10 to 18, or the method of any one of claims 19 to 26, or the method of any one of claims 27 to 34.
38. A computer program product, comprising computer program code in said computer program product, characterised in that, The computer program code, when running on a computer, causes the computer to implement the method of any one of claims 1 to 9, or the method of any one of claims 10 to 18, or the method of any one of claims 19 to 26, or the method of any one of claims 27 to 34.
39. A communication system, characterized by comprising: An apparatus for performing the method of any one of claims 1 to 9, and / or, an apparatus for performing the method of any one of claims 10 to 18, and / or, an apparatus for performing the method of any one of claims 19 to 26, and / or, an apparatus for performing the method of any one of claims 27 to 34.
Citation Information
Patent Citations
Media negotiation method and media negotiation device
CN106817351A
Call processing method, device and system
CN115914176A
Video Call Set Up in an Established Audio Call
US20150201158A1
Call processing method, apparatus, and system
WO2023016177A1