Summary of the invention
In view of this, main purpose of the present invention is to provide a kind of method that realizes multi-path transmission, is not requiring that described mulitpath has under the prerequisite of identical transmission cost, realizes traffic sharing, reduces congested purpose.
In view of this, main purpose of the present invention is to provide a kind of device of realizing multi-path transmission, when sending message many transmit paths is selected, thereby is realized traffic sharing, the congested purpose of reduction.
In view of this, main purpose of the present invention is to provide a kind of system that realizes multi-path transmission, is not requiring that described mulitpath has under the prerequisite of identical transmission cost, realizes traffic sharing, reduces congested purpose.
In order to achieve the above object, technical scheme of the present invention is achieved in that
A kind of method that realizes multi-path transmission is provided with message priority and transmit path corresponding relation, and this method comprises:
A, transmitting terminal are determined transmit path according to priority of messages to be sent;
B, transmitting terminal send message to be sent by the determined transmit path of steps A.
Wherein, describedly message priority is set and the transmit path corresponding relation is:
The corresponding relation of message priority and path transmission cost is set, and the corresponding relation of path transmission cost and transmit path;
Steps A is described according to priority of messages to be sent, determines that transmit path comprises:
A1, according to priority of messages to be sent, determine the transmission cost of transmit path;
A2, according to steps A 1 determined transmission cost, determine transmit path.
Wherein, the described corresponding relation that message priority and path transmission cost are set is:
The path query table of expression message priority and path transmission cost corresponding relation is set;
Or
Setting is by the computing formula of message priority calculating path transmission cost.
Wherein, before steps A, further comprise:
Judge whether message to be sent has carried precedence information, if, execution in step A then, otherwise with described message to be sent as message with lowest priority, execution in step A then.
Wherein, the corresponding relation of described path transmission cost and transmit path is:
Corresponding at least one transmit path of path transmission cost;
Then steps A 2 is described according to steps A 1 determined transmission cost, determines that transmit path comprises:
Whether A21, judgement surpass one corresponding to the transmit path of steps A 1 determined transmission cost, if surpass then execution in step A22, otherwise execution in step B;
A22, select to have in the mulitpath of identical traffic cost one as transmit path, execution in step B.
Wherein, steps A 22 described selections have in the mulitpath of identical traffic cost one and as transmit path are:
From mulitpath, select one at random as transmit path with identical traffic cost;
Or
From mulitpath, select one as transmit path according to the way of rotating with identical traffic cost;
Or
Other performance index according to the mulitpath with identical traffic cost are selected.
Wherein, step B further comprises:
According to sending order is message distributing serial numbers to be sent, and sequence number is carried in the message to be sent;
At receiving terminal buffering area is set, after step B, further comprises:
C, receiving terminal are put into buffering area with the message that receives after finding that the sequence number of message that receives is discontinuous, and the notice transmitting terminal sends the message that can make sequence number continuous once more.
Wherein, sequence number handled in record, and set and wait for duration, and the described receiving terminal of step C is after finding that the sequence number of message that receives is discontinuous, and the notice transmitting terminal sends once more and can make the continuous message of sequence number be:
C1, receiving terminal pick up counting when having handled sequence number and find that the sequence number of message that receives is discontinuous;
C2, receiving terminal judge whether to arrive described wait duration, if arrive, and execution in step C4 then, otherwise execution in step C3;
C3, receiving terminal judge whether to receive the message that can make sequence number continuous, if receive, then finish current flow process, otherwise return execution in step C2;
C4, receiving terminal notice transmitting terminal send once more and can make the continuous message of sequence number.
Wherein, sequence number handled in record, further comprises before the step C:
Receiving terminal is according to the sequence number of message of having handled sequence number and having received, and judges that the message that the receives multiple connection of whether attaching most importance to receives, if then abandon the described message that receives, otherwise execution in step C.
A kind of transmitting terminal device of realizing multi-path transmission comprises being used for the communication interface that message sends, and this device further comprises:
Path selection module: be used for the message priority stored in the binding data storehouse and the corresponding relation of transmit path, determine to send the transmit path of this message, send the transmit path information that obtains to the message generation module then according to priority of messages to be sent;
Message generation module: be used for generating message to be sent, and send message to be sent to the communication interface transmission according to the routing information that path selection module sends;
Database: be used for store path and select the message priority that module determines that transfer path is required and the corresponding relation of transmit path.
Wherein, this device further comprises:
Sequence number generation module: be used for the order formation sequence that sends according to message and number send the message generation module to;
Described message generation module is further used for:
The sequence number that the sequence number generation module is transmitted is carried in the message to be sent.
A kind of system that realizes multi-path transmission comprises transmitting end device and receiving end device with communication interface, and has set up the communication network that surpasses a transmit path between transmitting terminal device and receiving end device, and described transmitting end device further comprises:
Path selection module: be used for the message priority stored in the binding data storehouse and the corresponding relation of transmit path, determine to send the transmit path of this message, send the transmit path information that obtains to the message generation module then according to priority of messages to be sent;
Message generation module: be used for generating message to be sent, and send message to be sent to the communication interface transmission according to the routing information that path selection module sends;
Database: be used for store path and select the message priority that module determines that transfer path is required and the corresponding relation of transmit path.
Wherein, described transmitting terminal device further comprises:
Sequence number generation module: be used for the order formation sequence that sends according to message and number send the message generation module to;
Described message generation module is further used for:
The sequence number that the sequence number generation module is transmitted is carried in the message to be sent;
Described receiving end device further comprises:
Sequence number analysis module: be used for the sequence number that carries according to the received message of communication interface, judge whether the sequence number of message that receives is continuous, and when the sequence number of message that receives is discontinuous, the message that receives is put into buffering area, and can make the continuous message of sequence number by the transmission of communication interface notice transmitting terminal;
Buffering area: be used to deposit the discontinuous message of described sequence number, up to receiving the message that can make sequence number continuous.
Adopt technical scheme provided by the present invention, set up path between the network edge node in advance in network internal, and on fringe node the transmission cost in these paths of record.When network edge node is received the message of being sent by access network node, according to message priority, select to have the path of corresponding transmission cost, message is sent to the forward node of network internal.Like this, have the message of different priorities, be assigned on the path with different transmission costs, therefore can effectively carry out traffic sharing, reach and reduce congested purpose.And because the selection in path is to be finished by the fringe node of network, in network internal, all forward node all E-Packet according to prior protocols, and therefore technical scheme provided by the present invention also has the characteristics with existing protocol and hardware compatibility.
Embodiment
Core concept of the present invention is: set up the mulitpath of point-to-point transmission in advance, and write down the transmission cost of each paths, when needs from any when another point sends message, according to the precedence information that message carries, be that message distributes transmission path.
For making the purpose, technical solutions and advantages of the present invention clearer, the present invention is described in further detail below in conjunction with drawings and the specific embodiments.
Please refer to Fig. 1, Fig. 1 is a network model of the present invention.
In Fig. 1, node A and node E are the fringe nodes of network, and Node B, node C and node D are the forward node of network internal, and node a and node e are respectively the external nodes that is connected to node A and node E.Usually dispose this method in backbone network, promptly described network is a backbone network.At this moment node A and node E are the fringe node of backbone network, Node B, node C and node D are the forward node of backbone network inside, node a and node e are respectively the access network node switching equipment in the Access Network for example that is connected to node A and node E, or user network node terminal equipment for example.In most of the cases, the user network node is not directly connected to the backbone network fringe node, but is connected to access network node earlier, and access network node is connected to the backbone network fringe node then.Therefore, in the description of back, being access network node with node a and node e is that example illustrates technical scheme of the present invention.
In Fig. 1, suppose to have four paths from node A to node E one: path one comprises node A, Node B and node E; Path two comprises node A, Node B, node C, node D and node E; Path three comprises node A, node C and node E; Path four comprises node A, node C, node D and node E.For every paths, the transmission cost of regarding this path as that can the node number on the path is approximate, then the transmission cost in path one is 3, and the transmission cost in path two is 5, and the transmission cost in path three is 3, and the transmission cost in path four is 4.
In actual applications, can also adopt forward node number other standards in addition to determine the transmission cost of every paths, the bandwidth that described other standards can be the paths, the average delay in path or the shake variance in the path delay of time or the like.For some certain criteria, because transmission cost is just represented relative grade, therefore the mulitpath with identical traffic cost may be path of equal value fully, also may be the close path of performance.For example, suppose that with the average delay in the path standard as transmission cost, average delay is in the path of 10ms to 20ms so, its transmission cost is 1; Average delay is in the path of 20ms to 30ms, and its transmission cost is 2; Average delay is in the path of 30ms to 40ms, and its transmission cost is 3, and the like.
On node A, at first be provided with and transmit, in order to the relation between expression destination node and the transmit path according to prior art.In addition, because the fringe node of backbone network is connected to forward node different in the backbone network by different ports usually, that is to say that therefore the different corresponding different transmit ports of transmit path possibility transmits the corresponding relation between further expression transmit path and the transmit port.In general, can come unique path of representing with ID of trace route path.Therefore, in the transmitting of node A, a part of content corresponding with destination node E as shown in Table 1:
The purpose fringe node | ID of trace route path | The transmitting terminal slogan |
?E | Path one | Port one |
?E | Path three | Port 2 |
?E | Path four | Port 2 |
?E | Path two | Port one |
Table one
Need to prove that in the present invention, described transmitting can not have this data field of purpose fringe node, but for the prior protocols compatibility, the present invention has still kept this data field of purpose fringe node in transmitting.
In order to realize the present invention, further be provided with the path query table on the node A, in order to the corresponding relation of expression path and transmission cost.In this case, in the path query table of node A, a part of content corresponding with destination node E as shown in Table 2.
The purpose fringe node | ID of trace route path | Transmission cost |
?E | Path one | 3 |
?E | Path three | 3 |
?E | Path four | 4 |
?E | Path two | 5 |
Table two
Shown in the table two only is that node A is the path query table of destination node with node E upward.For different destination nodes, corresponding to different path query tables.
As a kind of replacement scheme, also can represent ID of trace route path and transmission cost simultaneously with a data field.For example, existing ID of trace route path represents with 12 bits, if total path number, is then in fact only used least-significant byte in described 12 bits less than 256 as ID of trace route path.At this moment can be with the high 4 bit representation transmission costs of described 12 bits.In this case, described path query table and transmit and can lump together, as shown in Table 3:
The purpose fringe node | ID of trace route path is high 4 | The ID of trace route path least-significant byte | Transmit port |
?E | ?3 | Path one | Port one |
?E | ?3 | Path three | Port 2 |
?E | ?4 | Path four | Port 2 |
?E | ?5 | Path two | Port one |
Table three
In order to realize the present invention, on node A, also be provided with the priority question blank, in order to the corresponding relation of expression message priority and transmission cost.Total principle is that the message that priority is high more should transmit by the more little path of transmission cost.The more little then priority of suppose priorities numerical value is high more, and an example of so described priority question blank as shown in Table 4.
Destination node | Priority | Transmission cost |
?E | ?1 | ?3 |
?E | ?2 | ?4 |
?E | ?3 | ?5 |
Table four
Shown in the table four is that node A is the priority question blank of destination node with node E upward.Different destination nodes can promptly adopt the corresponding relation of different message priorities and path transmission cost corresponding to different priority question blanks, can certainly corresponding identical priority question blank.
In above-mentioned network model, when node a need be when node e sends message, at first be that the form according to the Access Network message sends to node A with message, node A handles according to flow process as shown in Figure 2 after receiving described Access Network message.Please refer to Fig. 2, Fig. 2 is the process chart of the method for realization multi-path transmission provided by the invention at transmitting terminal.
Step U01: the fringe node of going into of backbone network receives the Access Network message that is sent by access network node, determines the fringe node that of backbone network.
Here, the fringe node of going into of described backbone network is exactly node A.Described Access Network message comprises access network node a address, source, purpose access network node e address, and the fringe node that goes out that node A judges backbone network according to purpose access network node e address is node E.
Step U02: formation sequence number.
As mentioned above, the corresponding mulitpath of same transmission cost possibility, like this, owing to the front and back message that mails to node e from node a might transmit by different paths, therefore going out fringe node E might receive the backbone network message that sends behind the fringe node A going into earlier.In order to prevent this incorrect order situation to occur at receiving terminal, sequence number of encapsulation in the backbone network message is used for representing that node A sends the order of backbone network message.
Certainly, if limiting transmission cost and transmit path is to concern one to one, so because once complete data transmission procedure from node a to node e, before and after priority of messages normally the same, message will transmit by same paths like this, just the incorrect order situation can not occur, therefore just sequence number need not be set yet.
Step U03: judge whether the Access Network message received has carried precedence information, if execution in step U05 then, otherwise execution in step U04.
Step U04: the Access Network priority of messages is set to lowest priority.
Step U05: according to the Access Network priority of messages, and the priority question blank, determine corresponding transmission cost.
Suppose that the precedence information that described Access Network message carries is 1, then node A is according to the priority question blank shown in the table four, and can obtain corresponding transmission cost is 3, that is to say that will adopt transmission cost in the backbone network is that this message is transmitted in 3 path.
As a kind of replacement scheme, also described priority question blank can be set on the access network node A.But according to predefined formula, the message priority that carries from the Access Network message directly calculates corresponding transmission cost.For example, suppose from go into fringe node A to the path transmission cost that goes out fringe node E be 0,1,2 ..., m-1 m level altogether, and the Access Network message priority is 0,1,2 ..., n-1 n level altogether, priority is that the transmission cost of the Access Network message correspondence of k can multiply by the merchant who is removed by n behind the m for k so.
Step U06: judge according to the path query table whether the path with determined transmission cost surpasses one, if execution in step U07 then, otherwise execution in step U08.
Step U07: select in the described mulitpath with identical traffic cost one as transfer path.
From as shown in Table 2 path query table as can be seen, transmission cost is that 3 path has two, be respectively path one and path three, so node A need select one as the actual transfer path that adopts from path one and path three.The method of selecting can be to select at random, also can be to select according to the way of rotating.Certainly, also can select according to other performance index in path.
For example, suppose with the included node number in path as transmission cost, and count X that three paths are arranged, be respectively first, path, path second and path third corresponding to a certain node.For selecting by turns, can be with the sequence number that distributed among the step U02 divided by 3, remainder be 0 message to adopt path first, remainder be that 1 message adopts path second, remainder is that 2 message adopts path third.
If further knowing the bandwidth ratio in first, path, path second and path third is 3: 3: 4, so then from described three paths, select according to 3: 3: 4 ratio, that is to say in continuous 10 the backbone network messages of counting X corresponding to described node, there are 3 by the transmission of path first, there are 3 by the transmission of path second, have 4 by path third transmission.At this time can be with the sequence number that distributed among the step U02 divided by 10, remainder be 0,3,6 message to adopt path first, remainder be that 1,4,7 message adopts path second, remainder is that 2,5,8,9 message adopts path third.Doing like this can be so that the bandwidth consumed of each paths be balanced more.
Step U08: Access Network message, ID of trace route path and sequence number are encapsulated in the backbone network message together, and the backbone network message is sent on the transfer path.
Suppose that node A selected transmit path in step U06 is path three, then node A further determines that according to transmitting as shown in Table 1 transmit port is a port 2 in step U08, then the backbone network message is sent to node C Fig. 1 from port 2, backbone network also carry the determined ID of trace route path of step U07 for node C as the foundation of transmitting.Like this, node A just realized according to priority of messages, and one that selects to lead in the mulitpath that backbone network goes out fringe node is transmitted message.Because the path of backbone network inside is to set up in advance, so the subsequent treatment of message just need not the participation of node A.
Node A according to above-mentioned steps is handled changes if find the transmission cost in path, and for example the forward node number increases, and then revises described path query table; If the path failure that writes down in the discovery path query table is then directly deleted Invalid path from described path query table.Certainly, in order to keep stability of network, a minimum interval of revising described path query table can be set.
For the situation that path congestion takes place, node A receives congested warning on certain paths so, then temporarily should be by the part in the message that congested path transmission takes place, other paths of adjusting to except that congested path takes place send, described other paths can be and the path that congested path has the identical traffic cost takes place, and also can be and congested path takes place have the path of different transmission costs.
The fringe node that goes out at backbone network, after receiving the backbone network message,, then successively the backbone network message is carried out decapsulation if the entrained sequence number of backbone network message is continuous, be reduced to the Access Network message, the Access Network message is transmitted in the purpose access network node address of carrying according to the Access Network message then.For the discontinuous situation of sequence number, then think incorrect order to have occurred, the backbone network message of receiving is put into buffering area, check whether received the backbone network message that can make sequence number continuous again once more after waiting for a period of time then; If incorrect order is not eliminated yet after waiting for the regular hour, do not receive promptly describedly can make the continuous again backbone network message of sequence number that then the fringe node of going into to backbone network initiates a message, and requires to retransmit describedly can make the continuous again backbone network message of sequence number.Concrete process please refer to Fig. 3, and Fig. 3 is the process chart of the method for realization multi-path transmission provided by the invention at receiving terminal.
Step V01: the fringe node that goes out of backbone network receives the backbone network message.
Step V02: judge whether the backbone network sequence number of message received is the next sequence number of having handled sequence number, if execution in step V08 then, otherwise execution in step V03.
The described sequence number of having handled is preserved by going out fringe node self, is used for representing the backbone network message that disposed, the backbone network sequence number of message that last is processed.The processing here refers to and is descapsulated into the Access Network message, and is forwarded to access network node according to the purpose access network node address of Access Network message.
Step V03:, the backbone network message is put into buffering area according to the backbone network sequence of message of receiving number.
If the backbone network sequence number of message that receives is not to have handled the next sequence number of sequence number, the backbone network sequence number of message that just receives is discontinuous, think that then incorrect order has appearred in the backbone network message that receives, need put into the buffering area wait and eliminate up to incorrect order.
The backbone network message is that the order according to described sequence number is placed into when being placed into buffering area.For example, suppose that the current backbone network sequence number of message of receiving is 233, it is 232 and 235 backbone network message that sequence number has been arranged in the buffering area, and it is between 232 and 235 the backbone network message that the so current backbone network message of receiving is placed in sequence number in the buffering area.
Step V04: judge whether the buffering timing starts, if started then execution in step V06, otherwise execution in step V05.
Go out timer of edge nodes maintain to carry out described buffering timing.
Step V05: start buffering timing, execution in step V14 then.
Step V06: judge whether the buffering timing surpasses predefined wait duration, if surpass then execution in step V07, otherwise execution in step V14.
Step V07: notice is gone into fringe node, and retransmission sequence number is to have handled the backbone network message of the next sequence number of sequence number, and the buffering timing of resetting, execution in step V14.
The buffering timing is overtime, illustrate out that fringe node wait sequence number has surpassed predefined wait duration for the backbone network message of having handled the next sequence number of sequence number, that is to say that this backbone network message is probably lost, therefore need go into fringe node and resend.
Step V08:, then stop and the buffering timing of resetting if the buffering timing starts.
Step V09: the backbone network message is descapsulated into the Access Network message, is transmitted to access network node according to the purpose access network node address of Access Network message.
Step V10: with receiving backbone network sequence number of message as handling sequence number.
Step V11: judge in the buffering area whether the backbone network sequence of message of putting at first number is the next sequence number of having handled sequence number, if execution in step V12 then, otherwise execution in step V14.
For example, suppose that when receiving current backbone network message the sequence number of processing that goes out the fringe node record is 233, in the buffering area three backbone network messages is arranged simultaneously, its sequence number is respectively 235,236 and 237, and the then described backbone network sequence of message of putting at first number is 235.If the current backbone network sequence number of message of receiving is 234, pass through the described judgement of step V02 so after, execution in step V08; In step V10, handled sequence number and become 234.Like this, in the described judgement of step V11, the backbone network sequence of message of putting at first numbers 235 is exactly a next sequence number of having handled sequence number 234, so execution in step V12.
Step V12: in buffering area, be descapsulated into the Access Network message successively from the continuous backbone network message of backbone network start of heading of putting at first, and be transmitted to access network node according to the purpose access network node address of Access Network message.
For described continuous backbone network message from backbone network start of heading of putting at first, can think that incorrect order eliminates, therefore can carry out subsequent treatment.Certainly, for the backbone network message of handling, also need from buffering area its deletion.
Step V13: in described continuous backbone network message, last sequence number of message is as handling sequence number.
According in step V11 for example, behind execution of step V13, handled sequence number and become 237.
Step V14: finish current flow process.
Need to prove that the current flow process of the end does not here comprise that immediately whether overtime end to cushioning judgement.That is to say, after the buffering timing starts, go out fringe node and can check always whether the buffering timing is overtime that overtime or buffering timing stops up to the buffering timing, rather than just once judges at every turn when receiving the backbone network message.
Certainly, also can preestablish maximum wait message number, make above-mentioned buffering timing into the buffering counting.Behind the buffering count enable, whenever receive a backbone network message, if the backbone network sequence of message of being received number is not a next sequence number of having handled sequence number, then the buffering counting adds 1; If the backbone network sequence of message of being received number is a next sequence number of having handled sequence number, then stop and the buffering counting of resetting.In step V06, surpass maximum wait message number, then execution in step V07 if judge the buffering counting; Otherwise finish current flow process, judge no longer before receiving next backbone network message whether the buffering counting surpasses maximum wait message number.Described buffering counting can be regarded as a kind of special circumstances of buffering timing.
As a kind of replacement scheme, go out fringe node and also the buffering timing can be set.Like this, in step V02, go out fringe node and find that the backbone network sequence of message number is not when having handled the next sequence number of sequence number, according to the backbone network sequence of message received number, after the backbone network message put into buffering area, just directly notice was gone into the fringe node retransmission sequence number for having handled the backbone network message of the next sequence number of sequence number.In this scheme, go out fringe node and might repeatedly receive certain backbone network message.Therefore, between step V01 and step V02, go out fringe node and need the backbone network sequence number of message and the described size of having handled sequence number that receive among the comparison step V01 at first, receive with the backbone network message that receives among the determining step V01 multiple connection of whether attaching most importance to, then abandon described backbone network message if cross, otherwise execution in step V02.For example, suppose that described sequence number increases progressively, the backbone network sequence number of message of i.e. back transmission is greater than the backbone network sequence number of message that sends earlier, whether go out backbone network sequence number of message that flange node judges receives so greater than handling sequence number, if greater than execution in step V02 otherwise abandon the backbone network message of being received and finish current flow process.In this scheme, step V04, step V05, step V06 and step V08 can omit.
Certainly, if according to described in the step U02, transmission cost and transmit path are to concern one to one, so just sequence number need not be set.Like this, go out fringe node after receiving the backbone network message, directly it is descapsulated into the Access Network message, and be transmitted to access network node according to the purpose access network node address that the Access Network message carries.
The above method of having narrated realization multi-path transmission provided by the invention in conjunction with network model shown in Figure 1.Below in conjunction with concrete backbone network, i.e. provider backbone network (PBBN, ProviderBackbone Bridged Network) comes the method for further concrete narration realization multi-path transmission provided by the invention.
In PBBN, backbone network fringe node A as shown in Figure 1 and node E are the 802.1ah bridge, has the ability that the data message that enters PBBN is encapsulated and transmits, backbone network forward node B, node C and node D among Fig. 1 are the 802.1ad bridge, have according to media interviews control (MAC, Media Access Control) ability of address and VLAN ID (VLAN ID, Virtual Local AreaNetwork Identifier) forwarding.
Still be example with access network node a to the situation that access network node e sends message, data field related to the present invention is as shown in Table 5 in the Access Network message:
C-DA | ?C-SA | ?S-TAG | ?C-TAG | ?Payload | ?C-FCS |
Table five
Wherein, C-DA represents the MAC Address of purpose access network node e; C-SA represents the MAC Address of source access network node a; The data of Payload for transmitting; C-FCS is the Access Network verification.In addition, S-TAG and C-TAG are the labels that carries with the Access Network message, have, and also may not have.
In the present embodiment, backbone network, promptly data field related to the present invention is as shown in Table 6 in the PBBN message:
B-DA | ?B-SA | ?B-TAG | ?I-TAG | ?SQ | ?Client?Data | ?B-FCS |
Table six
Wherein, B-DA represents that PBBN goes out the MAC Address of fringe node E; B-SA represents that PBBN goes into the MAC Address of fringe node A; B-TAG is a PBBN VLAN label, and comprising VLANID, the forward node among the PBBN carries out the PBBN message forwarding according to VLAN ID and B-DA; SQ is described sequence number; I-TAG is the service instance tag that S-TAG obtains shown in the expansion table five, is used for traffic differentiation; The data of Client Data for transmitting; B-FCS is the PBBN verification.
PBBN goes into after fringe node A receives the Access Network message from access network node a, and execution in step U01 promptly determines the fringe node that goes out of PBBN.
In this step, go into fringe node A and carry out address learning at first as required, be about to source access network node address C-SA and self associate, this incidence relation is kept in the linked database of describing among the 802.1ah (ADB, Association Data Base).Certainly, if described incidence relation has been arranged among the ADB of self, then need not to learn again.
Then, go into fringe node A determines the B-DA data field in the PBBN message according to the value of the C-DA data field of Access Network message value.Go into fringe node A at first searches the C-DA correspondence in the ADB of self PBBN and go out the fringe node address, if can in ADB, find the PBBN of C-DA correspondence to go out the fringe node address, so just with the B-DA of this address as the PBBN message; Go out the fringe node address if in ADB, can not find corresponding PBBN, then use the B-DA of a special multicast address as the PBBN message.
Then, go into fringe node A execution in step U02, be current message formation sequence number, be carried in the SQ data field of PBBN message.
Next, go into fringe node A execution in step U03 to step U07, determine to transmit ID of trace route path and the transmit port that current message adopted, and described ID of trace route path is carried in the B-TAG data field of PBBN message, specifically, be to be carried in the VLAN ID subdomain of B-TAG data field.
At last, go into fringe node A self MAC Address is carried in the B-SA data field of PBBN message, and carry out other encapsulation operation, packaged message is sent to the forward node of PBBN inside by determined transmit port.The forward node of PBBN inside is transmitted according to VLAN ID and B-DA entrained in the PBBN message, receives described PBBN message up to going out fringe node E.
Go out fringe node E and also can carry out address learning, the incidence relation of C-SA in the PBBN message and B-SA is kept among the ADB of self.Handle the PBBN message according to step V01 to step V14 then.
For the situation that adopts sequence number, go into the message that fringe node A retransmits certain sequence number if desired if go out fringe node E, then send the repeat requests message to going into fringe node A, data field related to the present invention is as shown in Table 5 in this message:
B-DA | ?B-SA | ?B-TAG | ?I-TAG | ?SQ | ?B-FCS |
Table five
Wherein, B-DA represents that PBBN goes into the MAC Address of fringe node A; B-SA represents that PBBN goes out the MAC Address of fringe node E; B-TAG is a PBBN VLAN label; I-TAG is used for traffic differentiation, and the I-TAG in the repeat requests message comprises that further this message of expression is the subdomain of repeat requests message; SQ is the backbone network sequence of message that retransmits of requirement number; B-FCS is the PBBN verification.
Please refer to Fig. 4, Fig. 4 is the structural representation of the device of realization multi-path transmission provided by the invention.
Fig. 4 (a) is the transmitting terminal device of realization multi-path transmission provided by the invention, and this device is positioned at the interface of backbone network and Access Network.This device comprises:
Access Network communication interface: be used to receive the Access Network message, and the Access Network message that is received is sent to path selection module.
Path selection module: be used for information according to the Access Network message, question blank and corresponding relation that the binding data storehouse is stored, the path of determine transmitting current message, and the transfer path information that obtains sent to backbone network message generation module.
Specifically, path selection module is at first according to the destination address in the described Access Network message, and the corresponding relation of destination address and backbone network receiving terminal node in the binding data storehouse is determined the receiving terminal node of backbone network.
Next path selection module determines the transmission cost in the path of the current message of transmission according to the precedence information in the Access Network message.The mode of determining can be by the priority question blank in the Query Database, also can be to calculate by predefined formula.
Further, path selection module is according to resulting transmission cost, and the path query table that is stored in the database is determined transfer path, if resulting transmission cost is corresponding to many transfer paths, path selection module further carries out selecting one from described many transfer paths according to predefined selection algorithm so.Described predefined selection algorithm can be a stochastic selection algorithm, the algorithm of rotating selection algorithm or selecting according to path performance.
The sequence number generation module: be used for transmission cost corresponding to the situation of many transfer paths under formation sequence number send to backbone network message generation module.
Backbone network message generation module: be used for routing information according to the path selection module transmission, and the sequence number of sequence number generation module transmission, form according to the backbone network message is encapsulated in described Access Network message in the backbone network message, then the backbone network message is given the backbone network communication interface and is sent.
Backbone network communication interface: be used to send the backbone network message.
Database: be used to store and determine required question blank and the corresponding relation of transfer path, these question blanks and corresponding relation have been represented the corresponding relation of message priority and transmit path jointly.
Fig. 4 (b) is the receiving end device of realization multi-path transmission provided by the invention, and this device also is positioned at the interface of backbone network and Access Network.This device comprises:
Backbone network communication interface: be used to receive the backbone network message, and the backbone network message that is received is sent to the sequence number analysis module.
The sequence number analysis module: be used for judging whether to occur incorrect order according to the sequence number that the backbone network message that receives carries, whether the backbone network sequence number of message that promptly receives is continuous.If continuously, then the backbone network message is sent to Access Network message generation module and handles; Otherwise the backbone network message that receives is put into buffering area wait for that up to receiving the message that can make sequence number continuous, promptly incorrect order is eliminated.If the incorrect order duration surpasses predetermined wait duration, promptly still do not receive the message that can make sequence number continuous behind predetermined wait duration, the sequence number analysis module also sends by backbone network communication interface notice transmitting terminal can make the continuous backbone network message of sequence number.
Buffering area: be used to deposit the backbone network message of waiting for that incorrect order is eliminated, up to receiving the message that can make sequence number continuous, promptly incorrect order is eliminated.
Access Network message generation module: the backbone network message deblocking that is used for the sequence number analysis module is sent is dressed up the Access Network message, and the destination address that carries according to the Access Network message sends to access network node.
Certainly, for the situation that does not need to adopt sequence number, directly the backbone network message of being received is sent to Access Network message generation module by the backbone network communication interface.
Access Network communication interface: be used to send the Access Network message.
Need to prove, though more than narrated technical scheme provided by the present invention based on network configuration shown in Figure 1, but no matter be the method for realization multi-path transmission provided by the invention, still the device of realization multi-path transmission provided by the invention all is not limited to be applied in the network configuration shown in Figure 1.
Particularly, in the method for realization multi-path transmission provided by the invention, step U01 is not limited to be finished by the fringe node of going into of backbone network to the described transmission flow of step U08; Step V01 also is not limited to be finished by the fringe node that goes out of backbone network to the described reception flow process of step V14.So long as have the situation of many transmission paths between two nodes, in these two nodes, the node that sends message can send to the described flow process of step U08 according to similar step U01 so; And the node that receives message also can receive to the described flow process of step V14 according to similar step V01.
Equally, in the device of realization multi-path transmission provided by the invention, described transmitting terminal device and receiving end device all not necessarily are positioned at the interface of described backbone network and Access Network.So long as have the situation of many transmission paths between two nodes, in these two nodes, the node that sends message can be realized according to the described transmitting terminal device of Fig. 4 (a) so; And the node that receives message also can be realized according to the described receiving end device of Fig. 4 (b).In some cases, described Access Network communication interface of Fig. 4 and backbone network communication interface can be same communication interfaces.At this moment, for the node that sends message, be not to receive a kind of message of form and it is encapsulated as the message of another kind of form, but generate message by self; Node for receiving message neither receive a kind of message of form and it is descapsulated into the message of another kind of form.
In a word, the above is preferred embodiment of the present invention only, is not to be used to limit protection scope of the present invention.Within the spirit and principles in the present invention all, any modification of being done, be equal to replacement, improvement etc., all should be included within protection scope of the present invention.