WO2020029954A1 - 业务请求、协商、响应方法、装置及网络设备、系统 - Google Patents

业务请求、协商、响应方法、装置及网络设备、系统 Download PDF

Info

Publication number
WO2020029954A1
WO2020029954A1 PCT/CN2019/099430 CN2019099430W WO2020029954A1 WO 2020029954 A1 WO2020029954 A1 WO 2020029954A1 CN 2019099430 W CN2019099430 W CN 2019099430W WO 2020029954 A1 WO2020029954 A1 WO 2020029954A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
network communication
request
public network
response
Prior art date
Application number
PCT/CN2019/099430
Other languages
English (en)
French (fr)
Inventor
章璐
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to EP19848150.9A priority Critical patent/EP3832969A4/en
Publication of WO2020029954A1 publication Critical patent/WO2020029954A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • H04L61/2528Translation at a proxy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content

Definitions

  • the present application relates to the field of communications, for example, to a service request, negotiation, and response method, device, network device, and system.
  • the transmission of multimedia service data in Rich Media Communication mainly uses the Message Session Relay Protocol (MSRP).
  • MSRP protocol stack uses a point-to-point method to transmit messages or files based on the Transmission Control Protocol (TCP). This transmission method has the characteristics of fast data transmission and low bandwidth consumption.
  • MSRP is suitable for services that require high real-time performance, such as instant messaging (IM), file transfer, picture sharing, gaming, and business operation control.
  • IM instant messaging
  • SBC Session Border Controller
  • the SBC sends the service data to the receiving end.
  • SBC Session Border Controller
  • the main purpose is to implement network address translation (NAT) traversal of media addresses and media address legality verification.
  • the service request, negotiation, and response method, device, and network equipment and system provided in the embodiments of the present application solve the need for media service data between AS and terminal in the related technology to be transferred via SBC, resulting in large data transmission delay and user-side experience Poor question.
  • an embodiment of the present application provides a service negotiation method, including:
  • the response message carries the second public network communication address, the first public network communication address and the second public network communication address of the service responder. Establish a public network communication link between them.
  • the embodiment of the present application further provides a service request method, including:
  • the request message is used to instruct the SBC to send a service request carrying a first public network communication address of the local end to a service responding end;
  • An embodiment of the present application further provides a service response method, including:
  • the service response is used to instruct the SBC to send a response message carrying the second public network communication address of the local end to the service requesting end;
  • An embodiment of the present application further provides a service negotiation device, including:
  • the request forwarding module is configured to send a service request carrying a first public network communication address of the service requesting end to the service responding end according to the request of the service requesting end;
  • the response forwarding module is configured to send a response message to the service requesting end according to the response of the service responding end, and the response message carries the second public network communication address of the service responding end, and the first public network communication address and the second public network communication address are used in the service.
  • a public network communication link is established between the responder and the service requester.
  • An embodiment of the present application further provides a service request device, including:
  • the request sending module is configured to send a request message for a service request to the session border controller SBC, and the request message is used to instruct the SBC to send a service request carrying a first public network communication address to the service responding end;
  • the response receiving module is configured to receive a response message sent by the service responder through the SBC after receiving the service request, and the response message carries a second public network communication address of the service responder;
  • the first chain building module is configured to establish a public network communication link with the service responding end according to the second public network communication address and use the public network communication link for service data transmission.
  • An embodiment of the present application further provides a service response device, including:
  • the request receiving module is configured to receive a service request sent by the SBC, and the service request includes a first public network communication address of the service requesting end;
  • the response sending module is configured to send a service response corresponding to the service request to the SBC, and the service response is used to instruct the SBC to send a response message carrying the second public network communication address of the local end to the service requesting end;
  • the second chain building module is configured to establish a public network communication link with the service requesting end according to the first public network communication address and use the public network communication link for service data transmission.
  • An embodiment of the present application further provides a network device including a processor, a memory, and a communication bus;
  • a communication bus configured to implement connection and communication between the processor and the memory
  • a processor configured to execute a service negotiation program stored in the memory to implement the above-mentioned service negotiation method; or a processor configured to execute a service request program stored in the memory to implement the above-mentioned business request method; or a processor configured to execute in the memory Store the business response program to implement the business response method as above.
  • An embodiment of the present application further provides a network system including a terminal, an SBC, and an AS, and a communication connection between the terminal, the SBC, and the AS;
  • the terminal is a network device in which the processor can execute a service request program to implement the service request method as described above, and the SBC is a network device in which the processor can execute a service negotiation program to implement the service negotiation method as above;
  • the AS is a processor that can execute a service response as above A program to implement the network response method for the above business response method;
  • the terminal is a network device where the processor above can execute the service response program to implement the above service response method
  • the SBC is a network device where the above processor can execute the service negotiation program to implement the above service negotiation method
  • the AS is the above processor which can execute the service request program A network device to implement the service request method as described above.
  • An embodiment of the present application further provides a storage medium. At least one of a service negotiation program, a service request program, and a service response program is stored in the storage medium.
  • the service negotiation program may be executed by one or more processors to implement the above service negotiation.
  • Method the business request program may be executed by one or more processors to implement the above business request method
  • the business response program may be executed by one or more processors to implement the above business response method.
  • FIG. 1 is a schematic structural diagram of a communication system provided in the related art
  • FIG. 2 is an interaction flowchart of a service implementation scheme provided in Embodiment 1 of this application;
  • FIG. 6 is a schematic structural diagram of a service request apparatus provided in Embodiment 4 of the present application.
  • FIG. 7 is a schematic structural diagram of a service negotiation apparatus provided in Embodiment 4 of the present application.
  • FIG. 8 is a schematic structural diagram of a service response apparatus provided in Embodiment 4 of the present application.
  • FIG. 9 is a schematic diagram of a hardware structure of a network device provided in Embodiment 7 of the present application.
  • FIG. 10 is a schematic diagram of a network system provided in Embodiment 7 of the present application.
  • FIG. 11 is a schematic structural diagram of another network system provided in Embodiment 8 of the present application.
  • FIG. 12 is an interaction flowchart of another service implementation scheme provided in Embodiment 8 of the present application.
  • FIG. 13 is an interaction flowchart of another service implementation scheme provided in Embodiment 8 of the present application.
  • FIG. 14 is a flowchart of a network system defending against a malicious terminal media attack provided in Embodiment 8 of the present application.
  • 5G communication technology is mainly oriented to the five main application scenarios in the future:
  • Ubiquitous physical communication ensures efficient processing of a wide variety of device communications, including machine-type equipment and sensors.
  • RCS is a global mobile system alliance (Global Communications System Assembly) responsible for planning, GSMA, built on the Internet Protocol Multimedia Subsystem (IMS) network, a technical standard with a unified service set definition, is based on The general name for multimedia services such as voice, message, and status presentation of mobile phone directory.
  • GMA Global Communications System Assembly
  • IMS Internet Protocol Multimedia Subsystem
  • RCS is an application based on the IMS network.
  • IMS is a subsystem that supports the Internet Protocol (IP) multimedia services proposed by the Third Generation Partnership Project (3GPP) and is the development direction of multimedia communications.
  • IP Internet Protocol
  • 3GPP Third Generation Partnership Project
  • RCS is an application subsystem in the 4th generation mobile communication system (4G) era, it can well meet the communication between people in the 4G era.
  • SIP Session Initial Protocol
  • communication has nothing to do with access mode, it has a variety of multimedia business control functions and bearing capacity separation, call and session separation, application and service separation, business and network separation, and mobile network and Internet services Fusion and other capabilities.
  • Communication system 1 includes terminal 11, NAT device 12, SBC 13 And AS 14, the terminal 11 is in communication with the NAT device 12, the NAT device 12 is in communication with SBC 13, and SBC 13 is also in communication with AS 14:
  • the terminal 11 is responsible for initiating a request or responding to a service request after receiving a service request.
  • the terminal 11 whether it is a session negotiation phase (or "session connection phase") or a service data transmission phase (or (“Media connection stage"), the terminals 11 all use their own private Internet Protocol (IP) addresses.
  • IP Internet Protocol
  • the NAT device 12 is configured to convert a private network IP address in a message from the terminal into a public network IP address, and complete communication with SBC 13 and AS 14. At the same time, the NAT device 12 is also configured to forward messages from the public network side to the terminal 11.
  • Network address translation belongs to the Wide Area Network (WAN) technology. It is a translation technology that converts private (reserved) addresses into legal IP addresses. It is responsible for providing the conversion of private IP addresses and public IP addresses, and provides Forwarding of private network data flow and public network data flow.
  • WAN Wide Area Network
  • the SBC 13 in the communication system 1 includes a session negotiation unit 131 and a media relay unit 132.
  • the session negotiation unit 131 is responsible for authenticating the access of the terminal and the session, and sends a service request or a service response from the terminal to the AS 14.
  • the media relay unit 132 is configured to receive service data from the AS 14 and send it to the terminal 11, or to receive service data from the terminal 11 and send the received service data to the AS 14.
  • AS 14 includes a session processing unit 141 and a media transmission unit 142.
  • the session processing unit 141 is configured to receive a service request or a service response forwarded by the terminal 11 through the SBC 13 and implement session negotiation with the terminal 11. After the session negotiation phase ends, the session processing unit 141 further The IP address is transmitted to the media transmission unit 142.
  • the media transmission unit 142 is configured to implement media service data interaction with the terminal 11 with the help of the SBC 13 and the NAT device 12.
  • the NAT device 12 and the SBC 13 in the communication system 1 communicate based on a public network IP
  • the SBC 13 and AS 14 communicate based on a private network IP. Therefore, the session negotiation unit 131 of the SBC 13 needs to convert the public IP and the private IP when transferring the session negotiation message (service request or service response) between the AS 14 and the terminal 11. For example, when receiving the service response that AS 14 needs to send to the terminal, the session negotiation unit 131 needs to convert the private network IP of AS in the service request to the public network IP address of SBC 13, and then send the converted service response to NAT The device 12 is used by the NAT device 12 to send a service response to the terminal 11.
  • the session negotiation unit 131 receives the service request of the terminal 11 forwarded by the NAT device 12, since the SBC 13 and the NAT device 12 are based on public IP communication, the service request carries the converted NAT device 12 Public network IP address, and SBC13 communicates with AS-14 based on the private network IP. Therefore, the session negotiation unit 131 needs to convert the public network IP address of the NAT device 12 carried in the service request into the private network IP address of the SBC, and then In order to send business requests to AS14.
  • the media relay unit 132 transfers media service data between AS 14 and terminal 11, it also needs to convert the public network IP address and the private network IP address.
  • the conversion example is similar to the conversion of the session negotiation unit 131 in the session negotiation phase. This application will not repeat them.
  • SBC13 relays session negotiation messages and media service data, can implement NAT traversal of media addresses, and verify the legality of media addresses, etc., and can prevent the public IP addresses of AS14 from being directly exposed to the outside, which can improve AS14. Security.
  • SBC13 since SBC13 is in transit to media service data, it must take a certain amount of processing time, which leads to the problem of long service data transmission delay and poor user service experience.
  • this embodiment provides a service implementation solution, which includes a service request method, a service negotiation method, and a service response method, FIG. 2 An interaction flowchart of a service requester, a service responder, and an SBC in a service implementation scheme is shown.
  • the service requester and service responder in this embodiment are introduced.
  • some services are initiated by the terminal, and the terminal is used as the service requester.
  • the application server serves as the service responder; of course, there are other services initiated by the application server.
  • the application server serves as the service requester and the terminal serves as the service responder.
  • the service requester includes the private network communication address and the public network communication address.
  • the service responder also includes the private network communication address and the public network communication address.
  • the public network communication address of the service requester is referred to as a "first public network communication address”
  • the public network communication address of the service responding end is referred to as a "second public network communication address”.
  • This application only distinguishes two public network communication addresses for the convenience of introduction, and is not used to limit the scope of this embodiment.
  • the public network communication address on the terminal side may refer to the public network communication address of the NAT device.
  • S202 The service requester sends a request message for a service request to the SBC.
  • the business requesting end when it needs to request a certain business service from the business responding end, it can generate a request message, and then send the request message to the SBC.
  • the SBC then sends a service request to the service responder according to the request message from the service requester.
  • the service request sent by the SBC to the service response end carries the first public network communication address of the service request end.
  • the SBC sends a service request carrying the first public network communication address of the service requesting end to the service responding end according to the request of the service requesting end.
  • the service request sent by the SBC to the service responder is generated based on the request message received from the service requester.
  • the service request carries the first public network communication address of the service requester. Therefore, in this embodiment,
  • the request message sent by the service requester to the SBC may carry the first public network communication address, and the SBC may directly send the request message to the service responder as a service request.
  • the service requester is an AS and the service responder is a terminal.
  • the AS requests the terminal to start a certain service, it sends its own public IP address in the request message sent to the SBC.
  • the SBC may directly send the request message to the terminal as a service request without modifying the public IP address in the request message.
  • the request message sent by the service requester to the SBC carries the private network communication address of the service requester.
  • the SBC needs to generate a service request according to the first public network communication address of the service requester and the request message.
  • the private network communication address in the request message is modified to the first public network communication address to generate a service request, and then the service request is sent to a service response end.
  • the AS serves as the service requester and the terminal serves as the service responder.
  • the AS sends a request message to the SBC, the AS carries the private IP address of the AS.
  • the SBC After the SBC receives the request message, it needs Modify the private IP address of the AS in the request message to the public IP address of the AS, and then send the request message obtained after the modification process to the terminal as a service request.
  • the request message sent by the terminal to the SBC through the NAT device also carries the private network IP address of the terminal.
  • the SBC When the SBC receives the request message from the terminal, Modify the private network communication address in the request message to the public network IP address on the terminal side to obtain a service request.
  • the service responder sends a service response corresponding to the service request to the SBC.
  • the service responder After the service responder receives the service request, it can respond to the request of the service requester according to the service request, so the service responder sends a service response to the service requester according to the service request.
  • the service responder sends the service response to the SBC, and the SBC sends the response message carrying the second public network communication address of the service responder to the service requester according to the service response.
  • the SBC sends a response message carrying the second public network communication address of the service responding end to the service requesting end according to the response of the service responding end.
  • the SBC Similar to the SBC sending a service request to the service responder according to the request of the service requester.
  • the SBC sends a response message to the service requester based on the service response received from the service responder.
  • the response message carries the response message.
  • the second public network communication address of the service responder so in some examples of this embodiment, the service response sent by the service responder to the SBC may carry the second public network communication address, and the SBC may directly use the service response as The response message is sent to the service requester.
  • the service responding end is an AS and the service requesting end is a terminal.
  • the AS can carry its own public network communication address in the service response.
  • the SBC after receiving the service response carrying the public network communication address of the AS, the public network IP address in the service response may not be modified, and the service response may be directly sent to the terminal as a response message corresponding to the request message.
  • the service response sent by the service responder to the SBC carries the private network communication address of the service responder.
  • the SBC needs to generate a response message according to the second public network communication address of the service responder and the service response.
  • a response message is generated by modifying the private network communication address in the service response to a second public network communication address, and then sending the response message to the service requester as a response to the request message sent by the service requester.
  • the AS is used as a service responder and the terminal is used as a service requester.
  • the AS sends a service response to the SBC, the AS carries the private IP address of the AS.
  • the SBC After the SBC receives the service response, it needs to Modify the private network IP address of the AS in the service response to the public network IP address of the AS, and then send the modified service response to the terminal as a response message.
  • the terminal when the terminal is a service responder and the AS is a service requester, the terminal sends a service response to the SBC through the NAT device.
  • the service response also carries the private network IP address of the terminal.
  • the SBC receives the service from the terminal, After the response, modify the private network communication address in the service response to the public network IP address on the terminal side, so as to obtain a response message that can be sent to the AS side.
  • the response message sent by the SBC to the terminal further includes the port number of the AS.
  • S210 The service responding end and the service requesting end establish a public network communication link based on the first public network communication address and the second public network communication address.
  • the service request sent by the SBC to the service responder can cause the service responder to obtain the first public network communication address of the service requester; the response message sent by the SBC to the service requester can make the service requester obtain The second public network communication address of the service responding end.
  • the service requesting end and the service responding end may establish a public network communication link between the service requesting end and the service responding end according to the first public network communication address and the second public network communication address.
  • the public network communication link is a communication link established based on a public network communication address. Through this communication link, service data can be transmitted between the service requester and the service responder to realize services without having to rely on SBC relay. .
  • the chain establishment request may be initiated by a service requester or a service responder.
  • a chain establishment request is initiated by a service requester.
  • the service requester is actually a chain establishment requester, and the service response end is a chain establishment response end.
  • the service requester sends a chain establishment request to the service responder according to the second public network communication address obtained through session negotiation.
  • the service responder can use the first public network communication address obtained during the session negotiation phase. Send a chain establishment response to the service requester, so as to establish a public network communication link with the service requester.
  • a chain establishment request is initiated by a service response end to a service request end, the service response end serves as a chain establishment request end, and the service request end serves as a chain establishment response end.
  • the service responding end sends a chain establishment request to the service requesting end according to the first public network communication address obtained during the session negotiation.
  • the service requester After the service requester receives the request to establish a chain, if it agrees to establish a public network-based communication link, it can send a positive response to the service responder. If it does not agree to establish a public network-based communication link, the service requester You can reject this request.
  • the chain establishment response end after the chain establishment response end receives the chain establishment request sent by the chain establishment request end, it can verify the chain establishment request end, and only the verification chain establishment request end has previously negotiated with itself. Only after the device is set up can the requester establish a public network communication link with itself.
  • the identity of the chain-building requester verifies the identity of the chain-building requester by verifying the public network communication address of the chain-building requester. When the chain-building requester initiates a chain-building request to the chain-building responder, It can carry its own public network communication address in the request for establishing a chain.
  • the chain-building response end determines whether the public network communication address carried in the chain-building request is the public network communication address that it obtained during the session negotiation phase.
  • the chain establishment request sent by the chain establishment requesting end carries a first public network communication address.
  • the response end of the chain establishment can compare the public network communication address carried in the request for chain establishment with the first public network communication address of the service requester obtained during the session negotiation process to determine the request for establishing the chain. Whether the public network communication address carried in the packet matches the first public network communication address of the service requester.
  • the chain-building response end can initiate a positive chain-building response, thereby establishing a public network communication link with the chain-building request; if the public network communication address carried in the chain-building request is inconsistent with the first public network communication address of the service requester , It means that the chain establishment requesting party that initiated the chain establishment request is not the business requesting end. Therefore, the business response end serving as the chain establishment responding end can reject the chain establishment request from the chain establishment requesting end.
  • the responder for establishing a chain is a service request.
  • the service responder as a request for establishing a chain, can send its own request for a public network communication address, that is, a second public network communication address, to the request for establishing a chain.
  • the chain establishment response end compares the public network communication address in the chain establishment request with the second public network communication address obtained from the service responder during the session negotiation phase.
  • the public network communication address carried in it is the same as the second public network communication address of the service responder. This indicates that the request for establishing the chain is the service responder that negotiates with itself.
  • the service requester serving as the responder of the chain can obtain it in advance.
  • the obtained second public network communication address sends a request for establishing a chain to the requesting end of the chain to establish a response to the establishment of the link, establishes a public network communication link with the requesting end for establishing the public network, and then transmits service data on the communication link. If the response of the chain-building responder finds that the public network communication address carried in the received chain-building request is not the second public network communication address, it indicates that the identity of the chain-building requester is illegal, so the chain-building responder can reject the request.
  • a request for establishing a chain on the request side is not the second public network communication address, it indicates that the identity of the chain-building requester is illegal, so the chain-building responder can reject the request.
  • the service requester is a terminal, and in other examples of this embodiment, the service requester is an application server.
  • the terminal usually communicates externally through the NAT device. It may not be particularly easy for the external device to actively initiate communication with the terminal. Therefore, in this embodiment, the request for establishing a chain can be sent from the terminal to the AS. Initiation, that is, the terminal serves as the request for establishing a chain, and the AS serves as a response for establishing a chain. Therefore, when the terminal is the service requester, the chain establishment request is sent by the service requester to the service responder. When the terminal is the service responder, the chain establishment request is sent by the service responder to the service requester.
  • a service request including a first public network communication address of the service requester is sent to the service responder, and according to the response from the service responder,
  • the service requester sends a response message carrying the second public network communication address of the service responder, so that the service requester and the service responder can obtain each other's public network communication address, and then based on each other's public network communication address, the service requester and the service
  • a public network communication link is established between the responders to implement service data transmission, and services are realized, which avoids the need for service data transmission through SBC to transit, which causes the problem of low service data transmission rate and large delay, which improves the terminal side.
  • This embodiment introduces a service implementation solution based on the first embodiment. It is assumed that the terminal is a service requester and the AS is a service responder in this embodiment. For example, it is assumed that the terminal needs to upload video data to the AS. At the same time, it is assumed that the message sent by the AS to the SBC is still the private network communication address of the AS, please refer to the interaction flowchart of a service implementation scheme shown in FIG. 3:
  • the terminal sends a request message to the SBC through the NAT device.
  • the terminal can initiate a video data upload request to the AS.
  • the request message may carry the type of business service requested by the terminal.
  • the terminal implements external communication through the NAT device.
  • the request message sent by the terminal to the NAT device carries the private network communication address of the terminal, and the source address of the request message is the private network communication address of the terminal, and the destination address is Public address of the SBC.
  • the NAT device After the NAT device receives the request message, it translates the source address in the request message and changes the source address to the public network communication address of the NAT device.
  • the public network communication address of the NAT device can be regarded as the public network communication address of the terminal.
  • the terminal serves as the service requester, so the public network communication address of the NAT device is actually the first public network communication. address.
  • the NAT device After the NAT device completes the conversion from the private network communication address to the public network communication address, it can send the translated request message to the destination address, that is, to the SBC device.
  • S304 The SBC generates a service request according to the request message.
  • the SBC device After the SBC device receives the request message forwarded by the NAT device, it can generate a service request according to the request message.
  • the service request generated by the SBC carries the public network communication address on the terminal side, that is, the first public network communication address.
  • the SBC may modify the private network communication address of the terminal in the request message to the first public network communication address on the terminal side, thereby obtaining a service request.
  • not all services requested by the terminal need to establish a public network communication link between the terminal and the AS.
  • the AS does not want to expose its public network communication address to the outside world. Therefore, this embodiment provides a reference SBC process for generating a service request, see FIG. 4.
  • the SBC determines whether the service requested by the service requester supports service data transmission using a public network communication link.
  • the SBC can determine whether the service requested by the service request supports transmission using a public network communication link according to the message body of the request message. For example, in this embodiment, when a terminal requests video data upload, it can The body of the request message carries the type of service requested, and allows the SBC to determine whether the requested service supports the use of public network communication links for service data transmission based on the type of service in the message body.
  • the SBC may determine whether the service requested by the service requester supports the use of a public network communication link for service data transmission according to the message header of the request message.
  • the header of the request message includes a service indication. When the service indication is "0", it indicates that the service requested by the service requester supports transmission based on the public network communication address. When the service indication is "1", it indicates the service. The service requested by the requester does not support service data transmission based on the public network communication address.
  • the service requester may determine whether the service supports the use of a public network communication link for service data transmission, that is, whether the service supports direct media connection, according to the type of business service requested by the service requester. Then, the service requester sets a message header of the request message according to the judgment result.
  • the SBC may combine the message header and the message body of the request message to determine whether the service requested by the service requester supports the use of a public network communication link for service data transmission. For example, the SBC judges according to both the message header and the message body of the request message. The judgment results indicate that the service support requested by the service requester is directly connected to the media. Then it is determined that the service support requested by the service requester uses public network communication. The link performs service data transmission.
  • the SBC carries the first public network communication address of the service requesting end in the generated service request.
  • the SBC determines that the service requested by the service requester supports the use of a public network communication link for service data transmission, the SBC needs to generate a service request carrying the first public network communication address of the service requester.
  • the SBC carries its own private network communication address in the generated service request.
  • the SBC can determine whether the service data corresponding to the service will still be transmitted in the manner in the related technology, that is, by itself Transit. Because the SBC communicates with the AS based on the private network communication address, the SBC needs to carry its own private network communication address in the generated service request.
  • S306 The SBC sends a service request to the AS.
  • the SBC After the SBC generates a service request, it can send the service request to the AS.
  • the SBC and the AS may transit through a Call Session Control Function (CSCF) network element during communication.
  • CSCF Call Session Control Function
  • the SBC sends a service request to the CSCF network element, and then the CSCF network Yuan forwards the business request to the AS.
  • the communication method between the SBC and the AS is not limited to the method shown in the example of the present application.
  • S308 The AS sends a service response to the SBC according to the service request.
  • the AS After receiving the service request from the SBC, the AS can send a service response according to the service request, and let the SBC send a response message corresponding to the request message to the terminal according to its response.
  • the AS does not care whether the service requested by the terminal supports the use of public network communication links for service data transmission. No matter what service the terminal requests, the AS sends a service response to the SBC. , All carry their own private network communication address.
  • the AS After the AS generates a service response, it sends the service response with its own private network communication address to the SBC.
  • the transmission path of the service response corresponds to the transmission path of the service request, so in some examples of this embodiment, the service response may be sent to the SBC via the CSCF network element.
  • S310 The SBC generates a response message according to the service response.
  • the SBC After receiving the service response from the AS, the SBC generates a response message to the terminal according to the service response.
  • the response message carries the public network communication address on the AS side, that is, the second public network communication address.
  • the SBC when generating a response message, the SBC needs to first determine whether the service corresponding to the service response supports the use of a public network communication link. transmission. In an embodiment, if the SBC can directly determine that the service response it receives from the AS is for a service request sent before, the SBC can determine whether the service requested by the service request supports transmission using a public network communication link. Determine how to modify the private network communication address in the business response.
  • the SBC may also determine according to the message header and / or the message body of the response message. For the judgment method, refer to the process of the SBC generating a service request, which is not described here again.
  • the SBC can modify the private network communication address on the AS side in the service response and modify the private network communication address on the AS side to the public network on the AS side. Communication address to obtain a response message; if it is determined by SBC that the service corresponding to the service response does not support direct media connection, the SBC can modify the private network communication address in the service response to its own public network communication address to generate a response message .
  • the SBC sends a response message to the terminal through the NAT device.
  • the SBC After the SBC generates the response message, it can transmit the response message to the NAT device, and let the NAT device transmit the response message to the terminal according to the terminal's private network communication address.
  • S314 The terminal sends a chain establishment request to the AS.
  • the terminal After the terminal receives the response message, if it is determined that the AS agrees to respond to its own request message, it can send a request for establishing a chain to the AS according to the public network communication address carried in the response message.
  • the terminal when the terminal sends a chain establishment request to the AS, the chain establishment request also needs to be converted to the private network communication address and the public network communication address by the NAT device before being sent to the AS.
  • the link establishment request sent by the terminal carries a public network communication address on the terminal side.
  • S316 The AS verifies the request for establishing a chain.
  • the AS After the AS receives the chain establishment request sent by the terminal side, it can verify the identity of the chain establishment request end according to the chain establishment request, and determine whether the service request end that previously negotiated the session with itself is sent. In one embodiment, the AS may determine whether the public network communication address carried in the link establishment request is the public network communication address on the terminal side obtained during the session negotiation phase, that is, the first public network communication address.
  • the AS determines that the identity of the chain establishment request end is legal.
  • the AS will not only authenticate the identity of the requester for the establishment of the chain based on the public network communication address in the request for the establishment of the chain, but also perform the authentication based on the private communication address of the requester for the establishment of the chain in the request .
  • the service request when the SBC sends a service request to the AS according to the request message from the terminal, the service request also carries the private network communication address of the terminal in the service request. In this way, after the AS receives the request for establishing a chain, in addition to authenticating the public network communication address in the request for establishing a chain, it can also use the private network communication address in the request for establishing a chain to perform authentication to determine the private network communication in the request for establishing a chain.
  • the AS determines that the public network communication address and the private network communication address in the chain establishment request are the same as the public network communication address and the private network communication address in the service request, it can confirm that the chain establishment request end is the service request end.
  • S318 The AS sends a link establishment response to the terminal.
  • the AS may send a positive response to the terminal.
  • S320 The AS establishes a public network communication link with the terminal.
  • the terminal After the terminal receives the link establishment response, it can establish a public network communication link with the AS based on the second public network communication address, and then perform video data transmission to the AS on the communication link to implement the corresponding data transmission service.
  • the terminal and the AS can establish a communication link for service data transmission by using the public network communication address of the peer obtained during the session negotiation phase, thereby avoiding the problem of SBC transfer during the service data transmission process;
  • the SBC can determine whether the service requested by the service requester supports direct media connection to determine whether to carry the public network communication address of the service requester or the public network of the service responder.
  • the communication address enables some services to be transmitted using public network communication links, while other services can continue to be implemented using solutions in related technologies, which can be compatible with related technology solutions while improving user experience issues.
  • the AS after receiving the chain establishment request, the AS can verify the identity of the chain establishment requester to ensure that the chain establishment requester who establishes a public network communication link with him has a session with himself before The negotiated terminal improves the security of the application server.
  • the second embodiment only describes the service implementation scheme when the terminal is the service requester and the AS is the service responder
  • the implementation principle of the solution in the second embodiment is also applicable to the scenario where the terminal is the service responder and receives the AS request .
  • This embodiment also introduces a service implementation solution based on the first embodiment. It is assumed here that the service requesting end is an AS, and the terminal serves as a service responding end. For example, the AS requests the terminal to receive its own message push. At the same time, when sending messages to the SBC, the AS can choose to carry its own public network communication address or its own private network communication address according to the actual situation.
  • S502 The AS determines that the requested service supports service data transmission using a public network communication link.
  • the AS when the AS needs to initiate a request to the terminal, it will first determine whether the currently requested service supports the use of public network communication links for service data transmission, that is, whether the currently requested service supports direct media connection. . If the judgment result is yes, the AS will carry its own public network communication address in the generated request information. Because AS is used as a service requester in this embodiment, the public network communication address of the AS is the first public network communication address. .
  • the AS determines that the currently requested service does not support the use of a public network communication link for service transmission, it indicates that the service data of the service still needs to be transferred through the SBC. Therefore, the AS generates a request message At that time, the private message communication address is added to the request message.
  • S504 The AS sends a request message to the SBC.
  • the AS After the AS generates a request message, it sends the request message to the SBC.
  • the AS and the SBC can communicate through a CSCF network element, that is, the AS first sends a request message to the CSCF network element, and then the CSCF network element sends the request message to the SBC.
  • the communication method between the AS and the SBC may be different from the above method.
  • the SBC determines that the service requested by the AS supports service data transmission using a public network communication link.
  • the SBC After the SBC receives the request message sent by the AS, it needs to generate a service request according to the request message. In this embodiment, the SBC also needs to determine whether the service requested by the AS supports service data transmission using a public network communication link. If the determination result is yes, the SBC may obtain the modification without modifying the communication address in the request message.
  • the service request carrying the public network communication address of the AS that is, the first public network communication address; if the judgment result of the SBC is negative, the SBC needs to modify the service request sent by the AS that carries the AS private network communication address, and Only after the private network communication address of the AS is changed to the public network communication address of the SBC can a service request be obtained.
  • the SBC when determining whether the service requested by the AS supports the direct media connection, may determine according to the message body of the request message.
  • the message body contains the type of business service requested by the AS, so the SBC determines whether the service supports media direct connection according to the type of business service requested.
  • the AS since the AS also needs to determine whether the requested service supports the media direct connection service when sending the request message, in an example of this embodiment, after the AS obtains the determination result, it can carry the determination result with it.
  • the request message is sent to the SBC. In this way, after the SBC receives the request message sent by the AS, it can directly determine whether the service requested by the AS supports media direct connection from the received request message, avoiding the SBC according to the request message.
  • the header of the request message sent by the AS to the SBC includes a service indication. If the value of the service indication is "0", it indicates that the business service requested by the request message supports the media direct service. If the service indication The value of is not "0", which indicates that the business service requested by the request message does not support the media direct connection service.
  • S508 The SBC sends the request message to the terminal as a service request.
  • the SBC may send the request message carrying the public network communication address of the AS to the terminal as a service request. If the SBC determines that the business service requested by the request message does not support the media direct connection service, the SBC may send a business request carrying its own public network communication address to the terminal.
  • S510 The terminal sends a service response to the SBC according to the received service request.
  • the terminal After the terminal receives the service request through the NAT device, it can send a service response to the SBC according to the service request.
  • the business response carries the private network communication address of the terminal.
  • the service response needs to be sent to the SBC through the NAT device.
  • the source address of the service response can be modified from the terminal's private network communication address to its own public network communication address, thereby achieving the conversion of the private network communication address to the public network communication address. Since the terminal is used as a service responder in this embodiment, the public network communication address of the NAT device can actually be regarded as the public network communication address of the terminal, that is, the second public network communication address.
  • S512 The SBC generates a response message according to the service response.
  • the SBC may generate a response message according to the service response, and the response message also carries a second public network communication address on the terminal side.
  • the SBC will carry the second public network communication address of the terminal in the response message.
  • the SBC needs to carry its own private network communication address in the response message.
  • the SBC after receiving the service response from the terminal side, if the SBC can determine which service request the service response belongs to, the SBC can directly determine whether the service corresponding to the service response supports media according to the service request. Directly connected; but if the SBC cannot determine which service request the corresponding service response corresponds to, when the SBC generates a response message based on the service response, it needs to determine the corresponding service response according to the message header and / or message body of the service response Whether the service supports direct media connection, so as to determine whether the second public network communication address on the terminal side or the private network communication address of the SBC is carried in the corresponding response message.
  • S514 The SBC sends a response message to the AS.
  • the SBC After the SBC generates the response message, it can send the response message to the AS through the CSCF network element, so that the AS can determine whether the terminal accepts its own request according to the response message. After the AS determines that the terminal has responded positively to its service request, it can establish a public network communication link with the terminal after receiving the response message.
  • S516 The terminal sends a chain establishment request to the AS.
  • the terminal may send a chain establishment request to the AS according to the first public network communication address carried in the service request, that is, the public network communication address on the AS side.
  • the chain establishment request also needs to be converted to the private network communication address and the public network communication address by the NAT device before being sent to the AS.
  • S518 The AS verifies the request for establishing a chain.
  • the AS After the AS receives the chain establishment request sent by the terminal side, it can verify the identity of the chain establishment request end according to the chain establishment request, and determine whether the service response end that sent the chain establishment request with the session negotiation with itself before. In one embodiment, the AS may determine whether the public network communication address carried in the link establishment request is the public network communication address on the terminal side obtained during the session negotiation phase, that is, the second public network communication address.
  • the AS determines that the identity of the chain establishment request end is legal.
  • the AS will not only authenticate the identity of the requester for the establishment of the chain based on the public network communication address in the request for the establishment of the chain, but also authenticate the identity of the private network for the request for the establishment of the chain in the request for the establishment of the chain. .
  • the SBC sends a response message to the AS according to the service response from the terminal
  • the response message also carries the private network communication address of the terminal.
  • the AS receives the request for establishing a chain, in addition to authenticating the public network communication address in the request for establishing a chain, it can also use the private network communication address in the request for establishing a chain to perform authentication to determine the private network communication in the request for establishing a chain. Whether the address is a private network communication address carried in the response message. If the AS judges that the public network communication address and the private network communication address in the chain establishment request are consistent with those in the response message, it can confirm that the chain establishment request end is the service response end.
  • S520 The AS sends a link establishment response to the terminal.
  • the AS can send a positive chain establishment response to the terminal.
  • S522 The AS establishes a public network communication link with the terminal.
  • the terminal After the terminal receives the response to the link establishment, it can establish a public network communication link with the AS based on the first public network communication address, and then receive the message push from the AS on the communication link to implement the corresponding data transmission service.
  • the terminal and the AS can obtain the peer's public network communication address during the session negotiation phase, and establish a communication link for service data transmission, thereby avoiding the problem of SBC transfer during the service data transmission process.
  • the AS after receiving the chain establishment request, the AS can verify the identity of the chain establishment requesting end to ensure that the terminal that establishes a public network communication link with itself is the terminal that previously negotiated with itself. Improved application server security.
  • the third embodiment only introduces the service implementation scheme when the AS is the service requester and the terminal is the service responder, the implementation principle of the solution in the third embodiment is also applicable to the scenario where the AS is the service responder and receives the request from the terminal .
  • Embodiment 4 is a diagrammatic representation of Embodiment 4:
  • This embodiment provides a service request device, a service negotiation device, and a service response device. Please refer to the structure diagrams of the devices shown in FIGS. 6-8, respectively:
  • the service request device 60 includes a request sending module 602, a response receiving module 604, and a first link building module 606.
  • the request sending module 602 is configured to send a request message for a service request to the SBC
  • the response receiving module 604 is configured to receive a response message sent by the service responder through the SBC after receiving the service request
  • the module 606 is configured to establish a public network communication link with the service responding end according to the second public network communication address and use the public network communication link to perform service data transmission to implement services.
  • the request sending module 602 may cause the SBC to send a service request carrying the first public network communication address of the service requesting device 60 to the service responding end according to the request message.
  • the response message received by the response receiving module 604 includes the second public network communication address of the service responding end.
  • FIG. 7 shows a service negotiation device 70.
  • the service negotiation device 70 includes a request forwarding module 702 and a response forwarding module 704.
  • the request forwarding module 702 is configured to send a service request carrying the first public network communication address of the service requesting terminal to the service responding terminal according to the request of the service requesting terminal
  • the response forwarding module 704 is configured to send a service request to the service responding terminal according to the response of the service requesting terminal. Send a response message.
  • FIG. 8 is a schematic structural diagram of a service response device 80.
  • the service response device 80 includes a request receiving module 802, a response sending module 804, and a second link building module 806.
  • the request receiving module 802 is configured to receive a service request sent by the SBC, and the service request includes a first public network communication address of the service requesting end;
  • the response sending module 804 is configured to send a service response corresponding to the service request to the SBC, and the service The response is used to instruct the SBC to send a response message carrying the second public network communication address of the local end to the service requesting end;
  • the second chain building module 806 is configured to establish a public network communication link with the service requesting end to perform services according to the first public network communication address. Data transmission to achieve business.
  • the service requesting device 60 may be deployed on a terminal or an application server.
  • the functions of the request sending module 602, the response receiving module 604, and the first chain building module 606 in the service requesting device 60 may be provided by the terminal.
  • the processor controls the communication unit of the terminal, or may be implemented jointly by the processor of the application server and the communication unit.
  • the service negotiation device 70 may be deployed on the SBC.
  • the functions of the request forwarding module 702 and the response forwarding module 704 may be jointly implemented by the processor of the SBC and the communication unit.
  • the service response device 80 is similar to the service request device 60, and can also be deployed on a terminal or an application server.
  • the functions of the request receiving module 802, the response sending module 804, and the second chain building module 806 can be controlled by the terminal's processor.
  • the communication unit of the terminal may be implemented, or may be implemented jointly by the processor of the application server and the communication unit.
  • the request sending module 602 when the request sending module 602 needs to request a certain business service from the business responding end, it can generate a request message, and then send the request message to the SBC.
  • the SBC then sends a service request to the service responder according to the request message from the service requester.
  • the service request sent by the SBC to the service response end carries the first public network communication address of the service request end.
  • the service responder After the SBC sends a service request to the service responder, the service responder will feed back the service response to the SBC. After the SBC receives the service response, it can send a response message to the service requesting device 60 according to the service response, and the response receiving module 604 can receive the response message sent by the SBC.
  • the response message carries the second public network communication address of the service responding end. Subsequently, the first chain building module 606 may perform chain building interaction with the service responding end according to the second public network communication address to establish a public network communication link.
  • the request forwarding module 702 of the service negotiation device 70 sends a service request carrying the first public network communication address of the service request device 60 to the service response device 80 according to the request of the service request device 60.
  • the service request sent by the request forwarding module 702 to the service response device 80 is generated according to a request message received from the service request device 60, and the service request carries the first public network communication address of the service request device 60 Therefore, in some examples of this embodiment, the request message sent by the service requesting device 60 to the service negotiation device 70 may carry the first public network communication address, and the request forwarding module 702 may directly use the request message as a service.
  • the request is sent to the service response device 80.
  • the service request device 60 is an AS
  • the service response device 80 is a terminal.
  • the AS requests the terminal to start a certain service, it will send a request message to the service negotiation device 70.
  • the request forwarding module 702 With its own public network IP address, when the request forwarding module 702 receives the request message from the AS, it may not directly modify the public network IP address in the request message and directly send the request message to the terminal as a service request.
  • the request message sent by the service requesting device 60 to the service negotiation device 70 carries the private network communication address of the service requesting device 60, and the request forwarding module 702 needs to The public network communication address and the request message generate a service request.
  • the private network communication address in the request message is modified to a first public network communication address to generate a service request, and then the service request is sent to the service response device 80.
  • the AS serves as the service request device 60 and the terminal serves as the service response device 80.
  • the request message sent by the AS to the service negotiation device 70 carries the private IP address of the AS, and the request forwarding module 702 After receiving the request message, the private IP address of the AS in the request message needs to be changed to the public IP address of the AS, and then the request message obtained after the modification process is sent to the terminal as a service request.
  • the request message sent by the terminal to the service negotiation device 70 through the NAT device also carries the private network IP address of the terminal.
  • the request forwarding module 702 receives After receiving the request message from the terminal, modify the private network communication address in the request message to the public network IP address on the terminal side to obtain a service request.
  • the service response device 80 sends a service response corresponding to the service request to the service negotiation device 70.
  • the request receiving module 802 of the service response device 80 may respond to the request of the service request device 60 according to the service request, so the response sending module 804 sends a service response to the service request device 60 according to the service request.
  • the response sending module 804 sends the service response to the service negotiation device 70, so that the service negotiation device 70 sends a response message carrying the second public network communication address of the service response device 80 to the service request device 60 according to the service response.
  • the response forwarding module 704 of the service negotiation device 70 sends a response message carrying the second public network communication address of the service response device 80 to the service request device 60 according to the response of the service response device 80.
  • the response forwarding module 704 sends a response message to the service request device 60 based on the response message received from the service response device 80.
  • the second public network communication address of the service response device 80 is carried in the response message generated by the service response, so in some examples of this embodiment, the service response sent by the service response device 80 to the service negotiation device 70 may carry With the second public network communication address, the response forwarding module 704 can directly send the service response to the service requesting device 60 as a response message.
  • the service response device 80 is an AS and the service request device 60 is a terminal.
  • the AS can carry its own public network communication address in the service response.
  • the response forwarding module 704 may not modify the public network IP address in the service response, and directly use the service response as the response message corresponding to the request message Send to the terminal.
  • the service response sent by the service response device 80 to the service negotiation device 70 carries the private network communication address of the service response device 80, and the response forwarding module 704 needs to The public network communication address and the service response generate a response message, for example, by modifying the private network communication address in the service response to a second public network communication address to generate a response message, and then sending the response message to the service request device 60 as a service request A response to the request message sent by the device 60.
  • the AS serves as the service response device 80
  • the terminal serves as the service request device 60
  • the service response sent by the AS to the service negotiation device 70 carries the private network IP address of the AS.
  • the response forwarding module 704 after receiving the service response, needs to modify the private network IP address of the AS in the service response to the public network IP address of the AS, and then send the modified service response to the terminal as a response message.
  • the terminal when the terminal is the service response device 80 and the AS is the service request device 60, the terminal sends a service response to the service negotiation device 70 through the NAT device.
  • the service response also carries the private network IP address of the terminal.
  • the module 704 changes the private network communication address in the service response to the public network IP address on the terminal side, so as to obtain a response message that can be sent to the AS side.
  • the response message sent by the response forwarding module 704 to the terminal further includes the port number of the AS.
  • the service request sent by the service negotiation device 70 to the service response device 80 can cause the service response device 80 to obtain the first public network communication address of the service request device 60; and the service request device 60 is sent to the service request device 60 through the service negotiation device 70
  • the response message sent may cause the service requesting device 60 to obtain the second public network communication address of the service response device 80.
  • the service requesting device 60 and the service response device 80 may establish a public network communication link between the service requesting device 60 and the service response device 80 according to the first public network communication address and the second public network communication address.
  • the public network communication link is a communication link established based on a public network communication address. Through this communication link, service data can be transmitted between the service requesting device 60 and the service responding device 80 to realize services without having to rely on services. Transfer of negotiation device 70.
  • the chain establishment request may be initiated by the first chain establishment module 606 of the service requesting device 60, or may be initiated by the second chain establishment module 806 of the service response device 80.
  • the chain establishment request is initiated by the first chain establishment module 606, the service request device 60 is actually a chain establishment request end, and the service response device 80 is a chain establishment response end.
  • the first chain building module 606 sends a chain building request to the service response device 80 according to the second public network communication address obtained through session negotiation.
  • the second chain building module 806 can obtain the chain building request according to the session negotiation stage.
  • the first public network communication address sends a link establishment response to the service requesting device 60, thereby establishing a public network communication link with the service requesting device 60.
  • the chain establishment request is initiated by the second chain establishment module 806 of the service response device 80 to the service request device 60.
  • the service response device 80 serves as the chain establishment request end, and the service request device 60 serves as the establishment request.
  • the second chain building module 806 sends a chain building request to the service requesting device 60 according to the first public network communication address obtained during the session negotiation.
  • the first chain building module 606 After the first chain building module 606 receives the chain building request, if it agrees to establish a public network-based communication link, it can send a positive chain establishment response to the service response device 80; if it does not agree to establish a public network based communication chain By the way, the service requesting device 60 may reject the request for establishing a chain.
  • the chain establishment response end after the chain establishment response end receives the chain establishment request sent by the chain establishment request end, it can verify the chain establishment request end, and only the verification chain establishment request end has previously negotiated with itself. Only after the device is set up can the requester establish a public network communication link with itself.
  • the identity of the chain-building requester verifies the identity of the chain-building requester by verifying the public network communication address of the chain-building requester.
  • the chain-building requester initiates a chain-building request to the chain-building responder, It can carry its own public network communication address in the request for establishing a chain.
  • the chain-building response end determines whether the public network communication address carried in the chain-building request is the public network communication address that it obtained during the session negotiation phase.
  • the request for establishing a chain is the service requesting device 60
  • the request for establishing a chain sent by the request for establishing a chain carries a first public network communication address.
  • the chain-building response end After the chain-building response end receives the chain-building request, it can compare the public network communication address carried in the chain-building request with the first public network communication address of the service requesting device 60 obtained during the session negotiation process to determine the establishment Whether the public network communication address carried in the chain request is consistent with the first public network communication address of the service requesting device 60.
  • the public network communication address carried in the chain establishment request is the same as the first public network communication address of the service request device 60, it means that the chain establishment request was initiated by the service request device 60 that has previously negotiated with itself, so the chain establishment The identity of the requesting party is legal, and the chain-building response end can initiate a positive chain-building response, thereby establishing a public network communication link with the chain-building requester; if the public network communication address carried in the chain-building request and the first A public network communication address is inconsistent, it means that the chain establishment requesting end that initiated the chain establishment request is not the service requesting device 60. Therefore, the service response device 80 serving as the chain establishment responding end may reject the chain establishment requesting end.
  • the chain establishment request end is a service response device 80
  • the chain establishment response end is a service request device 60
  • the service response device 80 serves as a request for establishing a chain, and when sending a request for establishing a chain to the responding end of the chain, the service response device 80 may carry its own public network communication address, that is, a second public network communication address.
  • the chain-building response end After the chain-building response end receives a chain-building request, it compares the public network communication address in the chain-building request with the second public network communication address obtained from the service response device 80 during the session negotiation phase.
  • the public network communication address carried in the request is the same as the second public network communication address of the service response device 80, which indicates that the request for establishing a chain is the service responding device 80 that conducts session negotiation with itself. Therefore, it serves as the service requesting device for establishing a response to the chain 60.
  • a chain establishment response indicating that the chain establishment is agreed to be sent to the chain establishment requesting end, establish a public network communication link with the chain establishment requesting end, and then perform services on the communication link. Data transmission.
  • the chain-building responder finds that the public network communication address carried in the received chain-building request is not the second public network communication address, it indicates that the identity of the chain-building requester is illegal, so the chain-building responder can reject the request.
  • the service request device 60 is a terminal. In other examples of this embodiment, the service request device 60 is an application server. Considering that in the communication system, the terminal usually communicates externally through the NAT device. It may not be particularly easy for the external device to actively initiate communication with the terminal. Therefore, in this embodiment, the request for establishing a chain can be sent from the terminal to the AS. Initiation, that is, the terminal serves as the request for establishing a chain, and the AS serves as a response for establishing a chain. Therefore, when the terminal is the service requesting device 60, the chain establishment request is sent by the service requesting device 60 to the service response device 80. When the terminal is the service response device 80, the chain establishment request is sent by the service response device 80 to the service requesting device 60.
  • the service request device, service negotiation device, and service response device provided in this embodiment, in the session negotiation phase, send a service request including the first public network communication address of the service request device to the service response device, and according to the response of the service response device, , Sending a response message carrying the second public network communication address of the service response device to the service request device, so that the service request device and the service response device can obtain each other's public network communication address, and then based on each other's public network communication address in the service request
  • a public network communication link is established between the device and the service response device for service data transmission to realize services, avoiding the need to transfer service data through the service negotiation device, resulting in low service data transmission rates and large delays. Improved user service experience on the terminal side.
  • Embodiment 5 is a diagrammatic representation of Embodiment 5:
  • This embodiment introduces a service implementation solution based on the fourth embodiment. It is assumed that the service request device is a terminal, the service response device is AS, and the service negotiation device is SBC. For example, it is assumed that the terminal needs to upload to the AS. Video data. At the same time, it is assumed that the message sent by the AS to the SBC is still the private network communication address of the AS:
  • the terminal sends a request message to the SBC through the NAT device.
  • the terminal can initiate a video data upload request to the AS.
  • the request message may carry the type of business service requested by the terminal.
  • the terminal implements external communication through the NAT device.
  • the request message sent by the terminal to the NAT device carries the private network communication address of the terminal, and the source address of the request message is the private network communication address of the terminal, and the destination address is Public address of the SBC.
  • the NAT device After the NAT device receives the request message, it translates the source address in the request message and changes the source address to the public network communication address of the NAT device.
  • the public network communication address of the NAT device may be the public network communication address of the terminal.
  • the terminal serves as the service requesting end, so the public network communication address of the NAT device is actually the first public network communication address.
  • the NAT device After the NAT device completes the conversion from the private network communication address to the public network communication address, it can send the translated request message to the destination address, that is, to the SBC device.
  • the SBC device After receiving the request message forwarded by the NAT device, the SBC device can generate a service request according to the request message.
  • the service request generated by the SBC carries the public network communication address on the terminal side, that is, the first public network communication address.
  • the SBC may modify the private network communication address of the terminal in the request message to the first public network communication address on the terminal side, thereby obtaining a service request.
  • not all services requested by the terminal need to establish a public network communication link between the terminal and the AS.
  • the AS does not want to expose its public network communication address to the outside world. Therefore, this embodiment provides a reference SBC process for generating a service request.
  • the SBC judges whether the service requested by the service requester supports service data transmission using a public network communication link.
  • the SBC can determine whether the service requested by the service request supports transmission using a public network communication link according to the message body of the request message. For example, in this embodiment, when a terminal requests video data upload, it can The body of the request message carries the type of service requested, and allows the SBC to determine whether the requested service supports the use of public network communication links for service data transmission based on the type of service in the message body.
  • the SBC may determine whether the service requested by the service requester supports the use of a public network communication link for service data transmission according to the message header of the request message.
  • corresponding indication information should exist in the message header of the request message sent by the service requester to the SBC.
  • the header of the request message includes a service indication. When the service indication is "0", it indicates that the service requested by the service requester supports transmission based on the public network communication address. When the service indication is "1", it indicates the service. The service requested by the requester does not support service data transmission based on the public network communication address.
  • the service requester can determine whether the service supports the use of public network communication links for service data transmission according to the type of business service requested by the service requester before sending the request message, that is, whether the service supports direct media connection. . Then, the service requester sets a message header of the request message according to the determination phase.
  • the SBC may combine the message header and the message body of the request message to determine whether the service requested by the service requester supports the use of a public network communication link for service data transmission. For example, the SBC judges according to both the message header and the message body of the request message. The judgment results indicate that the service support requested by the service requester is directly connected to the media. Then it is determined that the service support requested by the service requester uses public network communication. The link performs service data transmission.
  • the SBC determines that the service requested by the service requester supports the use of a public network communication link for service data transmission, the SBC needs to generate a service request carrying the first public network communication address of the service requester.
  • the SBC can determine whether the service data corresponding to the service will still be transmitted in the manner in the related technology, that is, by itself Transit. Because the SBC communicates with the AS based on the private network communication address, the SBC needs to carry its own private network communication address in the generated service request.
  • the SBC After the SBC generates a service request, it can send the service request to the AS.
  • the SBC and the AS may transit through the CSCF network element during communication. For example, the SBC sends a service request to the CSCF network element first, and then the CSCF network element forwards the service request to the AS.
  • the communication method between the SBC and the AS is not limited to the method shown in the example of the present application.
  • the AS After receiving the service request from the SBC, the AS can send a service response according to the service request, and let the SBC send a response message corresponding to the request message to the terminal according to its response.
  • the AS does not care whether the service requested by the terminal supports the use of public network communication links for service data transmission. No matter what service the terminal requests, the AS sends a service response to the SBC. , All carry their own private network communication address.
  • the AS After the AS generates a service response, it sends the service response with its own private network communication address to the SBC.
  • the transmission path of the service response corresponds to the transmission path of the service request, so in some examples of this embodiment, the service response may be sent to the SBC via the CSCF network element.
  • the SBC After receiving the service response from the AS, the SBC generates a response message to the terminal according to the service response.
  • the response message carries the public network communication address on the AS side, that is, the second public network communication address.
  • the SBC when generating a response message, the SBC needs to first determine whether the service corresponding to the service response supports the use of a public network communication link. transmission. In an embodiment, if the SBC can directly determine that the service response it receives from the AS is for a service request sent before, the SBC can determine whether the service requested by the service request supports transmission using a public network communication link. Determine how to modify the private network communication address in the business response.
  • the SBC may also determine according to the message header and / or the message body of the response message. For the judgment method, refer to the process of the SBC generating a service request, which is not described here again.
  • the SBC can modify the private network communication address on the AS side in the service response and modify the private network communication address on the AS side to the public network on the AS side. Communication address to obtain a response message; if it is determined by SBC that the service corresponding to the service response does not support direct media connection, the SBC can modify the private network communication address in the service response to its own public network communication address to generate a response message .
  • the SBC After the SBC generates the response message, it can transmit the response message to the NAT device, and let the NAT device transmit the response message to the terminal according to the terminal's private network communication address.
  • the terminal After the terminal receives the response message, if it is determined that the AS agrees to respond to its own request message, it can send a request for establishing a chain to the AS according to the public network communication address carried in the response message.
  • the terminal when the terminal sends a chain establishment request to the AS, the chain establishment request also needs to be converted to the private network communication address and the public network communication address through the NAT device and then sent to the AS.
  • the link establishment request sent by the terminal carries a public network communication address on the terminal side.
  • the AS After the AS receives the chain establishment request sent by the terminal side, it can verify the identity of the chain establishment request end according to the chain establishment request, and determine whether the service request end that previously negotiated the session with itself is sent. In one embodiment, the AS may determine whether the public network communication address carried in the link establishment request is the public network communication address on the terminal side obtained during the session negotiation phase, that is, the first public network communication address.
  • the AS determines that the identity of the chain establishment request end is legal.
  • the AS will not only authenticate the identity of the requester for the establishment of the chain based on the public network communication address in the request for the establishment of the chain, but also authenticate the identity of the private network for the request for the establishment of the chain in the request for the establishment of the chain. .
  • the service request when the SBC sends a service request to the AS according to the request message from the terminal, the service request also carries the private network communication address of the terminal in the service request.
  • the AS after the AS receives the request for establishing a chain, in addition to authenticating the public network communication address in the request for establishing a chain, it can also use the private network communication address in the request for establishing a chain to authenticate the private network communication in the request Whether the address is the private network communication address carried in the service request. If the AS determines that the public network communication address and the private network communication address in the chain establishment request are the same as the public network communication address and the private network communication address in the service request, it can confirm that the chain establishment request end is the service request end.
  • the AS can send a positive response to the terminal.
  • the terminal After the terminal receives the link establishment response, it can establish a public network communication link with the AS based on the second public network communication address, and then perform video data transmission to the AS on the communication link to implement the corresponding data transmission service.
  • the terminal and the AS can establish a communication link for service data transmission by using the public network communication address of the peer obtained during the session negotiation phase, thereby avoiding the problem of SBC transfer during the service data transmission process;
  • the SBC can determine whether the service requested by the service requester supports direct media connection to determine whether to carry the public network communication address of the service requester or the public network of the service responder.
  • the communication address enables some services to be transmitted using public network communication links, while other services can continue to be implemented using solutions in related technologies, which can be compatible with related technology solutions while improving user experience issues.
  • the AS after receiving the chain establishment request, the AS can verify the identity of the chain establishment requester to ensure that the chain establishment requester with himself based on the public network communication link has performed with himself before.
  • the terminal for session negotiation improves the security of the application server.
  • the fifth embodiment only describes the service implementation scheme when the terminal is the service requester and the AS is the service responder, the implementation principle of the solution in the fifth embodiment is also applicable to the scenario where the terminal is the service responder and receives the AS request .
  • Embodiment 6 is a diagrammatic representation of Embodiment 6
  • This embodiment also introduces a service implementation solution based on Embodiment 4.
  • the service request device 60 in FIG. 6 is an AS
  • the service negotiation device 70 in FIG. 7 is an SBC
  • the service response device 80 in FIG. 8 For the terminal.
  • the AS requests the terminal to receive its own message push.
  • the AS sends a message to the SBC, it can choose to carry its own public network communication address or its own private network communication address according to the actual situation.
  • the AS when the AS needs to initiate a request to the terminal, it will first determine whether the currently requested service supports the use of public network communication links for service data transmission, that is, whether the currently requested service supports direct media connection. . If the judgment result is yes, the AS will carry its own public network communication address in the generated request information. Because AS is used as a service requester in this embodiment, the public network communication address of the AS is the first public network communication address. .
  • the AS determines that the currently requested service does not support the use of a public network communication link for service transmission, it indicates that the service data of the service still needs to be transferred through the SBC. Therefore, the AS generates a request message At that time, the private message communication address is added to the request message.
  • the AS After the AS generates a request message, it sends the request message to the SBC.
  • the AS and the SBC can communicate through a CSCF network element, that is, the AS first sends a request message to the CSCF network element, and then the CSCF network element sends the request message to the SBC.
  • the communication method between the AS and the SBC may be different from the above method.
  • the SBC After the SBC receives the request message sent by the AS, it needs to generate a service request according to the request message. In this embodiment, the SBC also needs to determine whether the service requested by the AS supports service data transmission using a public network communication link. If the determination result is yes, the SBC may obtain the modification without modifying the communication address in the request message.
  • the service request carrying the public network communication address of the AS that is, the first public network communication address; if the judgment result of the SBC is negative, the SBC needs to modify the service request sent by the AS that carries the AS private network communication address, and Only after the private network communication address of the AS is changed to the public network communication address of the SBC can a service request be obtained.
  • the SBC when determining whether the service requested by the AS supports the direct media connection, may determine according to the message body of the request message.
  • the message body contains the type of business service requested by the AS, so the SBC determines whether the service supports media direct connection according to the type of business service requested.
  • the AS since the AS also needs to determine whether the requested service supports the media direct connection service when sending the request message, in an example of this embodiment, after the AS obtains the determination result, it can carry the determination result with it.
  • the request message is sent to the SBC. In this way, after the SBC receives the request message sent by the AS, it can directly determine whether the service requested by the AS supports media direct connection from the received request message, avoiding the SBC according to the request message.
  • the header of the request message sent by the AS to the SBC includes a service indication. If the value of the service indication is "0", it indicates that the business service requested by the request message supports the media direct service. If the service indication The value of is not "0", which indicates that the business service requested by the request message does not support the media direct connection service.
  • the SBC may send the request message carrying the public network communication address of the AS to the terminal as a service request. If the SBC determines that the business service requested by the request message does not support the media direct connection service, the SBC may send a business request carrying its own public network communication address to the terminal.
  • the terminal After the terminal receives the service request through the NAT device, it can send a service response to the SBC according to the service request.
  • the business response carries the private network communication address of the terminal.
  • the service response needs to be sent to the SBC through the NAT device.
  • the source address of the service response can be modified from the terminal's private network communication address to its own public network communication address, thereby achieving the conversion of the private network communication address to the public network communication address. Since the terminal is used as a service responder in this embodiment, the public network communication address of the NAT device can actually be regarded as the public network communication address of the terminal, that is, the second public network communication address.
  • the SBC may generate a response message according to the service response, and the response message also carries a second public network communication address on the terminal side.
  • the SBC will carry the second public network communication address of the terminal in the response message.
  • the SBC needs to carry its own private network communication address in the response message.
  • the SBC after receiving the service response from the terminal side, if the SBC can determine which service request the service response belongs to, the SBC can directly determine whether the service corresponding to the service response supports media according to the service request. Direct connection; but if the SBC cannot determine which service request corresponds to the received service response, when the SBC generates a response message based on the service response, it needs to determine the service corresponding to the service response according to the message header and / or message body of the service response Whether direct media connection is supported, so as to determine whether the second public network communication address on the terminal side or the private network communication address of the SBC is carried in the corresponding response message.
  • the SBC After the SBC generates the response message, it can send the response message to the AS through the CSCF network element, so that the AS can determine whether the terminal accepts its own request according to the response message. After the AS determines that the terminal has responded positively to its service request, it can establish a public network communication link with the terminal after receiving the response message.
  • the terminal may send a chain establishment request to the AS according to the first public network communication address carried in the service request, that is, the public network communication address on the AS side.
  • the chain establishment request also needs to be converted to the private network communication address and the public network communication address by the NAT device before being sent to the AS.
  • the AS After the AS receives the chain establishment request sent by the terminal side, it can verify the identity of the chain establishment request end according to the chain establishment request, and determine whether the service response end that sent the chain establishment request with the session negotiation with itself before. In one embodiment, the AS may determine whether the public network communication address carried in the link establishment request is the public network communication address on the terminal side obtained during the session negotiation phase, that is, the second public network communication address.
  • the AS determines that the identity of the chain establishment request end is legal.
  • the AS will not only authenticate the identity of the requester for the establishment of the chain based on the public network communication address in the request for the establishment of the chain, but also perform the authentication based on the private communication address of the requester for the establishment of the chain in the request .
  • the SBC sends a response message to the AS according to the service response from the terminal
  • the response message also carries the private network communication address of the terminal.
  • the AS receives the request for establishing a chain, in addition to authenticating the public network communication address in the request for establishing a chain, it can also use the private network communication address in the request for establishing a chain to perform authentication to determine the private network communication in the request for establishing a chain.
  • the address is a private network communication address carried in the response message. If the AS judges that the public network communication address and the private network communication address in the chain establishment request are consistent with those in the response message, it can confirm that the chain establishment request end is the service response end.
  • the AS can send a positive chain establishment response to the terminal.
  • the terminal After the terminal receives the response to the link establishment, it can establish a public network communication link with the AS based on the first public network communication address, and then receive the message push from the AS on the communication link to implement the corresponding data transmission service.
  • the terminal and the AS can obtain the peer's public network communication address during the session negotiation phase, and establish a communication link for service data transmission, thereby avoiding the problem of SBC transfer during the service data transmission process.
  • the AS after receiving the chain establishment request, the AS can verify the identity of the chain establishment requesting end to ensure that the terminal that establishes a public network communication link with itself is the terminal that previously negotiated with itself. Improved application server security.
  • the sixth embodiment only introduces the service implementation scheme when the AS is the service requester and the terminal is the service responder, the implementation principle of the solution in the sixth embodiment is also applicable to the scenario where the AS is the service responder and receives the request from the terminal .
  • Embodiment 7 is a diagrammatic representation of Embodiment 7:
  • the storage medium may store one or more computer programs that can be read, compiled, and executed by one or more processors.
  • the storage medium may store At least one of a service request procedure, a service negotiation procedure, and a service response procedure.
  • the service request program may be used by one or more processors to implement any one of the service request methods described in the first embodiment to the third embodiment.
  • the service negotiation program may be implemented by one or more processors to implement any one of the service negotiation methods described in the foregoing first embodiment to the third embodiment.
  • the service response program may be used by one or more processors to implement any one of the service response methods described in the foregoing first embodiment to the third embodiment.
  • the network device 90 includes a processor 91, a memory 92, and a communication bus 93 configured to connect the processor 91 and the memory 92.
  • the memory 92 may be the foregoing storage medium storing at least one of a service request program, a service negotiation program, and a service response program.
  • the processor 91 may read the service request program, compile it, and execute any one of the service request methods described in the first to third embodiments.
  • the network device 90 may be a terminal or an AS.
  • the network device 90 implements any one of the service request methods described in the first to third embodiments. For details of the service request method, refer to the description of the foregoing embodiment. To repeat.
  • the network device 90 may be an SBC.
  • the network device 90 implements any one of the service negotiation methods described in Embodiments 1 to 3. For details of the service negotiation method, refer to the description of the foregoing embodiment, which is not described in this application.
  • the network device 90 may be a terminal or an AS.
  • the network device 90 implements any one of the service response methods described in the first to third embodiments. For details of the service response method, refer to the description of the foregoing embodiment, which is not described in this application.
  • the network system 10 includes a terminal 101, an SBC 102, and an AS 103.
  • SBC 102 is a network device in which the processor in FIG. 9 can execute a service negotiation procedure to implement a service negotiation method.
  • the terminal 101 is a network device where the processor in FIG. 9 can execute a service request program to implement a service request method
  • an AS 103 is a network device where the processor in FIG. 9 can execute a service response program to implement a service response method.
  • the terminal 101 is a network device in which the processor in FIG. 9 can execute a service response program and implement a service response method
  • AS 103 is a processor in FIG. 9 that can execute a service request program to implement a service request. Method of network equipment.
  • the processor of the terminal 101 may execute a service request program to implement a service request method, or may execute a service response program to implement a service response method.
  • the AS 103 processor can also execute business request programs and implement business request methods, and can also execute business response programs and implement business response methods.
  • the SBC device may send a service request carrying the first public network communication address of the service requester to the service responder according to the request of the service requester, and send a service request to the service request according to the response of the service responder.
  • the client sends a response message carrying the second public network communication address of the service responder, so that the service requester and service responder can establish a public network communication link based on the first public network communication address and the second public network communication address, so that the service request And service responders do not need to rely on the SBC for service data transfer during the service data transmission phase, thereby reducing the delay of service data transmission, increasing the rate of service data transmission, and improving the service experience of end-users.
  • Embodiment 8 is a diagrammatic representation of Embodiment 8
  • This embodiment will introduce the network system and the process of implementing services in the network system based on the seventh embodiment. Please refer to the schematic diagram of the network system 11 shown in FIG. 11:
  • the network system 11 includes a terminal 111, a NAT device 112, an SBC 113, and an AS 114.
  • the terminal 111 and the NAT device 112 still communicate through the private network IP address
  • the NAT device 112 and the SBC 113 communicate based on the public network IP address
  • the SBC113 and AS 114 communicate based on the private network IP address.
  • the network system provided in this embodiment when a service needs to be performed between the terminal 111 and the AS, after the session negotiation, the NAT device 112 and the AS 114 can communicate based on the public network IP address.
  • Figure 12 shows the flow chart of the service initiated by the terminal to the IM AS under the MSRP protocol:
  • S12010 The terminal initiates a file transfer request (INVITE) to the SBC.
  • the message body Session Description Protocol (SDP) of the media negotiation includes the private network address of the terminal and the type of service requested.
  • S12020 After SBC judges that the file transfer service supports direct media connection, it changes the private network IP address of the terminal to the public network IP address of the terminal after the NAT device is converted, and forwards the request to the CSCF.
  • the IM AS receives the INVITE request from the CSCF and extracts the public network address information of the terminal.
  • the IM AS determines that the file transfer service supports direct media connection, carries the public IP address of the IM AS in the session response, and forwards the session response to the CSCF.
  • S12050 The CSCF forwards the response to the SBC.
  • S12060 The SBC judges that the service session supports direct media connection, and does not need to change the media plane address information in the response, and forwards the session response to the terminal.
  • the terminal sends an Acknowledgement (ACK) request to the SBC to confirm the establishment of the session.
  • ACK Acknowledgement
  • S12080 The SBC forwards the ACK request to the CSCF.
  • S12090 The CSCF forwards the ACK request to the IM AS.
  • S12100 The terminal establishes a connection with the IM AS.
  • the terminal initiates a TCP connection establishment request to the IM AS.
  • the IM AS checks whether the address initiated by the terminal is consistent with the media plane address during the session negotiation process. After determining the consistency, the TCP connection is allowed to be established.
  • S12110 The terminal sends an MSRP message to the IM AS.
  • the MSRP message sent by the terminal contains MSRP path information.
  • the MSRP 200OK response indicates that the IM AS received the MSRP data message.
  • FIG. 13 is a service flow chart of a terminal under the MSRP protocol as a service responder and an IM AS as a service requester. Assume that the MSRP protocol is used as an example for a terminal to receive a file transfer service.
  • IM AS prepares to initiate a file transfer request to the terminal, determines that the file transfer service supports direct media connection, and the requested media negotiation message body SDP contains the public network address of the IM AS media processing unit and the type of service requested.
  • S13020 The CSCF forwards the service request to the SBC.
  • S13030 The SBC determines that the file transfer service in the service request supports direct media connection, does not modify the media plane address in the service request, and forwards the request to the terminal.
  • the terminal carries its own private network address in the 200OK response.
  • S13050 SBC judges that the file transfer service supports direct media connection, changes the private network address of the terminal to the public network address of the terminal in the session response, and forwards the session response to the CSCF.
  • S13060 The CSCF forwards the response to the IM AS.
  • the IM determines that the current service session supports direct media connection, and records the media plane IP address of the terminal in the response.
  • S13080 The IM AS sends an ACK request to the CSCF to confirm the establishment of the session.
  • S13090 The CSCF forwards the ACK request to the SBC.
  • S13100 The SBC forwards the ACK request to the terminal.
  • S13110 The terminal establishes a connection with the IM AS.
  • the terminal initiates a TCP connection establishment request to the IM AS.
  • the IM AS checks whether the address initiated by the terminal is consistent with the media plane address during the session negotiation process. After determining the consistency, the TCP connection is allowed to be established.
  • the MSRP message sent by the IM AS contains the MSRP path information.
  • the MSRP 200OK response indicates that the terminal received the MSRP data message.
  • Figure 14 shows the security maintenance of the network system.
  • the MSRP protocol is used as an example to describe how the network system provided in this application prevents a malicious terminal (such as terminal 2) from launching a media attack:
  • S14010 The IM AS initiates a file transfer request.
  • IM AS prepares to initiate a file transfer request to terminal 1. First, IM AS determines whether the file transfer service supports direct media connection. When the judgment result is yes, the IM AS carries the public IP address of the IM AS and the type of service requested in the requested media negotiation message body SDP.
  • S14020 The CSCF forwards the service request to the SBC.
  • S14030 The SBC determines that the file transfer service in the service request supports direct media connection, does not modify the media plane address in the service request, and forwards the request to the terminal 1.
  • the terminal 1 carries its own private network address in the 200OK response.
  • S14050 The SBC determines that the file transfer service supports direct media connection, changes the private network address of terminal 1 to the public network IP address of terminal 1 in the session response, and forwards the session response to the CSCF.
  • S14060 The CSCF forwards the response to the IM AS.
  • S14070 The IM determines that the current service session supports direct media connection, and records the media plane IP address of terminal 1 in the response.
  • S14080 The IM AS sends an ACK request to the CSCF to confirm the establishment of the session.
  • S14090 The CSCF forwards the ACK request to the SBC.
  • S14100 The SBC forwards the ACK request to the terminal 1.
  • Terminal 2 initiates a TCP connection establishment request to IM AS, IM AS checks whether the address initiated by Terminal 2 is consistent with the media plane address during the session negotiation process, finds that they are inconsistent, and prohibits establishing a TCP connection with Terminal 2.
  • S14120 The IM AS rejects the establishment of the TCP connection to the terminal 2 and returns a TCP connection reset (Reset connection, RST), but does not release the session and waits for the terminal 1 to establish a media connection.
  • RST TCP connection reset
  • All or some steps, systems, and functional modules / units in the methods disclosed above may be implemented as software (which may be implemented with program code executable by a computing device), firmware, hardware, and appropriate combinations thereof.
  • the division between functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be composed of several physical The components execute cooperatively.
  • Some or all physical components can be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit .
  • Such software may be distributed on a computer-readable medium, executed by a computing device, and in some cases, the steps shown or described may be performed in a different order than described here, and the computer-readable medium may include computer storage Medium (or non-transitory medium) and communication medium (or transient medium).
  • computer storage Medium or non-transitory medium
  • communication medium or transient medium.
  • computer storage medium in this application includes volatile and nonvolatile, removable, implemented in any method or technology used to store information such as computer-readable instructions, data structures, program modules or other data. And non-removable media.
  • Computer storage media include, but are not limited to, Random Access Memory (RAM), Read-Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), Flash memory or other memory technology, Compact Disc-Read-Only Memory (CD-ROM), Digital Video Disc (DVD) or other optical disc storage, magnetic box, magnetic tape, disk storage or other magnetic storage A device, or any other medium that can be set to store desired information and can be accessed by a computer.
  • the communication medium typically contains computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and may include any information delivery medium. Therefore, this application is not limited to any specific combination of hardware and software.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例提供一种业务请求、协商、响应方法、装置及网络设备、系统。所述业务协商方法包括:根据业务请求端的请求向业务响应端发送携带所述业务请求端的第一公网通信地址的业务请求;根据所述业务响应端的响应向所述业务请求端发送响应消息,所述响应消息中携带所述业务响应端的第二公网通信地址,所述第一公网通信地址和所述第二公网通信地址用于在所述业务响应端与所述业务请求端之间建立公网通信链路,所述公网通信链路为基于公网通信地址建立的通信链路。

Description

业务请求、协商、响应方法、装置及网络设备、系统
本申请要求在2018年08月06日提交中国专利局、申请号为201810887064.6的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,例如涉及一种业务请求、协商、响应方法、装置及网络设备、系统。
背景技术
富媒体通信(Rich Communication Suite,RCS)中多媒体业务数据的传输主要使用讯息会议中继协议(Message Session Relay Protocol,MSRP)。MSRP的协议栈通过点对点的方式,基于传输控制协议(Transmission Control Protocol,TCP)传输消息或文件,这种传输方式具有数据传输快、传输占用带宽少的特点。MSRP适用于实时性要求高的业务,如即时消息(Instant Messaging,IM)、文件传输、图片共享、游戏、业务操作控制等。不过相关方案中,在使用MSRP进行数据传输时,所有的MSRP媒体业务数据均需要经过会话边界控制器(Session Border Controller,SBC)进行中转,然后由SBC将业务数据发送给接收端。经过SBC主要是为了实现媒体地址的网络地址转换(Network Address Translation,NAT)穿越和媒体地址合法性验证等。
随着第五代移动通信系统(the 5th Generation mobile communication system,5G)网络的发展,终端和应用服务器(Application Server,AS)之间传递的数据量不断增加,要求的数据传输时延越来越小,由SBC进行中转的模式不能适应业务发展的要求,因此,需要对相关技术中的方案进行改进。
发明内容
本申请实施例提供的业务请求、协商、响应方法、装置及网络设备、系统,解决了相关技术中AS与终端间的媒体业务数据需要经SBC进行中转,导致数据传输时延大,用户侧体验不佳的问题。
为解决上述技术问题,本申请实施例提供一种业务协商方法,包括:
根据业务请求端的请求向业务响应端发送携带业务请求端的第一公网通信地址的业务请求;
根据业务响应端的响应向业务请求端发送响应消息,响应消息中携带业务 响应端的第二公网通信地址,第一公网通信地址和第二公网通信地址用于在业务响应端与业务请求端之间建立公网通信链路。
本申请实施例还提供一种业务请求方法,包括:
将用于业务请求的请求消息发送给会话边界控制器SBC,请求消息用于指示SBC向业务响应端发送携带本端的第一公网通信地址的业务请求;
接收业务响应端在接收到业务请求后通过SBC发送的响应消息,响应消息中携带有业务响应端的第二公网通信地址;
根据第二公网通信地址同业务响应端建立公网通信链路并采用公网通信链路进行业务数据传输。
本申请实施例还提供一种业务响应方法,包括:
接收SBC发送的业务请求,业务请求中包含业务请求端的第一公网通信地址;
将与业务请求对应的业务响应发送给SBC,业务响应用于指示SBC向业务请求端发送携带本端的第二公网通信地址的响应消息;
根据第一公网通信地址同业务请求端建立公网通信链路并采用公网通信链路进行业务数据传输。
本申请实施例还提供一种业务协商装置,包括:
请求转发模块,设置为根据业务请求端的请求向业务响应端发送携带业务请求端的第一公网通信地址的业务请求;
响应转发模块,设置为根据业务响应端的响应向业务请求端发送响应消息,响应消息中携带业务响应端的第二公网通信地址,第一公网通信地址和第二公网通信地址用于在业务响应端与业务请求端之间建立公网通信链路。
本申请实施例还提供一种业务请求装置,包括:
请求发送模块,设置为将用于业务请求的请求消息发送给会话边界控制器SBC,请求消息用于指示SBC向业务响应端发送携带本端的第一公网通信地址的业务请求;
响应接收模块,设置为接收业务响应端在接收到业务请求后通过SBC发送的响应消息,响应消息中携带有业务响应端的第二公网通信地址;
第一建链模块,设置为根据第二公网通信地址同业务响应端建立公网通信链路并采用公网通信链路进行业务数据传输。
本申请实施例还提供一种业务响应装置,包括:
请求接收模块,设置为接收SBC发送的业务请求,业务请求中包含业务请求端的第一公网通信地址;
响应发送模块,设置为将与业务请求对应的业务响应发送给SBC,业务响应用于指示SBC向业务请求端发送携带本端的第二公网通信地址的响应消息;
第二建链模块,设置为根据第一公网通信地址同业务请求端建立公网通信链路并采用公网通信链路进行业务数据传输。
本申请实施例还提供一种网络设备,包括处理器、存储器及通信总线;
通信总线,设置为实现处理器和存储器之间的连接通信;
处理器,设置为执行存储器中存储的业务协商程序以实现如上的业务协商方法;或处理器设置为执行存储器中存储的业务请求程序以实现如上的业务请求方法;或处理器设置为执行存储器中存储的业务响应程序以实现如上的业务响应方法。
本申请实施例还提供一种网络系统,包括终端、SBC以及AS,终端、SBC以及AS三者两两通信连接;
终端为上述处理器可执行业务请求程序以实现如上业务请求方法的网络设备,SBC为如上处理器可执行业务协商程序以实现如上的业务协商方法的网络设备;AS为如上处理器可执行业务响应程序以实现如上的业务响应方法的网络设备;
或,
终端为如上处理器可执行业务响应程序以实现如上业务响应方法的网络设备,SBC为如上处理器可执行业务协商程序以实现如上业务协商方法的网络设备;AS为如上处理器可执行业务请求程序以实现如上业务请求方法的网络设备。
本申请实施例还提供一种存储介质,存储介质中存储有业务协商程序、业务请求程序以及业务响应程序中的至少一个,业务协商程序可被一个或者多个处理器执行,以实现如上业务协商方法;业务请求程序可被一个或者多个处理器执行,以实现如上业务请求方法;业务响应程序可被一个或者多个处理器执行,以实现如上业务响应方法。
附图说明
图1为相关技术中提供的一种通信系统的结构示意图;
图2为本申请实施例一中提供的一种业务实现方案的交互流程图;
图3为本申请实施例二中提供的另一种业务实现方案的交互流程图;
图4为本申请实施例二中提供的一种SBC生成业务请求的流程图;
图5为本申请实施例三中提供的另一种业务实现方案的交互流程图;
图6为本申请实施例四中提供的一种业务请求装置的结构示意图;
图7为本申请实施例四中提供的一种业务协商装置的结构示意图;
图8为本申请实施例四中提供的一种业务响应装置的结构示意图;
图9为本申请实施例七中提供的一种网络设备的硬件结构示意图;
图10为本申请实施例七中提供的一种网络系统的示意图;
图11为本申请实施例八中提供的另一种网络系统的结构示意图;
图12为本申请实施例八中提供的另一种业务实现方案的交互流程图;
图13为本申请实施例八中提供的另一种业务实现方案的交互流程图;
图14为本申请实施例八提供的一种网络系统抵御恶意终端媒体攻击的流程图。
具体实施方式
下面通过具体实施方式结合附图对本申请实施例进行说明。此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
实施例一:
通信技术的演进已经到了第五代,5G通信技术主要面向未来的五个主要应用场景:
1)超高速场景,为未来移动宽带用户提供极速数据网络接入。
2)支持大规模人群,为高人群密度地区或场合提供高质量移动宽带体验。
3)随时随地最佳体验,确保用户在移动状态仍享有高质量服务。
4)超可靠的实时连接,确保新应用和用户实例在时延和可靠性方面符合严格的标准。
5)无处不在的物物通信,确保高效处理多样化的大量设备通信,包括机器类设备和传感器等。
随着5G网络的发展,可以提供更多信息量的快速传递和更丰富的业务体验,多媒体内容代替文本信息、视频通话、个人社交呈现等特点,都已成为技术发展的新趋势,RCS成为5G网络基础上的业务应用的一个发展方向。
RCS,是由全球移动通信联盟(Global System for Mobile Communications  assembly,GSMA)负责规划,构建在网际协议多媒体子系统(IP Multimedia Subsystem,IMS)网络之上的具有统一业务集定义的技术标准,是基于手机电话号码簿实现语音、消息、状态呈现等多媒体业务的总称。
RCS是基于IMS网络之上的应用,IMS是第三代合作伙伴计划(Third Generation Partnership Project,3GPP)提出的支持互联网协议(Internet Protocol,IP)多媒体业务的子系统,是多媒体通信的发展方向,作为第四代移动通信系统(the 4th Generation mobile communication system,4G)时代中的应用子系统,能很好的满足4G时代中人与人之间的通信,RCS的显著特征是采用了会话初始协议(Session Initial Protocol,SIP)体系,通信与接入方式无关,具备多种多媒体业务的控制功能与承载能力分离、呼叫与会话分离、应用与服务分离、业务与网络分离,以及移动网与因特网业务融合等多种能力。
相关技术中,RCS中多媒体业务数据的传输需要依赖SBC进行中转,请参见图1示出的相关技术中提供的一种通信系统的结构示意图:通信系统1包括终端11、NAT设备12、SBC 13以及AS 14,终端11与NAT设备12通信连接,NAT设备12与SBC 13通信连接,SBC 13还与AS 14通信连接:
一实施例中,终端11负责发起请求或在接收业务请求后对业务请求进行响应,对于终端11而言,无论是会话协商阶段(或称“会话连接阶段”)还是业务数据传输阶段(或称“媒体连接阶段”),终端11都使用自己的私网互联网协议(Internet Protocol,IP)地址。
NAT设备12设置为将来自终端的消息中的私网IP地址转换成公网IP地址,完成与SBC 13以及AS 14的通信。同时,NAT设备12还设置为将来自公网侧消息转发给终端11。网络地址转换属于接入广域网(Wide Area Network,WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,负责提供私网IP地址和公网IP地址的转换,并提供私网数据流和公网数据流的转发。
通信系统1中的SBC 13包括会话协商单元131、媒体中转单元132。一实施例中,会话协商单元131负责对终端的接入和会话进行认证,并向AS 14发送来自终端的业务请求或业务响应。媒体中转单元132设置为接收来自AS 14的业务数据并发送给终端11,或者是接收来自终端11的业务数据,并将接收到的业务数据发送给AS 14。
AS 14包括会话处理单元141和媒体传输单元142。一实施例中,会话处理单元141设置为接收终端11通过SBC 13转发的业务请求或者业务响应,同终端11间实现会话协商,在会话协商阶段结束后,会话处理单元141还会将协商所得的IP地址传输给媒体传输单元142。媒体传输单元142设置为在SBC 13以及NAT设备12的帮助下实现与终端11间的媒体业务数据交互。
在相关技术中,通信系统1中的NAT设备12与SBC 13之间基于公网IP进行通信,而SBC 13与AS 14间基于私网IP进行通信。所以,SBC 13的会话协商单元131在中转AS 14与终端11间的会话协商消息(业务请求或业务响应)时,需要进行公网IP与私网IP的转换。例如,在接收到AS 14需要发送给终端的业务响应时,会话协商单元131需要将业务请求中AS的私网IP转换成SBC 13的公网IP地址,然后将转换后的业务响应发送给NAT设备12,以供NAT设备12将业务响应发送给终端11。对应地,如果会话协商单元131接收到NAT设备12转发的终端11的业务请求,由于SBC 13与NAT设备12间基于公网IP通信,所以,在该业务请求中携带有NAT设备12转换后的公网IP地址,而SBC13与AS 14间基于私网IP进行通信,所以,会话协商单元131需要将该业务请求中携带的NAT设备12的公网IP地址转换成SBC的私网IP地址,然后才能将业务请求发送给AS 14。
同样的,媒体中转单元132在中转AS 14和终端11间的媒体业务数据时,也需要对公网IP地址与私网IP地址进行转换,转换示例和会话协商阶段中会话协商单元131的转换类似,本申请不再赘述。
在相关技术中,SBC 13对会话协商消息以及媒体业务数据的中转,可以实现媒体地址NAT穿越和媒体地址合法性验证等,可以避免AS 14的公网IP地址直接对外暴露,从而可以提升AS 14的安全性。不过,由于SBC 13在对媒体业务数据进行中转时,必然需要花费一定的处理时间,这导致了业务数据传输时延大,用户业务体验不佳的问题。
为了解决相关技术中通过SBC来中转终端与AS间业务数据所带来的问题,本实施例提供一种业务实现方案,该业务实现方案包括业务请求方法、业务协商方法以及业务响应方法,图2示出了一种业务实现方案中业务请求端、业务响应端以及SBC三端的交互流程图。
在对本实施例中实现业务的流程进行介绍之前,先对本实施例中,业务请求端与业务响应端进行介绍:在实际的业务过程中,有些业务是由终端发起的,则终端作为业务请求端,而应用服务器作为业务响应端;当然,还存在另一些业务是由应用服务器发起的,此时,应用服务器作为业务请求端,而终端则作为业务响应端。
业务请求端包括私网通信地址和公网通信地址,同样的,业务响应端也包括私网通信地址和公网通信地址,为了区分业务请求端的公网通信地址和业务响应端的公网通信地址,在本实施例中,将业务请求端的公网通信地址称为“第一公网通信地址”,将业务响应端的公网通信地址称为“第二公网通信地址”。本申请仅仅是为了便于介绍而对两个公网通信地址进行区分,并不用于限定本 实施例的范围。一实施例中,终端侧的公网通信地址可以是指NAT设备的公网通信地址。
S202:业务请求端将用于业务请求的请求消息发送给SBC。
在本实施例中,业务请求端在需要向业务响应端请求某种业务服务时,可以生成请求消息,然后将请求消息发送给SBC。然后由SBC根据业务请求端的请求消息向业务响应端发送业务请求。SBC发送给业务响应端的业务请求中携带有业务请求端的第一公网通信地址。
S204:SBC根据业务请求端的请求向业务响应端发送携带业务请求端的第一公网通信地址的业务请求。
一实施例中,SBC向业务响应端发送的业务请求是根据从业务请求端接收到的请求消息生成的,在业务请求中携带有业务请求端的第一公网通信地址,所以在本实施例的一些示例中,业务请求端发送给SBC的请求消息中,就可以携带有该第一公网通信地址,SBC可以直接将该请求消息作为业务请求发送给业务响应端。例如,在本实施例的一些示例当中,业务请求端为AS,业务响应端为终端,AS在向终端请求开始某种业务时,会在发送给SBC的请求消息中携带自己的公网IP地址,当SBC接收到AS的请求消息后,可以不对该请求消息中的公网IP地址进行修改,直接将该请求消息作为业务请求发送给终端。
在本实施例的另一些示例当中,业务请求端发送给SBC的请求消息中携带的是业务请求端的私网通信地址,SBC需要根据业务请求端的第一公网通信地址以及请求消息生成业务请求,例如将请求消息中的私网通信地址修改为第一公网通信地址从而生成业务请求,然后将该业务请求发送给业务响应端。例如,在本实施例的一些示例当中,AS作为业务请求端,终端作为业务响应端,AS在向SBC发送请求消息时,携带的是AS的私网IP地址,SBC接收到请求消息后,需要将请求消息中的AS的私网IP地址修改为AS的公网IP地址,然后将修改处理后得到的请求消息作为业务请求发送给终端。又例如,终端作为业务请求端,AS作为业务响应端时,终端通过NAT设备发送给SBC的请求消息中,也携带的是终端的私网IP地址,当SBC接收到来自终端的请求消息后,将该请求消息中的私网通信地址修改为终端侧的公网IP地址,从而得到业务请求。
S206:业务响应端将与业务请求对应的业务响应发送给SBC。
业务响应端接收到业务请求之后,可以根据业务请求对业务请求端的请求进行响应,所以业务响应端会根据业务请求向业务请求端发送业务响应。业务响应端将该业务响应发送给SBC,让SBC根据业务响应向业务请求端发送携带业务响应端的第二公网通信地址的响应消息。
S208:SBC根据业务响应端的响应向业务请求端发送携带业务响应端的第二公网通信地址的响应消息。
和SBC根据业务请求端的请求向业务响应端发送业务请求类似,在本实施例中,SBC向业务请求端发送响应消息是根据从业务响应端接收到的业务响应生成的,在响应消息中携带有业务响应端的第二公网通信地址,所以在本实施例的一些示例中,业务响应端发送给SBC的业务响应中,可以携带有该第二公网通信地址,SBC可以直接将该业务响应作为响应消息发送给业务请求端。例如,在本实施例的一些示例当中,业务响应端为AS,业务请求端为终端,AS在根据终端的请求发送业务响应时,可以在业务响应中携带自己的公网通信地址。对于SBC来说,接收到携带AS的公网通信地址的业务响应之后,可以不对业务响应中的公网IP地址进行修改,直接将该业务响应作为请求消息对应的响应消息发送给终端。
在本实施例的另一些示例当中,业务响应端发送给SBC的业务响应中携带的是业务响应端的私网通信地址,SBC需要根据业务响应端的第二公网通信地址以及业务响应生成响应消息,例如通过将业务响应中的私网通信地址修改为第二公网通信地址从而生成响应消息,然后将该响应消息发送给业务请求端,作为业务请求端所发送的请求消息的应答。例如,在本实施例的一些示例当中,AS作为业务响应端,终端作为业务请求端,AS在向SBC发送业务响应时,携带的是AS的私网IP地址,SBC接收到业务响应后,需要将业务响应中的AS的私网IP地址修改为AS的公网IP地址,然后将修改处理后的业务响应作为响应消息发送给终端。又例如,终端作为业务响应端,AS作为业务请求端时,终端通过NAT设备向SBC发送业务响应,该业务响应中,也携带的是终端的私网IP地址,当SBC接收到来自终端的业务响应后,将该业务响应中的私网通信地址修改为终端侧的公网IP地址,从而得到可以发送给AS侧的响应消息。
在本实施例的一些示例当中,SBC发送给终端的响应消息中还包括AS的端口号。
S210:业务响应端与业务请求端基于第一公网通信地址和第二公网通信地址建立公网通信链路。
在会话协商阶段,通过SBC向业务响应端发送的业务请求,可以使得业务响应端获取到业务请求端的第一公网通信地址;通过SBC向业务请求端发送的响应消息可以使得业务请求端获取到业务响应端的第二公网通信地址。在此基础上,业务请求端和业务响应端可以根据该第一公网通信地址与第二公网通信地址在业务请求端和业务响应端之间建立公网通信链路。该公网通信链路为基于公网通信地址建立的通信链路,通过该通信链路可以在业务请求端和业务响 应端之间进行业务数据的传输,实现业务,而不必依赖于SBC的中转。
下面对业务响应端与业务请求端之间建立公网通信链路的过程进行简单介绍:
一实施例中,在建立公网通信链路的过程中,建链请求可以由业务请求端发起,也可以由业务响应端发起。例如,在本实施例的一种示例中,建链请求由业务请求端发起,业务请求端实际就是建链请求端,而业务响应端就是建链响应端。业务请求端根据会话协商获取到的第二公网通信地址向业务响应端发送建链请求,业务响应端在接收到该建链请求之后,可以根据会话协商阶段获取到的第一公网通信地址向业务请求端发送建链响应,从而与业务请求端之间建立起公网通信链路。在本实施例的另一种示例中,建链请求由业务响应端向业务请求端发起,业务响应端作为建链请求端,而业务请求端作为建链响应端。业务响应端根据会话协商时获取到的第一公网通信地址向业务请求端发送建链请求。在业务请求端接收到建链请求后,如果同意建立基于公网的通信链路,就可以向业务响应端发送表征肯定的建链响应;如果不同意建立基于公网的通信链路业务请求端可以拒绝该建链请求。
在本实施例的一些示例中,建链响应端在接收到建链请求端发送的建链请求后,可以对建链请求端进行验证,只有验证建链请求端是之前与自己进行会话协商的设备后,才会允许建链请求端与自己建立公网通信链路。一实施例中,建链响应端对建链请求端的身份合法性进行验证,可以通过验证建链请求端的公网通信地址实现:建链请求端在向建链响应端发起建链请求的时候,可以在建链请求中携带自己的公网通信地址。建链响应端在接收到该建链请求之后,确定该建链请求中所携带的公网通信地址是否是自己在会话协商阶段获取到的公网通信地址。一实施例中,首先,假定建链请求端为业务请求端,则在建链请求端发送的建链请求中携带有第一公网通信地址。建链响应端接收到建链请求之后,可以将建链请求中携带的公网通信地址与自己在会话协商过程中获取到的业务请求端的第一公网通信地址进行比对,判断建链请求中携带的公网通信地址与业务请求端的第一公网通信地址是否一致。若建链请求中携带的公网通信地址与业务请求端的第一公网通信地址一致,则说明该建链请求就是预先同自己进行会话协商的业务请求端发起的,因此建链请求端的身份合法,建链响应端可以发起表征肯定的建链响应,从而同建链请求端建立起公网通信链路;若建链请求中携带的公网通信地址与业务请求端的第一公网通信地址不一致,则说明发起建链请求的建链请求端并不是业务请求端,因此,作为建链响应端的业务响应端可以拒绝建链请求端的建链请求。
假定建链请求端为业务响应端,则建链响应端为业务请求端。业务响应端 作为建链请求端,在向建链响应端发送建链请求时,可以在该建链请求中携带自己的公网通信地址,即第二公网通信地址。建链响应端接收到一个建链请求之后,将该建链请求中的公网通信地址与自己在会话协商阶段从业务响应端获取到的第二公网通信地址进行比对,若建链请求中携带的公网通信地址与业务响应端的第二公网通信地址一致,则说明建链请求端就是与自己进行会话协商的业务响应端,因此,作为建链响应端的业务请求端可以根据预先获取到的第二公网通信地址向建链请求端发送表征同意建链的建链响应,与建链请求端建立起公网通信链路,然后在该通信链路上进行业务数据的传输。如果建链响应端通过比对发现接收到的建链请求中所携带的公网通信地址不是第二公网通信地址,则说明该建链请求端身份不合法,因此建链响应端可以拒绝该建链请求端的建链请求。
在本实施例的一些示例中,业务请求端为终端,在本实施例的另一些示例当中,业务请求端为应用服务器。考虑到在通信系统当中,终端通常是通过NAT设备对外通信的,对于外界设备而言,主动发起对终端的通信可能不是特别容易,因此,在本实施例中,建链请求可以由终端向AS发起,也即终端作为建链请求端,AS作为建链响应端。所以,当终端为业务请求端时,建链请求由业务请求端向业务响应端发送,当终端为业务响应端时,建链请求由业务响应端向业务请求端发送。
本实施例提供的业务请求方法、业务协商方法以及业务响应方法,在会话协商阶段,通过向业务响应端发送包含业务请求端的第一公网通信地址的业务请求,并根据业务响应端的响应,向业务请求端发送携带业务响应端的第二公网通信地址的响应消息,使得业务请求端和业务响应端可以获取到彼此的公网通信地址,然后基于对方的公网通信地址在业务请求端和业务响应端之间建立起公网通信链路进行业务数据传输,实现业务,避免了业务数据的传输需要经过SBC进行中转,造成业务数据传输速率不高,时延大的问题,提升了终端侧的用户业务体验。
实施例二:
本实施例在实施例一的基础上对业务实现方案进行介绍,假定本实施例中终端为业务请求端,AS为业务响应端,例如,假定终端需要向AS上传视频数据。同时,假定AS向SBC发送的消息中携带的仍是AS的私网通信地址,请参见图3示出的一种业务实现方案的交互流程图:
S302:终端通过NAT设备向SBC发送请求消息。
终端由于需要向应用服务器上传视频数据,因此,终端可以向AS发起视频数据上传请求。在该请求消息中可以携带有终端所请求的业务服务类型。
在本实施例中,终端通过NAT设备实现对外通信,终端向NAT设备发送的请求消息中携带有终端的私网通信地址,同时该请求消息的源地址为终端的私网通信地址,目的地址为SBC的公网通信地址。在NAT设备接收到该请求消息之后,会对请求消息中源地址进行转换,将该源地址修改为NAT设备的公网通信地址。在本实施例中,NAT设备的公网通信地址可以视为终端的公网通信地址,在本实施例中,终端作为业务请求端,因此NAT设备的公网通信地址实际就是第一公网通信地址。
NAT设备完成私网通信地址到公网通信地址的转换之后,可以将转换后的请求消息发送到目的地址,也即发送给SBC设备。
S304:SBC根据请求消息生成业务请求。
SBC设备接收到NAT设备转发过来的请求消息之后,可以根据请求消息生成业务请求。SBC生成的业务请求中携带有终端侧的公网通信地址,即第一公网通信地址。一实施例中,SBC可以将请求消息中终端的私网通信地址修改为终端侧的第一公网通信地址,从而得到业务请求。
在本实施例的一些示例中,并不是针对终端所请求的所有业务,都要在终端与AS之间建立公网通信链路,例如,在一些情况下,针对终端所请求的某些业务,AS并不希望对外暴露自己的公网通信地址。所以本实施例提供一种可供参考的SBC生成业务请求的流程,请参见图4。
S402:SBC判断业务请求端所请求的业务是否支持采用公网通信链路进行业务数据传输。
在业务请求端所请求的业务支持采用公网通信链路进行业务数据传输的情况下,执行S404,在业务请求端所请求的业务不支持采用公网通信链路进行业务数据传输的情况下,执行S406。
在本实施例中,SBC可以根据请求消息的消息体来判断业务请求所请求的业务是否支持采用公网通信链路进行传输,例如,本实施例中,终端在请求进行视频数据上传时,可以在请求消息的消息体中携带所请求的服务类型,让SBC根据消息体中的服务类型来确定所请求的业务是否支持采用公网通信链路进行业务数据传输。
在本实施例的另一些示例当中,SBC可以根据请求消息的消息头来判断业务请求端所请求的业务是否支持采用公网通信链路进行业务数据传输。在一实施例中,业务请求端向SBC发送的请求消息的消息头中应当存在对应的指示信 息。例如,在请求消息的消息头中包括服务指示,当服务指示为“0”时,表征业务请求端所请求的业务支持基于公网通信地址进行传输,当服务指示为“1”时,表征业务请求端所请求的业务不支持基于公网通信地址进行业务数据传输。一实施例中,可以由业务请求端在发送请求消息之前先根据自己所请求的业务服务类型确定该业务是否支持采用公网通信链路进行业务数据传输,也即该业务是否支持媒体直连。然后,业务请求端根据判断结果设置请求消息的消息头。
在本实施例的其他一些示例当中,SBC可以结合请求消息的消息头和消息体来判断业务请求端所请求的业务是否支持采用公网通信链路进行业务数据传输。例如,SBC根据请求消息的消息头和消息体两种方式进行判断的判断结果均表征业务请求端所请求的业务支持媒体直连时,才会判定业务请求端所请求的业务支持采用公网通信链路进行业务数据传输。
S404:SBC在生成的业务请求中携带业务请求端的第一公网通信地址。
如果SBC经过判断确定业务请求端所请求的业务支持采用公网通信链路进行业务数据传输,则SBC需要生成携带业务请求端的第一公网通信地址的业务请求。
S406:SBC在生成的业务请求中携带自己的私网通信地址。
如果SBC经过判断确定业务请求端所请求的业务不支持采用公网通信链路进行业务数据传输,则SBC可以确定该业务对应的业务数据还是会按照相关技术中的方式进行传输,即经过自己进行中转。由于SBC同AS之间基于私网通信地址进行通信,因此,SBC需要在生成的业务请求中携带自己的私网通信地址。
S306:SBC将业务请求发送给AS。
SBC生成业务请求之后,可以将该业务请求发送给AS。一实施例中,SBC与AS之间在通信的时候可以通过呼叫会话控制功能(Call Session Control Function,CSCF)网元进行中转,例如,SBC将业务请求先发送给CSCF网元,然后由CSCF网元将业务请求转发给AS。当然,SBC与AS之间的通信方式不限于本申请的示例中示出的方式。
S308:AS根据业务请求向SBC发送业务响应。
AS在接收到来自SBC的业务请求之后,可以根据业务请求发送业务响应,让SBC根据自己的响应向终端发送对应于请求消息的响应消息。
在本实施例中,AS在会话协商阶段并不关心终端所请求的业务是否支持采用公网通信链路进行业务数据传输,无论终端请求的是何种业务,AS在向SBC发送业务响应的时候,携带的均是自己的私网通信地址。
在AS生成业务响应之后,将携带自己的私网通信地址的业务响应发送给SBC。一实施例中,业务响应的传输路径与业务请求的传输路径对应,所以在本实施例的一些示例当中,业务响应可以经CSCF网元发送给SBC。
S310:SBC根据业务响应生成响应消息。
SBC接收到来自AS的业务响应之后,根据业务响应生成发送给终端的响应消息。在响应消息中携带有AS侧的公网通信地址,即第二公网通信地址。
一实施例中,如果不是所有业务的业务数据都支持采用公网通信链路进行传输,则SBC在生成响应消息的时候,需要先确定业务响应所对应的业务是否支持采用公网通信链路进行传输。一实施例中,如果SBC能够直接确定自己从AS处接收到的业务响应是针对之前所发送的业务请求的,则SBC可以根据业务请求所请求的业务是否支持采用公网通信链路进行传输来确定如何对业务响应中的私网通信地址进行修改。
在本实施例的另一些示例当中,SBC也可以根据响应消息的消息头和/或消息体来进行判断。判断方式可以参见SBC生成业务请求的过程,这里不再赘述。
如果经过SBC的判断,确定业务响应所对应的业务支持媒体直连,则SBC可以对业务响应中AS侧的私网通信地址进行修改,将AS侧的私网通信地址修改成AS侧的公网通信地址,从而得到响应消息;如果经过SBC的判断,确定业务响应所对应的业务不支持媒体直连,SBC可以将业务响应中的私网通信地址修改成自己的公网通信地址,生成响应消息。
S312:SBC通过NAT设备将响应消息发送给终端。
SBC生成响应消息之后,可以将响应消息传输给NAT设备,让NAT设备根据终端的私网通信地址将该响应消息传输给终端。
S314:终端向AS发送建链请求。
终端接收到响应消息之后,如果确定AS同意响应自己的请求消息,则可以根据响应消息中携带的公网通信地址向AS发送建链请求。一实施例中,在终端向AS发送建链请求时,建链请求也同样需要通过NAT设备进行私网通信地址与公网通信地址的转换后再发送给AS。在本实施例中,在终端发送的建链请求中携带有终端侧的公网通信地址。
S316:AS对建链请求进行验证。
AS接收到终端侧发送的建链请求之后,可以根据建链请求对建链请求端的身份进行验证,确定发送建链请求的是否是之前与自己进行会话协商的业务请求端。一实施例中,AS可以判断建链请求中所携带的公网通信地址是否是自己 在会话协商阶段所获得的终端侧的公网通信地址,也即第一公网通信地址。
在确定建链请求中的公网通信地址是第一公网通信地址的情况下,AS确定建链请求端的身份合法。
在本实施例的另一些示例中,AS不仅会根据建链请求中的公网通信地址对建链请求端的身份进行认证,而且还会根据建链请求中建链请求端的私网通信地址进行认证。一实施例中,SBC根据来自终端的请求消息向AS发送业务请求时,还会在业务请求中携带终端的私网通信地址。这样当AS接收到建链请求之后,除了对建链请求中的公网通信地址进行认证以外,还可以结合建链请求中的私网通信地址进行认证,判断该建链请求中的私网通信地址是否是业务请求中携带的私网通信地址。如果AS判断建链请求中的公网通信地址与私网通信地址均与业务请求中的公网通信地址与私网通信地址一致,则可以确认建链请求端就是业务请求端。
S318:AS向终端发送建链响应。
在AS确定建链请求是由之前的业务请求端发起的情况下,AS可以向终端发送表征肯定的建链响应。
S320:AS与终端建立公网通信链路。
在终端接收到建链响应之后,可以基于第二公网通信地址同AS建立起公网通信链路,随后在该通信链路上向AS进行视频数据传输,实现对应的数据传输业务。
本实施例提供的业务实现方案,终端和AS可以通过在会话协商阶段获取的对端的公网通信地址,建立用于业务数据传输的通信链路,避免业务数据传输过程中需要SBC中转的问题;而且,SBC在向AS发送业务请求或在向终端发送响应消息之前,可以判断业务请求端所请求的业务是否支持媒体直连来确定是否要携带业务请求端的公网通信地址或业务响应端的公网通信地址,使得一些业务可以采用公网通信链路传输,另一些业务可以继续采用相关技术中的方案实现,在改善用户体验的问题的同时可以兼容相关技术的方案。
在本实施例提供的业务实现方案中,AS在接收到建链请求之后,可以对建链请求端的身份进行验证,保证与自己建立公网通信链路的建链请求端是之前与自己进行会话协商的终端,提升了应用服务器的安全性。
实施例二中虽然仅介绍了终端作为业务请求端,AS作为业务响应端时的业务实现方案,但是,实施例二中方案的实现原理也适用于终端作为业务响应端,接收AS的请求的情景。
实施例三:
本实施例同样在实施例一的基础上对业务实现方案进行介绍,这里假定业务请求端为AS,而终端则作为业务响应端。例如,AS请求终端接收自己的消息推送。同时,AS在向SBC发送消息时,可以根据实际情况选择携带自己的公网通信地址,或者携带自己的私网通信地址。
请参见图5示出的一种业务实现方案的交互流程图:
S502:AS确定需要请求的业务支持采用公网通信链路进行业务数据传输。
在本实施例中,AS在需要向终端发起请求时,会先确定自己当前所请求的业务是否支持采用公网通信链路进行业务数据传输,也即自己当前所请求的业务是否支持媒体直连。若判断结果为是,则AS将在生成的请求信息中携带自己的公网通信地址,因为AS在本实施例中作为业务请求端,所以AS的公网通信地址即为第一公网通信地址。
一实施例中,如果经过判断,AS确定自己当前所请求的业务不支持采用公网通信链路进行业务传输,则说明该业务的业务数据还是需要通过SBC进行中转,因此,AS在生成请求消息时,在该请求消息中添加的是自己的私网通信地址。
S504:AS向SBC发送请求消息。
AS生成请求消息之后,将该请求消息发送给SBC。一实施例中,AS与SBC之间可以通过CSCF网元进行通信,即AS先将请求消息发送给CSCF网元,然后由CSCF网元将该请求消息发送给SBC。在一些其他的示例当中,AS与SBC之间的通信方式也可以与上述方式不同。
S506:SBC确定AS所请求的业务支持采用公网通信链路进行业务数据传输。
SBC接收到AS发送的请求消息之后,需要根据请求消息生成业务请求。在本实施例中,SBC也需要确定AS所请求的业务是否支持采用公网通信链路进行业务数据传输,如果判断结果为是,则SBC可以不对请求消息中的通信地址进行修改,即可得到携带AS的公网通信地址,即第一公网通信地址的业务请求;如果SBC的判断结果为否,则SBC需要对AS发送的携带AS私网通信地址的业务请求进行修改,将业务请求中AS的私网通信地址修改为SBC的公网通信地址后才能得到业务请求。
一实施例中,SBC在确定AS所请求的业务是否支持媒体直连时,可以根据请求消息的消息体进行判断。在消息体中包含有AS所请求业务服务的类型,所以SBC根据所请求业务服务的类型确定业务是否支持媒体直连。当然,由于 AS在发送请求消息的时候也需要先判断自己所请求的业务是否支持媒体直连服务,因此,在本实施例的一种示例当中,AS在得到判断结果之后,可以将判断结果携带在请求消息中发送给SBC,这样,当SBC接收到AS发送的请求消息之后,可以直接从接收到的请求消息中确定出AS所请求的业务是否支持媒体直连,避免了SBC根据请求消息中的业务服务类型进行判断的过程。例如,在AS向SBC发送的请求消息的消息头中包括有服务指示,如果该服务指示的值为“0”,则代表该请求消息所请求的业务服务支持媒体直连服务,如果该服务指示的值不为“0”,说明该请求消息所请求的业务服务不支持媒体直连服务。
S508:SBC将请求消息作为业务请求发送给终端。
假定SBC确定请求消息所请求的业务服务支持媒体直连服务,则SBC可以将携带有AS的公网通信地址的请求消息作为业务请求发送给终端。如果SBC确定请求消息所请求的业务服务不支持媒体直连服务,则SBC可以将携带自己的公网通信地址的业务请求发送给终端。
S510:终端根据接收到的业务请求向SBC发送业务响应。
终端通过NAT设备接收到业务请求之后,可以根据业务请求向SBC发送业务响应。业务响应中携带有终端的私网通信地址。一实施例中,业务响应需要通过NAT设备发送给SBC。在NAT设备接收到业务响应之后,可以将业务响应的源地址从终端的私网通信地址修改为自己的公网通信地址,从而实现私网通信地址到公网通信地址的转换。由于终端在本实施例中作为业务响应端,因此,NAT设备的公网通信地址实际可以被视为终端的公网通信地址,即第二公网通信地址。
S512:SBC根据业务响应生成响应消息。
SBC在接收到来自终端的业务响应之后,可以根据业务响应生成响应消息,在该响应消息中也携带有终端侧的第二公网通信地址。在本示例中,因为AS所请求的业务服务支持媒体直连,因此,SBC将会在响应消息中携带终端的第二公网通信地址。在本实施例的其他一些示例中,如果AS所请求的业务不支持媒体直连,则SBC需要在响应消息中携带自己的私网通信地址。
另外,在本实施例中,SBC在接收来自终端侧的业务响应之后,如果可以确定该业务响应是属于哪一个业务请求的,则SBC可以直接根据业务请求确定该业务响应对应的业务是否支持媒体直连;但如果SBC不能确定出接收到的业务响应是对应哪一个业务请求,则SBC在根据业务响应生成响应消息时,需要根据业务响应的消息头和/或消息体确定该业务响应对应的业务是否支持媒体直连,从而确定是在对应的响应消息中携带终端侧的第二公网通信地址还是SBC 的私网通信地址。
S514:SBC将响应消息发送给AS。
SBC生成响应消息之后,可以将响应消息通过CSCF网元发送给AS,从而让AS根据响应消息确定终端是否接受自己的请求。在AS确定终端针对其业务请求进行了表征肯定的应答后,可以在接收到响应消息之后与终端建立公网通信链路。
S516:终端向AS发送建链请求。
在终端的响应到达AS侧之后,终端可以根据业务请求中所携带的第一公网通信地址,即AS侧的公网通信地址向AS发送建链请求。一实施例中,在终端向AS发送建链请求时,建链请求也同样需要通过NAT设备进行私网通信地址与公网通信地址的转换后再发送给AS。
S518:AS对建链请求进行验证。
AS接收到终端侧发送的建链请求之后,可以根据建链请求对建链请求端的身份进行验证,确定发送建链请求的是否是之前与自己进行会话协商的业务响应端。一实施例中,AS可以判断建链请求中所携带的公网通信地址是否是自己在会话协商阶段所获得的终端侧的公网通信地址,也即第二公网通信地址。
在确定建链请求中的公网通信地址是第二公网通信地址的情况下,AS确定建链请求端的身份合法。
在本实施例的另一些示例中,AS不仅会根据建链请求中的公网通信地址对建链请求端的身份进行认证,而且还会根据建链请求中建链请求端的私网通信地址进行认证。一实施例中,SBC根据来自终端的业务响应向AS发送响应消息时,还会在响应消息中携带终端的私网通信地址。这样当AS接收到建链请求之后,除了对建链请求中的公网通信地址进行认证以外,还可以结合建链请求中的私网通信地址进行认证,判断该建链请求中的私网通信地址是否是响应消息中携带的私网通信地址。如果AS判断建链请求中的公网通信地址与私网通信地址均与响应消息中的一致,则可以确认建链请求端就是业务响应端。
S520:AS向终端发送建链响应。
在AS确定建链请求是由之前的业务响应端发起时,AS可以向终端发送表征肯定的建链响应。
S522:AS与终端建立公网通信链路。
在终端接收到建链响应之后,可以基于第一公网通信地址同AS建立起公网通信链路,随后在该通信链路上接收AS的消息推送,实现对应的数据传输业务。
本申请实施例提供的业务实现方案,终端和AS可在会话协商阶段获取对端的公网通信地址,建立用于业务数据传输的通信链路,从而避免业务数据传输过程中需要SBC中转的问题。在本实施例提供的业务实现方案中,AS在接收到建链请求之后,可以对建链请求端的身份进行验证,保证与自己建立公网通信链路的是之前与自己进行会话协商的终端,提升了应用服务器的安全性。
实施例三中虽然仅介绍了AS作为业务请求端,终端作为业务响应端时的业务实现方案,但是,实施例三中方案的实现原理也适用于AS作为业务响应端,接收终端的请求的情景。
实施例四:
本实施例提供一种业务请求装置、一种业务协商装置以及一种业务响应装置,请分别参见图6-8所示出的装置的结构示意图:
首先,请参见图6示出的业务请求装置60的结构示意图,业务请求装置60包括请求发送模块602、响应接收模块604以及第一建链模块606。一实施例中,请求发送模块602设置为将用于业务请求的请求消息发送给SBC;响应接收模块604设置为接收业务响应端在接收到业务请求后通过SBC发送的响应消息;第一建链模块606设置为根据第二公网通信地址同业务响应端建立公网通信链路并采用公网通信链路进行业务数据传输,实现业务。一实施例中,请求发送模块602在向SBC发送请求消息之后,可以让SBC根据请求消息向业务响应端发送携带业务请求装置60侧的第一公网通信地址的业务请求。而响应接收模块604接收到的响应消息中包括业务响应端的第二公网通信地址。
图7示出了一种业务协商装置70,该业务协商装置70包括请求转发模块702、响应转发模块704。一实施例中,请求转发模块702设置为根据业务请求端的请求向业务响应端发送携带业务请求端的第一公网通信地址的业务请求,而响应转发模块704设置为根据业务响应端的响应向业务请求端发送响应消息.
图8示出的是一种业务响应装置80的结构示意图:业务响应装置80包括请求接收模块802、响应发送模块804以及第二建链模块806。一实施例中请求接收模块802设置为接收SBC发送的业务请求,业务请求中包含业务请求端的第一公网通信地址;响应发送模块804设置为将与业务请求对应的业务响应发送给SBC,业务响应用于指示SBC向业务请求端发送携带本端的第二公网通信地址的响应消息;第二建链模块806设置为根据第一公网通信地址同业务请求端建立公网通信链路进行业务数据传输,实现业务。
在本实施例中,业务请求装置60可以部署在终端上,也可以部署在应用服 务器上,业务请求装置60中请求发送模块602、响应接收模块604以及第一建链模块606的功能可以由终端的处理器控制终端的通信单元实现,或者可以由应用服务器的处理器与通信单元共同实现。
业务协商装置70可以部署在SBC上。一实施例中,请求转发模块702、响应转发模块704的功能可以由SBC的处理器与通信单元共同实现。
业务响应装置80和业务请求装置60类似,也可以部署在终端上或者是部署在应用服务器上,请求接收模块802、响应发送模块804以及第二建链模块806的功能可以由终端的处理器控制终端的通信单元实现,或者可以由应用服务器的处理器与通信单元共同实现。
在本实施例中,请求发送模块602在需要向业务响应端请求某种业务服务的情况下,可以生成请求消息,然后将请求消息发送给SBC。然后由SBC根据业务请求端的请求消息向业务响应端发送业务请求。SBC发送给业务响应端的业务请求中携带有业务请求端的第一公网通信地址。
在SBC向业务响应端发送了业务请求之后,业务响应端将会向SBC反馈业务响应。当SBC接收到业务响应之后,可以根据该业务响应向业务请求装置60发送响应消息,响应接收模块604可以接收SBC发送的响应消息,该响应消息中携带有业务响应端的第二公网通信地址。随后,第一建链模块606可以根据该第二公网通信地址与业务响应端进行建链交互,建立公网通信链路。
业务协商装置70的请求转发模块702根据业务请求装置60的请求向业务响应装置80发送携带业务请求装置60的第一公网通信地址的业务请求。
一实施例中,请求转发模块702向业务响应装置80发送的业务请求是根据从业务请求装置60接收到的请求消息生成的,在业务请求中携带有业务请求装置60的第一公网通信地址,所以在本实施例的一些示例中,业务请求装置60发送给业务协商装置70的请求消息中,就可以携带有该第一公网通信地址,请求转发模块702可以直接将该请求消息作为业务请求发送给业务响应装置80。例如,在本实施例的一些示例当中,业务请求装置60为AS,业务响应装置80为终端,AS在向终端请求开始某种业务的情况下,会在发送给业务协商装置70的请求消息中携带自己的公网IP地址,当请求转发模块702接收到AS的请求消息后,可以不对该请求消息中的公网IP地址进行修改,直接将该请求消息作为业务请求发送给终端。
在本实施例的另一些示例当中,业务请求装置60发送给业务协商装置70的请求消息中携带的是业务请求装置60的私网通信地址,请求转发模块702需要根据业务请求装置60的第一公网通信地址以及请求消息生成业务请求,例如 将请求消息中的私网通信地址修改为第一公网通信地址从而生成业务请求,然后将该业务请求发送给业务响应装置80。例如,在本实施例的一些示例当中,AS作为业务请求装置60,终端作为业务响应装置80,AS向业务协商装置70发送的请求消息中携带的是AS的私网IP地址,请求转发模块702接收到请求消息后,需要将请求消息中的AS的私网IP地址修改为AS的公网IP地址,然后将修改处理后得到的请求消息作为业务请求发送给终端。又例如,终端作为业务请求装置60,AS作为业务响应装置80时,终端通过NAT设备发送给业务协商装置70的请求消息中,也携带的是终端的私网IP地址,当请求转发模块702接收到来自终端的请求消息后,将该请求消息中的私网通信地址修改为终端侧的公网IP地址,从而得到业务请求。
业务响应装置80将与业务请求对应的业务响应发送给业务协商装置70。
业务响应装置80的请求接收模块802接收到业务请求之后,可以根据业务请求对业务请求装置60的请求进行响应,所以响应发送模块804会根据业务请求向业务请求装置60发送业务响应。响应发送模块804将该业务响应发送给业务协商装置70,让业务协商装置70根据业务响应向业务请求装置60发送携带业务响应装置80的第二公网通信地址的响应消息。
业务协商装置70的响应转发模块704根据业务响应装置80的响应向业务请求装置60发送携带业务响应装置80的第二公网通信地址的响应消息。
和请求转发模块702根据业务请求装置60的请求向业务响应装置80发送业务请求类似,在本实施例中,响应转发模块704向业务请求装置60发送响应消息是根据从业务响应装置80接收到的业务响应生成的,在响应消息中携带有业务响应装置80的第二公网通信地址,所以在本实施例的一些示例中,业务响应装置80发送给业务协商装置70的业务响应中,可以携带有该第二公网通信地址,响应转发模块704可以直接将该业务响应作为响应消息发送给业务请求装置60。例如,在本实施例的一些示例当中,业务响应装置80为AS,业务请求装置60为终端,AS在根据终端的请求发送业务响应时,可以在业务响应中携带自己的公网通信地址。对于业务协商装置70来说,接收到携带AS公网通信地址的业务响应之后,响应转发模块704可以不对业务响应中的公网IP地址进行修改,直接将该业务响应作为请求消息对应的响应消息发送给终端。
在本实施例的另一些示例当中,业务响应装置80发送给业务协商装置70的业务响应中携带的是业务响应装置80的私网通信地址,响应转发模块704需要根据业务响应装置80的第二公网通信地址以及业务响应生成响应消息,例如通过将业务响应中的私网通信地址修改为第二公网通信地址从而生成响应消息,然后将该响应消息发送给业务请求装置60,作为业务请求装置60所发送的 请求消息的应答。例如,在本实施例的一些示例当中,AS作为业务响应装置80,终端作为业务请求装置60,AS向业务协商装置70发送的业务响应中携带的是AS的私网IP地址。一实施例中,响应转发模块704接收到业务响应后,需要将业务响应中的AS的私网IP地址修改为AS的公网IP地址,然后将修改处理后的业务响应作为响应消息发送给终端。又例如,终端作为业务响应装置80,AS作为业务请求装置60时,终端通过NAT设备向业务协商装置70发送业务响应,该业务响应中,也携带的是终端的私网IP地址,当响应转发模块704接收到来自终端的业务响应后,将该业务响应中的私网通信地址修改为终端侧的公网IP地址,从而得到可以发送给AS侧的响应消息。
在本实施例的一些示例当中,响应转发模块704发送给终端的响应消息中还包括AS的端口号。
在会话协商阶段,通过业务协商装置70向业务响应装置80发送的业务请求,可以使得业务响应装置80获取到业务请求装置60的第一公网通信地址;通过业务协商装置70向业务请求装置60发送的响应消息,可以使得业务请求装置60获取到业务响应装置80的第二公网通信地址。在此基础上,业务请求装置60和业务响应装置80可以根据该第一公网通信地址与第二公网通信地址在业务请求装置60和业务响应装置80之间建立公网通信链路。该公网通信链路为基于公网通信地址建立的通信链路,通过该通信链路可以在业务请求装置60和业务响应装置80之间进行业务数据的传输,实现业务,而不必依赖于业务协商装置70的中转。
下面对业务响应装置80与业务请求装置60之间建立公网通信链路的过程进行简单介绍:
一实施例中,在建立公网通信链路的过程中,建链请求可以由业务请求装置60的第一建链模块606发起,也可以由业务响应装置80的第二建链模块806发起。例如,在本实施例的一种示例中,建链请求由第一建链模块606发起,业务请求装置60实际就是建链请求端,而业务响应装置80就是建链响应端。第一建链模块606根据会话协商获取到的第二公网通信地址向业务响应装置80发送建链请求,第二建链模块806在接收到该建链请求之后,可以根据会话协商阶段获取到的第一公网通信地址向业务请求装置60发送建链响应,从而与业务请求装置60之间建立起公网通信链路。在本实施例的另一种示例中,建链请求由业务响应装置80的第二建链模块806向业务请求装置60发起,业务响应装置80作为建链请求端,而业务请求装置60作为建链响应端。第二建链模块806根据会话协商时获取到的第一公网通信地址向业务请求装置60发送建链请求。在第一建链模块606接收到建链请求后,如果同意建立基于公网的通信链 路,就可以向业务响应装置80发送表征肯定的建链响应;如果不同意建立基于公网的通信链路,业务请求装置60可以拒绝该建链请求。
在本实施例的一些示例中,建链响应端在接收到建链请求端发送的建链请求后,可以对建链请求端进行验证,只有验证建链请求端是之前与自己进行会话协商的设备后,才会允许建链请求端与自己建立公网通信链路。一实施例中,建链响应端对建链请求端的身份合法性进行验证,可以通过验证建链请求端的公网通信地址实现:建链请求端在向建链响应端发起建链请求的时候,可以在建链请求中携带自己的公网通信地址。建链响应端在接收到该建链请求之后,确定该建链请求中所携带的公网通信地址是否是自己在会话协商阶段获取到的公网通信地址。
一实施例中,假定建链请求端为业务请求装置60,则在建链请求端发送的建链请求中携带有第一公网通信地址。建链响应端接收到建链请求之后,可以将建链请求中携带的公网通信地址与自己在会话协商过程中获取到的业务请求装置60的第一公网通信地址进行比对,判断建链请求中携带的公网通信地址与业务请求装置60的第一公网通信地址是否一致。若建链请求中携带的公网通信地址与业务请求装置60的第一公网通信地址一致,则说明该建链请求就是由预先同自己进行会话协商的业务请求装置60发起的,因此建链请求端的身份合法,建链响应端可以发起表征肯定的建链响应,从而同建链请求端建立起公网通信链路;若建链请求中携带的公网通信地址与业务请求装置60的第一公网通信地址不一致,则说明发起建链请求的建链请求端并不是业务请求装置60,因此,作为建链响应端的业务响应装置80可以拒绝建链请求端的建链请求。
假定建链请求端为业务响应装置80,则建链响应端为业务请求装置60。业务响应装置80作为建链请求端,在向建链响应端发送建链请求时,可以在该建链请求中携带自己的公网通信地址,即第二公网通信地址。建链响应端接收到一个建链请求之后,将该建链请求中的公网通信地址与自己在会话协商阶段从业务响应装置80获取到的第二公网通信地址进行比对,若建链请求中携带的公网通信地址与业务响应装置80的第二公网通信地址一致,则说明建链请求端就是与自己进行会话协商的业务响应装置80,因此,作为建链响应端的业务请求装置60可以根据预先获取到的第二公网通信地址向建链请求端发送表征同意建链的建链响应,与建链请求端建立起公网通信链路,然后在该通信链路上进行业务数据的传输。如果建链响应端通过比对发现接收到的建链请求中所携带的公网通信地址不是第二公网通信地址,则说明该建链请求端身份不合法,因此建链响应端可以拒绝该建链请求端的建链请求。
在本实施例的一些示例中,业务请求装置60为终端,在本实施例的另一些 示例当中,业务请求装置60为应用服务器。考虑到在通信系统当中,终端通常是通过NAT设备对外通信的,对于外界设备而言,主动发起对终端的通信可能不是特别容易,因此,在本实施例中,建链请求可以由终端向AS发起,也即终端作为建链请求端,AS作为建链响应端。所以,当终端为业务请求装置60时,建链请求由业务请求装置60向业务响应装置80发送,当终端为业务响应装置80时,建链请求由业务响应装置80向业务请求装置60发送。
本实施例提供的业务请求装置、业务协商装置以及业务响应装置,在会话协商阶段,通过向业务响应装置发送包含业务请求装置的第一公网通信地址的业务请求,并根据业务响应装置的响应,向业务请求装置发送携带业务响应装置的第二公网通信地址的响应消息,使得业务请求装置和业务响应装置可以获取到彼此的公网通信地址,然后基于对方的公网通信地址在业务请求装置和业务响应装置之间建立起公网通信链路进行业务数据传输,实现业务,避免了业务数据的传输需要经过业务协商装置进行中转,造成业务数据传输速率不高,时延大的问题,提升了终端侧的用户业务体验。
实施例五:
本实施例在实施例四的基础上对业务实现方案进行介绍,假定本实施例中业务请求装置为终端,业务响应装置为AS,同时假定业务协商装置为SBC,例如,假定终端需要向AS上传视频数据。同时,假定AS向SBC发送的消息中携带的仍是AS的私网通信地址:
终端通过NAT设备向SBC发送请求消息。
终端由于需要向应用服务器上传视频数据,因此,终端可以向AS发起视频数据上传请求。在该请求消息中可以携带有终端所请求的业务服务类型。
在本实施例中,终端通过NAT设备实现对外通信,终端向NAT设备发送的请求消息中携带有终端的私网通信地址,同时该请求消息的源地址为终端的私网通信地址,目的地址为SBC的公网通信地址。在NAT设备接收到该请求消息之后,会对请求消息中源地址进行转换,将该源地址修改为NAT设备的公网通信地址。一实施例中,NAT设备的公网通信地址可以为终端的公网通信地址,在本实施例中,终端作为业务请求端,因此NAT设备的公网通信地址实际就是第一公网通信地址。
NAT设备完成私网通信地址到公网通信地址的转换之后,可以将转换后的请求消息发送到目的地址,也即发送给SBC设备。
SBC设备接收到NAT设备转发过来的请求消息之后,可以根据请求消息生 成业务请求。SBC生成的业务请求中携带有终端侧的公网通信地址,即第一公网通信地址。一实施例中,SBC可以将请求消息中终端的私网通信地址修改为终端侧的第一公网通信地址,从而得到业务请求。
在本实施例的一些示例中,并不是针对终端所请求的所有业务,都要在终端与AS之间建立公网通信链路,例如,在一些情况下,针对终端所请求的某些业务,AS并不希望对外暴露自己的公网通信地址。所以本实施例提供一种可供参考的SBC生成业务请求的流程。
SBC判断业务请求端所请求的业务是否支持采用公网通信链路进行业务数据传输。在本实施例中,SBC可以根据请求消息的消息体来判断业务请求所请求的业务是否支持采用公网通信链路进行传输,例如,本实施例中,终端在请求进行视频数据上传时,可以在请求消息的消息体中携带所请求的服务类型,让SBC根据消息体中的服务类型来确定所请求的业务是否支持采用公网通信链路进行业务数据传输。
在本实施例的另一些示例当中,SBC可以根据请求消息的消息头来判断业务请求端所请求的业务是否支持采用公网通信链路进行业务数据传输。一实施例中,业务请求端向SBC发送的请求消息的消息头中应当存在对应的指示信息。例如,在请求消息的消息头中包括服务指示,当服务指示为“0”时,表征业务请求端所请求的业务支持基于公网通信地址进行传输,当服务指示为“1”时,表征业务请求端所请求的业务不支持基于公网通信地址进行业务数据传输。一实施例中,可以由业务请求端在发送请求消息之前先根据自己所请求的业务服务类型确定其该业务是否支持采用公网通信链路进行业务数据传输,也即该业务是否支持媒体直连。然后,业务请求端根据判断阶段设置请求消息的消息头。
在本实施例的其他一些示例当中,SBC可以结合请求消息的消息头和消息体来判断业务请求端所请求的业务是否支持采用公网通信链路进行业务数据传输。例如,SBC根据请求消息的消息头和消息体两种方式进行判断的判断结果均表征业务请求端所请求的业务支持媒体直连时,才会判定业务请求端所请求的业务支持采用公网通信链路进行业务数据传输。
如果SBC经过判断确定业务请求端所请求的业务支持采用公网通信链路进行业务数据传输,则SBC需要生成携带业务请求端的第一公网通信地址的业务请求。
如果SBC经过判断确定业务请求端所请求的业务不支持采用公网通信链路进行业务数据传输,则SBC可以确定该业务对应的业务数据还是会按照相关技术中的方式进行传输,即经过自己进行中转。由于SBC同AS之间基于私网通信地址进行通信,因此,SBC需要在生成的业务请求中携带自己的私网通信地 址。
SBC生成业务请求之后,可以将该业务请求发送给AS。一实施例中,SBC与AS之间在通信的时候可以通过CSCF网元进行中转,例如,SBC将业务请求先发送给CSCF网元,然后由CSCF网元将业务请求转发给AS。当然,SBC与AS之间的通信方式不限于本申请的示例中示出的方式。
AS在接收到来自SBC的业务请求之后,可以根据业务请求发送业务响应,让SBC根据自己的响应向终端发送对应于请求消息的响应消息。
在本实施例中,AS在会话协商阶段并不关心终端所请求的业务是否支持采用公网通信链路进行业务数据传输,无论终端请求的是何种业务,AS在向SBC发送业务响应的时候,携带的均是自己的私网通信地址。
在AS生成业务响应之后,将携带自己的私网通信地址的业务响应发送给SBC。一实施例中,业务响应的传输路径与业务请求的传输路径对应,所以在本实施例的一些示例当中,业务响应可以经CSCF网元发送给SBC。
SBC接收到来自AS的业务响应之后,根据业务响应生成发送给终端的响应消息。在响应消息中携带有AS侧的公网通信地址,即第二公网通信地址。
一实施例中,如果不是所有业务的业务数据都支持采用公网通信链路进行传输,则SBC在生成响应消息的时候,需要先确定业务响应所对应的业务是否支持采用公网通信链路进行传输。一实施例中,如果SBC能够直接确定自己从AS处接收到的业务响应是针对之前所发送的业务请求的,则SBC可以根据业务请求所请求的业务是否支持采用公网通信链路进行传输来确定如何对业务响应中的私网通信地址进行修改。
在本实施例的另一些示例当中,SBC也可以根据响应消息的消息头和/或消息体来进行判断。判断方式可以参见SBC生成业务请求的过程,这里不再赘述。
如果经过SBC的判断,确定业务响应所对应的业务支持媒体直连,则SBC可以对业务响应中AS侧的私网通信地址进行修改,将AS侧的私网通信地址修改成AS侧的公网通信地址,从而得到响应消息;如果经过SBC的判断,确定业务响应所对应的业务不支持媒体直连,SBC可以将业务响应中的私网通信地址修改成自己的公网通信地址,生成响应消息。
SBC生成响应消息之后,可以将响应消息传输给NAT设备,让NAT设备根据终端的私网通信地址将该响应消息传输给终端。
终端接收到响应消息之后,如果确定AS同意响应自己的请求消息,则可以根据响应消息中携带的公网通信地址向AS发送建链请求。一实施例中,在终端向AS发送建链请求时,建链请求也同样需要通过NAT设备进行私网通信地址 与公网通信地址的转换后再发送给AS。在本实施例中,在终端发送的建链请求中携带有终端侧的公网通信地址。
AS接收到终端侧发送的建链请求之后,可以根据建链请求对建链请求端的身份进行验证,确定发送建链请求的是否是之前与自己进行会话协商的业务请求端。一实施例中,AS可以判断建链请求中所携带的公网通信地址是否是自己在会话协商阶段所获得的终端侧的公网通信地址,也即第一公网通信地址。
在确定建链请求中的公网通信地址是第一公网通信地址的情况下,AS确定建链请求端的身份合法。
在本实施例的另一些示例中,AS不仅会根据建链请求中的公网通信地址对建链请求端的身份进行认证,而且还会根据建链请求中建链请求端的私网通信地址进行认证。一实施例中,SBC根据来自终端的请求消息向AS发送业务请求时,还会在业务请求中携带终端的私网通信地址。这样当AS接收到建链请求之后,除了对建链请求中的公网通信地址进行认证以外,还可以结合建链请求中的私网通信地址进行认证,判断该建链请求中的私网通信地址是否是业务请求中携带的私网通信地址。如果AS判断建链请求中的公网通信地址与私网通信地址均与业务请求中的公网通信地址与私网通信地址一致,则可以确认建链请求端就是业务请求端。
在AS确定建链请求是由之前的业务请求端发起时,AS可以向终端发送表征肯定的建链响应。
在终端接收到建链响应之后,可以基于第二公网通信地址同AS建立起公网通信链路,随后在该通信链路上向AS进行视频数据传输,实现对应的数据传输业务。
本实施例提供的业务实现方案,终端和AS可以通过在会话协商阶段获取的对端的公网通信地址,建立用于业务数据传输的通信链路,避免业务数据传输过程中需要SBC中转的问题;而且,SBC在向AS发送业务请求或在向终端发送响应消息之前,可以判断业务请求端所请求的业务是否支持媒体直连来确定是否要携带业务请求端的公网通信地址或业务响应端的公网通信地址,使得一些业务可以采用公网通信链路传输,另一些业务可以继续采用相关技术中的方案实现,在改善用户体验的问题的同时可以兼容相关技术的方案。
,在本实施例提供的业务实现方案中,AS在接收到建链请求之后,可以对建链请求端的身份进行验证,保证与自己基于公网通信链路的建链请求端是之前与自己进行会话协商的终端,提升了应用服务器的安全性。
实施例五中虽然仅介绍了终端作为业务请求端,AS作为业务响应端时的业 务实现方案,但是,实施例五中方案的实现原理也适用于终端作为业务响应端,接收AS的请求的情景。
实施例六:
本实施例同样在实施例四的基础上对业务实现方案进行介绍,这里假定图6中的业务请求装置60为AS,图7中的业务协商装置70为SBC,而图8中业务响应装置80为终端。例如,假定AS请求终端接收自己的消息推送。同时,还假定AS在向SBC发送消息时,可以根据实际情况选择携带自己的公网通信地址,或者携带自己的私网通信地址。
在本实施例中,AS在需要向终端发起请求时,会先确定自己当前所请求的业务是否支持采用公网通信链路进行业务数据传输,也即自己当前所请求的业务是否支持媒体直连。若判断结果为是,则AS将在生成的请求信息中携带自己的公网通信地址,因为AS在本实施例中作为业务请求端,所以AS的公网通信地址即为第一公网通信地址。
一实施例中,如果经过判断,AS确定自己当前所请求的业务不支持采用公网通信链路进行业务传输,则说明该业务的业务数据还是需要通过SBC进行中转,因此,AS在生成请求消息时,在该请求消息中添加的是自己的私网通信地址。
AS生成请求消息之后,将该请求消息发送给SBC。一实施例中,AS与SBC之间可以通过CSCF网元进行通信,即AS先将请求消息发送给CSCF网元,然后由CSCF网元将该请求消息发送给SBC。在一些其他的示例当中,AS与SBC之间的通信方式也可以与上述方式不同。
SBC接收到AS发送的请求消息之后,需要根据请求消息生成业务请求。在本实施例中,SBC也需要确定AS所请求的业务是否支持采用公网通信链路进行业务数据传输,如果判断结果为是,则SBC可以不对请求消息中的通信地址进行修改,即可得到携带AS的公网通信地址,即第一公网通信地址的业务请求;如果SBC的判断结果为否,则SBC需要对AS发送的携带AS私网通信地址的业务请求进行修改,将业务请求中AS的私网通信地址修改为SBC的公网通信地址后才能得到业务请求。
一实施例中,SBC在确定AS所请求的业务是否支持媒体直连时,可以根据请求消息的消息体进行判断。在消息体中包含有AS所请求业务服务的类型,所以SBC根据所请求业务服务的类型确定业务是否支持媒体直连。当然,由于AS在发送请求消息的时候也需要先判断自己所请求的业务是否支持媒体直连服 务,因此,在本实施例的一种示例当中,AS在得到判断结果之后,可以将判断结果携带在请求消息中发送给SBC,这样,当SBC接收到AS发送的请求消息之后,可以直接从接收到的请求消息中确定出AS所请求的业务是否支持媒体直连,避免了SBC根据请求消息中的业务服务类型进行判断的过程。例如,在AS向SBC发送的请求消息的消息头中包括有服务指示,如果该服务指示的值为“0”,则代表该请求消息所请求的业务服务支持媒体直连服务,如果该服务指示的值不为“0”,说明该请求消息所请求的业务服务不支持媒体直连服务。
假定SBC确定请求消息所请求的业务服务支持媒体直连服务,则SBC可以将携带有AS的公网通信地址的请求消息作为业务请求发送给终端。如果SBC确定请求消息所请求的业务服务不支持媒体直连服务,则SBC可以将携带自己的公网通信地址的业务请求发送给终端。
终端通过NAT设备接收到业务请求之后,可以根据业务请求向SBC发送业务响应。业务响应中携带有终端的私网通信地址。一实施例中,业务响应需要通过NAT设备发送给SBC。在NAT设备接收到业务响应之后,可以将业务响应的源地址从终端的私网通信地址修改为自己的公网通信地址,从而实现私网通信地址到公网通信地址的转换。由于终端在本实施例中作为业务响应端,因此,NAT设备的公网通信地址实际可以被视为终端的公网通信地址,即第二公网通信地址。
SBC在接收到来自终端的业务响应之后,可以根据业务响应生成响应消息,在该响应消息中也携带有终端侧的第二公网通信地址。在本示例中,是因为AS所请求的业务服务支持媒体直连,因此,SBC将会在响应消息中携带终端的第二公网通信地址。在本实施例的其他一些示例中,如果AS所请求的业务不支持媒体直连,则SBC则需要在响应消息中携带自己的私网通信地址。
另外,在本实施例中,SBC在接收来自终端侧的业务响应之后,如果可以确定该业务响应是属于哪一个业务请求的,则SBC可以直接根据业务请求确定该业务响应对应的业务是否支持媒体直连;但如果SBC不能确定出接收到业务响应是对应哪一个业务请求,则SBC在根据业务响应生成响应消息时,需要根据业务响应的消息头和/或消息体确定该业务响应对应的业务是否支持媒体直连,从而确定是在对应的响应消息中携带终端侧的第二公网通信地址还是SBC的私网通信地址。
SBC生成响应消息之后,可以将响应消息通过CSCF网元发送给AS,从而让AS根据响应消息确定终端是否接受自己的请求。在AS确定终端针对其业务请求进行了表征肯定的应答后,可以在接收到响应消息之后与终端建立公网通信链路。
在终端的响应到达AS侧之后,终端可以根据业务请求中所携带的第一公网通信地址,即AS侧的公网通信地址向AS发送建链请求。一实施例中,在终端向AS发送建链请求时,建链请求也同样需要通过NAT设备进行私网通信地址与公网通信地址的转换后再发送给AS。
AS接收到终端侧发送的建链请求之后,可以根据建链请求对建链请求端的身份进行验证,确定发送建链请求的是否是之前与自己进行会话协商的业务响应端。一实施例中,AS可以判断建链请求中所携带的公网通信地址是否是自己在会话协商阶段所获得的终端侧的公网通信地址,也即第二公网通信地址。
在确定建链请求中的公网通信地址是第二公网通信地址的情况下,AS确定建链请求端的身份合法。
在本实施例的另一些示例中,AS不仅会根据建链请求中的公网通信地址对建链请求端的身份进行认证,而且还会根据建链请求中建链请求端的私网通信地址进行认证。一实施例中,SBC根据来自终端的业务响应向AS发送响应消息时,还会在响应消息中携带终端的私网通信地址。这样当AS接收到建链请求之后,除了对建链请求中的公网通信地址进行认证以外,还可以结合建链请求中的私网通信地址进行认证,判断该建链请求中的私网通信地址是否是响应消息中携带的私网通信地址。如果AS判断建链请求中的公网通信地址与私网通信地址均与响应消息中的一致,则可以确认建链请求端就是业务响应端。
在AS确定建链请求是由之前的业务响应端发起时,AS可以向终端发送表征肯定的建链响应。
在终端接收到建链响应之后,可以基于第一公网通信地址同AS建立起公网通信链路,随后在该通信链路上接收AS的消息推送,实现对应的数据传输业务。
本申请实施例提供的业务实现方案,终端和AS可在会话协商阶段获取对端的公网通信地址,建立用于业务数据传输的通信链路,从而避免业务数据传输过程中需要SBC中转的问题。在本实施例提供的业务实现方案中,AS在接收到建链请求之后,可以对建链请求端的身份进行验证,保证与自己建立公网通信链路的是之前与自己进行会话协商的终端,提升了应用服务器的安全性。
实施例六中虽然仅介绍了AS作为业务请求端,终端作为业务响应端时的业务实现方案,但,实施例六中方案的实现原理也适用于AS作为业务响应端,接收终端的请求的情景。
实施例七:
本实施例先提供一种存储介质,该存储介质中可以存储有一个或多个可供 一个或多个处理器读取、编译并执行的计算机程序,在本实施例中,该存储介质可以存储业务请求程序、业务协商程序和业务响应程序中的至少一个。一实施例中,业务请求程序可供一个或多个处理器执行实现前述实施例一至实施例三中介绍的任意一种业务请求方法。业务协商程序可供一个或多个处理器执行实现前述实施例一至实施例三中介绍的任意一种业务协商方法。业务响应程序可供一个或多个处理器执行实现前述实施例一至实施例三中介绍的任意一种业务响应方法。
本实施例中还提供一种网络设备,请参见图9:网络设备90包括处理器91、存储器92以及设置为连接处理器91与存储器92的通信总线93。一实施例中,存储器92可以为前述存储有业务请求程序、业务协商程序和业务响应程序中至少一个的存储介质。
如果存储器92中存储有业务请求程序,则处理器91可以读取业务请求程序,进行编译并执行实现实施例一至实施例三中介绍的任意一种业务请求方法。该网络设备90可以是终端或者是AS,网络设备90实现实施例一至实施例三中介绍的任意一种业务请求方法,所述业务请求方法的细节可以参见前述实施例的介绍,本申请不再赘述。
如果存储器92中存储有业务协商程序,则处理器91可以读取业务协商程序,进行编译并执行实现实施例一至实施例三中介绍的任意一种业务协商方法的步骤。该网络设备90可以是SBC,网络设备90实现实施例一至实施例三中介绍的任意一种业务协商方法,所述业务协商方法的细节可以参见前述实施例的介绍,本申请不再赘述。
如果存储器92中存储有业务响应程序,则处理器91可以读取业务响应程序,进行编译并执行实现实施例一至三中介绍的任意一种业务响应方法的步骤。该网络设备90可以是终端或者是AS,网络设备90实现实施例一至三中介绍的任意一种业务响应方法,所述业务响应方法的细节可以参见前述实施例的介绍,本申请不再赘述。
本实施例还提供一种网络系统,请参见图10,该网络系统10包括终端101、SBC 102以及AS 103。一实施例中,SBC 102是图9中处理器可以执行业务协商程序,实现业务协商方法的网络设备。在一种示例中,终端101是图9中处理器可以执行业务请求程序,实现业务请求方法的网络设备,AS 103是图9中处理器可以执行业务响应程序,实现业务响应方法的网络设备。
在本实施例的另一种示例中,终端101是图9中处理器可以执行业务响应程序,实现业务响应方法的网络设备,AS 103是图9中处理器可以执行业务请求程序,实现业务请求方法的网络设备。
在本实施例的另一种示例中,终端101的处理器既可以执行业务请求程序,实现业务请求方法,也可以执行业务响应程序,实现业务响应方法。同时,AS 103的处理器也是既可以执行业务请求程序,实现业务请求方法,又可以执行业务响应程序,实现业务响应方法。
本实施例提供的网络系统,在业务会话协商阶段,SBC设备可以根据业务请求端的请求向业务响应端发送携带业务请求端的第一公网通信地址的业务请求,并且根据业务响应端的响应向业务请求端发送携带业务响应端的第二公网通信地址的响应消息,从而让业务请求端和业务响应端可以基于第一公网通信地址和第二公网通信地址建立公网通信链路,使得业务请求端和业务响应端在业务数据传输阶段不必依赖于SBC进行业务数据中转,从而减小业务数据传输的时延,提升业务数据传输的速率,提升终端侧用户的业务体验。
实施例八:
本实施例将在实施例七的基础上对网络系统以及网络系统中实现业务的过程进行介绍,请参见图11示出的网络系统11的结构示意图:
网络系统11中包括终端111、NAT设备112、SBC 113以及AS 114。一实施例中,终端111与NAT设备112还是通过私网IP地址进行通信,而NAT设备112与SBC 113之间则基于公网IP地址进行通信,SBC113与AS 114之间基于私网IP地址通信。另外,在本实施例提供的网络系统当中,当终端111与AS之间需要进行业务时,在经过会话协商之后,NAT设备112与AS 114之间可以基于公网IP地址进行通信。
示例1:
图12示出的是在MSRP协议下,终端作为业务请求端向IM AS发起业务流程图:
S12010:终端向SBC发起文件传输请求(INVITE)。
在媒体协商的消息体会话描述协议(Session Description Protocol,SDP)中包含了终端的私网地址,以及本次请求的服务类型。
S12020:SBC判断文件传输服务支持媒体直连后,将终端的私网IP地址改为终端在NAT设备转换之后的公网IP地址,转发请求给CSCF。
S12030:IM AS从CSCF处接收INVITE请求,并提取出终端的公网地址信息。
S12040:IM AS判断文件传输服务支持媒体直连,在会话响应中携带IM AS 的公网地址,并转发会话响应给CSCF。
S12050:CSCF转发响应给SBC。
S12060:SBC判断本次业务会话支持媒体直连,不需要更改响应中的媒体面地址信息,转发会话响应给终端。
S12070:终端发送正确应答(Acknowledgement,ACK)请求给SBC确认会话建立。
S12080:SBC转发ACK请求给CSCF。
S12090:CSCF转发ACK请求给IM AS。
S12100:终端与IM AS建立连接。
终端向IM AS发起TCP连接建立请求,IM AS检查终端发起的地址是否与会话协商过程中的媒体面地址一致,确定一致后,允许建立TCP连接。
S12110:终端向IM AS发送MSRP消息。
终端发送的MSRP消息中包含了MSRP路径信息。
S12120:IM AS返回MSRP 200OK响应。
MSRP 200OK响应表示IM AS接收到MSRP数据信息。
示例2:
图13示出的是在MSRP协议下,终端作为业务响应端,IM AS作为业务请求端的业务流程图,假定MSRP协议为例终端接收文件传输业务的处理流程。
S13010:IM AS发起文件传输请求。
IM AS准备向终端发起文件传输请求,判断文件传输服务支持媒体直连,在请求的媒体协商消息体SDP中包含了IM AS媒体处理单元的公网地址,以及本次请求的服务类型。
S13020:CSCF转发业务请求给SBC。
S13030:SBC判断业务请求中的文件传输服务支持媒体直连,不修改业务请求中的媒体面地址,并将请求转发给终端。
S13040:终端在200OK响应中携带自身的私网地址。
S13050:SBC判断文件传输服务支持媒体直连,在会话响应中将终端的私网地址修改为终端的公网地址,转发会话响应给CSCF。
S13060:CSCF转发响应给IM AS。
S13070:IM AS判断本次业务会话支持媒体直连,记录响应中终端的媒体面IP地址。
S13080:IM AS发送ACK请求给CSCF确认会话建立。
S13090:CSCF转发ACK请求给SBC。
S13100:SBC转发ACK请求给终端。
S13110:终端与IM AS建立连接。
终端向IM AS发起TCP连接建立请求,IM AS检查终端发起的地址是否与会话协商过程中的媒体面地址一致,确定一致后,允许建立TCP连接。
S13120:IM AS向终端发送MSRP消息。
IM AS发送的MSRP消息中包含了MSRP路径信息。
S13130:终端返回MSRP 200OK响应。
MSRP 200OK响应表示终端接收到MSRP数据信息。
示例3:
图14给出了网络系统的安全维护,以MSRP协议为例描述了本申请中提供的网络系统如何防止恶意终端(例如终端2)发起媒体攻击:
S14010:IM AS发起文件传输请求。
IM AS准备向终端1发起文件传输请求,首先,IM AS判断文件传输服务是否支持媒体直连。在判断结果为是的情况下,IM AS在请求的媒体协商消息体SDP中携带IM AS自己的公网IP地址以及本次请求的服务类型。
S14020:CSCF转发业务请求给SBC。
S14030:SBC确定业务请求中的文件传输服务支持媒体直连,不修改业务请求中的媒体面地址,并将请求转发给终端1。
S14040:终端1在200OK响应中携带自身的私网地址。
S14050:SBC确定文件传输服务支持媒体直连,在会话响应中将终端1的私网地址修改为终端1的公网IP地址,转发会话响应给CSCF。
S14060:CSCF转发响应给IM AS。
S14070:IM AS判断本次业务会话支持媒体直连,记录响应中终端1的媒体面IP地址。
S14080:IM AS发送ACK请求给CSCF确认会话建立。
S14090:CSCF转发ACK请求给SBC。
S14100:SBC转发ACK请求给终端1。
S14110:终端2发起媒体攻击。
终端2向IM AS发起TCP连接建立请求,IM AS检查终端2发起的地址是否与会话协商过程中的媒体面地址一致,发现不一致,禁止建立与终端2建立TCP连接。
S14120:IM AS向终端2拒绝TCP连接建立,返回TCP连接复位(Reset the connection,RST),但不释放会话,等待终端1建立媒体连接。
上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件(可以用计算装置可执行的程序代码来实现)、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。本申请中的术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、带电可擦可编程只读存储器(Electrically Erasable Programmable read only memory,EEPROM)、闪存或其他存储器技术、光盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能盘(Digital Video Disc,DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以设置为存储期望的信息并且可以被计算机访问的任何其他的介质。此外,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。所以,本申请不限制于任何特定的硬件和软件结合。

Claims (24)

  1. 一种业务协商方法,包括:
    根据业务请求端的请求向业务响应端发送携带所述业务请求端的第一公网通信地址的业务请求;
    根据所述业务响应端的响应向所述业务请求端发送响应消息,所述响应消息中携带所述业务响应端的第二公网通信地址,所述第一公网通信地址和所述第二公网通信地址用于在所述业务响应端与所述业务请求端之间建立公网通信链路,所述公网通信链路为基于公网通信地址建立的通信链路。
  2. 如权利要求1所述的方法,其中,在所述业务请求端为应用服务器AS,所述业务响应端为终端的情况下,所述根据业务请求端的请求向业务响应端发送携带所述业务请求端第一公网通信地址的业务请求包括:
    接收所述AS发送的携带有所述AS的私网通信地址的请求消息;
    通过将所述请求消息中的所述私网通信地址修改为所述AS的公网通信地址的方式生成业务请求;
    将所述业务请求发送给所述终端;
    或,
    接收所述AS发送的请求消息,所述请求消息中携带所述AS的公网通信地址;
    根据所述请求消息生成携带所述AS的公网通信地址的业务请求;
    将所述业务请求发送给所述终端。
  3. 如权利要求1所述的业务协商方法,其特征在于,若所述业务请求端为终端,所述业务响应端为AS,所述根据业务请求端的请求向业务响应端发送业务请求包括:
    接收所述终端发送的请求消息;
    通过在所述请求消息中添加所述终端的公网通信地址的方式生成业务请求;
    将所述业务请求发送给所述AS。
  4. 如权利要求1-3任一项所述的方法,在所述根据业务请求端的请求向业务响应端发送携带所述业务请求端的第一公网通信地址的业务请求之前,还包括:
    确定所述业务请求端所请求的业务支持采用所述公网通信链路进行业务数据传输。
  5. 如权利要求4所述的方法,其中,所述确定所述业务请求端所请求的业务支持采用所述公网通信链路进行业务数据传输包括:
    根据所述业务请求端所发送的请求消息的消息头和所述业务请求端所发送的请求消息的消息体中至少之一确定所述业务请求端所请求的业务支持采用所述公网通信链路进行业务数据传输。
  6. 如权利要求5所述的方法,其中,所述根据所述业务请求端所发送的请求消息的消息体判断所述业务请求端所请求的业务支持采用所述公网通信链路进行业务数据传输包括:
    根据所述业务请求端所发送的请求消息的消息体中的服务类型确定所述业务请求端所请求的业务支持采用所述公网通信链路进行业务数据传输。
  7. 如权利要求4所述的方法,,在所述业务请求端为终端,所述业务响应端为AS的情况下,还包括:
    在确定所述业务请求端所请求的业务不支持采用所述公网通信链路进行业务数据传输的情况下,向所述AS发送携带本端的私网通信地址的业务请求;
    接收所述AS发送的携带所述AS的私网通信地址的业务响应;
    将所述业务响应中的私网通信地址修改为本端的公网通信地址后作为响应消息发送给所述终端。
  8. 如权利要求4所述的方法,在所述业务请求端为AS,所述业务响应端为终端的情况下,还包括:
    在确定所述业务请求端所请求的业务不支持采用所述公网通信链路进行业务数据传输的情况下,通过将从所述AS处接收的请求消息中的所述AS的私网通信地址修改为本端的公网通信地址的方式生成业务请求;
    将所述业务请求发送给所述终端;
    接收所述终端根据所述业务请求发送的业务响应;
    通过在所述业务响应中添加本端的私网通信地址的方式生成响应消息;
    将所述响应消息发送给所述AS。
  9. 一种业务请求方法,包括:
    将用于业务请求的请求消息发送给会话边界控制器SBC,所述请求消息用于指示所述SBC向业务响应端发送携带本端的第一公网通信地址的业务请求;
    接收所述SBC在接收到所述业务响应端的业务响应后发送的响应消息,所述响应消息中携带有所述业务响应端的第二公网通信地址;
    根据所述第二公网通信地址同所述业务响应端建立公网通信链路并采用所述公网通信链路进行业务数据传输,所述公网通信链路为基于公网通信地址建立的通信链路。
  10. 如权利要求9所述的方法,其中,在所述业务响应端为终端的情况下,所述根据所述第二公网通信地址同所述业务响应端建立公网通信链路包括:
    接收建链请求;
    确定发起所述建链请求的建链请求端为所述业务响应端;
    根据所述第二公网通信地址向所述业务响应端发送建链响应,与所述业务响应端建立公网通信链路。
  11. 如权利要求10所述的方法,其中,所述确定发起所述建链请求的建链请求端为所述业务响应端包括:确定所述建链请求中携带的通信地址为所述第二公网通信地址。
  12. 如权利要求9-11任一项所述的方法,其中,在所述业务响应端为终端的情况下,所述将用于业务请求的请求消息发送给SBC包括:
    向所述SBC发送携带本端的私网通信地址的请求消息;
    或,
    向所述SBC发送携带本端的所述第一公网通信地址的请求消息。
  13. 如权利要求12所述的方法,在所述向所述SBC发送携带本端的所述第一公网通信地址的请求消息之前,还包括:
    确定本次业务请求所请求的业务支持采用所述公网通信链路进行业务数据传输。
  14. 如权利要求9所述的方法,其中,在所述业务响应端为应用服务器AS的情况下,所述根据所述第二公网通信地址同所述业务响应端建立公网通信链路包括:
    根据所述第二公网通信地址向所述业务响应端发送建链请求,所述建链请求中携带有本端的所述第一公网通信地址;
    接收所述业务响应端在确定本端的身份合法后发送的建链响应,并与所述业务响应端建立公网通信链路。
  15. 一种业务响应方法,包括:
    接收会话边界控制器SBC发送的业务请求,所述业务请求中包含业务请求端的第一公网通信地址;
    将与所述业务请求对应的业务响应发送给所述SBC,所述业务响应用于指示所述SBC向所述业务请求端发送携带本端的第二公网通信地址的响应消息;
    根据所述第一公网通信地址同所述业务请求端建立公网通信链路并采用所述公网通信链路进行业务数据传输,所述公网通信链路为基于公网通信地址建立的通信链路。
  16. 如权利要求15所述的方法,其中,在所述业务请求端为终端的情况下,所述根据所述第一公网通信地址同所述业务请求端建立公网通信链路包括:
    接收建链请求;
    确定发起所述建链请求的建链请求端为所述业务请求端;
    根据所述第一公网通信地址向所述业务请求端发送建链响应,与所述业务请求端建立公网通信链路。
  17. 如权利要求16所述的方法,其中,所述确定发起所述建链请求的建链请求端为所述业务请求端包括:确定所述建链请求中携带的通信地址为所述第一公网通信地址。
  18. 如权利要求15-17任一项所述的方法,其中,在所述业务请求端为终端的情况下,所述将与所述业务请求对应的业务响应发送给所述SBC包括:
    向所述SBC发送携带本端的私网通信地址的业务响应;
    或,
    向所述SBC发送携带本端的所述第二公网通信地址的业务响应。
  19. 如权利要求15所述的方法,其中,在所述业务请求端为应用服务器AS的情况下,所述根据所述第一公网通信地址同所述业务请求端建立公网通信链路包括:
    根据所述第一公网通信地址向所述业务请求端发送建链请求,所述建链请求中携带有本端的所述第二公网通信地址;
    接收所述业务请求端在确定本端的身份合法后发送的建链响应,与所述业务请求端建立公网通信链路。
  20. 一种业务协商装置,包括:
    请求转发模块,设置为根据业务请求端的请求向业务响应端发送携带所述业务请求端的第一公网通信地址的业务请求;
    响应转发模块,设置为根据所述业务响应端的响应向所述业务请求端发送响应消息,所述响应消息中携带所述业务响应端的第二公网通信地址,所述第 一公网通信地址和所述第二公网通信地址用于在所述业务响应端与所述业务请求端之间建立公网通信链路,所述公网通信链路为基于公网通信地址建立的通信链路。
  21. 一种业务请求装置,包括:
    请求发送模块,设置为将用于业务请求的请求消息发送给会话边界控制器SBC,所述请求消息用于指示所述SBC向业务响应端发送携带本端的第一公网通信地址的业务请求;
    响应接收模块,设置为接收所述业务响应端在接收到所述业务请求后通过所述SBC发送的响应消息,所述响应消息中携带有所述业务响应端的第二公网通信地址;
    建链模块,设置为根据所述第二公网通信地址同所述业务响应端建立公网通信链路并采用所述公网通信链路进行业务数据传输,所述公网通信链路为基于公网通信地址建立的通信链路。
  22. 一种业务响应装置,包括:
    请求接收模块,设置为接收会话边界控制器SBC发送的业务请求,所述业务请求中包含业务请求端的第一公网通信地址;
    响应发送模块,设置为将与所述业务请求对应的业务响应发送给所述SBC,所述业务响应用于指示所述SBC向所述业务请求端发送携带本端的第二公网通信地址的响应消息;
    建链模块,设置为根据所述第一公网通信地址同所述业务请求端建立公网通信链路并采用所述公网通信链路进行业务数据传输,所述公网通信链路为基于公网通信地址建立的通信链路。
  23. 一种网络设备,包括:处理器、存储器及通信总线;
    所述通信总线,设置为实现所述处理器和所述存储器之间的连接通信;
    所述处理器,设置为执行所述存储器中存储的业务协商程序以实现如权利要求1至8中任一项所述的业务协商方法;或所述处理器,设置为执行所述存储器中存储的业务请求程序以实现如权利要求9至14中任一项所述的业务请求方法;或所述处理器,设置为执行所述存储器中存储的业务响应程序以实现如权利要求15至19中任一项所述的业务响应方法。
  24. 一种网络系统,包括:终端、会话边界控制器SBC以及应用服务器AS,所述终端、所述SBC以及所述AS三者两两通信连接;
    所述终端为权利要求23中所述的处理器可执行业务请求程序以实现如权利 要求9至14中任一项所述的业务请求方法的网络设备,所述SBC为权利要求23中所述的处理器可执行业务协商程序以实现如权利要求1至8中任一项所述的业务协商方法的网络设备;所述AS为权利要求23中所述的处理器可执行业务响应程序以实现如权利要求15至19中任一项所述的业务响应方法的网络设备;
    或,
    所述终端为权利要求23所述的处理器可执行业务响应程序以实现如权利要求15至19中任一项所述的业务响应方法的网络设备,所述SBC为权利要求23所述的处理器可执行业务协商程序以实现如权利要求1至8中任一项所述的业务协商方法的网络设备;所述AS为权利要求23中所述的处理器可执行业务请求程序以实现如权利要求9至14中任一项所述的业务请求方法的网络设备。
PCT/CN2019/099430 2018-08-06 2019-08-06 业务请求、协商、响应方法、装置及网络设备、系统 WO2020029954A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP19848150.9A EP3832969A4 (en) 2018-08-06 2019-08-06 METHOD AND DEVICE FOR SERVICE REQUEST, NEGOTIATION AND RESPONSE, AND NETWORK DEVICE AND SYSTEM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810887064.6A CN110809014B (zh) 2018-08-06 2018-08-06 业务请求、协商、响应方法、装置及网络设备、系统
CN201810887064.6 2018-08-06

Publications (1)

Publication Number Publication Date
WO2020029954A1 true WO2020029954A1 (zh) 2020-02-13

Family

ID=69413377

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/099430 WO2020029954A1 (zh) 2018-08-06 2019-08-06 业务请求、协商、响应方法、装置及网络设备、系统

Country Status (3)

Country Link
EP (1) EP3832969A4 (zh)
CN (1) CN110809014B (zh)
WO (1) WO2020029954A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112596812A (zh) * 2020-12-22 2021-04-02 深圳集智数字科技有限公司 一种操作请求的响应方法、装置、设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115550591A (zh) * 2022-09-02 2022-12-30 深圳市华运通科技股份有限公司 视讯通话系统、视讯通话方法及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296509A (zh) * 2007-04-28 2008-10-29 华为技术有限公司 紧急通信业务实现方法、系统及其相关设备
CN103916382A (zh) * 2013-12-25 2014-07-09 三亚中兴软件有限责任公司 基于sip媒体能力重协商的nat穿越方法、代理服务器和系统
CN104052675A (zh) * 2013-03-13 2014-09-17 中国移动通信集团公司 实现sbc过载控制的方法、系统、sbc及as
US20170251028A1 (en) * 2016-02-29 2017-08-31 Sonus Networks, Inc. Communications methods, apparatus and systems

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100546285C (zh) * 2007-05-09 2009-09-30 华为技术有限公司 实现互通网关应用层路由的方法、系统及会话边界控制器
CN101360057B (zh) * 2008-09-02 2012-04-04 华为终端有限公司 一种路由处理的方法、ims业务处理的方法及相关设备
CN101677326B (zh) * 2008-09-16 2013-03-20 中兴通讯股份有限公司 一种穿越nat的文件传送方法
CN103548330B (zh) * 2011-12-31 2015-03-11 华为技术有限公司 一种网络电话建立呼叫方法、装置和系统
GB2520231B (en) * 2013-07-23 2020-12-16 Metaswitch Networks Ltd Media sessions
CN104066073B (zh) * 2014-06-30 2017-08-25 中国联合网络通信集团有限公司 一种语音业务的处理方法及系统
US9713112B1 (en) * 2015-09-30 2017-07-18 Sonus Networks, Inc. Communications methods, apparatus and systems for correlating registrations, service requests and calls
CN105813228B (zh) * 2016-03-14 2019-04-26 华为技术有限公司 基于SIP over TCP/TLS的通信方法及相关装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296509A (zh) * 2007-04-28 2008-10-29 华为技术有限公司 紧急通信业务实现方法、系统及其相关设备
CN104052675A (zh) * 2013-03-13 2014-09-17 中国移动通信集团公司 实现sbc过载控制的方法、系统、sbc及as
CN103916382A (zh) * 2013-12-25 2014-07-09 三亚中兴软件有限责任公司 基于sip媒体能力重协商的nat穿越方法、代理服务器和系统
US20170251028A1 (en) * 2016-02-29 2017-08-31 Sonus Networks, Inc. Communications methods, apparatus and systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3832969A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112596812A (zh) * 2020-12-22 2021-04-02 深圳集智数字科技有限公司 一种操作请求的响应方法、装置、设备及存储介质
CN112596812B (zh) * 2020-12-22 2024-05-31 深圳集智数字科技有限公司 一种操作请求的响应方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN110809014B (zh) 2023-03-03
CN110809014A (zh) 2020-02-18
EP3832969A4 (en) 2021-09-08
EP3832969A1 (en) 2021-06-09

Similar Documents

Publication Publication Date Title
US10819757B2 (en) System and method for real-time communication by using a client application communication protocol
US11997231B2 (en) System and method for determining and communicating presence information
JP6014297B2 (ja) 異なる端末のアプリケーション間の通信
US9602553B2 (en) Method, apparatus, and system for implementing VOIP call in cloud computing environment
US9648006B2 (en) System and method for communicating with a client application
US8606306B2 (en) Multiple client computing device invitations for online communication sessions
JP5519183B2 (ja) Ccn経由音声通話実現方法
US8583149B2 (en) Registering email addresses for online communication sessions
US9648052B2 (en) Real-time communications gateway
WO2015158114A1 (zh) 一种智能通讯方法、终端及系统
WO2023071915A1 (zh) 业务设置方法和装置、存储介质及电子设备
US11470023B2 (en) Session initiation method and device
TW201141190A (en) Transitioning between circuit switched calls and video calls
WO2016107454A1 (en) Turn relay service reuse for nat traversal during media session resumption
KR20110099053A (ko) 콜과 연관된 화상에의 웹 기반 액세스
CN107612931B (zh) 多点会话方法及多点会话系统
CN107113223B (zh) 用于消息会话中继协议会话的消息块大小的协商
CN109995734A (zh) 一种基于SIP协议的WebRTC的通信方法
WO2020029954A1 (zh) 业务请求、协商、响应方法、装置及网络设备、系统
WO2016201795A1 (zh) 消息发送方法及装置
US7899058B2 (en) Using a hash value as a pointer to an application class in a communications device
CN109120578B (zh) 一种实现链路连接处理的方法及装置
WO2024108900A1 (zh) 一种电子签名验证方法及装置
WO2012062104A1 (zh) 多页彩信的传输系统和方法、会话初始化协议终端以及彩信代理服务器
US20240236153A1 (en) Communication Method, Apparatus, and Communication System

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19848150

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019848150

Country of ref document: EP

Effective date: 20210305