CN104995898B - A kind of methods, devices and systems for establishing data channel - Google Patents

A kind of methods, devices and systems for establishing data channel Download PDF

Info

Publication number
CN104995898B
CN104995898B CN201480000443.9A CN201480000443A CN104995898B CN 104995898 B CN104995898 B CN 104995898B CN 201480000443 A CN201480000443 A CN 201480000443A CN 104995898 B CN104995898 B CN 104995898B
Authority
CN
China
Prior art keywords
communication equipment
channel
channel number
role
passage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201480000443.9A
Other languages
Chinese (zh)
Other versions
CN104995898A (en
Inventor
陈鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN104995898A publication Critical patent/CN104995898A/en
Application granted granted Critical
Publication of CN104995898B publication Critical patent/CN104995898B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/02Selection of wireless resources by user or terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The embodiment of the invention discloses a kind of methods, devices and systems for establishing data channel.This method includes:First communication equipment and the second communication equipment are consulted to determine that first communication equipment establishes data channel using the channel number in first passage number set, channel number during second communication equipment is gathered using second channel number establishes data channel, the first passage number set and the second channel number gather no intersection, it can ensure that the channel number for the data channel that a wherein side establishes and the channel number of the data channel of the opposing party's foundation do not conflict, so as to solve the problems, such as that the data message transmitted by different data channel cannot be distinguished caused by channel number conflict in the prior art, it also avoids reselecting channel number when channel number conflicts simultaneously and establishes communication delay problem caused by data channel.

Description

A kind of methods, devices and systems for establishing data channel
Technical field
The present embodiments relate to the communications field, and more particularly, to a kind of method, apparatus for establishing data channel And system.
Background technology
Real-time Communication for Power Network (Web Real Time Communication, WebRTC) is a kind of real-time number based on WEB According to the communication technology, communicating pair is logical using WebRTC data channel protocols (data channel protocol) transmission data Road is known as data channel (datachannel).
Datachannel is to be carried on SCTP (Stream Control Transmission Protocol, flow control biography Defeated agreement) it is connected, allow to carry 65535 datachannel in a SCTP connection.
Established in specific communication process, between communicating pair after SCTP connections, wherein either side need and The DATA_CHANNEL_OPEN (opening data channel) for including randomly selected channel number can be sent during counterparting communications to other side Message is to establish data channel.DATA_CHANNEL_OPEN message includes the channel number of the data channel to be established, the data The effect (e.g., for Desktop Share) of passage, the type (such as video) of the media transmitted by the data channel.One direction pair After side sends DATA_CHANNEL_OPEN message, which has been established, and the response without waiting for other side can directly be led to The data channel is crossed to send datagram (data message for including the channel number to other side's transmission) to other side;Correspondingly, it is right Side can send the datagram for including the channel number after receiving the DATA_CHANNEL_OPEN message by the data channel Text.
If communicating pair sends DATA_CHANNEL_OPEN message to establish data channel, Shuan Fangfa to other side simultaneously It is possible that carrying identical channel number in the DATA_CHANNEL_OPEN message sent, that is, there are problems that channel number conflict, so as to The problem of causing communicating pair that the data message transmitted by different data channel cannot be distinguished.When a wherein side detect it is logical When Taoist monastic name conflicts, channel number can be reselected and establish new data channel, then can bring larger delay.
The content of the invention
The embodiment of the present invention provides a kind of methods, devices and systems for establishing data channel, for solving in the prior art The problem of data message that cannot be distinguished through different data channel transmission caused by channel number conflict and in channel number Channel number is reselected during conflict and establishes communication delay problem caused by data channel.
In a first aspect, providing a kind of method for establishing data channel, the method is applied to include the first communication equipment With the communication system of the second communication equipment, led in real time by network between first communication equipment and second communication equipment Letter WebRTC data channel protocols communicate, the described method includes:
First communication equipment is consulted to determine that first communication equipment is logical using first with second communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, second communication equipment is gathered using second channel number is built Vertical data channel, the first passage number set and the second channel number gather no intersection;
First communication equipment selects a first passage number for belonging to the first passage number set;
First communication equipment sends first passage to second communication equipment and establishes message, and the first passage is built Vertical message includes the first passage number, to establish the channel number between second communication equipment as the first passage number The first data channel, and carried out data transmission by first data channel and second communication equipment;
First communication equipment receives the second channel that second communication equipment is sent and establishes message, and described second is logical Message is established in road to be included belonging to the second channel number of the second channel number set, for establishing first communication equipment and institute The channel number stated between the second communication equipment is the second data channel of the second channel number, and is led to by second data Road carries out data transmission with second communication equipment.
In the first possible realization method of first aspect:
First communication equipment and second communication equipment pre-set effector role and first passage number collection The correspondence of conjunction, the correspondence gathered by effector role and second channel number;
First communication equipment is consulted to determine that first communication equipment is logical using first with second communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, second communication equipment is gathered using second channel number is built Vertical data channel, specifically includes:First communication equipment is consulted by ICE role negotiations mechanism and second communication equipment It determines the role of first communication equipment and the role of second communication equipment, consults definite first communication equipment Role role in order to control, and institute is determined according to the correspondence that pre-set effector role and first passage number are gathered The channel number stated during the first communication equipment is gathered using first passage number establishes data channel, consults definite second communication The role of equipment is by effector role, in order to second communication equipment according to pre-set by effector role and the The correspondence of two channel number set determines that second communication equipment establishes number using the channel number in second channel number set According to passage.
The possible realization method of with reference to first aspect the first, in second of possible realization method, described first Communication equipment by ICE role negotiations mechanism and second communication equipment consult to determine first communication equipment role and After the role of second communication equipment, first communication equipment sends the first passage and establishes message and receive The second channel is established before message, is further included:First communication equipment receives exhaling for the second communication equipment transmission Request message is, the call request message includes the role of second communication equipment;First communication equipment judges institute Whether state the role of the second communication equipment that call request message includes and the role for consulting the second definite communication equipment It is identical, and when judging identical success response message is returned to second communication equipment.
In the third possible realization method of first aspect, first communication equipment and second communication equipment Consult to determine that first communication equipment establishes data channel, second communication using the channel number in first passage number set Channel number in equipment utilization second channel number set establishes data channel, specifically includes:First communication equipment receives institute The call request message of the second communication equipment transmission is stated, the call request message is gathered including the second channel number, is used for Show that second communication equipment establishes data channel using the channel number in the second channel number set;First communication Equipment determines a channel number collection cooperation with the no intersection of the second channel number set according to the second channel number set Gather for the first passage number;First communication equipment returns to call message to second communication equipment, described Call message is gathered including the first passage number, for showing that first communication equipment utilizes the first passage number Channel number in set establishes data channel.
With reference to first aspect, the first of first aspect is to the third any possible realization method, in the 4th kind of possibility Realization method in, when what first communication equipment received that second communication equipment sends leads to for establishing the 3rd data When the third channel in road establishes message, the third channel that first communication equipment judges to receive establish that message includes the Whether threeway Taoist monastic name belongs to the second channel number set, if be not belonging to, returns to show that refusal uses the described 3rd number According to the message of passage.
Second aspect provides a kind of communication equipment, is led in real time by network between the communication equipment and Correspondent Node Letter WebRTC data channel protocols communicate, and the communication equipment includes negotiation module and communication module;
The negotiation module, for consulting to determine that the communication equipment is gathered using first passage number with the Correspondent Node In channel number establish data channel, the Correspondent Node using second channel number gather in channel number establish data channel, The first passage number set and the second channel number gather no intersection, and for definite first passage number collection will to be consulted Conjunction is transmitted to the communication module;
The communication module for receiving the first passage number set from the negotiation module, and selects one and belongs to The first passage number of the first passage number set sends first passage to the Correspondent Node and establishes message, and described first is logical Message is established in road includes the first passage number, to establish the channel number between the Correspondent Node as the first passage number The first data channel, and carried out data transmission by first data channel with the Correspondent Node, be additionally operable to receive institute The second channel for stating Correspondent Node transmission establishes message, and the second channel, which establishes message, to be included belonging to the second channel number collection The second channel number of conjunction, for establishing the channel number between the communication equipment and the Correspondent Node as the second channel number The second data channel, and carried out data transmission by second data channel with the Correspondent Node.
In the first possible realization method of second aspect:
The communication equipment and the Correspondent Node pre-set the correspondence of effector role and first passage number set Relation, the correspondence gathered by effector role and second channel number;
The negotiation module consults to determine described lead to specifically for passing through ICE role negotiations mechanism and the Correspondent Node Believe the role of equipment and the role of the Correspondent Node, the role for consulting definite communication equipment role in order to control, and The correspondence gathered according to pre-set effector role and first passage number determines that the communication equipment is logical using first Channel number in Taoist monastic name set establishes data channel, the role for consulting the definite Correspondent Node be by effector role, with Convenient for the Correspondent Node according to determining the pre-set correspondence gathered by effector role and second channel number Channel number during Correspondent Node is gathered using the second channel number establishes data channel.
With reference to the first possible realization method of second aspect, in second of possible realization method, the communication Module is additionally operable to receive the second channel number set from the negotiation module, receives the calling that the Correspondent Node is sent and ask Message is sought, the call request message includes the role of the Correspondent Node, judges the communication that the call request message includes Whether the role of the Correspondent Node of the role of opposite end with being received from the negotiation module identical, and when judging identical to The Correspondent Node returns to success response message.
In the third possible realization method of second aspect, the communication module is additionally operable to receive the communication pair The call request message sent is held, the call request message is gathered including the second channel number, for showing the communication Channel number during opposite end is gathered using the second channel number establishes data channel, and the second channel number set is transmitted to The negotiation module;The negotiation module is gathered specifically for receiving the second channel number from the communication module, according to institute It states second channel number set and determines that one is gathered the channel number set of no intersection as described first with the second channel number Channel number set, and the first passage number set is transmitted to the communication module;The communication module is additionally operable to from described Negotiation module receives the first passage number set, and returns to call message, the call to the Correspondent Node Message is gathered including the first passage number, for showing the communication equipment using the passage in the first passage number set Number establish data channel.
With reference to second aspect, second aspect the first to the third any possible realization method, in the 4th kind of possibility Realization method in, the communication module, be additionally operable to when the communication module receive that the Correspondent Node sends for building When the third channel of vertical triple data path establishes message, the third channel for judging to receive establishes the threeway that message includes Whether Taoist monastic name belongs to the second channel number set, if be not belonging to, returns to show that refusal is led to using the 3rd data The message in road.
The third aspect provides a kind of communication system, and the communication system includes the first communication equipment and the second communication is set It is standby, between first communication equipment and second communication equipment by real-time Communication for Power Network WebRTC data channel protocols into Row communication;
First communication equipment, for consulting to determine that first communication equipment utilizes the with second communication equipment Channel number in one channel number set establishes data channel, second communication equipment utilizes the passage in second channel number set Data channel number is established, the first passage number set and the second channel number gather no intersection;It is additionally operable to selection one Belong to the first passage number of the first passage number set, sending first passage to second communication equipment establishes message, institute State first passage establish message include the first passage number, using establish and second communication equipment between channel number as institute The first data channel of first passage number is stated, and data biography is carried out using first data channel and second communication equipment It is defeated;
Second communication equipment, for consulting to determine that first communication equipment utilizes the with first communication equipment Channel number in one channel number set establishes data channel, second communication equipment utilizes the passage in second channel number set Number data channel is established, be additionally operable to the second channel number that selection one belongs to the second channel number set, it is logical to described first Letter equipment sends second channel and establishes message, and the second channel, which establishes message, includes the second channel number, with foundation and institute The channel number stated between the first communication equipment is the second data channel of the second channel number, and is led to using second data Road carries out data transmission with first communication equipment.
In the first possible realization method of the third aspect:
First communication equipment and second communication equipment pre-set effector role and first passage number The correspondence of set, the correspondence gathered by effector role and second channel number;
First communication equipment is used to consult to determine that first communication equipment utilizes the with second communication equipment Channel number in one channel number set establishes data channel, second communication equipment utilizes the passage in second channel number set Number data channel is established, specifically included:First communication equipment is used to communicate with described second by ICE role negotiations mechanism Equipment consults to determine the role of first communication equipment and the role of second communication equipment, consults definite described first Role, the role of second communication equipment are by effector role to the role of communication equipment in order to control, are additionally operable to according to pre- The correspondence of the effector role first set and first passage number set determines that first communication equipment utilizes first passage Number set in channel number establish data channel;
Second communication equipment is used to consult to determine that second communication equipment utilizes the with first communication equipment Channel number in two channel number set establishes data channel, first communication equipment utilizes the passage in first passage number set Number data channel is established, specifically included:Second communication equipment is used to communicate with described first by ICE role negotiations mechanism Equipment consults to determine the role of first communication equipment and the role of second communication equipment, consults definite described first Role, the role of second communication equipment are by effector role to the role of communication equipment in order to control, are additionally operable to according to pre- What is first set determines that second communication equipment leads to using second by effector role with correspondence that second channel number is gathered Channel number in Taoist monastic name set establishes data channel.
With reference to the first possible realization method of the third aspect, in second of possible realization method, described second Communication equipment is additionally operable to send call request message to first communication equipment, and the call request message includes described the The role of two communication equipments;First communication equipment is additionally operable to receive the call request message, and judges that the calling please Ask the second communication equipment that message includes role and it is described consult the second definite communication equipment role it is whether identical, and When judging identical success response message is returned to second communication equipment.
In the third possible realization method of the third aspect:
Second communication equipment is used to consult to determine that first communication equipment utilizes the with first communication equipment Channel number in one channel number set establishes data channel, second communication equipment utilizes the passage in second channel number set Number data channel is established, specifically included:Second communication equipment is used to disappear to first communication equipment transmission call request Breath, the call request message include the second channel number and gather, for showing that second communication equipment utilizes described the Channel number in two channel number set establishes data channel, and receives the call message that first communication equipment returns, The call message is gathered including the first passage number, for showing that first communication equipment is logical using described first Channel number in Taoist monastic name set establishes data channel;
First communication equipment is used to consult to determine that first communication equipment utilizes the with second communication equipment Channel number in one channel number set establishes data channel, second communication equipment utilizes the passage in second channel number set Number data channel is established, specifically included:First communication equipment is for receiving the call request message, according to the calling Second channel number set in request message determines a channel number collection cooperation for gathering no intersection with the second channel number Gather for the first passage number, and include the calling of the first passage number set to second communication equipment return Response message.
With reference to the third aspect, the third aspect the first to the third any possible realization method, in the 4th kind of possibility Realization method in, first communication equipment is additionally operable to receive second communication equipment when first communication equipment When the third channel for being used to establish triple data path sent establishes message, the third channel for judging to receive establishes message Including third channel number whether belong to the second channel number set, if be not belonging to, return to show that refusal uses institute State the message of triple data path.
According to embodiments of the present invention, communicating pair is consulted to determine to build each with the channel number in different channel number set Vertical data channel, and there is no intersection between different channel number set, it is ensured that the data channel that a wherein side establishes is led to The channel number for the data channel that Taoist monastic name and the opposing party establish does not conflict, so as to solve channel number conflict institute in the prior art The caused the problem of data message transmitted by different data channel cannot be distinguished, while also avoid in channel number conflict When reselect channel number and establish communication delay problem caused by data channel.
Description of the drawings
It in order to illustrate the technical solution of the embodiments of the present invention more clearly, below will be in embodiment or description of the prior art Required attached drawing is briefly described, it should be apparent that, the accompanying drawings in the following description is only some realities of the present invention Example is applied, it for those of ordinary skill in the art, without creative efforts, can also be according to these attached drawings Obtain other attached drawings.
Fig. 1-3 is the method flow schematic diagram that the embodiment of the present invention 1 provides;
Fig. 4 is the structure diagram for the communication equipment that the embodiment of the present invention 2 provides;
Fig. 5 is the structure diagram for the communication equipment that the embodiment of the present invention 3 provides;
Fig. 6 is the structure diagram for the communication system that the embodiment of the present invention 4 provides.
Specific embodiment
Below in conjunction with the attached drawing in the embodiment of the present invention, the technical solution in the embodiment of the present invention is carried out clear, complete Site preparation describes, it is clear that described embodiment is part of the embodiment of the present invention, instead of all the embodiments.Based on this hair Embodiment in bright, the every other implementation that those of ordinary skill in the art are obtained without creative efforts Example, belongs to the scope of protection of the invention.
In the prior art, the channel number carried in DATA_CHANNEL_OPEN message be send the message communication set It is standby randomly selected, therefore, if communicating pair sends DATA_CHANNEL_OPEN message to other side simultaneously, what both sides sent DATA_CHANNEL_OPEN message is it is possible that carry identical channel number.Such as, communicating pair is sent to other side comprising passage simultaneously Numbers 111 DATA_CHANNEL_OPEN message, wherein, the data channel that a DATA_CHANNEL_OPEN message is established is used for Desktop Share, another DATA_CHANNEL_OPEN message establish data channel for IM (instant message, immediately Message), then there are the data channel that two passes number are 111.When wherein direction other side transmission includes the data of channel number 111 During message, the data channel corresponding to the data message cannot be distinguished in the opposing party, also can not just determine that the data message is to be used for It is Desktop Share or for IM.When a wherein side detects channel number conflict, channel number can be reselected and established newly Data channel can then bring larger delay.
To solve the above-mentioned problems, the embodiment of the present invention 1 provides a kind of method for establishing data channel, and the method should For including the communication system of the first communication equipment and the second communication equipment, first communication equipment and second communication are set It is communicated between standby by WebRTC data channel protocols.
As shown in Figure 1, the method that the embodiment of the present invention 1 provides includes:
Step 210:First communication equipment is consulted to determine the first communication equipment profit with second communication equipment Channel number in being gathered with first passage number establishes data channel (datachannel), second communication equipment utilizes second Channel number in channel number set establishes data channel, and the first passage number set and the second channel number set are not handed over Collection.
Such as, what the first passage number set included is the channel number that value is odd number, and the second channel number set includes Be value be even number channel number.
For another example, what the first passage number set included is the channel number that value is 1 to 32768, and second channel number set is wrapped What is included is the channel number that value is 32769 to 65535.
Step 220:First communication equipment selects a first passage number for belonging to the first passage number set.
Such as, what the first passage number set included is the channel number that value is odd number, correspondingly, first communication equipment It is the channel number of odd number as the first passage number to select a value.
Step 230:First communication equipment establishes message to the second communication equipment sendaisle, and the passage is built Vertical message includes the first passage number, to establish the channel number between second communication equipment as the first passage number Data channel;
The Path Setup message is specifically as follows WebRTC data channel protocol message DATA_CHANNEL_OPEN.
The Path Setup message can also include the effect (e.g., for Desktop Share) of the data channel, pass through institute State the type (such as video) of the media of data channel transmission.
Step 240:The data that first communication equipment and second communication equipment are established by step 230 are led to Road carries out data transmission.
It should be noted that carrying out data transmission by a certain data channel, refer to that transmission includes the data channel Channel number data message.Specifically, in step 240, first communication equipment and second communication equipment pass through The data channel that step 230 is established carries out data transmission, and refers to that transmission includes the data message of the first passage number.
Step 250:Second communication equipment selects a second channel number for belonging to the second channel number set.
Such as, what the second channel number set included is the channel number that value is even number, correspondingly, second communication equipment It is the channel number of even number as the second channel number to select a value.
Step 260:Second communication equipment establishes message to the first communication equipment sendaisle, and the passage is built Vertical message includes the second channel number, to establish the channel number between first communication equipment as the second channel number Data channel;
The Path Setup message is specifically as follows WebRTC data channel protocol message DATA_CHANNEL_OPEN.
The Path Setup message can also include the effect (e.g., for IM) of the data channel, pass through the data The type (such as text) of the media of channel transfer.
Step 270:First communication equipment and second communication equipment by the data channel that step 260 is established into Row data transmission.
Step 240 and step 270 can be carried out at the same time, and e.g., communicating pair to other side by sending comprising first passage number Data message carry out Screen sharing, by other side send comprising second channel number data message carry out IM communications.
It can also include before step 220, first communication equipment is established between second communication equipment SCTP connections, correspondingly, step 230 is established with the data channel in step 260 and connected in the SCTP, and subsequent communications are double The data message transmitted between side is transmitted by the SCTP connections.
According to embodiments of the present invention 1, communicating pair is consulted to determine each with the channel number in different channel number set Data channel is established, and does not have intersection between different channel number set, it is ensured that the data channel that a wherein side establishes The channel number for the data channel that channel number and the opposing party establish does not conflict, so as to solve channel number conflict in the prior art The caused the problem of data message transmitted by different data channel cannot be distinguished, while also avoid in channel number punching Channel number is reselected when prominent and establishes communication delay problem caused by data channel.
Preferably, the side in first communication equipment and second communication equipment is receiving the use of other side's transmission In the Path Setup message for establishing data channel, (first passage of such as step 230 establishes message, the second channel of step 260 is built Vertical message) when, whether the channel number that can also judge the Path Setup message received includes belongs to the channel number set of other side, Such as, second communication equipment judges that the first passage is established in message when receiving the first passage and establishing message Including first passage number whether belong in step 210 and consult the definite first passage number set, if be not belonging to, explanation The channel number that the Path Setup message that other side sends includes is wrong, then returns to show that refusal is led to using the data Otherwise the message in road, returns to show to agree to the message using the data channel.
Step 210 can be accomplished in several ways, and elaborate two kinds of step 210 with reference to Fig. 2 and Fig. 3 separately below Specific implementation.
As shown in Fig. 2, step A1-A5 provides a kind of specific implementation of step 210.
Step A1-A2:First communication equipment and second communication equipment pre-set effector role The correspondence of (controlling role) and first passage number set, by effector role (controlled role) and The correspondence of second channel number set.
Example is as follows:
What the first passage number set included is the channel number that value is odd number, carrys out table especially by a character string odd Show or represented by mathematic(al) representation { y | y=2n+1, n are integer };What the second channel number set included is value for occasionally Several channel numbers represents especially by a character string even or carrys out table by mathematic(al) representation { y | y=2n, n are integer } Show.Correspondingly, the role that is set in first communication terminal and second communication terminal is corresponding with channel number set to close It is as shown in the table:
Role Channel number set
Effector odd
By effector even
Or
Role Channel number set
Effector Y | y=2n+1, n are integer }
By effector Y | y=2n, n are integer }
Step A3:First communication equipment and with second communication equipment by interactive mode be connected foundation (Interactive Connectivity Establishment, ICE) role negotiation mechanism consults to determine first communication The role of equipment and the role of second communication equipment, the role for consulting definite first communication equipment angle in order to control Color, the role of second communication equipment are by effector role.
In a kind of specific implementation, communicating pair realizes ICE functions (ICE Implementation), wherein Either one, it may be possible to the equipment for realizing whole ICE functions (full Implementation), it is also possible to realize light weight The equipment of grade ICE functions (lite Implementation).The equipment for realizing whole ICE functions is subsequently referred to as full The equipment for realizing lightweight ICE functions is referred to as lite ICE equipment by ICE equipment.
The rule for determining both sides role is:
It is full ICE (complete ICE) equipment in first communication equipment and second communication equipment or is In the case of lite ICE (lightweight ICE) equipment, determine to initiate the role angle in order to control of the communication equipment of ICE role negotiations Color, correspondingly, the role of another communication equipment is by effector role.
It is the angle that Full ICE equipment is determined in the case that full ICE equipment, a side are lite ICE equipment in a side Color role in order to control, the role of lite ICE equipment is by effector role.
Specifically consulting flow is:A direction other side in first communication equipment and second communication equipment, which sends, to be used In the request message for initiating ICE role negotiations, carry show it itself is full ICE equipment or lite in request message The information of ICE equipment, the opposing party carry show it itself is full after receiving the request message in the response message of return The information of ICE equipment or lite ICE equipment, after communicating pair knows that other side is full ICE equipment or lite ICE equipment, i.e., It can be according to the role of the definite both sides of above-mentioned rule.
It should be noted that the role of the communicating pair negotiated by ICE role negotiation mechanism, side angle in order to control Color, the opposing party be by effector role, it is specifically consulting as a result, can be the role angle in order to control of first communication equipment It by the role of effector role or first communication equipment is controlled that color, the role of second communication equipment, which are, Person role processed, the role role in order to control of second communication equipment, in step A1-A8, with first communication equipment Role role, the role of second communication equipment are described to be elaborated exemplified by effector role in order to control The role of first communication equipment be by effector role, second communication equipment role in order to control role when realization side Formula is similar with step A1-A8, repeats no more.
Step A4:First communication equipment is gathered corresponding according to pre-set effector role with first passage number Relation determines that first communication equipment establishes data channel using the channel number in first passage number set.
Step A5:Second communication equipment is according to pre-set pair gathered by effector role and second channel number It should be related to that definite second communication equipment establishes data channel using the channel number in second channel number set.
Step A1 and step A2 does not have specific sequencing, and step A4 and step A5 are also without specific sequencing.
Preferably, after step A5, can also include:
Step A6:Second communication equipment sends call request message to first communication equipment, and the calling please Message is asked to include the role of second communication equipment;
The call request message can be specifically session initiation protocol (Session Initiation Protocol, SIP) invite (invitation) message, java script session establishment agreements (Javascript Session Establishment Protocol, JSEP) offer (offer) message etc..
In specific implementation, the SDP (Session that can be included by extending the call request message Description Protocol, Session Description Protocol) form to carry the role of communication equipment.It is as follows, SDP's Increase an attribute role in sctpmap-attr attributes, the value of the attribute can be to represent effector role's " Controlling " is represented by effector role's " controlled ".
sctpmap Attribute
Sctpmap-attr=" a=sctpmap:″sctpmap-number protocol[streams][role]
Sctpmap-number=1*DIGIT
Protocol=labelstring
Labelstring=text
Text=byte-string
Streams=1*DIGIT
Role=labelstring
Here is the specific example of the SDP of the extension carried in the call request message that second communication equipment is sent.
54111 DTLS/SCTP 5000 of m=application
C=IN IP4 79.97.215.79
A=sctpmap:5000 webrtc-DataChannel 2 controlled
A=webrtc-DataChannel:5000 stream=1;Label=" channel 1 ";subprotocol =" chat ";
A=webrtc-DataChannel:5000 stream=3;Label=" channel 2 ";subprotocol =" file transfer ";Max_retr=3
It should be noted that the calling that either one in communicating pair can include the role of itself to other side's transmission please Message is sought, in step A6-A8, call request message is sent with second communication equipment, first communication equipment returns It is illustrated by exemplified by call message, first communication equipment sends call request message, second communication equipment returns Realization method when callback is response message is similar with step A6-A8, repeats no more.
Step A7:First communication equipment judge the role of the second communication equipment that the call request message includes with Whether the role for consulting the second definite communication equipment in step A3 is identical;
If it is judged that it is identical, step A8 is performed, otherwise, failure response message is returned to second communication equipment.
Step A8:First communication equipment returns to success response message to second communication equipment.
The success response message can be specifically S IP Temporary Responses message (such as 183 message, 180 message), JSEP Answer (response) message etc..
First communication equipment can also carry the role of first communication equipment in the success response message, The role of the first communication equipment can be specifically carried by the SDP that success response message includes, example is as follows:
54222 DTLS/SCTP 5000 of m=application
C=IN IP4 79.97.215.80
A=sctpmap:5000 webrtc-DataChannel 2 controlling
A=webrtc-DataChannel:5000 stream=2;Label=" channel 1 ";subprotocol =" chat ";
A=webrtc-DataChannel:5000 stream=4;Label=" channel 2 ";subprotocol =" file transfer ";Max_retr=3
First communication equipment is after the success response message is returned, you can selects in the first passage number set Channel number establish and second communication equipment between data channel;Second communication equipment is receiving the success After response message, you can the channel number in the second channel number set is selected to establish the number between first communication equipment According to passage.
As shown in figure 3, step B1-B3 provides another specific implementation of step 210.
Step B1:Second communication equipment sends call request message to first communication equipment, and the calling please Message is asked to gather including the second channel number, for showing second communication equipment using in the second channel number set Channel number establish data channel.
The call request message can be specifically SIP invite message, JSEP offer message etc..
In specific implementation, the form of the SDP that can be included by extending the call request message is to carry described the Two channel number set.It is as follows, increase an attribute set in the sctpmap-attr attributes of SDP, the value of the attribute can be with For represent odd chanel number set " odd " or represent even-numbered channels number set " even ".
sctpmap Attribute
Sctpmap-attr=" a=sctpmap:″sctpmap-number protocol[streams][set]
Sctpmap-number=1*DIGIT
Protocol=labelstring
Labelstring=text
Text=byte-string
Streams=1*DIGIT
Role=labelstring
If what the second channel number set included is the channel number that value is even number, example is as follows:
54111 DTLS/SCTP 5000 of m=application
C=IN IP4 79.97.215.79
A=sctpmap:5000 webrtc-DataChannel 2 even
A=webrtc-DataChannel:5000 stream=1;Label=" channel 1 ";subprotocol =" chat ";
A=webrtc-DataChannel:5000 stream=3;Label=" channel 2 ";subprotocol =" file transfer ";Max_retr=3
It should be noted that either one in communicating pair can be sent to other side includes the channel number collection itself used The call request message of conjunction in step B1-B3, is led to second communication equipment transmission call request message, described first Letter equipment is illustrated by exemplified by returning to call message, and first communication equipment sends call request message, described second Realization method during communication equipment return call message is similar with step B1-B3, repeats no more.
Step B2:First communication equipment determines one and the second channel number according to the second channel number set The channel number set for gathering no intersection is gathered as the first passage number;
Step B3:First communication equipment returns to call message to second communication equipment, and the calling is rung Message is answered to gather including the first passage number, for showing first communication equipment using in the first passage number set Channel number establish data channel.
If what the first passage number set included is the channel number that value is odd number, example is as follows:
54222 DTLS/SCTP 5000 of m=application
C=IN IP4 79.97.215.80
A=sctpmap:5000 webrtc-DataChannel 2 odd
A=webrtc-DataChannel:5000 stream=2;Label=" channel 1 ";subprotocol =" chat ";
A=webrtc-DataCnannel:5000 stream=4;Label=" channel 2 ";subprotocol =" file transfer ";Max_retr=3
According to embodiments of the present invention 1, the embodiment of the present invention 2 proposes a kind of communication equipment 500, and communication equipment 500 is with leading to Letter is communicated between opposite end by real-time Communication for Power Network WebRTC data channel protocols.As shown in figure 3, communication equipment 500 wraps It includes:Negotiation module 501 and communication module 502.
Negotiation module 501, for consulting to determine communication equipment 500 using in first passage number set with the Correspondent Node Channel number establish data channel, the Correspondent Node using second channel number gather in channel number establish data channel, institute It states first passage number set and the second channel number gathers no intersection, and for definite first passage number set will to be consulted It is transmitted to communication module 502.
Such as, what the first passage number set included is the channel number that value is odd number, and the second channel number set includes Be value be even number channel number.
For another example, what the first passage number set included is the channel number that value is 1 to 32768, and second channel number set is wrapped What is included is the channel number that value is 32769 to 65535.
Communication module 502 for receiving the first passage number set from negotiation module 501, and selects one and belongs to institute The first passage number of first passage number set is stated, sending first passage to the Correspondent Node establishes message, the first passage Establishing message includes the first passage number, to establish the channel number between the Correspondent Node as the first passage number First data channel, and carried out data transmission by first data channel with the Correspondent Node, it is additionally operable to described in reception The second channel that Correspondent Node is sent establishes message, and the second channel, which establishes message, to be included belonging to the second channel number set Second channel number, for establishing the channel number between communication equipment 500 and the Correspondent Node as the second channel number Second data channel, and carried out data transmission by second data channel with the Correspondent Node.
Such as, what the first passage number set included is the channel number that value is odd number, and correspondingly, communication module 502 selects One value is the channel number of odd number as the first passage number;What the second channel number set included is value leading to for even number Taoist monastic name, correspondingly, the second channel number are the channel number that a value is even number.
(such as described first passage establishes message, the second channel to the Path Setup message that communicating pair is sent to other side Establish message) it is specifically as follows WebRTC data channel protocol message DATA_CHANNEL_OPEN.The Path Setup message is also It can include the effect (e.g., for Desktop Share, for IM) for the data channel that the Path Setup message is established, pass through institute State the type (such as video, text) of the media of data channel transmission.
Communication module 502 can be also used for establishing the SCTP connections between the Correspondent Node, and correspondingly, communication is set The standby data channel (such as described first data channel, second data channel) established between 500 and the Correspondent Node It establishes in the SCTP connections, the data message transmitted between subsequent communications both sides is transmitted by the SCTP connections.
In a kind of concrete implementation mode of channel number set used in negotiation communication both sides:500 He of communication equipment The Correspondent Node pre-sets the correspondence of effector role and first passage number set, by effector role and second The correspondence of channel number set;Negotiation module 501 is assisted specifically for passing through ICE role negotiations mechanism with the Correspondent Node Business determines the role of communication equipment 500 and the role of the Correspondent Node, consults the role of definite communication equipment 500 in order to control Person role, and 500 profit of communication equipment is determined according to the correspondence that pre-set effector role and first passage number are gathered Channel number in being gathered with first passage number establishes data channel, and the role for consulting the definite Correspondent Node is by effector Role, in order to which the Correspondent Node is according to pre-set true by effector role and correspondence that second channel number is gathered Channel number during the fixed Correspondent Node is gathered using the second channel number establishes data channel.
Further, communication module 502 can be also used for receiving the second channel number set from the negotiation module, The call request message that the Correspondent Node is sent is received, the call request message includes the role of the Correspondent Node, sentences The role for the Correspondent Node that the call request message that breaks includes and the angle of the Correspondent Node received from the negotiation module Whether color is identical, and returns to success response message to the Correspondent Node when judging identical.
The call request message can be specifically SIP invite message, JSEP offer message etc..
In specific implementation, the form for the SDP that can be included by extending the call request message is set with carrying communication Standby role e.g., increases an attribute role in the sctpmap-attr attributes of SDP, and the value of the attribute can be to represent control Person role's processed " controlling " or represent by effector role's " controlled ".
The success response message can be specifically S IP Temporary Responses message (such as 183 message, 180 message), JSEP Answer message etc..Communication module 502 can also carry the role of communication equipment 500 in the success response message, specifically The role of communication equipment 500 can be carried by the SDP that success response message includes.
In another specific implementation of channel number set used in negotiation communication both sides:Communication module 502, also For receiving the call request message that the Correspondent Node is sent, the call request message collects including the second channel number It closes, for showing that the Correspondent Node establishes data channel using the channel number in the second channel number set, and by described in Second channel number set is transmitted to negotiation module 501;Negotiation module 501, specifically for receiving described second from communication module 502 Channel number set determines a channel number with the no intersection of the second channel number set according to the second channel number set Set is gathered as the first passage number, and the first passage number set is transmitted to communication module 502;Communication module 502, it is additionally operable to receive the first passage number set from negotiation module 501, and returns to call to the Correspondent Node and disappear Breath, the call message are gathered including the first passage number, for showing that communication equipment 500 utilizes the first passage Number set in channel number establish data channel.
The call request message can be specifically SIP invite message, JSEP offer message etc..
It, can be by the SDP that extends the call request message and the call message includes in specific implementation Form to carry channel number set, e.g., in the sctpmap-attr attributes of SDP increase an attribute set, the value of the attribute Can be represent odd chanel number set " odd " or represent even-numbered channels number set " even ".
When communication module 502 receives the Path Setup message for being used to establish data channel of the Correspondent Node transmission When (such as described second channel establishes message), communication module 502 can be also used for judging the Path Setup message package received Whether the channel number included belongs to the second channel number set, if be not belonging to, returns to show that refusal uses the data The message of passage.
According to embodiments of the present invention 2, communication equipment 500 is consulted to determine each with different passages from Correspondent Node first Channel number in number set establishes data channel, and does not have intersection between different channel number set, it is ensured that communication equipment The channel number for the data channel that the channel number and Correspondent Node of 500 data channel established are established does not conflict, so as to solve In the prior art the problem of the data message that cannot be distinguished through different data channel transmission caused by channel number conflict, It also avoids reselecting channel number when channel number conflicts simultaneously and establishes communication delay problem caused by data channel.
According to embodiments of the present invention 1, the embodiment of the present invention 3 provides a kind of communication equipment 1000, communication equipment 1000 with It is communicated between Correspondent Node by real-time Communication for Power Network WebRTC data channel protocols.As shown in figure 4, communication equipment 1000 Including processor (processor) 1010 and memory (memory) 1020, wherein, between processor 1010 and memory 1020 Mutual communication is completed by bus.
Memory 1020, for storing computer-managed instruction.Memory 1020 may include high-speed RAM memory, Nonvolatile memory (non-volatile memory), for example, at least a magnetic disk storage may be further included.
Processor 1010, for performing the computer-managed instruction stored in memory 1020.Processor 1010 specifically may be used It is computer core unit to be central processing unit (CPU, central processing unit).
Wherein, processor 1010 performs the computer-managed instruction so that communication equipment 1000 performs following operation:
Consult to determine that communication equipment 1000 establishes number using the channel number in first passage number set with the Correspondent Node Channel number in being gathered according to passage, the Correspondent Node using second channel number establishes data channel, the first passage number collection It closes and the second channel number gathers no intersection, e.g., what the first passage number set included is the channel number that value is odd number, What the second channel number set included is the channel number that value is even number;
Selection one belongs to the first passage number of the first passage number set;
First passage is sent to the Correspondent Node and establishes message, and it is logical including described first that the first passage establishes message Taoist monastic name to establish first data channel of the channel number between the Correspondent Node as the first passage number, and passes through institute The first data channel is stated with the Correspondent Node to carry out data transmission;The second channel foundation that the Correspondent Node is sent is received to disappear Breath, the second channel, which establishes message, to be included belonging to the second channel number of the second channel number set, is set for establishing communication Standby channel number between 1000 and the Correspondent Node is the second data channel of the second channel number, and passes through described second Data channel carries out data transmission with the Correspondent Node.
Such as, what the first passage number set included is the channel number that value is odd number, and correspondingly, processor 1010 performs institute It is the channel number of odd number as the first passage number to state computer-managed instruction so that communication equipment 1000 selects a value;Institute State second channel number set include be value be even number channel number, correspondingly, the second channel number be a value be even number Channel number.
(such as described first passage establishes message, the second channel to the Path Setup message that communicating pair is sent to other side Establish message) it is specifically as follows WebRTC data channel protocol message DATA_CHANNEL_OPEN.The Path Setup message is also It can include the effect (e.g., for Desktop Share, for IM) for the data channel that the Path Setup message is established, pass through institute State the type (such as video, text) of the media of data channel transmission.
Processor 1010 perform the computer-managed instruction can with further such that communication equipment 1000 perform it is as follows Operation:Establish the SCTP connections between the Correspondent Node.Correspondingly, built between communication equipment 1000 and the Correspondent Node Vertical data channel (such as described first data channel, second data channel) is established in the SCTP connections, after The data message transmitted between continuous communicating pair is transmitted by the SCTP connections.
In a kind of specific implementation of channel number set used in negotiation communication both sides:
Communication equipment 1000 and the Correspondent Node pre-set the correspondence of effector role and first passage number set Relation, the correspondence gathered by effector role and second channel number;
It is described to consult to determine that communication equipment 1000 is built using the channel number in first passage number set with the Correspondent Node Vertical data channel, the Correspondent Node establish data channel using the channel number in second channel number set, specifically include:Pass through ICE role negotiations mechanism consults to determine the role of communication equipment 1000 and the role of the Correspondent Node with the Correspondent Node, Consult the role role, and according to pre-set effector role and first passage in order to control of definite communication equipment 1000 Number set correspondence determine communication equipment 1000 using first passage number gather in channel number establish data channel, consult The role of the definite Correspondent Node is by effector role, in order to which the Correspondent Node is controlled according to pre-set The correspondence of person role and second channel number set determines the Correspondent Node using the channel number in second channel number set Establish data channel.
Processor 1010 perform the computer-managed instruction can with further such that communication equipment 1000 perform it is as follows Operation:The call request message that the Correspondent Node is sent is received, the call request message includes the angle of the Correspondent Node Color judges the role for the Correspondent Node that the call request message includes and the role for consulting definite Correspondent Node It is whether identical, and when judging identical success response message is returned to the Correspondent Node.
The call request message can be specifically SIP invite message, JSEP offer message etc..
In specific implementation, the form for the SDP that can be included by extending the call request message is set with carrying communication Standby role e.g., increases an attribute role in the sctpmap-attr attributes of SDP, and the value of the attribute can be to represent control Person role's processed " controlling " or represent by effector role's " controlled ".
The success response message can be specifically SIP Temporary Responses message (such as 183 message, 180 message), JSEP Answer message etc..The success response message can also carry the role of communication equipment 1000, specifically can be by successfully ringing The SDP that answering message includes carries the role of communication equipment 1000.
In another specific implementation of channel number set used in negotiation communication both sides:The described and communication Peer Negotiation determines that communication equipment 1000 establishes data channel, the Correspondent Node using the channel number in first passage number set Channel number in being gathered using second channel number establishes data channel, specifically includes:Receive the calling that the Correspondent Node is sent Request message, the call request message are gathered including the second channel number, for showing described in the Correspondent Node utilization Channel number in second channel number set establishes data channel, and one and described second is determined according to the second channel number set The channel number set that channel number set does not have intersection is gathered as the first passage number, and returning to calling to the Correspondent Node rings Answer message, the call message includes the first passage number set, for showing communication equipment 1000 using described the Channel number in one channel number set establishes data channel.
The call request message can be specifically SIP invite message, JSEP offer message etc..
It, can be by the SDP that extends the call request message and the call message includes in specific implementation Form to carry channel number set, e.g., in the sctpmap-attr attributes of SDP increase an attribute set, the value of the attribute Can be represent odd chanel number set " odd " or represent even-numbered channels number set " even ".
Processor 1010 perform the computer-managed instruction can with further such that communication equipment 1000 perform it is as follows Operation:When communication equipment 1000 receives the Path Setup message for being used to establish data channel of the Correspondent Node transmission (such as The second channel establishes message) when, whether the channel number that includes of the Path Setup message that judges to receive belongs to described the Two channel number set if be not belonging to, return to show message of the refusal using the data channel.
According to embodiments of the present invention 3, communication equipment 1000 is consulted to determine to lead to each with different first from Correspondent Node Channel number in Taoist monastic name set establishes data channel, and does not have intersection between different channel number set, it is ensured that described logical The channel number for the data channel that the channel number and Correspondent Node for the data channel that letter equipment is established are established does not conflict, so as to solve The data message that cannot be distinguished caused by channel number conflict in the prior art of having determined is transmitted by different data channel is asked Topic, while also avoid reselecting channel number when channel number conflicts and establish communication delay problem caused by data channel.
According to embodiments of the present invention 1, the embodiment of the present invention 4 proposes a kind of communication system 5000, as shown in figure 5, communication System 5000 includes communication equipment 5010 and communication equipment 5020, passes through network between communication equipment 5010 and communication equipment 5020 Real-time Communication for Power WebRTC data channel protocols communicate.
Communication equipment 5010, for consulting to determine that communication equipment 5010 is gathered using first passage number with communication equipment 5020 In channel number establish data channel, communication equipment 5020 using second channel number gather in channel number establish data channel, The first passage number set and the second channel number gather no intersection, and (what such as described first passage number set included is value For the channel number of odd number, what the second channel number set included is the channel number that value is even number);Selection one is additionally operable to belong to The first passage number of the first passage number set sends first passage to communication equipment 5020 and establishes message, and described first is logical Message is established in road includes the first passage number, to establish the channel number between communication equipment 5020 as the first passage number The first data channel, and carried out data transmission using first data channel with communication equipment 5020.
Communication equipment 5020, for consulting to determine that communication equipment 5010 is gathered using first passage number with communication equipment 5010 In channel number establish data channel, communication equipment 5020 using second channel number gather in channel number establish data channel, The second channel number that selection one belongs to the second channel number set is additionally operable to, sending second channel to communication equipment 5010 builds Vertical message, the second channel, which establishes message, includes the second channel number, to establish the passage between communication equipment 5010 Number it is the second data channel of the second channel number, and utilizes second data channel and communication equipment 5010 progress data Transmission.
In a kind of specific implementation:
Communication equipment 5010 and communication equipment 5020 pre-set pair of effector role and first passage number set The correspondence that should be related to, be gathered by effector role and second channel number;
Communication equipment 5010 is used to consult to determine that communication equipment 5010 is gathered using first passage number with communication equipment 5020 In channel number establish data channel, communication equipment 5020 using second channel number gather in channel number establish data channel, It specifically includes:Communication equipment 5010 is used to consult to determine communication equipment with communication equipment 5020 by ICE role negotiations mechanism 5010 role and the role of communication equipment 5020, the role for consulting definite communication equipment 5010 role, communication in order to control The role of equipment 5020 is by effector role, is additionally operable to what is gathered according to pre-set effector role and first passage number Correspondence determines that communication equipment 5010 establishes data channel using the channel number in first passage number set;
Communication equipment 5020 is used to consult to determine that communication equipment 5020 is gathered using second channel number with communication equipment 5010 In channel number establish data channel, communication equipment 5010 using first passage number gather in channel number establish data channel, It specifically includes:Communication equipment 5020 is used to consult to determine communication equipment with communication equipment 5010 by ICE role negotiations mechanism 5010 role and the role of communication equipment 5020, the role for consulting definite communication equipment 5010 role, communication in order to control The role of equipment 5020 is by effector role, is additionally operable to by effector role and second channel number be gathered according to pre-set Correspondence determine communication equipment 5020 using second channel number gather in channel number establish data channel.
Further, communication equipment 5020 are additionally operable to send call request message to communication equipment 5010, and the calling please Message is asked to include the role of communication equipment 5020;Communication equipment 5010 is additionally operable to receive the call request message, and judges institute Stating the role for the communication equipment 5020 that call request message includes and the role of the communication equipment 5020 for consulting to determine is It is no identical, and when judging identical success response message is returned to communication equipment 5020.
In another specific implementation:Communication equipment 5020 is used to consult to determine communication equipment with communication equipment 5010 5010 establish data channel, communication equipment 5020 using in second channel number set using the channel number in first passage number set Channel number establish data channel, specifically include:Communication equipment 5020 is used to send call request message to communication equipment 5010, The call request message is gathered including the second channel number, for showing that communication equipment 5020 utilizes the second channel number Channel number in set establishes data channel, and the call message that receiving communication device 5010 returns, the call Message is gathered including the first passage number, for showing communication equipment 5010 using the passage in the first passage number set Number establish data channel;Communication equipment 5010 is used to consult to determine that communication equipment 5010 utilizes first passage with communication equipment 5020 Number set in channel number establish data channel, communication equipment 5020 using second channel number gather in channel number establish data Passage specifically includes:Communication equipment 5010 is for receiving the call request message, and the in the call request message Two channel number set determine that one is gathered the channel number set of no intersection as the first passage with the second channel number Number set, and the call message for including the first passage number and gathering is returned to communication equipment 5020.
Preferably, the side in communication equipment 5010 and communication equipment 5020 receive other side's transmission for establishing number According to the Path Setup message of passage (first passage of such as step 230 establishes message, the second channel of step 260 establishes message) When, whether the channel number that can also judge the Path Setup message received includes belongs to the channel number set of other side, e.g., communication Equipment 5020 judges that the first passage establishes that message includes first is logical when receiving the first passage and establishing message Whether Taoist monastic name, which belongs in step 210, is consulted the definite first passage number set, if be not belonging to, illustrates that other side sends logical The channel number that road is established message and included is wrong, then returns to show message of the refusal using the data channel, no Then, return to show to agree to the message using the data channel.
Communication system described in the embodiment of the present invention 4 can be used for implementing the method described in above-described embodiment 1.
According to embodiments of the present invention 4, communicating pair is consulted to determine each with the channel number in different channel number set Data channel is established, and does not have intersection between different channel number set, it is ensured that the data channel that a wherein side establishes The channel number for the data channel that channel number and the opposing party establish does not conflict, so as to solve channel number conflict in the prior art The caused the problem of data message transmitted by different data channel cannot be distinguished, while also avoid in channel number punching Channel number is reselected when prominent and establishes communication delay problem caused by data channel.
Those of ordinary skill in the art may realize that each exemplary lists described with reference to the embodiments described herein Member and algorithm steps can be realized with the combination of electronic hardware or computer software and electronic hardware.These functions are actually It is performed with hardware or software mode, specific application and design constraint depending on technical solution.Professional technician Described function can be realized using distinct methods to each specific application, but this realization is it is not considered that exceed The scope of the present invention.
It is apparent to those skilled in the art that for convenience and simplicity of description, the system of foregoing description, The specific work process of device and unit may be referred to the corresponding process in preceding method embodiment, and details are not described herein.
In several embodiments provided herein, it should be understood that disclosed systems, devices and methods, it can be with It realizes by another way.For example, the apparatus embodiments described above are merely exemplary, for example, the unit Division is only a kind of division of logic function, can there is other dividing mode, such as multiple units or component in actual implementation It may be combined or can be integrated into another system or some features can be ignored or does not perform.It is another, it is shown or The mutual coupling, direct-coupling or communication connection discussed can be the indirect coupling by some interfaces, device or unit It closes or communicates to connect, can be electrical, machinery or other forms.
The unit illustrated as separating component may or may not be physically separate, be shown as unit The component shown may or may not be physical location, you can be located at a place or can also be distributed to multiple In network element.Some or all of unit therein can be selected to realize the mesh of this embodiment scheme according to the actual needs 's.
In addition, each functional unit in each embodiment of the present invention can be integrated in a processing unit, it can also That unit is individually physically present, can also two or more units integrate in a unit.
If the function is realized in the form of SFU software functional unit and is independent production marketing or in use, can be with It is stored in a computer read/write memory medium.Based on such understanding, technical scheme is substantially in other words The part contribute to the prior art or the part of the technical solution can be embodied in the form of software product, the meter Calculation machine software product is stored in a storage medium, is used including some instructions so that a computer equipment (can be People's computer, server or network equipment etc.) perform all or part of the steps of the method according to each embodiment of the present invention. And foregoing storage medium includes:USB flash disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), arbitrary access are deposited The various media that can store program code such as reservoir (RAM, Random Access Memory), magnetic disc or CD.
The above description is merely a specific embodiment, but protection scope of the present invention is not limited thereto, any Those familiar with the art in the technical scope disclosed by the present invention, can readily occur in change or replacement, should all contain Lid is within protection scope of the present invention.Therefore, protection scope of the present invention described should be subject to the protection scope in claims.

Claims (15)

  1. A kind of 1. method for establishing data channel, which is characterized in that the method is applied to include the first communication equipment and second The communication system of communication equipment passes through real-time Communication for Power Network between first communication equipment and second communication equipment WebRTC data channel protocols communicate, the described method includes:
    First communication equipment is consulted to determine that first communication equipment utilizes first passage number with second communication equipment Channel number during channel number in set establishes data channel, second communication equipment is gathered using second channel number establishes number According to passage, the first passage number set and the second channel number gather no intersection;
    First communication equipment selects a first passage number for belonging to the first passage number set;
    First communication equipment sends first passage to second communication equipment and establishes message, and the first passage foundation disappears Breath includes the first passage number, and the channel number between foundation and second communication equipment is the of the first passage number One data channel, and carried out data transmission by first data channel and second communication equipment;
    First communication equipment receives the second channel that second communication equipment is sent and establishes message, and the second channel is built Vertical message includes belonging to the second channel number of the second channel number set, for establishing first communication equipment and described the Channel number between two communication equipments is the second data channel of the second channel number, and by second data channel with Second communication equipment carries out data transmission.
  2. 2. the method as described in claim 1, which is characterized in that first communication equipment and second communication equipment are pre- The correspondence that effector role and first passage number set are first set, the correspondence gathered by effector role and second channel number Relation;
    First communication equipment is consulted to determine that first communication equipment utilizes first passage number with second communication equipment Channel number during channel number in set establishes data channel, second communication equipment is gathered using second channel number establishes number According to passage, specifically include:
    First communication equipment is established ICE role negotiations mechanism by interactive mode connection and is consulted really with second communication equipment The role of fixed first communication equipment and the role of second communication equipment, consult definite first communication equipment Role role, and according to determining the correspondence that pre-set effector role and first passage number gather in order to control Channel number during first communication equipment is gathered using first passage number establishes data channel, consults definite second communication and sets Standby role is by effector role, in order to second communication equipment according to pre-set by effector role and second The correspondence of channel number set determines that second communication equipment establishes data using the channel number in second channel number set Passage.
  3. 3. method as claimed in claim 2, which is characterized in that
    First communication equipment is established ICE role negotiations mechanism by interactive mode connection and is consulted really with second communication equipment After determining the role of first communication equipment and the role of second communication equipment, described in the first communication equipment transmission First passage establishes message and receives the second channel and establishes before message, further includes:
    First communication equipment receives the call request message that second communication equipment is sent, the call request message bag Include the role of second communication equipment;
    First communication equipment judges that the role for the second communication equipment that the call request message includes consults really with described Whether the role of the second fixed communication equipment is identical, and returns to success response to second communication equipment when judging identical Message.
  4. 4. the method as described in claim 1, which is characterized in that first communication equipment is consulted with second communication equipment Determine that first communication equipment establishes data channel, second communication equipment using the channel number in first passage number set Channel number in being gathered using second channel number establishes data channel, specifically includes:
    First communication equipment receives the call request message that second communication equipment is sent, the call request message bag The second channel number set is included, for showing second communication equipment using the channel number in the second channel number set Establish data channel;
    First communication equipment determines that one is not handed over the second channel number set according to the second channel number set The channel number set of collection is gathered as the first passage number;
    First communication equipment returns to call message to second communication equipment, and the call message includes institute First passage number set is stated, for showing that first communication equipment is established using the channel number in the first passage number set Data channel.
  5. 5. the method as described in claim 1-4 is any, which is characterized in that the method further includes:
    When first communication equipment receive that second communication equipment sends for establishing the 3rd of triple data path During Path Setup message, the third channel that first communication equipment judges to receive establishes the third channel number that message includes Whether belong to the second channel number set, if be not belonging to, return to show that refusal uses the triple data path Message.
  6. 6. a kind of communication equipment, which is characterized in that pass through real-time Communication for Power Network between the communication equipment and Correspondent Node WebRTC data channel protocols communicate, and the communication equipment includes negotiation module and communication module;
    The negotiation module, for consulting to determine the communication equipment using in first passage number set with the Correspondent Node Channel number during channel number establishes data channel, the Correspondent Node is gathered using second channel number establishes data channel, described First passage number is gathered and the second channel number gathers no intersection, and is passed for that will consult definite first passage number set Transport to the communication module;
    The communication module for receiving the first passage number set from the negotiation module, and selects one to belong to described The first passage number of first passage number set sends first passage to the Correspondent Node and establishes message, and the first passage is built Vertical message includes the first passage number, to establish the channel number between the Correspondent Node as the of the first passage number One data channel, and carried out data transmission by first data channel with the Correspondent Node, it is additionally operable to receive described logical The second channel that letter opposite end is sent establishes message, and the second channel, which establishes message, to be included belonging to the second channel number set Second channel number, for establishing the channel number between the communication equipment and the Correspondent Node as the of the second channel number Two data channel, and carried out data transmission by second data channel with the Correspondent Node.
  7. 7. communication equipment as claimed in claim 6, which is characterized in that the communication equipment and the Correspondent Node are set in advance The correspondence for putting effector role and first passage number set, the corresponding pass gathered by effector role and second channel number System;
    The negotiation module establishes ICE role negotiations mechanism and Correspondent Node negotiation specifically for passing through interactive connection It determines the role of the communication equipment and the role of the Correspondent Node, consults the role of the definite communication equipment in order to control Person role, and the communication equipment profit is determined according to the correspondence that pre-set effector role and first passage number are gathered Channel number in being gathered with first passage number establishes data channel, and the role for consulting the definite Correspondent Node is by effector Role, in order to which the Correspondent Node is according to pre-set true by effector role and correspondence that second channel number is gathered Channel number during the fixed Correspondent Node is gathered using the second channel number establishes data channel.
  8. 8. communication equipment as claimed in claim 7, which is characterized in that
    The communication module is additionally operable to receive the second channel number set from the negotiation module, receives the Correspondent Node The call request message of transmission, the call request message include the role of the Correspondent Node, judge that the call request disappears It whether identical ceases the role of the Correspondent Node of the role of the Correspondent Node included with being received from the negotiation module, and is sentencing Break and return to success response message to the Correspondent Node when identical.
  9. 9. communication equipment as claimed in claim 6, which is characterized in that
    The communication module is additionally operable to receive the call request message that the Correspondent Node is sent, the call request message bag The second channel number set is included, for showing that the Correspondent Node is established using the channel number in the second channel number set Data channel, and the second channel number set is transmitted to the negotiation module;
    The negotiation module is gathered specifically for receiving the second channel number from the communication module, logical according to described second Taoist monastic name set determines that a channel number set for gathering no intersection with the second channel number collects as the first passage number It closes, and the first passage number set is transmitted to the communication module;
    The communication module is additionally operable to receive the first passage number set from the negotiation module, and to the Correspondent Node Call message is returned to, the call message is gathered including the first passage number, for showing the communication equipment Channel number in being gathered using the first passage number establishes data channel.
  10. 10. the communication equipment as described in claim 6-9 is any, which is characterized in that
    The communication module, be additionally operable to when the communication module receive that the Correspondent Node sends for establishing the 3rd data When the third channel of passage establishes message, judge whether the third channel number that the third channel received is established message and included belongs to Gather in the second channel number, if be not belonging to, return to show message of the refusal using the triple data path.
  11. 11. a kind of communication system, which is characterized in that the communication system includes the first communication equipment and the second communication equipment, institute It states and is led between the first communication equipment and second communication equipment by real-time Communication for Power Network WebRTC data channel protocols Letter;
    First communication equipment, for consulting to determine that first communication equipment is logical using first with second communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, second communication equipment is gathered using second channel number is built Vertical data channel, the first passage number set and the second channel number gather no intersection;Selection one is additionally operable to belong to The first passage number of the first passage number set sends first passage to second communication equipment and establishes message, and described the One Path Setup message includes the first passage number, to establish the channel number between second communication equipment as described the First data channel of one channel number, and carried out data transmission using first data channel and second communication equipment;
    Second communication equipment, for consulting to determine that first communication equipment is logical using first with first communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, second communication equipment is gathered using second channel number is built Vertical data channel is additionally operable to the second channel number that selection one belongs to the second channel number set, is set to the described first communication Preparation send second channel to establish message, and the second channel, which establishes message, includes the second channel number, to establish and described the Channel number between one communication equipment is the second data channel of the second channel number, and using second data channel with First communication equipment carries out data transmission.
  12. 12. communication system as claimed in claim 11, which is characterized in that first communication equipment and second communication are set The standby correspondence for pre-setting effector role and first passage number set is collected by effector role and second channel number The correspondence of conjunction;
    First communication equipment is used to consult to determine that first communication equipment is logical using first with second communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, second communication equipment is gathered using second channel number is built Vertical data channel, specifically includes:First communication equipment is used to establish ICE role negotiations mechanism and institute by interactive connection It states the second communication equipment to consult to determine the role of first communication equipment and the role of second communication equipment, consults to determine The role of first communication equipment role, the role of second communication equipment are by effector role, also in order to control Correspondence for being gathered according to pre-set effector role and first passage number determines the first communication equipment profit Channel number in being gathered with first passage number establishes data channel;
    Second communication equipment is used to consult to determine that second communication equipment is logical using second with first communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, first communication equipment is gathered using first passage number is built Vertical data channel, specifically includes:Second communication equipment is used to establish ICE role negotiations mechanism and institute by interactive connection It states the first communication equipment to consult to determine the role of first communication equipment and the role of second communication equipment, consults to determine The role of first communication equipment role, the role of second communication equipment are by effector role, also in order to control For determining second communication equipment according to the pre-set correspondence gathered by effector role and second channel number Channel number in being gathered using second channel number establishes data channel.
  13. 13. communication system as claimed in claim 12, which is characterized in that
    Second communication equipment is additionally operable to send call request message to first communication equipment, and the call request disappears Breath includes the role of second communication equipment;
    First communication equipment is additionally operable to receive the call request message, and judges that the call request message includes The second communication equipment role and it is described consult the second definite communication equipment role it is whether identical, and judge it is identical When to second communication equipment return success response message.
  14. 14. communication system as claimed in claim 11, which is characterized in that
    Second communication equipment is used to consult to determine that first communication equipment is logical using first with first communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, second communication equipment is gathered using second channel number is built Vertical data channel, specifically includes:Second communication equipment is used to send call request message, institute to first communication equipment It states call request message including the second channel number to gather, for showing that second communication equipment utilizes the second channel Channel number in number set establishes data channel, and receives the call message that first communication equipment returns, described to exhale Response message is made to gather including the first passage number, for showing that first communication equipment is collected using the first passage number Channel number in conjunction establishes data channel;
    First communication equipment is used to consult to determine that first communication equipment is logical using first with second communication equipment Channel number during channel number in Taoist monastic name set establishes data channel, second communication equipment is gathered using second channel number is built Vertical data channel, specifically includes:First communication equipment is for receiving the call request message, according to the call request Second channel number set in message determines that one is gathered the channel number set of no intersection as institute with the second channel number First passage number set is stated, and includes the call of the first passage number set to second communication equipment return Message.
  15. 15. the communication system as described in claim 11-14 is any, which is characterized in that
    First communication equipment is additionally operable to receive being used for for the second communication equipment transmission when first communication equipment When establishing the third channel of triple data path and establishing message, the third channel for judging to receive establishes the message includes the 3rd Whether channel number belongs to the second channel number set, if be not belonging to, returns to show that refusal uses the 3rd data The message of passage.
CN201480000443.9A 2014-02-19 2014-02-19 A kind of methods, devices and systems for establishing data channel Active CN104995898B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/072248 WO2015123822A1 (en) 2014-02-19 2014-02-19 Method, device and system for establishing data channel

Publications (2)

Publication Number Publication Date
CN104995898A CN104995898A (en) 2015-10-21
CN104995898B true CN104995898B (en) 2018-06-05

Family

ID=53877512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480000443.9A Active CN104995898B (en) 2014-02-19 2014-02-19 A kind of methods, devices and systems for establishing data channel

Country Status (2)

Country Link
CN (1) CN104995898B (en)
WO (1) WO2015123822A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019417B (en) * 2019-05-30 2021-11-19 华为技术有限公司 Method and equipment for transmitting message
CN111131934B (en) * 2019-12-27 2022-03-18 武汉长光科技有限公司 Extended wavelength allocation method based on PON system
CN117177304A (en) * 2022-05-25 2023-12-05 中国移动通信有限公司研究院 Negotiation method, device, network equipment and terminal

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1770731A (en) * 2004-11-01 2006-05-10 凌阳科技股份有限公司 Channel assigning method in special peer-to-peer network
CN101616156A (en) * 2009-07-24 2009-12-30 中兴通讯股份有限公司 A kind of signal negotiation method and device of realizing the RTP data stream multiplexing
CN102710798A (en) * 2012-06-29 2012-10-03 百度在线网络技术(北京)有限公司 Browser expanding service supporting system and method based on real-time communication
CN103580986A (en) * 2012-07-30 2014-02-12 华为终端有限公司 Real-time communication method, terminal equipment, real-time communication server and system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1770731A (en) * 2004-11-01 2006-05-10 凌阳科技股份有限公司 Channel assigning method in special peer-to-peer network
CN101616156A (en) * 2009-07-24 2009-12-30 中兴通讯股份有限公司 A kind of signal negotiation method and device of realizing the RTP data stream multiplexing
WO2011009369A1 (en) * 2009-07-24 2011-01-27 中兴通讯股份有限公司 Method and equipment for realizing signaling negotiation of real-time transport protocol data stream multiplexing
CN102710798A (en) * 2012-06-29 2012-10-03 百度在线网络技术(北京)有限公司 Browser expanding service supporting system and method based on real-time communication
CN103580986A (en) * 2012-07-30 2014-02-12 华为终端有限公司 Real-time communication method, terminal equipment, real-time communication server and system

Also Published As

Publication number Publication date
CN104995898A (en) 2015-10-21
WO2015123822A1 (en) 2015-08-27

Similar Documents

Publication Publication Date Title
JP6505831B2 (en) Establish and maintain VOIP calls
CN104125540B (en) Multi-party call terminal and the method that one-to-one call is converted to from multi-party call
CN103916275A (en) BFD detection device and method
CN102638582B (en) Data communicating method and communication end
CN104541483B (en) When for connectivity fault the method and system re-routed is enabled for home network
CN104506567B (en) Data exchange method for gateway and server of Internet of things
CN105227418B (en) Data channel establishing method and communication equipment
CN104995898B (en) A kind of methods, devices and systems for establishing data channel
CN105122737A (en) Link aggregation method, apparatus, and system
CN110505640A (en) The processing method of apparatus bound, apparatus and system, to distribution net equipment and terminal
CN108476212A (en) Dynamic wlan connections
CN106716975A (en) A transmission link resume method, device and system
CN107786509A (en) Conversation message processing method and relevant apparatus
CN105591817A (en) Negotiation mode processing method and intelligent network device
CN106027599B (en) Data transmission channel establishing method, system and server
CN103095664A (en) Method and system establishing internet protocol (IP) multi-media session
US11637874B2 (en) Communications apparatus, systems, and methods for preventing and/or minimizing session data clipping
CN106357443B (en) A kind of method and apparatus of network configuration
CN105376427B (en) The method, apparatus and system of a kind of recording
CN109922012A (en) A kind of method and relevant device for transmitting data
WO2020132033A1 (en) Management of live media connections
CN102057630B (en) System and method for establishment of a multiprotocol label switching (MPLS) tunnel
CN105519049A (en) Message transmission method, device and system
CN105991629B (en) TCP connection method for building up and device
CN102883129B (en) Video communication method and terminal

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant