WO2014079386A1 - 基于万维网的实时通信的实现方法及装置 - Google Patents
基于万维网的实时通信的实现方法及装置 Download PDFInfo
- Publication number
- WO2014079386A1 WO2014079386A1 PCT/CN2013/087681 CN2013087681W WO2014079386A1 WO 2014079386 A1 WO2014079386 A1 WO 2014079386A1 CN 2013087681 W CN2013087681 W CN 2013087681W WO 2014079386 A1 WO2014079386 A1 WO 2014079386A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- terminal
- session
- bandwidth requirement
- request message
- message
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 97
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000008859 change Effects 0.000 claims abstract description 29
- 230000004044 response Effects 0.000 claims description 113
- 238000012544 monitoring process Methods 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 15
- 230000011664 signaling Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
Definitions
- the present application claims priority to Chinese Patent Application No. 201210480873, filed on November 23, 2012, the entire disclosure of which is incorporated herein by reference. Combined in this application.
- the present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for implementing real-time communication based on the World Wide Web.
- FIG. 1 is a system architecture diagram of a Web-based real-time communication (Web Real-Time Communication, WebRTC for short).
- the terminal 1 can access a web server through a browser, where the web server can pass, for example.
- the Hypertext Transfer Protocol (English): Hypertext Transfer Protocol (HTTP) or WebSocket communicates with the terminal 1.
- the WebSocket is used by the terminal 1 to implement two-way communication with the Web server in the browser.
- the web server interacts with other web servers corresponding to the terminal 2 through the signaling path to negotiate the service flow information in the streaming media session that the terminal 1 and the terminal 2 need to establish.
- the service flow information includes the bandwidth requirement, the encoding format, and the A service type, a service port, and the like, so that a streaming communication path is established between the terminal 1 and the terminal 2 to implement streaming media services such as voice, video, and data.
- the present invention provides a method and apparatus for real-time communication based on the World Wide Web, which solves the problem that the real-time communication service based on the World Wide Web cannot dynamically adjust the bandwidth requirement in the service flow information according to the state of the wireless network and affect the communication service.
- the present invention provides a method for implementing real-time communication based on the World Wide Web, including:
- the proxy device detects a session request message initiated by the terminal for the web-based real-time communication, where the session request message includes a bandwidth requirement; If the bandwidth requirement included in the session request message is greater than the bandwidth requirement included in the user subscription configuration information of the terminal, modify the bandwidth requirement included in the session request message, so that the bandwidth requirement included in the session request message is Less than or equal to the bandwidth requirement included in the subscription information of the user of the terminal;
- the method before the sending the modified session request message to another terminal, the method includes:
- the proxy device creates a temporary session state information table according to the modified session request message, and saves the bandwidth requirement included in the modified session request message to the temporary session state information table.
- the method further includes:
- the proxy device detects a response message of the web-based real-time communication that the other terminal responds to; if the bandwidth requirement included in the response message is different from the bandwidth requirement included in the temporary session state information table, Updating the bandwidth requirement in the temporary session state information table by using the bandwidth requirement included in the response message;
- the method further includes:
- the proxy device receives a link state change message sent by the wireless access point device connected to the terminal, and adjusts a bandwidth requirement in the temporary session state information table according to the link state change message;
- the proxy device sends a session update message to the terminal, where the session update message includes the adjusted bandwidth requirement.
- the method includes:
- the proxy device detects a session update request message initiated by the terminal according to the web-based real-time communication, where the session update request message includes the adjusted bandwidth requirement;
- the method includes:
- the proxy device detects a session update response message of the web-based real-time communication that the other terminal responds; If the bandwidth requirement included in the session update response message is inconsistent with the bandwidth requirement included in the temporary session state information table saved by the proxy device, updating the temporary session state according to the bandwidth requirement included in the session update response message Bandwidth requirements in the information table;
- the present invention provides an implementation apparatus for real-time communication based on the World Wide Web, including:
- a monitoring module configured to detect a session request message initiated by the terminal according to the web-based real-time communication, where the session request message includes a bandwidth requirement
- the device further includes: a creating module, configured to create a temporary session according to a bandwidth requirement included in the session request message modified by the adjusting module And a status information table, where the bandwidth requirement included in the modified session request message is saved in the temporary session state information table.
- the monitoring module is further configured to detect a response message of the web-based real-time communication that the another terminal responds to;
- the adjusting module is further configured to: if the bandwidth requirement included in the response message is inconsistent with the bandwidth requirement included in the temporary session state information table, update the creation module according to the bandwidth requirement included in the response message. Bandwidth requirements in the temporary session state information table;
- the sending module is further configured to send the response message to the terminal.
- the adjusting module is further configured to perform wireless connection according to the terminal a link state change message sent by the access point device, and adjusting a bandwidth requirement in the temporary session state information table created by the creating module; the sending module is further configured to send a session update message to the terminal, where the session is updated.
- the message includes the adjusted bandwidth requirement of the adjustment module.
- the monitoring module is further configured to detect a session update request message that is initiated by the terminal and is based on a web-based real-time communication.
- the adjusted bandwidth requirement is included in the session update request message;
- the sending module is further configured to send the session update request message to the another terminal.
- the monitoring module is further configured to detect a session update response message of the web-based real-time communication that the another terminal responds to
- the adjusting module is further configured to: if the bandwidth requirement included in the session update response message is inconsistent with the bandwidth requirement included in the temporary session state information table saved by the proxy device, according to the session update response message The bandwidth requirement updates the bandwidth requirement in the temporary session state information table;
- the sending module is further configured to send a session update response message detected by the monitoring module to the session request message that is sent by the terminal device to the terminal by the proxy device, according to the session request message.
- the bandwidth requirement, and the bandwidth requirement included in the user subscription configuration information of the terminal determining whether the bandwidth requirement included in the session request message is greater than the bandwidth requirement included in the subscription configuration information of the user of the terminal, and if yes, in the session request message.
- the included bandwidth requirement is modified, so that the bandwidth requirement in the session request message is smaller than the bandwidth requirement included in the user subscription configuration information of the terminal; so that the session request message initiated by the terminal can be adjusted according to the bandwidth requirement included in the user subscription configuration information of the terminal.
- Bandwidth requirements are examples of bandwidth requirement included in the user subscription configuration information of the terminal.
- Figure 1 is a system architecture diagram of a Web-based real-time communication WebRTC
- FIG. 2 is a schematic flowchart of a method for implementing real-time communication based on the World Wide Web according to an embodiment of the present invention
- FIG. 3 is a schematic flowchart of a method for implementing real-time communication based on the World Wide Web according to another embodiment of the present invention
- FIG. 5 is a signaling diagram of the implementation method of the web-based real-time communication provided by the other embodiment of the present invention
- FIG. 7 is a schematic structural diagram of an apparatus for implementing real-time communication based on the web according to another embodiment of the present invention.
- - A schematic structural diagram of an implementation apparatus for real-time communication based on the World Wide Web provided by the embodiment;
- FIG. 9 is a schematic structural diagram of an implementation system of real-time communication based on the World Wide Web provided by the embodiment of the present invention.
- FIG. 2 is a schematic flowchart of a method for implementing real-time communication based on the World Wide Web according to an embodiment of the present invention. As shown in FIG. 2, the method for implementing real-time communication based on the World Wide Web in this embodiment may include:
- the proxy device detects a session request message initiated by the terminal according to the web-based real-time communication, where the session request message includes a bandwidth requirement.
- the session request message initiated by the terminal based on the web-based real-time communication is a session request message initiated by the terminal to another terminal through the web server.
- the session request message is a request message specified in a Session Description Protocol (SDP), such as an offer message.
- SDP Session Description Protocol
- the terminal sends the session request message to request to establish a streaming media service with another terminal.
- the session request message includes a bandwidth requirement, where the bandwidth requirement included in the session request message is the bandwidth requested by the terminal for the streaming media service to be established.
- the session request message may further include service flow information such as a service type, a service port, and an Internet Protocol (IP) address of the terminal.
- IP Internet Protocol
- the proxy device is a WebRTC proxy.
- the WebRTC agent can be implemented using a motherboard with WebRTC software installed.
- the motherboard with the WebRTC software installed can be set in a wireless local area network (WLAN) controller.
- the WLAN controller is generally used to manage and control a wireless access point (AP) device to provide service configuration for the wireless access point device.
- the WLAN controller can be an access controller (English: Access Control Manager, AC for short) that follows the Request for Comments (RFC) 5415.
- the terminal after the terminal connects to the network through the wireless access point device, the terminal creates streaming media session information on the terminal by using a browser, for example, assigning a media session port, a voice and video encoding format, and the like, and then, the terminal A session request message is sent to another terminal through the web server.
- the proxy device detects the session request message sent by the terminal to the other terminal through the web server, obtains the service flow information included in the session request message, and further acquires the bandwidth requirement included in the service flow information.
- the proxy device determines whether the bandwidth requirement included in the session request message is greater than the bandwidth requirement included in the user subscription configuration information of the terminal, if the proxy device determines the bandwidth requirement included in the session request message. If the bandwidth requirement included in the user subscription information of the terminal is greater than or equal to the bandwidth requirement included in the user subscription configuration information of the terminal, the proxy device determines that the bandwidth requirement included in the session request message is greater than the bandwidth requirement included in the user subscription configuration information of the terminal. Then step 204 is performed.
- the user subscription configuration information is user subscription configuration information configured by the network operator for the terminal when the terminal signs the contract with the network operator.
- the proxy device can, for example, authenticate, authorize, and bill from the network operator (English: Authentication Authorization Accounting, AAA) server or home subscriber server (English: Home Subscriber Server)
- the user subscription information is obtained and stored in the HSS.
- the user subscription information includes the bandwidth requirement.
- the bandwidth requirement included in the user subscription configuration information is the maximum that can be authorized for the terminal user. bandwidth.
- the bandwidth requirement included in the subscription information of the user is 512 kilobits per second (English: ki lobit per second, kbps for short)
- the bandwidth requirement included in the service flow information initiated by the terminal is 1 million bits per In the second (English: megabit per second, Mbps for short)
- the bandwidth requirement in the user subscription information is 1 Mbps and the bandwidth requirement in the service flow information is 512 kbps, it can be determined that the bandwidth requirement included in the service flow information is smaller than the bandwidth requirement included in the user subscription configuration information of the terminal.
- the proxy device sends the session request message to another terminal through a web server.
- the proxy device determines that the bandwidth requirement included in the session request message initiated by the terminal is less than or equal to the bandwidth requirement included in the user subscription configuration information of the terminal, the proxy device sends the session request message to another terminal through the WEB server;
- the proxy device creates a temporary session state information table on the proxy device, and saves the bandwidth requirement included in the session request message to the temporary session state information table, usually, in an actual application, except in the session request message.
- the included bandwidth requirement is saved in the temporary session state information table, and the proxy device may also save other service flow information included in the session request message, such as the service type, the service port, and the IP address of the terminal, to the temporary session state information table. in.
- the proxy device modifies the bandwidth requirement included in the session request message, so that the bandwidth requirement included in the session request message is less than or equal to the bandwidth requirement included in the user subscription configuration information, and the modified session request message is sent through the web.
- the server sends it to another terminal.
- the proxy device may modify the bandwidth required in the session request message.
- the bandwidth requirement included in the session request message is less than or equal to the bandwidth requirement included in the user subscription configuration information.
- the proxy device creates a temporary session state information table on the proxy device according to the modified session request message, and saves the bandwidth requirement in the modified session request message to the temporary session state information table.
- the proxy device may further include other service flow information included in the modified session request message, for example, The service type, service port, and IP address of the terminal are saved in the temporary session state information table.
- the proxy device detects a response message of real-time communication of the base web that is responded by another terminal.
- the response message of the web-based real-time communication initiated by the other terminal is a pre-answer or response message sent by the other terminal to the terminal through the web server.
- the reply message is a response message specified in the session description protocol, such as Pre-answer or
- the response message includes a bandwidth requirement of another terminal response. Further, the response message further includes other service flow information that is sent by another terminal, such as an IP address of another port, a service type that another terminal responds, and a service port. And other information.
- the other terminal after the proxy device sends the session request message or the modified session request message to another terminal, the other terminal creates streaming media session information on the other terminal through the browser, for example, allocates a media session.
- the port for example, according to the service flow information in the received session request message, according to the service type included in the service flow information, select a voice and video coding format that supports the service type, if there are multiple support for the service type.
- the voice and video coding format is based on the priority of the preset voice and video coding format information, and the priority voice video coding format is preferentially used, or one of the plurality of supported voice and video coding formats is selected.
- the other terminal replies to the terminal with a pre-answer or response message via the web server.
- the proxy device detects a pre-answer or response message sent by the other terminal to the terminal through the web server; the pre-answer or response message includes another terminal response.
- Bandwidth requirements and other traffic flow information typically, the bandwidth demand of another terminal does not exceed the bandwidth requirements contained in the session request message sent by the proxy device to another terminal.
- the proxy device updates the created on the proxy device according to the bandwidth requirement included in the pre-answer or response message.
- the bandwidth requirement in the temporary session state information table for example, assuming that the bandwidth requirement included in the session request message initiated by the terminal is 1 Mbps, assuming that the proxy device detects the band included in the session request message initiated by the terminal.
- the bandwidth requirement does not exceed the bandwidth requirement included in the user subscription configuration information of the terminal. If the maximum bandwidth requirement of the other terminal is 512 Kbps, the bandwidth requirement in the pre-answer or response message sent by the other terminal to the terminal is
- the proxy device updates the bandwidth requirement in the temporary session state information table created on the proxy device according to the bandwidth requirement included in the pre-answer or response message, that is, the bandwidth requirement in the temporary session state information table created by the proxy device on the proxy device Updated to 512Kbps.
- the proxy device updates the proxy device according to the service type included in the pre-answer or response message.
- the type of service created in the temporary session state information table to release the resource space of the proxy device in time.
- the proxy device sends the response message to the terminal.
- the terminal After receiving the response message, the terminal updates the streaming media session information on the terminal, for example, the IP address of another terminal, the service port of another terminal, the service flow information replied by another terminal, the voice and video codec format, and the like.
- the terminal communicates according to the updated streaming session information through the browser, and then uses the modified streaming session information.
- the session request message or the response message includes, in addition to the bandwidth requirement, an IP address of the terminal, an IP address of another port, a service type, a service port, and the like.
- the proxy device may further obtain the service type in the session request message or the response message, configure the quality of service level information corresponding to the service type, and then send the service quality level information corresponding to the service type to the terminal.
- the wireless access point device sets a priority corresponding to the quality of service level information according to the quality of service level information, so that the wireless access point device detects the service from the terminal
- the service quality (English: Quality of Service, QoS for short) level corresponding to the service type is determined according to the service type included in the service flow information, and then the corresponding priority mark is performed on the service flow, so that the basis can be implemented.
- the priority of the service flow is scheduled. For example, high-priority service packets are transmitted first, and low-priority service packets are transmitted later to ensure the quality of service QoS of different service flows.
- the session request message sent by the terminal to the other terminal is monitored by the proxy device, and the session request message is included in the session request message according to the bandwidth requirement included in the session request message and the bandwidth requirement included in the user subscription configuration information of the terminal. Whether the bandwidth requirement is greater than the bandwidth requirement included in the subscription configuration information of the user of the terminal, and if so, the bandwidth requirement included in the session request message is modified, so that the bandwidth requirement included in the session request message is smaller than the user subscription configuration of the terminal.
- the bandwidth requirement included in the information thereby dynamically adjusting the bandwidth requirement of the service flow information initiated by the terminal according to the bandwidth requirement included in the user subscription configuration information of the terminal Therefore, the real-time communication service based on the World Wide Web between the terminal and the other terminal is not affected, and the continuity of the streaming media session between the terminal and the other terminal is ensured.
- FIG. 3 is a schematic flowchart diagram of a method for implementing real-time communication based on the World Wide Web according to an implementation manner of an embodiment of the present invention. The method includes:
- the proxy device receives a link state change message sent by the wireless access point device.
- the wireless access point device detects that the link state between the terminal and the other terminal changes, for example, after the packet loss rate or retransmission rate of the link is greater than a specified threshold, or the link Signal to noise ratio
- the wireless access point device After the signal-to-noise ratio (SNR) is greater than the specified threshold, or the signal to interference plus noise ratio (SINR) is greater than the specified threshold, the wireless access point device sends a chain to the proxy device.
- a link state change message where the link state change message includes a terminal identifier and link information, where the link information includes a link identifier, and further, the link information may further include a packet loss rate, a retransmission rate, or At least one of the signal to noise ratios.
- the proxy device adjusts a bandwidth requirement in the temporary session state information table according to the link state change message.
- the correspondence between the preset threshold and the bandwidth demand change amount can be saved in the proxy device.
- the proxy device may adjust according to the bandwidth requirement variation corresponding to the first preset threshold.
- the bandwidth requirement in the temporary session state information table is reduced by 20%.
- the proxy device may according to the second pre- Set the bandwidth demand change corresponding to the threshold to adjust the bandwidth requirement in the temporary session state information table, for example, by 40%.
- the proxy device can reduce the bandwidth requirement in the temporary session state information table accordingly.
- the proxy device sends a session update message to the terminal, where the session update message includes the adjusted bandwidth requirement.
- the session update message is a notification message specified in the session description protocol, such as a notify message.
- the session update message includes the adjusted bandwidth requirement of the proxy device, where the adjusted service flow information includes the reduced bandwidth requirement.
- the terminal After receiving the session update message, the terminal detects whether the adjusted bandwidth requirement meets the minimum bandwidth required for the streaming media service between the terminal and the other terminal. If yes, the terminal adjusts the streaming media session information on the terminal. Sending a session update request message to another terminal, and including the adjusted bandwidth requirement in the session update request message.
- the proxy device detects a session update request message initiated by the terminal according to the web-based real-time communication.
- the session update request message initiated by the terminal based on the web-based real-time communication is a session update request message initiated by the terminal to another terminal through the web server.
- the session update request message is a request message specified in the session description protocol, such as a notify request message.
- the session update request message includes an adjusted bandwidth requirement, where the adjusted bandwidth requirement includes a reduced bandwidth requirement of the proxy device.
- the proxy device sends the session update request message to another terminal through a web server.
- the other terminal may check whether the adjusted bandwidth requirement meets a minimum bandwidth required for the streaming media service between the terminal and another terminal, and if yes, the other terminal according to the adjustment
- the bandwidth requirement adjusts the streaming media session information on the other terminal, and returns a session update response message to the terminal;
- the terminal before receiving the session update request message, the terminal has detected, according to the session update message sent by the proxy device, whether the adjusted bandwidth requirement meets a minimum bandwidth required for the streaming media service between the terminal and the other terminal. Therefore, after receiving the session update request message, the other terminal may directly adjust the streaming media session information on the another terminal according to the adjusted bandwidth requirement, and reply the session update response message to the terminal.
- the proxy device detects a session update response message of the web-based real-time communication that is responded by the another terminal.
- the session update response message of the web-based real-time communication that the other terminal responds to is a session update response message initiated by the other terminal to the terminal through the web server.
- the session update response message is a response message specified in the session description protocol, such as a notify response message.
- the session update response message includes a bandwidth requirement of another terminal response. Further, the session update response message may further include other service flow information that is answered by another terminal, for example, a service type, a service port, and another Information such as the IP address of a terminal.
- the proxy device sends the session update response message to the terminal.
- the terminal updates the streaming media session information on the terminal according to the session update response message through the browser, and then uses the modified streaming media session information to communicate.
- the wireless access point device when the link state between the terminal and the another terminal is changed by the wireless access point device, the wireless access point device sends a link state change message to the proxy device, and the proxy device according to the The link state change message re-adjusts the bandwidth requirement included in the temporary session state information table created by the proxy device, and sends a session update message to the terminal, so that the terminal sends a session update request message to another terminal according to the session update message.
- the proxy device can dynamically adjust The bandwidth requirement in the service flow information initiated by the terminal, so as not to affect the real-time communication service based on the World Wide Web, and the continuity of the service is ensured.
- FIG. 4 is a signaling diagram of a method for implementing real-time communication based on the World Wide Web according to another embodiment of the present invention; as shown in FIG. 4, when the terminal initiates voice or video real-time communication to another terminal, the method specifically includes:
- the WebRTC agent monitors the session request message initiated by the terminal.
- the terminal accesses the web server through the browser, and initiates a session request message to the other terminal through the web server, where the session request message is used to request to establish a streaming media session with another terminal, where the streaming media session includes voice, video, and data transmission. At least one of them.
- the terminal Before the terminal initiates the session request message, the terminal creates the streaming media session information on the terminal by using the browser, including allocating the media session port, the voice and video coding format, and the like.
- the WebRTC agent monitors the session request message, and creates a temporary session state information table on the WebRTC agent.
- the WebRTC agent interprets and acquires the bandwidth requirement and other service flow information included in the session request message; the WebRTC agent obtains the session request message according to the session request message.
- Modifying the bandwidth requirements in the service flow information and the bandwidth requirements in the user subscription information of the terminal are processed accordingly. For example, when the bandwidth requirement in the service flow information is greater than the bandwidth requirement in the user subscription configuration information, the bandwidth in the service flow information is modified. The demand makes the bandwidth requirement in the service flow information smaller than the bandwidth requirement in the user subscription configuration information.
- the WebRTC proxy sends the session request message or the modified session request message to another terminal through the web server.
- the WebRTC agent detects a pre-answer message replied by another terminal.
- the other terminal after receiving the session request message or the modified session request message, the other terminal creates a streaming media session information on the another terminal by using a browser, for example, assigning a session port; for example, according to the session request message. Or the service flow information in the modified session request message, obtain media information such as voice and video supported by the terminal, and select media information used in the session, optionally, if another terminal supports multiple voice and video coding formats, according to the user The command optionally includes a supported voice and video encoding format. Then, the other terminal sends a pre-answer message to the terminal through the web server.
- a browser for example, assigning a session port
- the service flow information in the modified session request message obtain media information such as voice and video supported by the terminal, and select media information used in the session, optionally, if another terminal supports multiple voice and video coding formats, according to the user
- the command optionally includes a supported voice and video encoding format.
- the other terminal sends a pre-answer message to the terminal through
- the WebRTC agent After the WebRTC agent detects the pre-answer message replied by another terminal, and the bandwidth requirement in the pre-answer message replied by the other terminal is inconsistent with the bandwidth requirement in the temporary session state information table on the WebRTC agent, the WebRTC agent according to the pre-answer message The bandwidth requirement updates the bandwidth requirements in the temporary session state information table on the WebRTC proxy.
- the WebRTC proxy can also save other traffic flow information in the pre-answer message, such as the service type that the other terminal answers, the service port, and the IP address of another terminal, into the temporary session state information table.
- the WebRTC proxy sends a pre-answer message to the terminal.
- the terminal updates the streaming media session information on the terminal according to the pre-answer message.
- the terminal After receiving the pre-answer message, the terminal needs to update the streaming media session information on the terminal according to the bandwidth requirement in the pre-answer message and other service flow information, for example, save the IP address and service port of the other terminal, and another terminal. Supporting the codec format of the voice or video. For example, if another terminal only responds to part of the service flow information, the terminal deletes other part of the service flow information according to part of the service flow information that the other terminal answers, for example, updating the terminal.
- the bandwidth requirements in the streaming session information For example, if another terminal only responds to part of the service flow information, the terminal deletes other part of the service flow information according to part of the service flow information that the other terminal answers, for example, updating the terminal.
- a streaming communication path is established between the terminal and the other terminal, and the terminal and the other terminal can implement a streaming media session according to the respective streaming media session information through the established streaming media communication path.
- the WebRTC agent detects a response message sent by another terminal to the terminal through the Web server.
- another terminal can be triggered to send a response message to the terminal through the web server.
- the WebRTC proxy After the WebRTC agent detects the response message replied by another terminal, the bandwidth requirement in the response message replied by the other terminal is inconsistent with the bandwidth requirement in the temporary session state information table on the WebRTC agent, and the WebRTC agent according to the bandwidth requirement in the response message Updating the bandwidth requirements in the temporary session state information table on the WebRTC proxy.
- the WebRTC proxy can also save other traffic flow information in the response message, such as the service type that the other terminal answers, the service port, and the IP address of another terminal, into the temporary session state information table.
- the WebRTC proxy sends a response message to the terminal.
- the terminal updates the streaming media session information on the terminal according to the response message. For example, the IP address and the service port of another terminal and the codec format of the voice or video supported by the other terminal are saved. For example, if another terminal only responds to part of the service flow information, the terminal responds to the part of the service that is answered by the other terminal. Stream information, delete other parts of the business flow information.
- the terminal communicates according to the updated streaming session information through the browser, and then uses the modified service flow information.
- the proxy device may further obtain the service type in the session request message or the response message, configure the quality of service level information corresponding to the service type, and then send the service quality level information corresponding to the service type to the terminal.
- a connected wireless wireless access point device such that the wireless access point device sets a priority corresponding to the quality of service level information according to the quality of service level information, so that the wireless access point device detects the service from the terminal After the flow, the QoS level corresponding to the service type is determined according to the service type included in the service flow information, and then the corresponding priority mark is performed on the service flow.
- the wireless access point device can detect the media stream from the terminal, obtain the service flow information in the media stream, and determine the corresponding QoS level according to the service type in the obtained service flow information. The information determines the priority of the corresponding service flow according to the determined QoS level information.
- the priority identifier can be added to the Type of Service (ToS) field of the Internet Protocol version 4 (IPv4).
- IPv4 Internet Protocol version 4
- the next hop device may transmit according to the priority identifier, for example, the high priority media stream is transmitted first, and the low priority media stream is transmitted later.
- the wireless access point device can detect the media stream from the other terminal, obtain the service flow information in the media stream, and determine the corresponding according to the service type in the obtained service flow information.
- the QoS level information determines the priority of the corresponding service flow according to the determined QoS level information.
- the wireless access point device determines a priority sending queue corresponding to the media stream according to the priority identifier and sends the sending queue to the terminal. High-priority media streams are transmitted to the terminal first, and low-priority media streams are transmitted to the terminal.
- the session request message sent by the terminal to the other terminal is monitored by the proxy device, and the session request message is included in the session request message according to the bandwidth requirement included in the session request message and the bandwidth requirement included in the user subscription configuration information of the terminal. Whether the bandwidth requirement is greater than the bandwidth requirement included in the subscription configuration information of the user of the terminal, and if so, the bandwidth requirement included in the session request message is modified, so that the bandwidth requirement included in the session request message is smaller than the user subscription configuration of the terminal.
- the bandwidth requirement included in the information; after that, the modified session request message is sent to another terminal; thereby, the bandwidth required in the subscription information of the user according to the terminal can be implemented.
- the bandwidth requirement in the service flow information initiated by the terminal is dynamically adjusted, so that the real-time communication service based on the World Wide Web is not affected, and the continuity of the service is ensured.
- FIG. 5 is a signaling diagram of a method for implementing real-time communication based on the World Wide Web according to another embodiment of the present invention; as shown in FIG. 5, when another terminal initiates voice or video real-time communication to the terminal, the method specifically includes:
- the WebRTC agent monitors a session request message initiated by another terminal.
- the other terminal initiates a session request message to the terminal through the web server, the session request message is used to request to establish a streaming media session with the terminal, and the streaming media session includes at least one of voice or video or data transmission.
- the other terminal Before the other terminal initiates the session request message, the other terminal creates the streaming media session information on the other terminal through the browser, including allocating the media session port, the voice and video encoding format, and the like.
- the WebRTC agent monitors the session request message, it creates a temporary session state information table on the WebRTC agent.
- the WebRTC agent interprets and acquires the bandwidth requirements and other service flow information included in the session request message.
- the WebRTC agent processes, according to the bandwidth requirement included in the obtained session request message and the bandwidth requirement in the user subscription configuration information of the terminal, for example, when the bandwidth requirement included in the session request message is greater than the bandwidth requirement in the user subscription configuration information of the terminal. , modify the bandwidth requirements included in the session request message.
- the WebRTC proxy sends the session request message or the modified session request message to the terminal.
- the WebRTC agent detects a pre-response message replied by the terminal.
- the terminal after receiving the session request message or the modified session request message, the terminal creates streaming session information on the terminal by using a browser, for example, assigning a session port; for example, according to a session request message or a modified session request.
- the service flow information in the message acquires the media information such as the voice and video supported by the other terminal, and selects the media information used in the session.
- the terminal supports multiple voice and video coding formats, select a voice according to the user instruction. Video encoding format.
- a pre-answer message is sent to the other terminal through the web server.
- the WebRTC agent After the WebRTC agent detects the pre-answer message replied by the terminal, when the bandwidth requirement in the pre-answer message replied by the terminal is inconsistent with the bandwidth requirement in the temporary session state information table on the WebRTC agent, the WebRTC agent updates according to the bandwidth requirement in the pre-answer message.
- the bandwidth requirement in the temporary session state information table on the WebRTC proxy can also save other service flow information in the pre-answer message, such as the service type of the terminal response, the service port, and the IP address of the terminal, into the temporary session state information table.
- the WebRTC proxy sends the pre-answer message to the other terminal through the web server.
- the other terminal updates the streaming media session information on the another terminal according to the pre-answer message.
- the other terminal After the other terminal receives the pre-answer message, it needs to update the streaming media session information on the other terminal according to the bandwidth requirement and other service flow information included in the pre-answer message, for example, save the IP address and service port of the terminal. And the codec format of the voice or video supported by the terminal. For example, if the terminal only responds to part of the service flow information, the other terminal deletes other part of the service flow information according to part of the service flow information that the terminal answers; for example, according to the pre-answer
- the bandwidth requirements contained in the message update the bandwidth requirements in the streaming session information on the other terminal.
- a streaming communication path is established between the terminal and the other terminal, and the terminal and the other terminal can implement a streaming media session according to the respective streaming media session information through the established streaming media communication path.
- the WebRTC agent detects a response message sent by the terminal to another terminal through the Web server.
- the terminal can be triggered to send a response message to the other terminal through the Web server.
- the WebRTC agent After the WebRTC agent detects the response message of the terminal reply, when the bandwidth requirement in the response message replied by the terminal is inconsistent with the bandwidth requirement in the temporary session state information table on the WebRTC proxy, the WebRTC agent updates the WebRTC according to the bandwidth requirement in the response message.
- the bandwidth requirement in the temporary session state information table on the proxy can also save other service flow information in the response message, such as the service type of the terminal response, the service port, and the IP address of the terminal, into the temporary session state information table.
- the WebRTC proxy sends a response message to another terminal.
- the other terminal updates the streaming media session information on the another terminal according to the response message.
- the IP address and the service port of the terminal and the codec format of the voice or video supported by the terminal are saved. For example, if the terminal only responds to part of the service flow information, the other terminal deletes other parts according to part of the service flow information that the terminal answers. Business flow information. At this time, the terminal and the other terminal perform real-time streaming communication through the streaming communication path.
- the session request message sent by the other terminal to the terminal is monitored by the proxy device, and the session request message is included in the session request message according to the bandwidth requirement included in the session request message and the bandwidth requirement included in the user subscription configuration information of the terminal. Whether the bandwidth requirement is greater than the bandwidth requirement included in the subscription configuration information of the user of the terminal, and if so, the bandwidth requirement included in the session request message is modified, so that the bandwidth requirement included in the session request message is smaller than the user subscription configuration of the terminal. After the bandwidth request is included in the information, the modified session request message is sent to the terminal; the bandwidth requirement in the service flow information initiated by the other terminal is dynamically adjusted according to the bandwidth requirement included in the user subscription configuration information of the terminal.
- FIG. 6 is a signaling diagram of a method for implementing real-time communication based on the World Wide Web according to another embodiment of the present invention.
- the embodiment can monitor the process of the session update by monitoring the link state change information by using the wireless access point device.
- the specific process is as shown in FIG. 6, and includes:
- the wireless access point device detects that the state of the wireless link changes.
- the wireless link refers to a streaming communication link established between the terminal and another terminal.
- the radio access point device can detect the radio link status. A change has occurred.
- the wireless access point device sends the wireless link state change information to the WebRTC proxy.
- the radio link state change information includes a terminal identifier or link information, where the link information includes a link identifier, and further, the link information may further include at least one of a packet loss rate or a signal to noise ratio.
- the WebRTC agent adjusts the temporary session state information table saved in the WebRTC proxy according to the wireless link state change information.
- the correspondence between the preset threshold and the bandwidth demand change amount can be saved in the proxy device.
- the proxy device may adjust according to the bandwidth requirement variation corresponding to the first preset threshold.
- the bandwidth requirement in the temporary session state information table is reduced by 20%.
- the proxy device may according to the second pre- Set the bandwidth demand change corresponding to the threshold to adjust the bandwidth requirement in the temporary session state information table, for example, by 40%.
- the proxy device can reduce the bandwidth requirement in the temporary session state information table accordingly.
- the WebRTC proxy sends a session update message to the terminal.
- the session update message includes the updated bandwidth requirement.
- the WebRTC agent detects that the terminal sends a session update request message to another terminal through the web server. After receiving the session update message, the terminal detects whether the updated bandwidth requirement meets the minimum bandwidth required for the streaming media session between the terminal and the other terminal. If yes, the terminal updates the streaming media session information created by the terminal, that is, Modifying the bandwidth requirement included in the streaming session information according to the updated bandwidth requirement included in the session update message, and then sending a session update request message to another terminal, and carrying the message in the session update request message New bandwidth requirements.
- the updated bandwidth requirement included in the session update request message may be different from the updated bandwidth requirement included in the session update message.
- the WebRTC agent If the WebRTC agent detects that the bandwidth requirement in the session update request message does not match the bandwidth requirement in the temporary session state information table stored in the WebRTC proxy, the WebRTC agent updates the bandwidth requirement in the temporary session state information table stored in the WebRTC proxy.
- the WebRTC proxy sends a session update request message to another terminal through the web server.
- the WebRTC agent detects that another terminal returns a session update response message to the terminal through the Web server.
- the other terminal may check whether the bandwidth requirement in the session update request message meets a minimum bandwidth required for the streaming media session between the terminal and another terminal, and if yes, the other terminal Adjusting the streaming media session information created on the other terminal, and replying the session update response message to the terminal through the web server.
- the WebRTC agent If the WebRTC agent detects that the bandwidth requirement in the session update response message is inconsistent with the bandwidth requirement in the temporary session state information table stored in the WebRTC proxy, the WebRTC agent updates the bandwidth requirement in the temporary session state information table.
- the WebRTC proxy sends a session update response message to the terminal.
- the terminal uses the browser to update the streaming media session information created on the terminal according to the bandwidth requirement in the session update response message, and then uses the modified streaming media session information to communicate.
- the wireless access point device when the link state between the terminal and the another terminal is changed by the wireless access point device, the wireless access point device sends a link state change message to the WebRTC proxy, and the WebRTC proxy according to the The link state change message re-adjusts the bandwidth requirement included in the temporary session state information table on the WebRTC proxy, and sends a session update message to the terminal, so that the terminal according to the updated bandwidth requirement included in the session update message, to another
- the terminal sends a session update request message, triggering another terminal to return a session update response message to the terminal; thus, when the wireless network is interfered by the wireless signal, or the wireless network rate has different degrees of fluctuation, or the bandwidth of the wireless network cannot be guaranteed,
- the webRTC agent can dynamically adjust the bandwidth requirement in the service flow information initiated by the terminal, so as not to affect the real-time communication service based on the World Wide Web, and ensure the continuity of the service.
- FIG. 7 is a schematic structural diagram of an apparatus for implementing real-time communication based on the World Wide Web according to another embodiment of the present invention. As shown in FIG. 7, the method includes:
- the monitoring module 71 is configured to detect a session request message initiated by the terminal according to the web-based real-time communication, where the session request message includes a bandwidth requirement;
- the adjusting module 72 is configured to: if the bandwidth requirement included in the session request message is greater than the bandwidth requirement included in the user subscription configuration information of the terminal, modify the bandwidth requirement included in the session request message, so that the session request is The bandwidth requirement included in the message is less than or equal to the bandwidth requirement included in the user subscription configuration information of the terminal;
- the sending module 73 is configured to send the modified session request message of the adjusting module 72 to the another terminal.
- the device further includes:
- the creating module 74 is configured to create a temporary session state information table according to the bandwidth requirement included in the modified session request message, and save the bandwidth requirement included in the modified session request message to the temporary session. In the status information table.
- the monitoring module 71 is further configured to detect a response message of the web-based real-time communication that the another terminal responds to;
- the adjusting module 72 is further configured to: if the bandwidth requirement included in the response message is inconsistent with the bandwidth requirement included in the temporary session state information table, update the created by the creating module according to the bandwidth requirement included in the response message Bandwidth requirements in the temporary session state information table;
- the sending module 73 is further configured to send the pre-answer or response message to the terminal.
- the adjusting module 72 is further configured to adjust, according to the link state change message sent by the wireless access point device connected to the terminal, the bandwidth in the temporary session state information table created by the creating module.
- the sending module 73 is further configured to send a session update message to the terminal, where the session update message includes the adjusted bandwidth requirement of the adjustment module.
- the monitoring module 71 is further configured to: detect a session update request message initiated by the terminal according to the web-based real-time communication, where the session update request message includes the adjusted bandwidth requirement;
- the sending module 73 is further configured to send the session update request message to the another terminal.
- the monitoring module 71 is further configured to detect a session update response message of the web-based real-time communication that the another terminal responds to;
- the adjusting module 72 is further configured to: if the bandwidth requirement included in the session update response message is inconsistent with the bandwidth requirement included in the temporary session state information table saved by the proxy device, update the bandwidth included in the response message according to the session Requirement to update the bandwidth requirement in the temporary session state information table;
- the sending module 73 is further configured to send a session update response message detected by the monitoring module to the terminal.
- the session request message sent by the terminal to the other terminal is monitored by the proxy device, and the session request message is included in the session request message according to the bandwidth requirement included in the session request message and the bandwidth requirement included in the user subscription configuration information of the terminal. Whether the bandwidth requirement is greater than the bandwidth requirement included in the subscription configuration information of the user of the terminal, and if so, the bandwidth requirement included in the session request message is modified, so that the bandwidth requirement included in the session request message is smaller than the user subscription configuration of the terminal.
- the bandwidth requirement is included in the information; the modified session request message is sent to the other terminal; the bandwidth requirement in the service flow information initiated by the terminal is dynamically adjusted according to the bandwidth requirement included in the user subscription configuration information of the terminal. .
- FIG. 8 is a schematic structural diagram of an apparatus for implementing real-time communication based on the World Wide Web according to another embodiment of the present invention.
- the apparatus for implementing real-time communication based on the World Wide Web in this embodiment is specifically a proxy device, and the proxy device is
- the processor includes a processor, a memory, and a communication bus, wherein the processor is connected to the memory through a communication bus, wherein the memory stores an implementation instruction of real-time communication based on the World Wide Web, and the processor retrieves and executes the real-time communication based on the World Wide Web saved in the memory.
- the proxy device further includes a communication interface, and the proxy device communicates with other network elements through the communication interface.
- the processor performs the following steps according to instructions stored in the memory:
- a session request message initiated by the terminal for web-based real-time communication is detected, and the session request message includes a bandwidth requirement;
- bandwidth requirement included in the session request message is greater than the bandwidth requirement included in the user subscription configuration information of the terminal, modify the bandwidth requirement included in the session request message, so that the bandwidth requirement included in the session request message is Less than or equal to the bandwidth requirement included in the subscription information of the user of the terminal;
- the processor further performs the following steps:
- the temporary session state information table is created according to the bandwidth requirement included in the modified session request message, and the bandwidth requirement included in the modified session request message is saved in the temporary session state information table.
- the processor further performs the following steps:
- bandwidth requirement included in the response message is different from the bandwidth requirement included in the temporary session state information table, update the temporary session state information table created by the creating module according to the bandwidth requirement included in the response message.
- Bandwidth requirements are different from the bandwidth requirement included in the temporary session state information table, update the temporary session state information table created by the creating module according to the bandwidth requirement included in the response message.
- the processor further performs the following steps: And adjusting a bandwidth requirement in the temporary session state information table created by the creating module according to the link state change message sent by the wireless access point device connected to the terminal;
- the processor further performs the following steps:
- the session request message sent by the terminal to the other terminal is monitored by the proxy device, and the session request message is included in the session request message according to the bandwidth requirement included in the session request message and the bandwidth requirement included in the user subscription configuration information of the terminal. Whether the bandwidth requirement is greater than the bandwidth requirement included in the subscription configuration information of the user of the terminal, and if so, the bandwidth requirement included in the session request message is modified, so that the bandwidth requirement included in the session request message is smaller than the user subscription configuration of the terminal.
- the bandwidth requirement is included in the information; the modified session request message is sent to the other terminal; the bandwidth requirement in the service flow information initiated by the terminal is dynamically adjusted according to the bandwidth requirement included in the user subscription configuration information of the terminal. .
- FIG. 9 is a schematic structural diagram of a system for implementing real-time communication based on the World Wide Web according to another embodiment of the present invention. As shown in FIG. 9, the method includes: a proxy device 91, a wireless access point device 92, a terminal 93, and another terminal 94;
- the proxy device 91 is an implementation device for real-time communication based on the World Wide Web provided by the embodiment shown in FIG. 7 or FIG. 8 above. Specifically, the proxy device 91 can be set in the WLAN controller for the motherboard on which the WebRTC software is installed.
- the wireless access point device 92 is configured to send a link state change message to the proxy device 91 when the link state between the terminal 93 and the other terminal 94 is changed, where the link state change message includes the terminal.
- the link information includes: a link identifier, and further, the link information further includes at least one of a packet loss rate, a retransmission rate, or a signal to noise ratio.
- the terminal 93 is configured to initiate a session request message to the other terminal 94 by using the web server, where the session request message includes service flow information, where the service flow information includes a bandwidth requirement;
- the other terminal 94 is configured to return a pre-answer or response message to the terminal 93 through the web server, where the pre-answer or response message includes service flow information that is acknowledged by another terminal.
- the session request message sent by the terminal to another terminal is monitored by the proxy device, and the session is determined according to the bandwidth requirement of the service flow information included in the session request message and the bandwidth requirement included in the user subscription configuration information of the terminal. Whether the bandwidth requirement of the service flow information included in the request message is greater than the bandwidth requirement included in the subscription configuration information of the user of the terminal, and if yes, modifying the bandwidth requirement of the service flow information included in the session request message, so that the session request message is modified.
- the bandwidth requirement of the service flow information included in the user is less than the bandwidth requirement included in the user subscription configuration information of the terminal; and then the modified session request message is sent to the other terminal;
- the bandwidth requirement dynamically adjusts the bandwidth requirements in the service flow information initiated by the terminal.
- the wireless access point device when the wireless access point device detects that the link state between the terminal and the another terminal changes, the wireless access point device sends a link state change message to the proxy device, and the proxy The device re-adjusts the service flow information included in the temporary session state information table on the proxy device according to the link state change message, and sends a session update message to the terminal, so that the terminal sends the session update to another terminal according to the session update message.
- the request message triggers another terminal to return a session update response message to the terminal; thus, when the wireless network is interfered by the wireless signal, or the wireless network rate has different degrees of fluctuation, or the bandwidth of the wireless network cannot be guaranteed, the proxy device may dynamically The bandwidth requirement in the service flow information initiated by the terminal is adjusted, so that the real-time communication service based on the World Wide Web is not affected, and the continuity of the service is ensured.
- the disclosed systems, apparatus, and methods may be implemented in other ways.
- the device embodiments described above are merely illustrative.
- the division of the unit is only a logical function division.
- there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not executed.
- the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical or otherwise.
- each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
- the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
- the above-described integrated unit implemented in the form of a software functional unit may be stored in the form of code in a computer readable storage medium.
- the above code is stored in a computer readable storage medium and includes instructions for causing a processor or hardware circuit to perform some or all of the steps of the methods described in various embodiments of the present invention.
- the foregoing storage medium includes: a universal serial bus interface, a micro high-capacity mobile storage disk without a physical drive, a mobile hard disk, a read-only memory (English: read-only memory, ROM for short), and a random access memory (English: random -access memory, referred to as RAM), disk or optical disc, and other media that can store program code.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了基于万维网的实时通信的实现方法及装置,包括:代理设备检测到终端发起的基于万维网的实时通信的会话请求消息,所述会话请求消息中包括带宽需求;若所述会话请求消息中包括的带宽需求大于所述终端的用户签约配置信息中包括的带宽需求,则修改所述会话请求消息中包括带宽需求,使得所述会话请求消息中包括的带宽需求小于等于所述终端的用户签约配置信息中包括的带宽需求;将所述修改后的会话请求消息发送给另一终端,可以解决基于万维网的实时通信业务不能根据带宽变化动态调整业务流信息而影响通信业务的问题。
Description
基于万维网的实时通信的实现方法及装置
本申请要求于 2012年 11月 23日提交中国专利局、 申请号为 201210480873. 8、 发 明名称为 "基于万维网的实时通信的实现方法及装置"的中国专利申请的优先权, 其全 部内容通过引用结合在本申请中。 技术领域 本发明实施例涉及通信技术领域,尤其涉及一种基于万维网的实时通信的实现方法 及装置。 背景技术 图 1为基于万维网的实时通信(英文: Web Real-Time Communication,简称 WebRTC) 的***架构图, 如图 1所示, 终端 1可以通过浏览器访问 Web服务器, 其中, Web服务 器例如可以通过超文本传输协议 (英文: Hypertext Transfer Protocol , 简称 HTTP) 或 WebSocket与终端 1通信, 其中, WebSocket用以终端 1在浏览器中实现和 Web服务 器的双向通信。 同时, Web服务器通过信令路径与终端 2对应的其他 Web服务器交互, 以协商终端 1和终端 2需要建立的流媒体会话中的业务流信息, 其中, 业务流信息中包 括带宽需求、 编码格式、 业务类型、 业务端口等信息, 从而使得终端 1和终端 2之间建 立流媒体通信路径, 实现语音、 视频、 数据等流媒体业务。
然而, 在实际应用中, 由于无线网络速率的波动导致终端 1和终端 2之间的流媒体 业务所需的带宽不能得到保证时, 目前, 基于万维网的实时通信业务不能根据无线网络 状态动态调整业务流信息中的带宽需求, 从而会影响基于万维网的实时通信业务。 发明内容
本发明提供一种基于万维网的实时通信的实现方法及装置,用以解决基于万维网的 实时通信业务不能根据无线网络状态动态调整业务流信息中的带宽需求而影响通信业 务的问题。
第一方面, 本发明提供一种基于万维网的实时通信的实现方法, 包括:
代理设备检测到终端发起的基于万维网的实时通信的会话请求消息,所述会话请求 消息中包括带宽需求;
若所述会话请求消息中包括的带宽需求大于所述终端的用户签约配置信息中包括 的带宽需求, 则修改所述会话请求消息中包括的带宽需求, 使得所述会话请求消息中包 括的带宽需求小于等于所述终端的用户签约配置信息中包括的带宽需求;
将所述修改后的会话请求消息发送给另一终端。
基于第一方面, 在第一方面的第一种可能的实现方式中, 将所述修改后的会话请求 消息发送给另一终端之前, 包括:
所述代理设备根据所述修改后的会话请求消息, 创建临时会话状态信息表, 将所述 修改后的会话请求消息中包括的带宽需求保存到所述临时会话状态信息表中。
基于第一方面的第一种可能的实现方式, 在第二种可能的实现方式中, 将所述修改 后的会话请求消息发送给另一终端之后, 还包括:
所述代理设备检测到所述另一终端回应的基于万维网的实时通信的应答消息; 若所述应答消息中包括的带宽需求与所述临时会话状态信息表中包括的带宽需求 不一致, 则根据所述应答消息中包括的带宽需求更新所述临时会话状态信息表中的带宽 需求;
将所述应答消息发送给所述终端。
基于第一方面以及第一方面的第一和第二种中的任一种可能的实现方式,在第三种 可能的实现方式中, 所述方法还包括:
所述代理设备接收与所述终端连接的无线接入点设备发送的链路状态变化消息,根 据所述链路状态变化消息调整所述临时会话状态信息表中的带宽需求;
所述代理设备向所述终端发送会话更新消息,所述会话更新消息中包括所述调整后 的带宽需求。
基于第一方面的第三种可能的实现方式, 在第四种可能的实现方式中, 所述代理设 备向所述终端发送会话更新消息之后, 包括:
所述代理设备检测到所述终端发起的基于万维网的实时通信的会话更新请求消息, 所述会话更新请求消息中包括所述调整后的带宽需求;
将所述会话更新请求消息发送给所述另一终端。
基于第一方面的第四种可能的实现方式, 在第五种可能的实现方式中, 将所述会话 更新请求消息发送给所述另一终端之后, 包括:
所述代理设备检测到所述另一终端回应的基于万维网的实时通信的会话更新应答 消息;
若所述会话更新应答消息中包括的带宽需求与所述代理设备保存的临时会话状态 信息表中包括的带宽需求不一致, 则根据所述会话更新应答消息中包括的带宽需求更新 所述临时会话状态信息表中的带宽需求;
将所述会话更新应答消息发送给所述终端。
第二方面, 本发明提供一种基于万维网的实时通信的实现装置, 包括:
监测模块, 用于检测到终端发起的基于万维网的实时通信的会话请求消息, 所述会 话请求消息中包括带宽需求;
调整模块,用于若所述会话请求消息中包括的带宽需求大于所述终端的用户签约配 置信息中包括的带宽需求, 则修改所述会话请求消息中包括的带宽需求, 使得所述会话 请求消息中包括的带宽需求小于等于所述终端的用户签约配置信息中包括的带宽需求; 发送模块, 用于将所述调整模块修改后的会话请求消息发送给所述另一终端。 基于第二方面, 在第二方面的第一种可能的实现方式中, 所述装置还包括: 创建模块, 用于根据所述调整模块修改后的会话请求消息中包括的带宽需求, 创建 临时会话状态信息表,将所述修改后的会话请求消息中包括的带宽需求保存到所述临时 会话状态信息表中。
基于第二方面的第一种可能的实现方式, 在第二种可能的实现方式中, 监测模块, 还用于检测到所述另一终端回应的基于万维网的实时通信的应答消息;
所述调整模块,还用于若所述应答消息中包括的带宽需求与所述临时会话状态信息 表中包括的带宽需求不一致, 则根据所述应答消息中包括的带宽需求更新所述创建模块 创建的临时会话状态信息表中的带宽需求;
所述发送模块, 还用于将所述应答消息发送给所述终端。
基于第二方面以及第二方面的第一和第二种中的任一种可能的实现方式,在第三种 可能的实现方式中, 所述调整模块, 还用于根据所述终端连接的无线接入点设备发送的 链路状态变化消息, 调整所述创建模块创建的临时会话状态信息表中的带宽需求; 所述发送模块, 还用于向所述终端发送会话更新消息, 所述会话更新消息中包括所 述调整模块调整后的带宽需求。
基于第二方面的第三种可能的实现方式, 在第四种可能的实现方式中, 所述监测模 块, 还用于检测到所述终端发起的基于万维网的实时通信的会话更新请求消息, 所述会 话更新请求消息中包括所述调整后的带宽需求;
所述发送模块, 还用于将所述会话更新请求消息发送给所述另一终端。
基于第二方面的第四种可能的实现方式, 在第五种可能的实现方式中, 所述监测模 块, 还用于检测到所述另一终端回应的基于万维网的实时通信的会话更新应答消息; 所述调整模块,还用于若所述会话更新应答消息中包括的带宽需求与所述代理设备 保存的临时会话状态信息表中包括的带宽需求不一致, 则根据所述会话更新应答消息中 包括的带宽需求更新所述临时会话状态信息表中的带宽需求;
所述发送模块, 还用于将所述监测模块检测到的会话更新应答消息发送给所述终 本发明通过代理设备监测到终端向另一终端发送的会话请求消息,根据会话请求消 息中包括的带宽需求, 以及该终端的用户签约配置信息中包括的带宽需求, 确定会话请 求消息中包括的带宽需求是否与大于该终端的用户签约配置信息中包括的带宽需求,若 是, 则对会话请求消息中包括的带宽需求进行修改, 使得会话请求消息中带宽需求小于 该终端的用户签约配置信息中包括的带宽需求; 从而可以实现根据终端的用户签约配置 信息中包括的带宽需求调整终端发起的会话请求消息中的带宽需求。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现有 技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下面描述中的附图是本发 明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还 可以根据这些附图获得其他的附图。
图 1为基于万维网的实时通信 WebRTC的***架构图;
图 2为本发明一实施例提供的基于万维网的实时通信的实现方法的流程示意图; 图 3为本发明另一实施例提供的基于万维网的实时通信的实现方法的流程示意图; 图 4为本发明另- -实施例提供的基于万维网的实时通信的实现方法的信令图; 图 5为本发明另- -实施例提供的基于万维网的实时通信的实现方法的信令图; 图 6为本发明另- -实施例提供的基于万维网的实时通信的实现方法的信令图; 图 7为本发明另- -实施例提供的基于万维网的实时通信的实现装置的结构示意图; 图 8为本发明另- -实施例提供的基于万维网的实时通信的实现装置的结构示意图; 图 9为本发明另- -实施例提供的基于万维网的实时通信的实现***的结构示意图。 具体实施方式
为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发明实施例中 的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例 是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技 术人员在没有作出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范 围。
图 2为本发明一实施例提供的基于万维网的实时通信的实现方法的流程示意图, 如 图 2所示, 本实施例的基于万维网的实时通信的实现方法可以包括:
201、 代理设备检测到终端发起的基于万维网的实时通信的会话请求消息, 所述会 话请求消息中包括带宽需求。
其中, 终端发起的基于万维网的实时通信的会话请求消息是终端通过 Web服务器向 另一终端发起的会话请求消息。
举例来说,该会话请求消息是会话描述协议(英文: Session Description Protocol , 简称 SDP) 中规定的一种请求消息, 如 offer消息。
该终端发送该会话请求消息, 以请求和另一终端之间建立流媒体业务。 该会话请求 消息中包括带宽需求, 其中, 会话请求消息中包括的带宽需求是该终端为待建立的流媒 体业务所请求的带宽。 通常, 会话请求消息中还可以包括业务类型、 业务端口以及终端 的互联网协议 (英文: Internet Protocol , 简称 IP) 地址等业务流信息。
其中, 代理设备是 WebRTC代理。 该 WebRTC代理可以采用安装有 WebRTC软件的主板来 实现。 举例来说, 该安装有 WebRTC软件的主板可以设置在无线局域网(英文: wireless local area network, 简称 WLAN)控制器中。 该 WLAN控制器通常用于管理和控制无线接 入点 (英文: access point, 简称 AP)设备, 为无线接入点设备提供业务配置。 该 WLAN 控制器可以是遵循请求注解 (英文: Request for Comments, 简称 RFC) 5415的接入控 制器 (英文: Access Control ler, 简称 AC) 。
在本发明的一个实施方式中, 终端通过无线接入点设备连接网络后, 终端通过浏览 器在所述终端上创建流媒体会话信息, 例如分配媒体会话端口、 语音视频编码格式等, 之后, 终端通过 Web服务器向另一终端发送会话请求消息。 代理设备检测到终端通过 Web 服务器向另一终端发起的会话请求消息, 获取该会话请求消息中包括的业务流信息, 并 进一步获取包括在业务流信息中的带宽需求。
202、 代理设备确定所述会话请求消息中包括的带宽需求是否大于所述终端的用户 签约配置信息中包括的带宽需求,若代理设备确定所述会话请求消息中包括的带宽需求
小于等于所述终端的用户签约配置信息中包括的带宽需求, 则执行步骤 203, 若代理设 备确定所述会话请求消息中包括的带宽需求大于所述终端的用户签约配置信息中包括 的带宽需求, 则执行步骤 204。
其中, 用户签约配置信息是在终端向网络运营商签约时, 由网络运营商为该终端配 置的用户签约配置信息。 举例来说, 终端向网络运营商注册网络成功之后, 代理设备例 如可以从网络运营商的验证、 授权和记账 (英文: Authentication Authorization Accounting, 简称 AAA) 服务器或者归属用户服务器 (英文: Home Subscriber Server, 简称 HSS ) 中获取并保存与该终端对应的用户签约配置信息, 其中, 用户签约配置信息 中包括带宽需求, 通常, 用户签约配置信息中包括的带宽需求是指可以授权给终端用户 使用的最大带宽。
举例来说,若用户签约配置信息中包括的带宽需求为 512千比特每秒(英文: ki lobit per second, 简称 kbps ) , 假设终端发起的业务流信息中包括的带宽需求为 1百万比特 每秒 (英文: megabit per second, 简称 Mbps ) ,则可以确定业务流信息中包括的带宽 需求大于所述终端的用户签约配置信息中包括的带宽需求。如果用户签约配置信息中的 带宽需求为 1Mbps,业务流信息中的带宽需求为 512kbps,则可以确定业务流信息中包括 的带宽需求小于所述终端的用户签约配置信息中包括的带宽需求。
203、 代理设备将所述会话请求消息通过 Web服务器发送给另一终端。
代理设备若确定终端发起的会话请求消息中包括的带宽需求小于等于所述终端的 用户签约配置信息中包括的带宽需求, 代理设备将所述会话请求消息通过 WEB服务器发 送给另一终端;
可选地, 代理设备在该代理设备上创建临时会话状态信息表, 并将会话请求消息中 包括的带宽需求保存到临时会话状态信息表中, 通常, 在实际应用中, 除了将会话请求 消息中包括的带宽需求保存到临时会话状态信息表中之外,代理设备还可以将会话请求 消息中包括的其他业务流信息, 例如业务类型, 业务端口以及终端的 IP地址, 保存到临 时会话状态信息表中。
204、 代理设备修改所述会话请求消息中包括的带宽需求, 使得所述会话请求消息 中包括的带宽需求小于等于所述用户签约配置信息中包括的带宽需求,将修改后的会话 请求消息通过 Web服务器发送给另一终端。
在确定终端发起的会话请求消息中包括的带宽需求大于所述终端的用户签约配置 信息中包括的带宽需求的情况下,代理设备可以修改所述会话请求消息中包括的带宽需
求, 使得会话请求消息中包括的带宽需求小于等于所述用户签约配置信息中包括的带宽 需求。
可选地, 代理设备根据所述修改后的会话请求消息, 在所述代理设备上创建临时会 话状态信息表, 并将修改后的会话请求消息中的带宽需求保存到临时会话状态信息表 中, 通常, 在实际应用中, 除了将修改后的会话请求消息中的带宽需求保存到临时会话 状态信息表中之外, 代理设备还可以将修改后的会话请求消息中包括的其他业务流信 息, 例如业务类型, 业务端口以及终端的 IP地址, 保存到临时会话状态信息表中。
205、 代理设备检测到另一终端回应的基万维网的实时通信的应答消息。
其中, 另一终端发起的基于万维网的实时通信的应答消息是另一终端通过 Web服务 器向终端发送的预应答或应答消息。
举例来说, 应答消息是会话描述协议中规定的一种应答消息, 如 Pre-answer或
&nSW6r消息。
该应答消息中包括另一终端回应的带宽需求, 进一步地, 该应答消息中还包括另一 终端回应的其他业务流信息, 例如另一端口的 IP地址、 另一终端应答的业务类型、 业务 端口等信息。
在本发明的一个实施方式中,代理设备将会话请求消息或者修改后的会话请求消息 发送给另一终端之后, 另一终端通过浏览器在另一终端上创建流媒体会话信息, 例如分 配媒体会话端口, 又例如, 根据接收到的会话请求消息中的业务流信息, 根据业务流信 息中包括的业务类型, 选择支持所述业务类型的语音视频编码格式, 如果存在多个支持 所述业务类型的语音视频编码格式, 则根据预设语音视频编码格式信息优先级, 优先使 用优先级排序最前的语音视频编码格式, 或者在多个支持的语音视频编码格式中任选一 个语音视频编码格式。 之后, 另一终端通过 Web服务器向终端回复预应答或应答消息。
在本发明实施例采用代理设备创建临时会话状态信息表的实现方式中,代理设备检 测到另一终端通过 Web服务器向终端发送的预应答或应答消息; 预应答或应答消息中包 括另一终端应答的带宽需求以及其他业务流信息; 通常, 另一终端应答的带宽需求不会 超过代理设备发送给另一终端的会话请求消息中包含的带宽需求。
假设所述预应答或应答消息中包括的带宽需求与所述临时会话状态信息表中包括 的带宽需求不一致, 代理设备根据所述预应答或应答消息中包括的带宽需求, 更新代理 设备上创建的临时会话状态信息表中的带宽需求, 例如, 假设终端发起的会话请求消息 中包括的带宽需求为 1Mbps, 假设代理设备检测该终端发起的会话请求消息中包括的带
宽需求没有超出该终端的用户签约配置信息中包括的带宽需求, 如果另一终端的最大带 宽需求为 512Kbps, 当另一终端向终端发送的预应答或应答消息中的带宽需求为
512kbps, 代理设备根据所述预应答或应答消息中包括的带宽需求更新代理设备上创建 的临时会话状态信息表中的带宽需求, 即代理设备将代理设备上创建的临时会话状态信 息表中带宽需求更新为 512Kbps。
在实际应用中, 假设终端发起的会话请求消息中包括多个业务类型, 而另一终端只 应答了部分业务类型时,代理设备根据所述预应答或应答消息中包括的业务类型更新代 理设备上创建的临时会话状态信息表中的业务类型, 以便及时释放代理设备的资源空 间。
206、 代理设备将所述应答消息发送给所述终端。
终端接收到应答消息后, 更新所述终端上的流媒体会话信息, 例如保存另一终端的 IP地址、 另一终端的业务端口、 另一终端应答的业务流信息、 语音视频编解码格式等。 终端通过浏览器根据更新后的流媒体会话信息,然后使用修改后的流媒体会话信息进行 通信。
可选的, 上述会话请求消息或应答消息中除了包括带宽需求之外, 还包括终端的 IP 地址、 另一端口的 IP地址、 业务类型、 业务端口等。 可选地, 代理设备进一步可以获取 会话请求消息或应答消息中的业务类型, 配置与该业务类型对应的服务质量等级信息, 之后,将该业务类型对应的服务质量等级信息发送给与所述终端连接的无线无线接入点 设备, 以使无线接入点设备根据所述服务质量等级信息, 设置与所述服务质量等级信息 对应的优先级, 从而使得无线接入点设备检测到来自终端的业务流后, 根据业务流信息 中包括的业务类型, 确定该业务类型对应的服务质量 (英文: qual ity of service, 简 称 QoS) 等级, 然后对该业务流进行相应的优先级标记, 从而可以实现根据业务流的优 先级进行调度, 例如, 高优先级的业务报文先传输, 低优先级的业务报文后传输, 保证 了不同业务流的服务质量 QoS。
本发明实施例通过代理设备监测到终端向另一终端发送的会话请求消息,根据会话 请求消息中包括的带宽需求, 以及该终端的用户签约配置信息中包括的带宽需求, 确定 会话请求消息中包括的带宽需求是否与大于该终端的用户签约配置信息中包括的带宽 需求, 若是, 则对会话请求消息中包括的带宽需求进行修改, 使得会话请求消息中包括 的带宽需求小于该终端的用户签约配置信息中包括的带宽需求; 从而可以实现根据终端 的用户签约配置信息中包括的带宽需求动态地调整终端发起的业务流信息中的带宽需
求, 使得终端与另一终端之间基于万维网的实时通信业务不会受到影响, 保证终端与另 一终端之间的流媒体会话的连续性。
在本发明实施例采用代理设备创建临时会话状态信息表的实现方式中,本发明实施 例可以进一步采用图 3所示的实现方式。 图 3为本发明实施例的一种实现方式提供的基于 万维网的实时通信的实现方法的流程示意图。 该方法包括:
301、 代理设备接收无线接入点设备发送的链路状态变化消息。
当无线接入点设备监测到所述终端与所述另一终端之间的链路状态发生变化时,例 如, 当链路的丢包率或重传率大于指定的门限后, 或者链路的信噪比 (英文:
signal-to-noise ratio, 简称 SNR)大于指定的门限后, 或者信干噪比(英文: signal to interference plus noise ratio, 简称 SINR) 大于指定的门限后, 无线接入点设备向 代理设备发送链路状态变化消息,其中,链路状态变化消息中包括终端标识和链路信息, 其中, 链路信息中包括链路标识, 进一步地, 链路信息中还可以包括丢包率、 重传率或 信噪比中的至少一项。
302、 代理设备根据所述链路状态变化消息调整所述临时会话状态信息表中的带宽 需求。
代理设备中可以保存有预设的门限和带宽需求变化量的对应关系。 具体实现时, 例 如, 当终端与另一终端之间的链路的丢包率大于第一预设门限, 例如 10%时, 代理设备 可以根据与第一预设门限对应的带宽需求变化量调整临时会话状态信息表中的带宽需 求,如减少 20%; 当终端与另一终端之间的链路的丢包率大于第二预设门限,例如 25%时, 代理设备可以根据与第二预设门限对应的带宽需求变化量调整临时会话状态信息表中 的带宽需求, 如减少 40%。
又例如, 假设终端与另一终端之间的链路的 SNR小于第三预设门限时, 代理设备可 以相应减少临时会话状态信息表中的带宽需求。
303、 代理设备向终端发送会话更新消息, 所述会话更新消息中包括调整后的带宽 需求。
举例来说, 会话更新消息是会话描述协议中规定的一种通知消息, 如 notify消息。 该会话更新消息中包括代理设备调整后的带宽需求, 其中, 调整后的业务流信息包 括减少后的带宽需求。
终端收到会话更新消息后,检测调整后的带宽需求是否满足终端和另一终端之间的 流媒体业务所需要的最小带宽, 如果满足, 则终端调整所述终端上的流媒体会话信息,
向另一终端发送会话更新请求消息, 并在会话更新请求消息中包括所述调整后的带宽需 求。
304、 代理设备检测到终端发起的基于万维网的实时通信的会话更新请求消息。 其中, 终端发起的基于万维网的实时通信的会话更新请求消息为终端通过 Web服务 器向另一终端发起的会话更新请求消息。
举例来说, 会话更新请求消息是会话描述协议中规定的一种请求消息, 如 notify request消息。
该会话更新请求消息中包括调整后的带宽需求, 其中, 调整后的带宽需求包括代理 设备减少后的带宽需求。
305、 代理设备将所述会话更新请求消息通过 Web服务器发送给另一终端。
可选地, 另一终端接收会话更新请求消息后, 可以检查调整后的带宽需求是否满足 终端和另一终端之间的流媒体业务所需要的最小带宽, 如果满足, 则另一终端根据调整 后的带宽需求调整所述另一终端上的流媒体会话信息, 并向终端回复会话更新应答消 息;
可选地, 另一终端接收会话更新请求消息之前, 终端已经根据代理设备发送的会话 更新消息,检测调整后的带宽需求是否满足终端和另一终端之间的流媒体业务所需要的 最小带宽, 因此, 另一终端接收会话更新请求消息之后, 可以直接根据调整后的带宽需 求调整所述另一终端上的流媒体会话信息, 并向终端回复会话更新应答消息。
306、 代理设备检测到所述另一终端回应的基于万维网的实时通信的会话更新应答 消息。
其中,所述另一终端回应的基于万维网的实时通信的会话更新应答消息为所述另一 终端通过 Web服务器向终端发起的会话更新应答消息。
举例来说, 会话更新应答消息是会话描述协议中规定的一种应答消息, 如 notify response消息。
该会话更新应答消息中包括另一终端应答的带宽需求, 进一步地, 会话更新应答消 息中还可以包括另一终端应答的其他业务流信息, 例如, 另一终端应答的业务类型、 业 务端口以及另一终端的 IP地址等信息。
若所述会话更新应答消息中包括的带宽需求与所述代理设备创建的临时会话状态 信息表中包括的带宽需求不一致, 则根据所述会话更新应答消息中包括的带宽需求更新 所述临时会话状态信息表中的带宽需求。
307、 代理设备将所述会话更新应答消息发送给所述终端。
终端通过浏览器根据会话更新应答消息更新所述终端上的流媒体会话信息,然后使 用修改后的流媒体会话信息进行通信。
本发明实施例中通过无线接入点设备在监测到终端与所述另一终端之间的链路状 态发生变化时, 无线接入点设备向代理设备发送链路状态变化消息, 代理设备根据所述 链路状态变化消息重新调整所述代理设备创建的临时会话状态信息表中包括的带宽需 求, 并向终端发送会话更新消息, 以使终端根据会话更新消息, 向另一终端发送会话更 新请求消息, 触发另一终端向终端返回会话更新应答消息; 从而当无线网络受到无线信 号的干扰, 或者无线网络速率存在不同程度的波动, 或者无线网络的带宽不能得到保证 时, 通过代理设备可以动态地调整终端发起的业务流信息中的带宽需求, 从而不会对基 于万维网的实时通信业务造成影响, 保证了业务的连续性。
图 4为本发明另一实施例提供的基于万维网的实时通信的实现方法的信令图; 如图 4 所示, 当终端向另一终端发起语音或视频实时通信的过程, 具体包括:
401、 WebRTC代理监测到终端发起的会话请求消息。
具体实现时, 终端通过浏览器访问 Web服务器, 通过 Web服务器向另一终端发起会话 请求消息,该会话请求消息用于请求与另一终端建立流媒体会话,流媒体会话包括语音, 视频和数据传输中的至少一项。
在终端发起会话请求消息前, 终端通过浏览器在所述终端上创建流媒体会话信息, 包括分配媒体会话端口、 语音视频编码格式等。
WebRTC代理监测到会话请求消息, 在 WebRTC代理上创建临时会话状态信息表; 具体 实现时, WebRTC代理解释并获取会话请求消息中包括的带宽需求以及其他业务流信息; WebRTC代理根据获取的会话请求消息中包括的带宽需求和终端的用户签约配置信 息中的带宽需求进行相应的处理, 例如, 当业务流信息中的带宽需求大于用户签约配置 信息中的带宽需求时, 则修改业务流信息中的带宽需求, 使得业务流信息中的带宽需求 小于用户签约配置信息中的带宽需求。
402、 WebRTC代理通过 Web服务器将会话请求消息或修改后的会话请求消息发送另一 终端。
403、 WebRTC代理检测到另一终端回复的预应答消息。
具体地, 另一终端收到会话请求消息或修改后的会话请求消息之后, 通过浏览器在 所述另一终端上创建流媒体会话信息, 例如, 分配会话端口; 例如, 根据会话请求消息
或修改后的会话请求消息中的业务流信息, 获取终端支持的语音视频等媒体信息, 选择 本次会话使用的媒体信息, 可选地, 如果另一终端支持多个语音视频编码格式, 根据用 户指令任选一个支持的语音视频编码格式。 然后, 另一终端通过 Web服务器向终端发送 预应答消息。
WebRTC代理检测到另一终端回复的预应答消息之后, 另一终端回复的预应答消息中 的带宽需求与 WebRTC代理上的临时会话状态信息表中的带宽需求不一致时, WebRTC代理 根据预应答消息中的带宽需求更新所述 WebRTC代理上的临时会话状态信息表中的带宽 需求。 通常, WebRTC代理还可以将预应答消息中的其他业务流信息, 例如另一终端应答 的业务类型、 业务端口以及另一终端的 IP地址, 保存到临时会话状态信息表中。
404、 WebRTC代理将预应答消息发送给终端。
405、 终端根据预应答消息, 更新所述终端上的流媒体会话信息。
终端接收到预应答消息之后, 需要根据预应答消息中的带宽需求以及其他业务流信 息, 更新所述终端上的流媒体会话信息, 例如, 保存另一终端的 IP地址和业务端口以及 另一终端支持的语音或视频的编解码格式, 又例如, 假设另一终端只应答了部分业务流 信息, 终端根据另一终端应答的部分业务流信息, 删除其他部分业务流信息, 又例如, 更新终端上的流媒体会话信息中的带宽需求。
此时, 终端和另一终端之间建立了流媒体通信路径, 终端和另一终端可以通过建立 的流媒体通信路径, 根据各自的流媒体会话信息实现流媒体会话。 或者
406、 WebRTC代理检测到另一终端通过 Web服务器向终端发送的应答消息。
假设另一终端根据用户指令接受会话请求, 即可触发另一终端通过 Web服务器向终 端发送应答消息。
WebRTC代理检测到另一终端回复的应答消息之后, 另一终端回复的应答消息中的带 宽需求与 WebRTC代理上的临时会话状态信息表中的带宽需求不一致时, WebRTC代理根据 应答消息中的带宽需求更新所述 WebRTC代理上的临时会话状态信息表中的带宽需求。通 常, WebRTC代理还可以将应答消息中的其他业务流信息,例如另一终端应答的业务类型、 业务端口以及另一终端的 IP地址, 保存到临时会话状态信息表中。
407、 WebRTC代理将应答消息发送给终端;
408、 终端根据应答消息, 更新所述终端上的流媒体会话信息。
例如,保存另一终端的 IP地址和业务端口以及另一终端支持的语音或视频的编解码 格式, 又例如, 假设另一终端只应答了部分业务流信息, 终端根据另一终端应答的部分 业务流信息, 删除其他部分业务流信息。
终端通过浏览器根据更新后的流媒体会话信息,然后使用修改后的业务流信息进行 通信。
可选地, 代理设备进一步可以获取会话请求消息或应答消息中的业务类型, 配置与 该业务类型对应的服务质量等级信息, 之后, 将该业务类型对应的服务质量等级信息发 送给与所述终端连接的无线无线接入点设备, 以使无线接入点设备根据所述服务质量等 级信息, 设置与所述服务质量等级信息对应的优先级, 从而使得无线接入点设备检测到 来自终端的业务流后, 根据业务流信息中包括的业务类型, 确定该业务类型对应的 QoS 等级, 然后对该业务流进行相应的优先级标记。
例如, 终端向另一终端发送会话媒体流时, 无线接入点设备可以检测来自终端的媒 体流,获取媒体流中的业务流信息,根据获取的业务流信息中的业务类型确定对应的 Qos 等级信息, 根据确定的 Qos等级信息确定对应的业务流的优先级。 当媒体流是 IPv4报文, 则可以将优先级标识添加到第 4版互联网协议 (英文: Internet Protocol version 4, 简称 IPv4)报文的服务类型 (英文: Type of Service, 简称 ToS) 字段。 在实际应用中, 下一跳设备在接收到带有优先级标识的媒体流时, 可以根据优先级标识进行传输, 例如 高优先级的媒体流先传输, 低优先级的媒体流后传输。
又例如, 另一终端向终端发送会话媒体流时, 无线接入点设备可以检测来自另一终 端的媒体流, 获取媒体流中的业务流信息, 根据获取的业务流信息中的业务类型确定对 应的 Qos等级信息, 根据确定的 Qos等级信息确定对应的业务流的优先级。 无线接入点设 备根据优先级标识确定媒体流对应的优先级的发送队列并发送给终端。高优先级的媒体 流先传输给终端, 低优先级的媒体流后传输终端。
本发明实施例通过代理设备监测到终端向另一终端发送的会话请求消息,根据会话 请求消息中包括的带宽需求, 以及该终端的用户签约配置信息中包括的带宽需求, 确定 会话请求消息中包括的带宽需求是否与大于该终端的用户签约配置信息中包括的带宽 需求, 若是, 则对会话请求消息中包括的带宽需求进行修改, 使得会话请求消息中包括 的带宽需求小于该终端的用户签约配置信息中包括的带宽需求; 之后, 将修改后的会话 请求消息发送给另一终端; 从而可以实现根据终端的用户签约配置信息中包括的带宽需
求动态地调整终端发起的业务流信息中的带宽需求, 从而不会对基于万维网的实时通信 业务造成影响, 保证了业务的连续性。
图 5为本发明另一实施例提供的基于万维网的实时通信的实现方法的信令图; 如图 5 所示, 当另一终端向终端发起语音或视频实时通信的过程, 具体包括:
501、 WebRTC代理监测到另一终端发起的会话请求消息。
另一终端通过 Web服务器向终端发起会话请求消息, 该会话请求消息用于请求与终 端建立流媒体会话, 流媒体会话包括语音或视频或数据传输中的至少一项。
在另一终端发起会话请求消息前, 另一终端通过浏览器在所述另一终端上创建流媒 体会话信息, 包括分配媒体会话端口、 语音视频编码格式等。
WebRTC代理监视到会话请求消息之后, 在 WebRTC代理上创建临时会话状态信息表; 具体实现时, WebRTC代理解释并获取会话请求消息中包括的带宽需求以及其他业务流信 息。
WebRTC代理根据获取的会话请求消息中包括的带宽需求以及终端的用户签约配置 信息中的带宽需求进行处理, 例如, 当会话请求消息中包括的带宽需求大于终端的用户 签约配置信息中的带宽需求时, 则修改会话请求消息中包括的带宽需求。
502、 WebRTC代理将会话请求消息或修改后的会话请求消息发送终端。
503、 WebRTC代理检测到终端回复的预应答消息。
具体地, 终端收到会话请求消息或修改后的会话请求消息之后, 通过浏览器在所述 终端上创建流媒体会话信息, 例如, 分配会话端口; 例如, 根据会话请求消息或修改后 的会话请求消息中的业务流信息, 获取另一终端支持的语音视频等媒体信息, 选择本次 会话使用的媒体信息, 可选地, 如果终端支持多个语音视频编码格式, 则根据用户指令 任选一个语音视频编码格式。 然后, 通过 Web服务器向另一终端发送预应答消息。
WebRTC代理检测到终端回复的预应答消息之后, 终端回复的预应答消息中的带宽需 求与 WebRTC代理上的临时会话状态信息表中的带宽需求不一致时, WebRTC代理根据预应 答消息中的带宽需求更新所述 WebRTC代理上的临时会话状态信息表中的带宽需求。 通 常, WebRTC代理还可以将预应答消息中的其他业务流信息, 例如终端应答的业务类型、 业务端口以及终端的 IP地址, 保存到临时会话状态信息表中。
504、 WebRTC代理将预应答消息通过 Web服务器发送给另一终端。
505、 另一终端根据预应答消息, 更新所述另一终端上的流媒体会话信息。
当另一终端接收到预应答消息之后, 需要根据预应答消息中包含的带宽需求以及其 他业务流信息, 更新所述另一终端上的流媒体会话信息, 例如, 保存终端的 IP地址和业 务端口以及终端支持的语音或视频的编解码格式, 又例如, 假设终端只应答了部分业务 流信息,另一终端根据终端应答的部分业务流信息,删除其他部分业务流信息;又例如, 根据预应答消息中包含的带宽需求更新所述另一终端上的流媒体会话信息中的带宽需 求。
此时, 终端和另一终端之间建立了流媒体通信路径, 终端和另一终端可以通过建立 的流媒体通信路径, 根据各自的流媒体会话信息实现流媒体会话。 或者
506、 WebRTC代理检测到终端通过 Web服务器向另一终端发送的应答消息。
假设终端根据用户指令接受会话请求, 即可触发终端通过 Web服务器向另一终端发 送应答消息。
WebRTC代理检测到终端回复的应答消息之后, 终端回复的应答消息中的带宽需求与 WebRTC代理上的临时会话状态信息表中的带宽需求不一致时, WebRTC代理根据应答消息 中的带宽需求更新所述 WebRTC代理上的临时会话状态信息表中的带宽需求。 通常, WebRTC代理还可以将应答消息中的其他业务流信息, 例如终端应答的业务类型、 业务端 口以及终端的 IP地址, 保存到临时会话状态信息表中。
507、 WebRTC代理将应答消息发送给另一终端。
508、 另一终端根据应答消息, 更新所述另一终端上的流媒体会话信息。
例如, 保存终端的 IP地址和业务端口以及终端支持的语音或视频的编解码格式, 又 例如, 假设终端只应答了部分业务流信息, 另一终端根据终端应答的部分业务流信息, 删除其他部分业务流信息。 此时, 终端和另一终端通过流媒体通信路径进行实时流媒体 通信。
本发明实施例通过代理设备监测到另一终端向终端发送的会话请求消息,根据会话 请求消息中包括的带宽需求, 以及该终端的用户签约配置信息中包括的带宽需求, 确定 会话请求消息中包括的带宽需求是否与大于该终端的用户签约配置信息中包括的带宽 需求, 若是, 则对会话请求消息中包括的带宽需求进行修改, 使得会话请求消息中包括 的带宽需求小于该终端的用户签约配置信息中包括的带宽需求; 之后, 将修改后的会话 请求消息发送给终端; 从而可以实现根据终端的用户签约配置信息中包括的带宽需求动 态地调整另一终端发起的业务流信息中的带宽需求, 从而不会对基于万维网的实时通信 业务造成影响, 保证了业务的连续性。
图 6为本发明另一实施例提供的基于万维网的实时通信的实现方法的信令图, 当无 线网络受到无线信号的干扰等因素, 或者无线网络速率存在不同程度的波动, 或者无线 网络带宽不能得到保证时, 影响到基于万维网的实时通信业务, 为了克服这个问题, 本 实施例可以通过无线接入点设备监测链路状态变化信息触发会话更新的流程, 具体过程 如图 6所示, 包括:
601、 无线接入点设备检测到无线链路状态发生变化。
其中, 无线链路是指终端与另一终端之间建立的流媒体通信链路。
例如, 当无线链路的丢包率或重传率大于指定的门限后, 或者无线链路的信噪 比或信干噪比大于指定的门限后, 无线接入点设备可以检测无线链路状态发生变化。
602、 无线接入点设备向 WebRTC代理发送无线链路状态变化信息。
其中, 无线链路状态变化信息包括终端标识或链路信息, 其中, 链路信息包括 链路标识, 进一步地, 链路信息还可以包括丢包率或信噪比中的至少一项。
603、 WebRTC代理根据无线链路状态变化信息, 调整 WebRTC代理中保存的临时会 话状态信息表。
代理设备中可以保存有预设的门限和带宽需求变化量的对应关系。 具体实现时, 例 如, 当终端与另一终端之间的链路的丢包率大于第一预设门限, 例如 10%时, 代理设备 可以根据与第一预设门限对应的带宽需求变化量调整临时会话状态信息表中的带宽需 求,如减少 20%; 当终端与另一终端之间的链路的丢包率大于第二预设门限,例如 25%时, 代理设备可以根据与第二预设门限对应的带宽需求变化量调整临时会话状态信息表中 的带宽需求, 如减少 40%。
又例如, 假设终端与另一终端之间的链路的 SNR小于第三预设门限时, 代理设备可 以相应减少临时会话状态信息表中的带宽需求。
604、 WebRTC代理发送会话更新消息给终端。
其中, 会话更新消息中包括更新后的带宽需求。
605、 WebRTC代理检测到终端通过 Web服务器向另一终端发送会话更新请求消息。 终端收到会话更新消息后, 检测更新后的带宽需求是否满足终端和另一终端之 间的流媒体会话所需要的最小带宽, 如果满足, 则终端更新所述终端创建的流媒体会话 信息, 即根据会话更新消息中包括的更新后的带宽需求, 修改流媒体会话信息中包括的 带宽需求, 之后, 向另一终端发送会话更新请求消息, 并在会话更新请求消息中携带更
新后的带宽需求。 其中, 会话更新请求消息中包括的更新后的带宽需求可以与会话更新 消息中包括的更新后的带宽需求不一样。
若 WebRTC代理检测到会话更新请求消息中的带宽需求与 WebRTC代理中保存的临 时会话状态信息表中的带宽需求不一致, WebRTC代理更新 WebRTC代理中保存的临时会话 状态信息表中的带宽需求。
606、 WebRTC代理通过 Web服务器向另一终端发送会话更新请求消息。
607、 WebRTC代理检测到另一终端通过 Web服务器向终端返回会话更新应答消息。 可选地, 另一终端接收会话更新请求消息后, 可以检查会话更新请求消息中的 带宽需求是否满足终端和另一终端之间的流媒体会话所需要的最小带宽, 如果满足, 则 另一终端调整所述另一终端上创建的流媒体会话信息, 并通过 Web服务器回复会话更新 应答消息给终端。
若 WebRTC代理检测到会话更新应答消息中的带宽需求与 WebRTC代理中保存的临 时会话状态信息表中的带宽需求不一致, WebRTC代理更新临时会话状态信息表中的带宽 需求。
608、 WebRTC代理将会话更新应答消息发送给终端。
此时, 终端利用浏览器根据会话更新应答消息中的带宽需求, 更新所述终端上 创建的流媒体会话信息, 然后使用修改后的流媒体会话信息进行通信。
本发明实施例中通过无线接入点设备在监测到终端与所述另一终端之间的链路状 态发生变化时, 无线接入点设备向 WebRTC代理发送链路状态变化消息, WebRTC代理根据 所述链路状态变化消息重新调整 WebRTC代理上的临时会话状态信息表中包括的带宽需 求, 并向终端发送会话更新消息, 以使终端根据会话更新消息中包括的更新后的带宽需 求, 向另一终端发送会话更新请求消息, 触发另一终端向终端返回会话更新应答消息; 从而当无线网络受到无线信号的干扰, 或者无线网络速率存在不同程度的波动, 或者无 线网络的带宽不能得到保证时,通过 webRTC代理可以动态地调整终端发起的业务流信息 中的带宽需求,从而不会对基于万维网的实时通信业务造成影响,保证了业务的连续性。
图 7为本发明另一实施例提供的基于万维网的实时通信的实现装置的结构示意图; 如图 7所示, 包括:
监测模块 71, 用于检测到终端发起的基于万维网的实时通信的会话请求消息, 所述 会话请求消息中包括带宽需求;
调整模块 72,用于若所述会话请求消息中包括的带宽需求大于所述终端的用户签约 配置信息中包括的带宽需求, 则修改所述会话请求消息中包括的带宽需求, 使得所述会 话请求消息中包括的带宽需求小于等于所述终端的用户签约配置信息中包括的带宽需 求;
发送模块 73, 用于将所述调整模块 72修改后的会话请求消息发送给所述另一终端。 在本发明的一个实施方式中, 所述装置还包括:
创建模块 74, 用于根据所述调整模块修改后的会话请求消息中包括的带宽需求, 创 建临时会话状态信息表,将所述修改后的会话请求消息中包括的带宽需求保存待所述临 时会话状态信息表中。
监测模块 71, 还用于检测到所述另一终端回应的基于万维网的实时通信的应答消 息;
调整模块 72,还用于若所述应答消息中包括的带宽需求与所述临时会话状态信息表 中包括的带宽需求不一致, 则根据所述应答消息中包括的带宽需求更新所述创建模块创 建的临时会话状态信息表中的带宽需求;
发送模块 73, 还用于将所述预应答或应答消息发送给所述终端。
在本发明的一个实施方式中, 调整模块 72, 还用于根据所述终端连接的无线接入点 设备发送的链路状态变化消息,调整所述创建模块创建的临时会话状态信息表中的带宽 需求;
发送模块 73, 还用于向所述终端发送会话更新消息, 所述会话更新消息中包括所述 调整模块调整后的带宽需求。
监测模块 71,还用于检测到所述终端发起的基于万维网的实时通信的会话更新请求 消息, 所述会话更新请求消息中包括所述调整后的带宽需求;
发送模块 73, 还用于将所述会话更新请求消息发送给所述另一终端。
监测模块 71,还用于检测到所述另一终端回应的基于万维网的实时通信的会话更新 应答消息;
调整模块 72,还用于若所述会话更新应答消息中包括的带宽需求与所述代理设备保 存的临时会话状态信息表中包括的带宽需求不一致, 则根据所述会话更新应答消息中包 括的带宽需求更新所述临时会话状态信息表中的带宽需求;
发送模块 73, 还用于将所述监测模块检测到的会话更新应答消息发送给所述终端。
本发明实施例通过代理设备监测到终端向另一终端发送的会话请求消息,根据会话 请求消息中包括的带宽需求, 以及该终端的用户签约配置信息中包括的带宽需求, 确定 会话请求消息中包括的带宽需求是否与大于该终端的用户签约配置信息中包括的带宽 需求, 若是, 则对会话请求消息中包括的带宽需求进行修改, 使得会话请求消息中包括 的带宽需求小于该终端的用户签约配置信息中包括的带宽需求; 之后, 将修改后的会话 请求消息发送给另一终端; 从而可以实现根据终端的用户签约配置信息中包括的带宽需 求动态地调整终端发起的业务流信息中的带宽需求。
图 8为本发明另一实施例提供的基于万维网的实时通信的实现装置的结构示意图; 如图 8所示, 本实施例的基于万维网的实时通信的实现装置具体为代理设备, 所述代理 设备包括处理器、存储器和通信总线, 其中, 处理器通过通信总线与存储器连接, 其中, 存储器中保存有基于万维网的实时通信的实现指令, 处理器调取并执行存储器中保存的 基于万维网的实时通信的实现指令; 所述代理设备还包括通信接口, 所述代理设备通过 通信接口与其他网元通信。
所述处理器根据存储器中保存的指令, 执行以下步骤:
检测到终端发起的基于万维网的实时通信的会话请求消息,所述会话请求消息中包 括带宽需求;
若所述会话请求消息中包括的带宽需求大于所述终端的用户签约配置信息中包括 的带宽需求, 则修改所述会话请求消息中包括的带宽需求, 使得所述会话请求消息中包 括的带宽需求小于等于所述终端的用户签约配置信息中包括的带宽需求;
将所述修改后的会话请求消息发送给所述另一终端。
在本发明的一个实施方式中, 所述处理器还执行如下步骤:
根据修改后的会话请求消息中包括的带宽需求, 创建临时会话状态信息表, 将所述 修改后的会话请求消息中包括的带宽需求保存到所述临时会话状态信息表中。
在本发明的一个实施方式中, 所述处理器还执行如下步骤:
检测到所述另一终端回应的基于万维网的实时通信的应答消息;
若所述应答消息中包括的带宽需求与所述临时会话状态信息表中包括的带宽需求 不一致, 则根据所述应答消息中包括的带宽需求更新所述创建模块创建的临时会话状态 信息表中的带宽需求;
将所述应答消息发送给所述终端。
在本发明的一个实施方式中, 所述处理器还执行如下步骤:
根据所述终端连接的无线接入点设备发送的链路状态变化消息,调整所述创建模块 创建的临时会话状态信息表中的带宽需求;
向所述终端发送会话更新消息,所述会话更新消息中包括所述调整模块调整后的带 宽需求。
检测到所述终端发起的基于万维网的实时通信的会话更新请求消息,所述会话更新 请求消息中包括所述调整后的带宽需求;
将所述会话更新请求消息发送给所述另一终端。
在本发明的一个实施方式中, 所述处理器还执行如下步骤:
检测到所述另一终端回应的基于万维网的实时通信的会话更新应答消息; 若所述会话更新应答消息中包括的带宽需求与所述代理设备保存的临时会话状态 信息表中包括的带宽需求不一致, 则根据所述会话更新应答消息中包括的带宽需求更新 所述临时会话状态信息表中的带宽需求;
将所述监测模块检测到的会话更新应答消息发送给所述终端。
本发明实施例通过代理设备监测到终端向另一终端发送的会话请求消息,根据会话 请求消息中包括的带宽需求, 以及该终端的用户签约配置信息中包括的带宽需求, 确定 会话请求消息中包括的带宽需求是否与大于该终端的用户签约配置信息中包括的带宽 需求, 若是, 则对会话请求消息中包括的带宽需求进行修改, 使得会话请求消息中包括 的带宽需求小于该终端的用户签约配置信息中包括的带宽需求; 之后, 将修改后的会话 请求消息发送给另一终端; 从而可以实现根据终端的用户签约配置信息中包括的带宽需 求动态地调整终端发起的业务流信息中的带宽需求。
图 9为本发明另一实施例提供的基于万维网的实时通信的实现***的结构示意图, 如图 9所示, 包括: 代理设备 91、 无线接入点设备 92、 终端 93和另一终端 94;
其中,代理设备 91为上述图 7或图 8所示实施例提供的基于万维网的实时通信的实现 装置。 具体地, 代理设备 91可以为安装有 WebRTC软件的主板, 设置在 WLAN控制器中。
无线接入点设备 92, 具体用于监测到终端 93与另一终端 94之间的链路状态发生变化 时, 向代理设备 91发送链路状态变化消息, 其中, 链路状态变化消息中包括终端标识和 链路信息; 其中, 链路信息包括链路标识, 进一步地, 链路信息中还包括丢包率、 重传 率或信噪比中的至少一项。
终端 93, 用于通过 Web服务器向另一终端 94发起会话请求消息, 会话请求消息中包 括业务流信息, 业务流信息中包括带宽需求;
另一终端 94, 用于通过 Web服务器向终端 93返回预应答或应答消息, 预应答或应答 消息中包括另一终端应答的业务流信息。
本发明实施例通过代理设备监测到终端向另一终端发送的会话请求消息,根据会话 请求消息中包括的业务流信息的带宽需求, 以及该终端的用户签约配置信息中包括的带 宽需求,确定会话请求消息中包括的业务流信息的带宽需求是否与大于该终端的用户签 约配置信息中包括的带宽需求, 若是, 则对会话请求消息中包括的业务流信息的带宽需 求进行修改, 使得会话请求消息中包括的业务流信息的带宽需求小于该终端的用户签约 配置信息中包括的带宽需求; 之后, 将修改后的会话请求消息发送给另一终端; 从而可 以实现根据终端的用户签约配置信息中包括的带宽需求动态地调整终端发起的业务流 信息中的带宽需求。
进一步地, 本实施例中, 通过无线接入点设备在监测到终端与所述另一终端之间的 链路状态发生变化时, 无线接入点设备向代理设备发送链路状态变化消息, 代理设备根 据所述链路状态变化消息重新调整代理设备上的临时会话状态信息表中包括的业务流 信息, 并向终端发送会话更新消息, 以使终端根据会话更新消息, 向另一终端发送会话 更新请求消息, 触发另一终端向终端返回会话更新应答消息; 从而当无线网络受到无线 信号的干扰, 或者无线网络速率存在不同程度的波动, 或者无线网络的带宽不能得到保 证时, 通过代理设备可以动态地调整终端发起的业务流信息中的带宽需求, 从而不会对 基于万维网的实时通信业务造成影响, 保证了业务的连续性。
所属领域的技术人员可以清楚地了解到, 为描述的方便和简洁, 上述描述的***, 装置和单元的具体工作过程, 可以参考前述方法实施例中的对应过程, 在此不再赘述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的***, 装置和方法, 可以 通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示意性的, 例如, 所述单 元的划分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式, 例如多个单 元或组件可以结合或者可以集成到另一个***, 或一些特征可以忽略, 或不执行。 另一 点, 所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口, 装置 或单元的间接耦合或通信连接, 可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的, 作为单元显示 的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个 网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的 目的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元中, 也可以是 各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单元中。 上述集成的单 元既可以采用硬件的形式实现, 也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以以代码的形式存储在一个计算 机可读取存储介质中。 上述代码存储在一个计算机可读存储介质中, 包括若干指令用以 使处理器或硬件电路执行本发明各个实施例所述方法的部分或全部步骤。而前述的存储 介质包括: 通用串行总线接口的无需物理驱动器的微型高容量移动存储盘、 移动硬盘、 只读存储器(英文: read-only memory,简称 ROM)、随机存取存储器(英文: random-access memory, 简称 RAM) 、 磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其限制; 尽管 参照前述实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解: 其依然 可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分技术特征进行等同替 换; 而这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施例技术方案的 保护范围。
Claims
1、 一种基于万维网的实时通信的实现方法, 其特征在于, 包括:
代理设备检测到终端发起的基于万维网的实时通信的会话请求消息,所述会话请求 消息中包括带宽需求;
若所述会话请求消息中的带宽需求大于所述终端的用户签约配置信息中的带宽需 求, 则修改所述会话请求消息中的带宽需求, 使得所述会话请求消息的带宽需求小于等 于所述终端的用户签约配置信息中的带宽需求;
将所述修改后的会话请求消息发送给另一终端。
2、 根据权利要求 1所述的方法, 其特征在于, 修改所述会话请求消息中的带宽需求 之后, 包括:
所述代理设备根据所述修改后的会话请求消息, 创建临时会话状态信息表, 并将所 述修改后的会话请求消息中的带宽需求保存到所述临时会话状态信息表中。
3、 根据权利要求 2所述的方法, 其特征在于, 将所述修改后的会话请求消息发送给 另一终端之后, 还包括:
所述代理设备检测到所述另一终端回应的基于万维网的实时通信的应答消息; 若所述应答消息中包括的带宽需求与所述临时会话状态信息表中包括的带宽需求 不一致, 则根据所述应答消息中包括的带宽需求更新所述临时会话状态信息表中的带宽 需求;
将所述应答消息发送给所述终端。
4、 根据权利要求 2或 3所述的方法, 其特征在于, 还包括:
所述代理设备接收与所述终端连接的无线接入点设备发送的链路状态变化消息,根 据所述链路状态变化消息调整所述临时会话状态信息表中的带宽需求;
所述代理设备向所述终端发送会话更新消息,所述会话更新消息中包括所述调整后 的带宽需求。
5、 根据权利要求 4所述的方法, 其特征在于, 所述代理设备向所述终端发送会话更 新消息之后, 包括:
所述代理设备检测到所述终端发起的基于万维网的实时通信的会话更新请求消息, 所述会话更新请求消息中包括所述调整后的带宽需求;
将所述会话更新请求消息发送给所述另一终端。
6、 根据权利要求 5所述的方法, 其特征在于, 将所述会话更新请求消息发送给所述 另一终端之后, 包括:
所述代理设备检测到所述另一终端回应的基于万维网的实时通信的会话更新应答 消息;
若所述会话更新应答消息中包括的带宽需求与所述代理设备保存的临时会话状态 信息表中包括的带宽需求不一致, 则根据所述会话更新应答消息中包括的带宽需求更新 所述临时会话状态信息表中的带宽需求;
将所述会话更新应答消息发送给所述终端。
7、 一种基于万维网的实时通信的实现装置, 其特征在于, 包括:
监测模块, 用于检测到终端发起的基于万维网的实时通信的会话请求消息, 所述会 话请求消息中包括带宽需求;
调整模块,用于若所述会话请求消息中包括的带宽需求大于所述终端的用户签约配 置信息中包括的带宽需求, 则修改所述会话请求消息中包括的带宽需求, 使得所述会话 请求消息中包括的带宽需求小于等于所述终端的用户签约配置信息中包括的带宽需求; 发送模块, 用于将所述调整模块修改后的会话请求消息发送给所述另一终端。
8、 根据权利要求 7所述的装置, 其特征在于, 还包括:
创建模块, 用于根据所述调整模块修改后的会话请求消息中包括的带宽需求, 创建 临时会话状态信息表,将所述修改后的会话请求消息中包括的带宽需求保存到所述临时 会话状态信息表中。
9、 根据权利要求 7所述的装置, 其特征在于, 所述监测模块, 还用于检测到所述另 一终端回应的基于万维网的实时通信的应答消息;
所述调整模块,还用于若所述应答消息中包括的带宽需求与所述临时会话状态信息 表中包括的带宽需求不一致, 则根据所述应答消息中包括的带宽需求更新所述创建模块 创建的临时会话状态信息表中的带宽需求;
所述发送模块, 还用于将所述应答消息发送给所述终端。
10、 根据权利要求 7-9任一项所述的装置, 其特征在于, 所述调整模块, 还用于根 据所述终端连接的无线接入点设备发送的链路状态变化消息,调整所述创建模块创建的 临时会话状态信息表中的带宽需求;
所述发送模块, 还用于向所述终端发送会话更新消息, 所述会话更新消息中包括所 述调整模块调整后的带宽需求。
11、 根据权利要求 10所述的装置, 其特征在于, 所述监测模块, 还用于检测到所述 终端发起的基于万维网的实时通信的会话更新请求消息,所述会话更新请求消息中包括 所述调整后的带宽需求;
所述发送模块, 还用于将所述会话更新请求消息发送给所述另一终端。
12、 根据权利要求 11所述的装置, 其特征在于, 所述监测模块, 还用于检测到所述 另一终端回应的基于万维网的实时通信的会话更新应答消息;
所述调整模块,还用于若所述会话更新应答消息中包括的带宽需求与所述代理设备 保存的临时会话状态信息表中包括的带宽需求不一致, 则根据所述会话更新应答消息中 包括的带宽需求更新所述临时会话状态信息表中的带宽需求;
所述发送模块, 还用于将所述监测模块检测到的会话更新应答消息发送给所述终
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210480873.8A CN103841085B (zh) | 2012-11-23 | 2012-11-23 | 基于万维网的实时通信的实现方法及装置 |
CN201210480873.8 | 2012-11-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014079386A1 true WO2014079386A1 (zh) | 2014-05-30 |
Family
ID=50775558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2013/087681 WO2014079386A1 (zh) | 2012-11-23 | 2013-11-22 | 基于万维网的实时通信的实现方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103841085B (zh) |
WO (1) | WO2014079386A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014012355A1 (de) * | 2014-08-25 | 2016-02-25 | Unify Gmbh & Co. Kg | Verfahren zur Steuerung einer Multimedia-Anwendung, Softwareprodukt und Vorrichtung |
CN107423128B (zh) * | 2017-07-31 | 2021-03-30 | 北京京东尚科信息技术有限公司 | 信息处理方法及其*** |
CN112911193A (zh) * | 2021-01-29 | 2021-06-04 | 浪潮软件科技有限公司 | 基于WebRTC视频通话的带宽控制方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101242568A (zh) * | 2007-02-09 | 2008-08-13 | 华为技术有限公司 | 一种无线通讯网络中服务质量协商的方法及*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100589436C (zh) * | 2006-03-03 | 2010-02-10 | 中兴通讯股份有限公司 | 一种动态带宽适配的方法 |
CN101330436B (zh) * | 2007-06-19 | 2014-04-30 | 上海贝尔阿尔卡特股份有限公司 | 可调整的组播多媒体业务数据的传输方法及装置 |
CN101436990B (zh) * | 2008-12-23 | 2011-09-14 | 华为终端有限公司 | 一种自动调整编码速率的方法、接收装置及通信*** |
US8400921B2 (en) * | 2010-03-17 | 2013-03-19 | Cisco Technology, Inc. | System and method for providing rate control in a network environment |
-
2012
- 2012-11-23 CN CN201210480873.8A patent/CN103841085B/zh active Active
-
2013
- 2013-11-22 WO PCT/CN2013/087681 patent/WO2014079386A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101242568A (zh) * | 2007-02-09 | 2008-08-13 | 华为技术有限公司 | 一种无线通讯网络中服务质量协商的方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN103841085B (zh) | 2017-03-08 |
CN103841085A (zh) | 2014-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112042233B (zh) | 在5g网络中管理与局域数据网络(ladn)的连接的方法 | |
EP3311534B1 (en) | Method and apparatus for multipath media delivery | |
US7984492B2 (en) | Methods and apparatus for policy enforcement in a wireless communication system | |
US9673996B1 (en) | Redirection of a streaming media session in an anticipated failover scenario | |
JP6397930B2 (ja) | 通信ネットワークにおけるサービス配信 | |
WO2013152472A1 (zh) | 通信方法与***,以及接入网设备与应用服务器 | |
CA2678106A1 (en) | Quality of service application programming interface over socket | |
JP2010510760A (ja) | インテリジェントなサービス品質管理 | |
US10812536B2 (en) | Method and apparatus for providing quality of service for web-based real-time communication | |
WO2018032412A1 (zh) | 一种多路径传输的策略控制方法及相关设备 | |
US20120166659A1 (en) | Node and Method for Quality of Service (QoS) Control | |
JP2020536459A (ja) | 上りリンクストリーミング向けのネットワーク支援 | |
KR20110008311A (ko) | 네트워크를 관리하는 방법들 및 디바이스들 | |
WO2013159617A1 (zh) | 一种网络拥塞的处理方法、***和控制网元 | |
WO2012167546A1 (zh) | 业务分发控制方法和设备 | |
WO2014079386A1 (zh) | 基于万维网的实时通信的实现方法及装置 | |
US8659999B2 (en) | Method and system for resource and admission control in an NGN home network | |
JP2023547904A (ja) | アプリケーションプログラム制御方法および装置、デバイス、並びに記憶媒体 | |
JP2024506094A (ja) | ハンドオーバ手順に基づくメッセージ送信方法、装置、機器及びプログラム | |
CN112994946A (zh) | 一种链路聚合方法 | |
EP3238479A1 (en) | Service delivery in a communication network | |
US8451774B2 (en) | Communication system and gateway apparatus | |
CN111615170B (zh) | 一种数据传输方法及*** | |
JP2023537585A (ja) | 端末デバイス、インフラストラクチャ機器および方法 | |
KR101410510B1 (ko) | Sctp를 이용한 데이터 전송 방법 및 장치 |
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: 13856637 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13856637 Country of ref document: EP Kind code of ref document: A1 |