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 PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/02—Selection of wireless resources by user or terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-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
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)
- 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. 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. method as claimed in claim 2, which is characterized in thatFirst 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. 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. 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. 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. 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. communication equipment as claimed in claim 7, which is characterized in thatThe 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. communication equipment as claimed in claim 6, which is characterized in thatThe 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. the communication equipment as described in claim 6-9 is any, which is characterized in thatThe 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. 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. 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. communication system as claimed in claim 12, which is characterized in thatSecond 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. communication system as claimed in claim 11, which is characterized in thatSecond 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. the communication system as described in claim 11-14 is any, which is characterized in thatFirst 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.
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)
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)
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 |
-
2014
- 2014-02-19 CN CN201480000443.9A patent/CN104995898B/en active Active
- 2014-02-19 WO PCT/CN2014/072248 patent/WO2015123822A1/en active Application Filing
Patent Citations (5)
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 |