CN101835195B - Byzantine failure tolerance method for improving reliability of wireless Mesh backbone network - Google Patents
Byzantine failure tolerance method for improving reliability of wireless Mesh backbone network Download PDFInfo
- Publication number
- CN101835195B CN101835195B CN2010101215229A CN201010121522A CN101835195B CN 101835195 B CN101835195 B CN 101835195B CN 2010101215229 A CN2010101215229 A CN 2010101215229A CN 201010121522 A CN201010121522 A CN 201010121522A CN 101835195 B CN101835195 B CN 101835195B
- Authority
- CN
- China
- Prior art keywords
- node
- information
- byzantium
- data
- unit
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention provides a Byzantine failure tolerance method for improving reliability of a wireless Mesh backbone network. The method comprises search and establishment of a Byzantine unit, data backup and failure tolerance. A Byzantine algorithm provided by the application improves the conventional routing protocol, and selects corresponding node data information to perform backup aiming at network attack behaviors of different conditions or abnormal conditions of nodes. When the attack behaviors occur, certain information of the attacked nodes is tampered, or pseudo nodes appear in the network and the nodes are subjected to human failure, the routing protocol fused into the Byzantine principle can acquire accurate node information by judging the backup information of other nodes in the Byzantine unit of the abnormal nodes so as to suppress interference, enhance the failure tolerance capability of the network and promote the reliability of the wireless Mesh backbone network.
Description
Technical field
The present invention relates to radio network technique field, Trusted Computing field, is a kind of Byzantine failure tolerance strategy that improves reliability of wireless Mesh backbone network specifically.
Background technology
Wireless Mesh network (Wireless Mesh Network; Be called for short WMN) be to move a kind of new network structure that Ad hoc network is the basic research exploitation based on many routes, the multi-multipoint technology of support; Characteristic with dynamic expansion, MANET, management certainly, reparation automatically, homeostasis, mobile broadband; Be the network of a kind of big capacity, two-forty, wide coverage, can become a kind of effective means of broadband access.It drops into low, progressive deployment, easy care, the healthy and strong and reliable service range of network or the like these characteristics in advance and more helps Wireless Mesh network to become one of following core communication network.
The feasible research to its reliability of Wireless Mesh network bright development prospect seems particularly important, excludes hardware factor, and good Routing Protocol is the important assurance of its reliability.Aspect the reliability design of Wireless Mesh network routing protocol, need to consider following factor:
(1) route criterion.Many existing Ad hoc network routing protocols all with minimum hop count as the route criterion; But in most of the cases; The performance of this route criterion is not optimum in Wireless Mesh network; Owing to disturb the influence of factors such as conflict, communication distance, will worsen the non-constant that will become of the performance of throughput, the error rate etc. end to end from the source node to the destination node based on the path link quality of this route criterion generation.In order to address this is that, just require Wireless Mesh network to adopt some new route criterions, and this criterion can correctly reflect the influence of link-quality to each index.
(2) load balancing.In Wireless Mesh network, all nodes are through the Routing Protocol shared network resource.Therefore, the Wireless Mesh network routing protocol must satisfy this requirement of load balancing.For example some node takes place congestedly in the network, and when becoming the bottleneck node (Mesh router) of whole network, new Business Stream should be able to " be walked around " this node, selects other paths to carry out transfer of data automatically.The route criterion also need satisfy the requirement of load balancing to a certain extent.
(3) route is fault-tolerant: in Wireless Mesh network; The routing node relative fixed, but produce routing error sometimes because of data collision, and the uncertainty of mobile node also can influence UNICOM's situation of link; Even cause link failure; This Routing Protocol that just needs Wireless Mesh network is accomplished route as early as possible and is rebuild, to avoid service disruption when route makes a mistake; Or new link appears generating because of new enabled node.
(4) routing safety: if one efficiently Routing Protocol can not get good protection, the assailant of malice possibly damage even make Routing Protocol to paralyse fully to the route agreement.In Wireless Mesh network, because the role that the Mesh client also has route, the Mesh node can or upgrade routed path in the network according to establishing route information, deletion.This fact also is a common critical weakness in Wireless Mesh network and the Ad hoc network routing protocol, changes the direction of route or blocks route simply because malicious node can produce wrong routing iinformation.In addition, the assailant can mislead route through attacking Routing Protocol, thereby causes the collapse of network.Improving the fail safe of Routing Protocol, also is the requirements at the higher level to the route fault freedom.
Because under existing plurality of applications situation; The zone that the wireless device of Wireless Mesh network is arranged receives artificial destruction easily from the crowd is nearer; Network node itself also very easily suffers attack, interference, the eavesdropping of other node, so one of major issue that safety is Wireless Mesh network must be solved.In order to improve the reliability of Wireless Mesh network; Need improve existing Routing Protocol; Current improvement strategy mainly is through modes such as the encryption of legal nodal information, authentication are waited the security performance that improves procotol, thereby improves the reliability of Wireless Mesh network.
Byzantium's principle is a fault-tolerant principle in the Trusted Computing, and this principle can be so that system can be under the situation of one or more system unit operation irregularity, still can impregnable operate as normal.This principle has very widely at aspects such as Trusted Computing, fault-tolerant and network securitys to be used.The essence of Byzantium's principle is a kind of abstract expression that keeps data consistency problem in the parallel computation; Realize as the basis with data backup; Promptly each part in system exchanges with regard to a certain data or command information each other; Live part in the final system is selected proper data or instruction with the information of receiving with the principle that the minority is subordinate to the majority, thus the reliability of the system of assurance.
Summary of the invention
The object of the present invention is to provide a kind of fault-tolerant ability that can strengthen network, make the Byzantine failure tolerance method of the raising reliability of wireless Mesh backbone network that the reliability of wireless Mesh backbone network gets a promotion.
The objective of the invention is to realize like this: comprise searching and foundation and data backup and fault-tolerant of Byzantium unit;
(1) Byzantium unit searching and setting up
1. take out and receive NoNnode address and the neighbors address information in the route bag;
2. add the NoNnode address information in the routing request packet, promptly node is when broadcasting route bag, and except sending self node address information, the neighbors address information of simultaneously self being received is encapsulated in the route bag sends together;
3. whether the two neighbors table N-Nform of traversal search the nodal information of receiving and in table, exist, if there is not same node point information, then the nodal information of receiving are deposited among two neighbors table N-Nform;
4. judge that whether stand-by period t is less than T
B, be then to return for the 1. step;
5. the two neighbors tables of traversal take out three neighbors addresses inequality;
6. search two neighbors tables, each other whether three nodes that judgement is got neighbors, if; At first search Byzantium's unit index table; Check this groups of nodes record whether, if not then deposit three node addresss in concordance list, self-defined unit number is stored in the table simultaneously;
7. be destination node with three nodes respectively, transmit self and except that destination node other two addresss of node, subsidiary simultaneously Byzantium unit number;
8. as receive the node address of subsidiary Byzantium unit number, check in Byzantium's unit index table this groups of nodes record whether, if do not have, three node addresss then will receiving deposit Byzantium's unit index table in together with Byzantium's unit number;
Whether 9. two neighbors tables have traveled through, if do not have, then continue to choose three different neighbors addresses, return for the 5. step;
10. Byzantium unit searches and sets up end;
(2) data backup and fault-tolerant strategy
1. selection needs self node data information of backup;
2. search Byzantium's unit index table, data message is sent to 3 identical nodes of Byzantium's unit number respectively;
3. the node data information of receiving is judged that if node is same node under informed source and the data message, deposit this data message in the data message backup sheet, weights are designated as 1; Search Byzantium's unit index table simultaneously, find out two nodes identical, data message is transmitted to this two nodes respectively with Byzantium's unit number of informed source node;
If 4. informed source is different with the affiliated node of data message, then this information is the nodal information that node is transmitted under the non-information, and this data message exists in the data message backup sheet, then in the data message backup sheet, finds this information, and its weights are added 1;
If the forwarding information that 5. receives, judges then that the weights of stored information whether greater than 1, are then to abandon the current data message of receiving with data information stored is different; Otherwise, depositing the data message of receiving in the data backup table, weights are designated as 1;
6. travel through the information back-up table,, then judge these weights, as correct backup information, delete other information of the same name simultaneously with the high data message of weights if there is identical but the item that data message is different of nodename in the information back-up table; If these weights are identical, then with the up-to-date data message that increases weights as correct backup information, delete other information of the same name;
Do not accomplish if 7. receive data, then turned back to for the 3. step;
8. finish.
The present invention is according to the design feature of Wireless Mesh network; At first propose Wireless Mesh network and use the Adaptive Networking structure of Byzantium's principle; Be the basis with " oral contract " solution in Byzantium's principle then, provided Byzantium's algorithm that is fit to be applied to Wireless Mesh network.This algorithm comprises the searching and setting up of Byzantium unit of Wireless Mesh network backbone network node, and storage and fault tolerance judgment two parts of selecting backed up data information.Provide the relative strategy of the special circumstances in the principle practical application at last.
Being defined as of the technical term that relates in the method for the present invention:
(1) Byzantium unit (Byzantine Unit, U
B)
If 4 nodes in the network, they each other can both one be jumped and can reach, i.e. neighbors each other each other, and we form a grouping with these 4 nodes, are called Byzantium's unit (see figure 1).
(2) neighbors of neighbors (The Neighbor of the Neighbor Node, NoNnode)
In Wireless Mesh network, if having such three node a, b, c, a is the neighbors of b, and b is the neighbors of c, and data message sends to c from a via b, and we defined node a is the neighbors of the neighbors of node c.
(3) two neighbors tables (Neighbor and Neighbor From, N-Nform)
This table is used for the neighbors address that memory node receives and the information (table 1) of NoNnode address.
Table 1 pair neighbors list structure
The data structure of this table is:
struct?N-Nform{
char*NoNnode_Address;
char*Neighbor_Node_Address;
};
(4) Byzantium's unit index table (Byzantine Unit Form, Bform)
This table is used for Byzantium cell node address and Byzantium's unit number (table 2) at memory node place.
Table 2 Byzantium unit index list structure
The data structure of this table is:
struct?Bform{
char*IP;
char*Byzantine_Unit_num;
};
(5) the triggering cycle (Byzantine Time, TB)
Triggering cycle dactylus point is carried out the time that algorithm is searched by Byzantium from receiving that first route packet start is waited for.If the maximum number of degrees of node are N, then T in this Wireless Mesh network
BIt is said that size is set at N times of the defeated maximum delay of a jumping figure, to guarantee at T
BDuring the time, node has been stored enough address informations.
(6) weights of data (The quantity of data, QoD)
In the implementation of Byzantium's principle, each node will constantly receive, send data, and same data possibly receive repeatedly, and the quantity that we receive identical data information with this node is defined as the weights of these data.
(7) the data message backup sheet (Data Form, Dform)
This table is used for storing selects backed up data information, writes down the affiliated nodename of this data message and the weights (table 3) of data simultaneously.
Table 3 data message backup sheet structure
The data structure of this table is:
struct?Dform{
char*Node_Name;
char*Data;
char*Data_Quantity;
char*Time;
};
Wireless Mesh network adaptability structure among the present invention is:
The Byzantine failure tolerance principle is applied to network reliability, certain requirement will be arranged the structure of Wireless Mesh network.For the better effect of performance Byzantium principle, consider the mobility of user node in the Wireless Mesh network, Byzantium's algorithm will only be directed against the backbone node of Wireless Mesh network.
At first propose in Wireless Mesh network, to use the adaptability structural constraint of Byzantium's principle, comprise following 2 points:
1. structure lower limit: network node quantity is 4, and all nodes each other all can one be jumped and can be reached.
2. adaptability requires: the arbitrary node in the network (except the Internet access point) guarantees to have 3 neighbor nodes one to jump and can reach at least, and these 3 nodes can reach each other in a jumping.Be that arbitrary node in the network all will be included in one " Byzantium unit " at least.
The present invention is based on Byzantium's principle; Provide the Byzantine failure tolerance strategy that improves reliability of wireless Mesh backbone network; Using Byzantium's algorithm that proposes improves existing routing protocol; Mainly be used for improving wireless Mesh backbone network to the fault-tolerant and tolerant invading ability of node with can tolerate the ability that the link failure that causes because of node failure or attack or wrong link circuit condition are judged.Routing Protocol after the improvement will have the following advantages:
(1) improve the mode of node, data encryption and the authentication tactful different from the past of Wireless Mesh network routing protocol reliability, but take network node to carry out the method for information back-up each other, need not the encryption and decryption process of data, implementation is simple and fast more.
(2) machine-processed through the data backup of Byzantium's algorithm; Routing Protocol after the improvement; When a certain node in the link because of link failure, self is unusual or attacked and occur that data are wrong to be passed or during packet loss; Transfer of data can correctly be carried out, need as traditional Routing Protocol, not select retransmission data packet may or transmit with new link.Routing Protocol after the improvement is compared with traditional Routing Protocol has remarkable advantages aspect execution efficient and the effect.
(3) through the data fault-tolerant mechanism of Byzantium's algorithm, the Routing Protocol after the improvement can pick out the false link failure packet that causes because of attack, thereby has avoided the unnecessary link of initiation again process.
(4) Routing Protocol after the improvement is compared with improvement before, and fault-tolerant ability obviously improves (seeing Fig. 6, Fig. 7), has therefore reached the purpose that improves reliability of wireless Mesh backbone network.
Description of drawings
Fig. 1 a and Fig. 1 b Byzantium unit basic model;
Fig. 2 a-Fig. 2 c Byzantium sets up process simulation in the unit; Wherein Fig. 2 a.WMN backbone node, Fig. 2 b. one jump the link topological structure, Fig. 2 c. Byzantium unit is set up;
Fig. 3 Byzantium sets up the process sample in the unit;
The special circumstances that run in the principle practical application of Fig. 4 Byzantium;
The backup of Fig. 5 nodal information;
The packet transfer rate contrast that BAODV agreement after Fig. 6 improves and AODV agreement increase with network failure node number;
The packet transfer rate contrast that BDSR agreement after Fig. 7 improves and DSR agreement increase with network failure node number;
Byzantine failure tolerance situation during Fig. 8 transfer of data;
Fig. 9 Wormhole attacks;
Wormhole behind Figure 10 Byzantine failure tolerance attacks;
The Byzantine failure tolerance of Figure 11 link failure bag (RERR).
Embodiment
For example the present invention is done description in more detail below in conjunction with accompanying drawing:
(1) Byzantium unit searching and setting up
The effect of algorithm is in Wireless Mesh network backbone network node, finds Byzantium's cellular construction, is in the address information of this unit of nodes records in the unit simultaneously, is the ensuing data backup (see figure 2) of preparing.
Will be according to following two kinds of nodal informations when this part Byzantium algorithm is carried out:
1. NoNnode address;
2. neighbors address.
It should be noted that in the route data packets of existing Routing Protocol and do not contain the NoNnode address information, therefore when algorithm application, will make amendment, add the NoNnode address information existing Routing Protocol route data package informatin.
The algorithm thought of now Byzantium unit being searched and being set up is described below:
1. take out and receive NoNnode address and the neighbors address information in the route bag.
2. add the NoNnode address information in the routing request packet, promptly node is when broadcasting route bag, and except sending self node address information, the neighbors address information of simultaneously self being received is encapsulated in the route bag sends together.
3. the two neighbors table N-Nform of traversal search the nodal information of receiving and in table, whether have (table element wants the step-by-step correspondence to search), if there is not same node point information, then the nodal information of receiving are deposited among two neighbors table N-Nform.
4. judge that whether stand-by period t is less than T
B, be then to return for the 1. step.
5. the two neighbors tables of traversal take out three neighbors addresses inequality.
6. search two neighbors tables, each other whether three nodes that judgement is got neighbors, if; At first search Byzantium's unit index table; Check this groups of nodes record whether, if not then deposit three node addresss in concordance list, self-defined unit number is stored in the table simultaneously.
7. be destination node with three nodes respectively, transmit self and except that destination node other two addresss of node, subsidiary simultaneously Byzantium unit number.
8. as receive the node address of subsidiary Byzantium unit number, check in Byzantium's unit index table this groups of nodes record whether, if do not have, three node addresss then will receiving are communicated with Byzantium's unit number and deposit Byzantium's unit index table in.
Whether 9. two neighbors tables have traveled through, if do not have, then continue to choose three different neighbors addresses, return for the 5. step.
10. Byzantium unit searches and sets up end;
Illustrate the implementation of this part algorithm now.Like Fig. 3, routing request packet is broadcasted from the E point.After time, is reference with node D through TB, and two neighbors tables of this node the contents are as follows:
Two neighbors tables of table 4 node D
At first take out three neighbors address A, B, C inequality in the table, judge a whether neighbors of jumping each other of these three nodes then, promptly whether any two addresss of node appear at certain delegation in the table simultaneously in three nodes.Through judging; Draw A, B, three nodes of C and meet the demands, so A, B, C and present node D constitute Byzantium unit, the D node deposits A, B, three addresss of node of C in Byzantium's unit index table in; Generate Byzantium's unit number simultaneously, and transmit B, C, D to A respectively; Transmit A, C, D to B; Transmit A, B, D nodal information and Byzantium's unit number to C.
The algorithm false code is following:
1) while (t<T
BThe storage of the two neighbors addresses of)/* and forwarding */
2) receive?data,save?in?RREQ;
3) send?Self?Address?and?Neighbor?Node?Address;
4) if(NoNnode?Address||Neighbor?Node?Address?not?in?N-Nform[])
5) N-Nform[].NoNnode_Address=NoNnode?Address;
6) N-Nform[].Neighbor_Node_Address=Neighbor?Node?Address;
7) end if/* searches current NoNnode and the neighbors address exists
Whether exist among the N-Nform, not, then deposit in */
8)end?while
9)while(N-Nform[]!=NULL)
10) select?N-Nform[i],N-Nform[j],N-Nform[k];
11) if(N-Nform[i].Neighbor_Node_Address!=
N-Nform[j].Neighbor_Node_Address!=
N-Nform[k].Neighbor_Node_Address)
12) char*A=N-Nform[i].Neighbor_Node_Address;
13) char*B=N-Nform[j].Neighbor_Node_Address;
14) char*C=N-Nform[k].Neighbor_Node_Address;
15) if((AB||BA∈N-Nform[])&&(AC||CA∈N-Nform[])&&
(BC||CB ∈ N-Nform []))/* judge ABC whether each other neighbors */
16) A,B,C→Bform[].IP;
17) num→Bform[].Byzantine_Unit_num;
18) char*D=Self?Node?Address;
19) send?B,C,D&num?to?node?A;
20) send?A,C,D&num?to?node?B;
21) send A, B, D&num to node C; / * storage and forwarding Byzantium unit information */
22) end?if
23) else
24) break
25) end?if
26)end?while
27) Byzantium unit information * that while (receive IP&num)/* reception is transmitted/
28) if(IP&num?not?in?Bform[])
29) IP&num→Bform[];
30)end?while
(2) data backup and fault-tolerant
Byzantium searches the unit, sets up after the completion, will carry out the backup procedure of data message, and this also is the main policies of Byzantium's algorithm tolerance network node abnormality.
Attack to different situations; Select the node corresponding data message to back up, when the attack appearance, some information of the node of being attacked is altered; When perhaps in network, occurring pretending to be node; The Routing Protocol that incorporates Byzantium's principle will draw correct nodal information through judging the backup information of other node in abnormal nodes place Byzantium unit, disturbs thereby get rid of.
At present that this part arthmetic statement is following:
1. selection needs self node data information of backup.
2. search Byzantium's unit index table, data message is sent to 3 identical nodes of Byzantium's unit number respectively.
3. the node data information of receiving is judged that if node is same node under informed source and the data message, deposit this data message in the data message backup sheet, weights are designated as 1.Search Byzantium's unit index table simultaneously, find out two nodes identical, data message is transmitted to this two nodes respectively with Byzantium's unit number of informed source node.
If 4. informed source is different with the affiliated node of data message; Then this information is the nodal information that node is transmitted under the non-information; There is (1 hop-information arrives prior to 2 hop-informations) in this data message in the data message backup sheet; Then in the data message backup sheet, find this information, its weights are added 1.
If the forwarding information that 5. receives, judges then that the weights of stored information whether greater than 1, are then to abandon the current data message of receiving with data information stored is different.Otherwise, depositing the data message of receiving in the data backup table, weights are designated as 1.
6. travel through the information back-up table,, then judge these weights, as correct backup information, delete other information of the same name simultaneously with the high data message of weights if there is identical but the item that data message is different of nodename in the information back-up table.If these weights are identical, then with the up-to-date data message that increases weights as correct backup information, delete other information of the same name.
Do not accomplish if 7. receive data, then turned back to for the 3. step
8. finish
Illustrate the implementation of this part algorithm below,, suppose that the current information that needs to back up is IP addresses of nodes like Fig. 5.Then:
Node 1 is searched Byzantium's unit index table of self; The IP address of oneself is sent to node 2,3, M; The M node deposits the IP address of the node of receiving 1 in the data message backup sheet in; Weights are designated as 1, and the IP address with node 1 is transmitted to node 2,3 simultaneously, and node 2 is received node 1 data sent information; Also can receive simultaneously the IP address of the node of transmitting from the M node 1, then node 2 adds 1 (supposing that this moment, node 2 was not also received the data message that node 3 is transmitted) with the IP information weights of node 1 in the data message backup sheet.In like manner; Node M, 2,3 sends to other node with the unit with self IP address too, and (the M node belongs to two Byzantium unit together; Therefore will all send the backup information of self to 6 nodes of two unit), receive that the node of information carries out judgement, storage and the forwarding of information equally.If in whole backup procedure, do not occur unusual (node faults itself or external attack), be example with Byzantium unit α, finally the data message backup sheet of its cell node 1,2,3, M thes contents are as follows:
The data message backup sheet content of table 5 node 1
The data message backup sheet content of table 6 node 2
The data message backup sheet content of table 7 node 3
The data message backup sheet content of table 8 node M
The algorithm false code is following:
1)while(data’s?copy?not?finish)
2) select?A.IP,B.IP,C.IP?from?Bform[],
where?A.Byzantine_Unit_num=
B.Byzantine_Unit_num=
C.Byzantine_Unit_num;
3) send?self?data?to?node?A,node?B,node?C;
4) while(receive?data?not?finish)
/ * from other node of same Byzantium unit receive Backup Data */
5) if(data.name==node.name)
6) save?data?in?Dform[];
7) Dform[].Data_Quantity=1;
8) select?A.IP,B.IP?from?Bform[],
where?A.Byzantine_Unit_num=
B.Byzantine_Unit_num=
node.Byzantine_Unit_num;
9) send?data?to?nodeA,nodeB;
10) the processing * of end if/* source node Backup Data/
11) else
12) for(i=1;i<=n;i++)
13) if(Dform[i].Node_Name==data.name&&
Dform[i].Data==data)
14) Dform[i].Data_Quantity++;
15) break;
16) end?if
17) end?for
18) if(i>n)
19) for(i=1;i<=n;i++)
20) if(Dform[i].Node_Name==data.name&&
Dform[i].Data!=data)
21) if(Dform[i].Data_Quantity==1)
22) save?data?in?Dform[];
23) Dform[].Data_Quantity=1;
24) break;
25) end?if
26) end?if
27) end?for
28) end?if
29) if(i>n)
30) save?data?in?Dform[];
31) Dform[].Data_Quantity=1;
32) end?if
33) end else/* forward node send the processing * of Backup Data/
34) select?A,B?from?Dform[],
where?A.Node_Name=B.Node_Name
And A.time>B.time; / * data A than the new * of data B/
35) if(A.Data_Quantity<B.Data_Quantity)
36) delete?A;
37) else
38) delete?B;
39) end?while
40)end?while
The processing of abnormal conditions
We know, in " oral contract " situation, if the inefficacy number of individuals less than total individual number amount 1/3, we think that such system can tolerate Byzantium's problem, this moment, Byzantium's problem can be separated in other words.But in practical application,, during less than total number of nodes 1/3, still there are special circumstances (Fig. 4) in failure node quantity if directly use the Byzantine failure tolerance principle.
We find out from figure; When information initiation point is unusual; " commandant " sends " attack ", " awaiting orders ", " withdrawing " three diverse orders to three " adjutants " respectively, and behind execution Byzantium algorithm, the instruction set that three " adjutant " obtains is (" attack ", " awaiting orders ", " withdrawing "); Define in Byzantium's principle: all loyal " adjutants " observe same order; Then we think that this kind situation is Byzantium's problem that can separate, and as if as foundation, three " adjutants " are in agreement with this; But in fact, each adjutant can not make correct action.
When a certain node in Byzantium unit occurs when unusual; With the backup node IP address is example; Abnormal nodes is sent own IP address to other three nodes of the unit that exists together, treats node each other after the interactive information completion, and other three nodes all can't obtain the correct IP address of this node; Because each node all obtains the diverse three kinds of IP addresses of this node, and the weights of address information are 1.
Another kind of situation; A certain node in Byzantium unit does not occur unusually; But be in the motion state (although the backbone network node mobility is relatively low in the Wireless Mesh network; Relative fixed, but still exist this maybe), because of motion causes some information of this node change (like physical address); So just appropriate node sends the data message that constantly changes to other node of place Byzantium unit in moving process, other three nodes also can't draw the correct information of this node that needs backup.
Therefore, need the algorithm that propose be improved the situation with the initiation point appearance of reply backup information when unusual.
Improvement strategy:
If certain node 1. in the network is in roving state, then in this node, add the fixed time broadcast information mechanism, improve the frequency of this nodal information backup.
If 2. the node in Byzantium unit can't obtain the identical information (weights that are nodal information are always 1) of certain node for a long time, then from the backup information table, delete the backup information of this node.Directly this node is regarded as invalid node, this node of deletion reaches and its node with the unit from Byzantium's unit index table, initiates Byzantium's unit search procedure again.
Not only to consider the problems such as congested, inefficacy that node causes because of hardware reason, also artificial invasion factor such as the active attack of considered mobile node, network cheating, congestion link to Wireless Mesh network node fault-tolerant.
Reliable Routing Protocol based on Byzantium's principle will be primarily aimed at the factor that these influence network reliability, in original Routing Protocol, add Byzantium's algorithm, thereby reach the purpose of the reliability that promotes whole network.In order to tackle the attack of node, we select the information of backup node can comprise ID, routing table, node jumping figure information, link congestion judgement information of node etc.Therefore, we select corresponding existing routing protocol to improve to the different nodes backup information.
The purpose that proposes Byzantium's algorithm is exactly with Byzantine failure tolerance principle generalization; Be about to this algorithm as a kind of universal method that strengthens existing network Routing Protocol reliability; A kind of protocol element of complementarity, therefore, for existing practicality procotol (the original agreement of Ad hoc network classical protocols and Wireless Mesh network); We can be used for incorporating the improvement of Byzantium's algorithm, thereby improve the reliability of existing routing protocol.
Be example with AODV agreement and DSR agreement below, Byzantium's algorithm is incorporated in two kinds of Routing Protocols, provide improved strategy and the case effect analysis of selecting different backup informations.
1. be directed against the improvement agreement BAODV (Byzantine Ad hoc On-demand Distance VectorRouting) of node fault-tolerance situation
(1) improvement strategy
Byzantium's algorithm at first will carry out the searching and setting up of Byzantium unit of Wireless Mesh network backbone network node.The nodal information of this part algorithm foundation is:
1. NoNnode address;
2. neighbors address.
The process of searching and setting up of Byzantium unit should be carried out in the process that network topology structure forms simultaneously.Therefore, earlier AODV protocol source node is used for being found to the route of destination node and the information of the routing request packet broadcasted is improved.
Routing request packet (RREQ) information comprises: source node address, source node sequence number, routing request packet are with sequence number, destination node address, destination node sequence number and jumping figure value.The RREQ packet infrastructure of now intermediate node being transmitted is made amendment: promptly, after source node address, add " neighbors address " and " present node address " that present node is received the RREQ request.
Then, revise the AODV agreement packet is carried out the order of decision operation, that is: when receiving RREQ; Judge that at first whether this node has the route that arrives destination node is exactly destination node itself perhaps, if then judge the number of times of receiving this bag; If receive for the first time, then carry out the first of Byzantium's algorithm, in this process; Second and third of RREQ value is removed; Second is its NoNnode address, and the 3rd is its neighbors address, deposits the information of taking out in Bform; Second and third value of RREQ is revised by present node then, and node is broadcasted transmission with amended RREQ, treats to continue to carry out original algorithm flow of AODV agreement again after the first step completion of Byzantium's algorithm.Receive for the second time if this bag is destination node or the intermediate node that has arrival destination node route, then directly carry out the AODV agreement.If this node is not a destination node, then at first carry out the first of Byzantium's algorithm, carry out the AODV agreement then.
After treating the first step execution end of Byzantium's algorithm, carry out second step of algorithm: storage and the fault tolerance judgment of selecting backed up data information.The information of backup can be chosen according to the demand of reality, and certainly, the multiple information of backup node also is fine simultaneously, but need carry out corresponding modification to the data message backup sheet Dform of node, adds corresponding list item.
In former AODV agreement; When node receive with before the backup different information the time; Can directly replace prime information with the information of receiving; If the error message that the information that present node is received is sent after to be the message sending node under attack or by attacking the interfere information that node directly sends, so correct information will be substituted by error message.After adding Byzantium's algorithm, when node will be changed corresponding recorded information, at first in the Dform of self, search; Judge the weights of former backup information then, when weights greater than 1 the time, can not revise this information; Just the information of receiving is deposited among the Dform, weights are designated as 1.Have only the weights of information in its Dform of newly receiving (to carry out Byzantium's algorithm second portion greater than 1 o'clock; Byzantium's unit interior nodes is each other after the interactive information); Just can be as the criterion, prime information is made amendment, simultaneously with the backup deletion of prime information in Dform with this information.
(2) instance analysis
1. transfer of data is fault-tolerant
When normal Wireless Mesh network transfer of data, if a certain node in the link because of link failure, self is unusual or attacked and wrong the biography or packet loss occur, can cause destination node to receive wrong data, even can't receive data.Situation for packet loss; Traditional Wireless Mesh network routing protocol is a timing data retransmission after not receiving acknowledgement frame; Or select new link to transmit, and receive the situation of misdata for destination node, when having only the band destination node to initiate request of data again; Just can desired data be resend, and the arrival destination node that the data that can not guarantee to retransmit can be correct.
Based on above situation, we can be when utilizing Byzantium's algorithm, with the backup information of the data of being transmitted as node.
As shown in Figure 8, source node A sends data message to Node B, and the link intermediate node is 1,2,3,4.Generally, when node 2 fails to receive node 1 data sent because of the link reason, or node 2 because of faults itself, reason such as attacked, the information of mistake is issued node 3, node 3 all can't be given Node B with the proper data message transmission.
After utilizing Byzantium's algorithm that Routing Protocol is improved, the data of transmission are as the backup information of node, and we suppose that correct information is T; Error message is F, and data T is when being transferred to node 1, through carrying out the second portion of Byzantium's algorithm; Node 1 is transmitted to the node 2,3,5 in same Byzantium unit respectively with data T, and node 2,3,5 deposits in after receiving data among the Dform, again data is transmitted; At last, the data of storing among the Dform of node 3 are T (weights 2), F (weights 1), because T, F are the data that source node A sends; The different value that belongs to information of the same name, relatively behind its weights, T sends as correct information with data; Like this, although node 2 transmission is error message, Node B still can be received correct information T.
Certainly, the data of choosing transmission are during as backup information, in order to obtain correct information; Be in the node in Byzantium unit and the link simultaneously; Except that the backup information source points, all to wait for the completion of backup cycle, the data of receiving are made could be continued after the judgement to send; Therefore the transmission time of data will prolong, and efficiency of transmission can reduce.
2. special attack is fault-tolerant
The fault-tolerant situation of special attack is an example with the Wormhole attack.
Wormhole, the worm hole.As its name suggests, this attack is that two nodes are sent to a non-hop node with packet with tunnel style, and then lets packet in the continuous transmission of legal link trunking, causes the jumping figure between certain a part of routing node in the link to be no more than the illusion of double bounce.Like Fig. 9, in the AODV agreement, when between node when transmitting Hello message and carry out route maintenance; Attack node A, B send the Hello message of node 2 and node 4 to the other side through tunnel style respectively; Causing node 2 and node 4 to take for like this is neighbors each other, and in fact they not are neighborss, therefore cause the mistake of node stored information (neighbors table etc.); When data are transmitted through this link (link nodes is 1,2,4); Data can't send to node 4 from node 2, because they are not neighborss, do not exist one to jump link.
If node 4 constitutes Byzantium unit (Figure 10) with node 5,6,7, when node A, B carry out the Wormhole attack, through the transmission of Hello bag; Inform that node 2 nodes 4 are its neighbors, node 2 is at first searched self neighbors table, finds not have node 4; Node 2 can continue to search its pair neighbors table N-Nform, if node 4 is its neighbors really, when then setting up in Byzantium unit; Through the broadcasting of RREQ packet, be bound to there is information (5,4), (6 among the N-Nform of node 2; 4), (7,4), but node 2 can't find these information in its N-Nform; Therefore can to judge the information of " node 4 is its neighbors " be wrong to node 2, can this node do not deposited in its neighbors table, and correct link still is 1,2,3,4.
2. be directed against the improvement agreement BDSR (Byzantine Dynamic Source Routing Protocol) of the fault-tolerant situation of link
(1) improvement strategy
Similar with the thinking of improving the AODV agreement, be that the information of searching in the routing request packet that route broadcasts is improved at first to the source node of DSR agreement.
DSR routing request packet (RREQ) information comprises: source node address, destination node address, unique mark number and intermediate node are tabulated.
The RREQ packet infrastructure of now intermediate node being transmitted is made amendment: after source node address, add " neighbors address " and " present node address " that present node is received the RREQ request.
Then; Revise the DSR agreement and judge the order with operation receiving packet: when receiving RREQ, judged at first whether this node is destination node or buffer memory to the route of destination node, if; Then judge the number of times of receiving this bag; If receive for the first time, then carry out the first of Byzantium's algorithm, continue to carry out original algorithm flow of DSR agreement again.If this bag is destination node or buffer memory to be had to the intermediate node of destination node route and receive for the second time, then directly carry out the DSR agreement.If this node is not the route that does not arrive destination node in destination node or its buffer memory, the first that then at first carries out Byzantium's algorithm carries out the DSR agreement then.
After treating the first step execution end of Byzantium's algorithm, carry out second step of algorithm: storage and the fault tolerance judgment of selecting backed up data information.The information of backup can be chosen according to the demand of reality equally, if back up during multiple information of same, then the data message backup sheet Dform to node carries out corresponding modification, adds corresponding list item.
After adding Byzantium's algorithm, when node will be changed corresponding recorded information, at first search the Dform of self; Then the weights of former backup information are judged, if weights greater than 1, are not revised this information; But can the information of receiving be deposited among the Dform, weights are designated as 1.Have only the weights of information in its Dform of newly receiving greater than 1 o'clock, just use this information substitution prime information, and the backup of deletion prime information in Dform.
(2) instance analysis
1. the fault-tolerant ability of topological structure itself
We know; Satisfy the Wireless Mesh network of Byzantium's principle applicability structural constraint second; Except that it connected the gateway node of Internet, the backbone node in the network all was included in Byzantium unit at least, and the topological structure of such Wireless Mesh network backbone node itself will be stronger than Wireless Mesh network connectivity generally speaking; Spendable link is more, and the fault-tolerant ability of network itself is superior to common Wireless Mesh network (shown in b among Fig. 2).
2. the link failure that causes of node attack
In order to reach the purpose of monopolizing certain bar link circuit resource, attack node and can send the link failure packet of personation to forerunner's node of link.The DSR agreement is in communication process; When intermediate node is received the attack node to the RERR of its falseness of sending packet; Think the inefficacy link that marks in this RERR packet by mistake for true,, and continue transmission RERR bag to the source node direction of current link with the whole link circuit deletings that used chain rupture in this bar in self routing table; Cause the ultimate source node to initiate the link search procedure again, and this search procedure will be avoided the inefficacy link of mark in the RERR bag.
We with the RERR packet as backup information, like Figure 11, in link S → A → 1 → B → 4 → 5; When Node B found that node 4 causes follow-up link down unusually, at first other node 1,2,3 in Byzantium unit at its place sent these RERR, and these nodes are transmitted this RERR each other after receiving RERR; Forerunner's node 1 of Node B deposits in after receiving RERR among its Dform in the link, if this RERR is true, after then transmitting each other through Byzantium's cell node at B place; These RERR bag weights must be greater than 1 among the Dform of node 1, and at this moment, node 1 just can be analyzed this RERR bag; Handle, continue then to transmit to link forerunner node A.When attack node C sends the RERR of forgery, receive that the node 1 of this RERR bag can not received the identical RERR that other node is transmitted, so the weights of this bag are always 1, in view of the above, node 1 can be made the correct judgement of this RERR bag for vacation, and this RERR bag is abandoned.
Claims (3)
1. a Byzantine failure tolerance method that improves reliability of wireless Mesh backbone network comprises searching and foundation and data backup and fault-tolerant of Byzantium unit, it is characterized in that:
(1) Byzantium unit searching and setting up
1. take out and receive NoNnode address and the neighbors address information in the route bag;
2. add the NoNnode address information in the routing request packet, promptly node is when broadcasting route bag, and except sending self node address information, the neighbors address information of simultaneously self being received is encapsulated in the route bag sends together;
3. whether the two neighbors table N-Nform of traversal search the nodal information of receiving and in table, exist, if there is not same node point information, then the nodal information of receiving are deposited among two neighbors table N-Nform;
4. judge that whether stand-by period t is less than T
B, be then to return the 1. step, T
BBe the triggering cycle;
5. the two neighbors tables of traversal take out three neighbors addresses inequality;
6. search two neighbors tables, each other whether three nodes that judgement is got neighbors, if; At first search Byzantium's unit index table; Check said three nodes record whether, if not then deposit three node addresss in concordance list, self-defined unit number is stored in the table simultaneously;
7. be destination node with three nodes respectively, transmit self and except that destination node other two addresss of node, subsidiary simultaneously Byzantium unit number;
8. as receive the node address of subsidiary Byzantium unit number, check in Byzantium's unit index table this groups of nodes record whether, if do not have, three node addresss then will receiving deposit Byzantium's unit index table in together with Byzantium's unit number;
Whether 9. two neighbors tables have traveled through, if do not have, then continue to choose three different neighbors addresses, return for the 5. step;
10. Byzantium unit searches and sets up end;
(2) data backup and fault-tolerant strategy
1. selection needs self node data information of backup;
2. search Byzantium's unit index table, data message is sent to 3 identical nodes of Byzantium's unit number respectively;
3. the node data information of receiving is judged that if node is same node under informed source and the data message, deposit this data message in the data message backup sheet, weights are designated as 1; Search Byzantium's unit index table simultaneously, find out two nodes identical, data message is transmitted to this two nodes respectively with Byzantium's unit number of informed source node;
If 4. informed source is different with the affiliated node of data message; Then this data message is the nodal information that node is transmitted under the non-information; This data message exists in the data message backup sheet, then in the data message backup sheet, finds this data message, and its weights are added 1;
If the forwarding information that 5. receives, judges then that the weights of stored information whether greater than 1, are then to abandon the current data message of receiving with data information stored is different; Otherwise, depositing the data message of receiving in the data backup table, weights are designated as 1;
6. travel through the information back-up table,, then judge these weights, as correct backup information, delete other information of the same name simultaneously with the high data message of weights if there is identical but the item that data message is different of nodename in the information back-up table; If these weights are identical, then with the up-to-date data message that increases weights as correct backup information, delete other information of the same name;
Do not accomplish if 7. receive data, then turned back to for the 3. step;
8. finish.
2. a kind of Byzantine failure tolerance method that improves reliability of wireless Mesh backbone network according to claim 1 is characterized in that: if certain node in the network is in roving state, then in this node, add the fixed time broadcast information mechanism.
3. a kind of Byzantine failure tolerance method that improves reliability of wireless Mesh backbone network according to claim 1; It is characterized in that: if the node in Byzantium unit can't obtain the identical information of certain node for a long time is that the weights of nodal information are always 1; Then from the backup information table, delete the backup information of this node; Directly this node is regarded as invalid node, this node of deletion reaches and its node with the unit from Byzantium's unit index table, initiates Byzantium's unit search procedure again.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101215229A CN101835195B (en) | 2010-03-11 | 2010-03-11 | Byzantine failure tolerance method for improving reliability of wireless Mesh backbone network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101215229A CN101835195B (en) | 2010-03-11 | 2010-03-11 | Byzantine failure tolerance method for improving reliability of wireless Mesh backbone network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101835195A CN101835195A (en) | 2010-09-15 |
CN101835195B true CN101835195B (en) | 2012-08-22 |
Family
ID=42719082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101215229A Expired - Fee Related CN101835195B (en) | 2010-03-11 | 2010-03-11 | Byzantine failure tolerance method for improving reliability of wireless Mesh backbone network |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101835195B (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291580A (en) * | 2017-05-04 | 2017-10-24 | 复旦大学 | MATLAB software system and method |
CN110061831A (en) * | 2019-04-15 | 2019-07-26 | 中国人民解放军国防科技大学 | Method for realizing network security communication of unmanned aerial vehicle cluster in combat process |
CN111199400A (en) * | 2019-12-31 | 2020-05-26 | 北京笔新互联网科技有限公司 | Safety monitoring method and device for block chain network |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7016328B2 (en) * | 2003-06-24 | 2006-03-21 | Tropos Networks, Inc. | Method for allowing a client to access a wireless system |
US8233905B2 (en) * | 2007-06-15 | 2012-07-31 | Silver Spring Networks, Inc. | Load management in wireless mesh communications networks |
CN101562861B (en) * | 2009-05-15 | 2011-04-13 | 重庆邮电大学 | Cross-layer and bi-directional routing method based on hop number and energy in wireless sensor network |
-
2010
- 2010-03-11 CN CN2010101215229A patent/CN101835195B/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101835195A (en) | 2010-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sharma et al. | The black-hole node attack in MANET | |
Lee et al. | InterMR: Inter-MANET routing in heterogeneous MANETs | |
Rishiwal et al. | Stable and energy efficient routing for mobile adhoc networks | |
Ahmed et al. | An improved DSDV routing protocol for wireless ad hoc networks | |
Roy et al. | Energy efficient cluster based routing in manet | |
CN106954243A (en) | Route implementation method based on wireless chain network | |
Satav et al. | Review on single-path multi-path routing protocol in manet: A study | |
Kumar et al. | A survey on MANET Security Challenges and routing protocols | |
Noorul et al. | An analysis of routing protocols in MANETs and Internet of things | |
CN101835195B (en) | Byzantine failure tolerance method for improving reliability of wireless Mesh backbone network | |
Al-Shakarchi et al. | A survey of selfish nodes detection in MANET: solutions and opportunities of research | |
Sharma et al. | A comprehensive review on table driven routing strategies in MANET | |
Alnajjar et al. | Performance analysis of routing protocols in delay/disruption tolerant mobile ad hoc networks | |
Kumar et al. | An acknowledgement-based approach for the detection of routing misbehavior in manets | |
Rookhosh et al. | Disjoint categories in low delay and on-demand multipath dynamic source routing adhoc networks | |
Tavakoli et al. | An efficient fault-tolerance routing algorithm for mobile ad-hoc networks | |
Soliman et al. | Enhancing AODV routing protocol over mobile ad hoc sensor networks | |
Sarumathi et al. | Detection of Selfish Nodes based on Node Energy in Mobile Adhoc Networks–MANETs | |
Pethe et al. | Distributed Routing Protocol for Different Packet Size Data Transfer over Wireless Sensor Network using NS2 Simulator | |
Tiwari et al. | Migrating Packet Dropping in Adhoc Network Based on Modified ACKbased Scheme Using FSA | |
Raveneau et al. | Experiments and results on DTN for IOT III Urbanet collaboration | |
Nayak et al. | Detection of Routing Misbehavior in MANETs with 2ACK scheme | |
Virmani et al. | Stable routing for achieving quality of service in wireless sensor networks | |
Singhal et al. | Stable and scalable on-demand routing for mobile ad hoc network | |
Lalwani et al. | Optimized & Secure Ad-hoc on Demand Distance Vector Routing Protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120822 Termination date: 20180311 |
|
CF01 | Termination of patent right due to non-payment of annual fee |