CN101835195A - 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 PDF

Info

Publication number
CN101835195A
CN101835195A CN 201010121522 CN201010121522A CN101835195A CN 101835195 A CN101835195 A CN 101835195A CN 201010121522 CN201010121522 CN 201010121522 CN 201010121522 A CN201010121522 A CN 201010121522A CN 101835195 A CN101835195 A CN 101835195A
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.)
Granted
Application number
CN 201010121522
Other languages
Chinese (zh)
Other versions
CN101835195B (en
Inventor
赵藴龙
王吉喆
要彬彦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Engineering University
Original Assignee
Harbin Engineering University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Engineering University filed Critical Harbin Engineering University
Priority to CN2010101215229A priority Critical patent/CN101835195B/en
Publication of CN101835195A publication Critical patent/CN101835195A/en
Application granted granted Critical
Publication of CN101835195B publication Critical patent/CN101835195B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

A kind of Byzantine failure tolerance method that improves reliability of wireless Mesh backbone network
Technical field
The present invention relates to radio network technique field, credible calculating 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 be a kind of new network structure of basic research exploitation with mobile Ad hoc network 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, the path link quality that generates based on this route criterion 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.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 by 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 needs to satisfy to a certain extent the requirement of load balancing.
(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 finished 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 may 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 by 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 a lot of applicable cases, the zone that the wireless device of Wireless Mesh network is arranged is subjected to 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 by 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 credible calculating, 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 credible calculating, 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 each other with regard to a certain data or command information, live part in the final system is selected correct 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 object of the present invention is achieved 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 NoNnode address and the neighbors address information of receiving 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 and sends together;
3. whether the two neighbors table N-Nform of traversal search the nodal information of receiving and exist in table, 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. self the node data information that select to need 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 finds this information in the data message backup sheet, 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 finish 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, based on " oral contract " solution in Byzantium's principle, provided Byzantium's algorithm that is fit to be applied to Wireless Mesh network then.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.
The technical term that relates in the method for the present invention is defined as:
(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
Figure GSA00000055159800042
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 from receiving that first route unwraps pending Byzantium time of searching algorithm such as beginning.If the maximum number of degrees of node are N, then T in this Wireless Mesh network BThe N that size is set at the reportedly defeated maximum delay of a jumping figure doubly, 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 may 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 a backbone node at 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, be mainly used to improve wireless Mesh backbone network at the fault-tolerant of node and tolerant invading ability 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) the data backup mechanism by 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, do not need as traditional Routing Protocol, to 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) by 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 NoNnode address and the neighbors address information of receiving 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 and sends together.
3. the two neighbors table N-Nform of traversal search the nodal information of receiving and whether have (table element wants the step-by-step correspondence to search) in tables, 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.As 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
Figure GSA00000055159800071
Figure GSA00000055159800081
Whether each other at first take out three neighbors address A, B, C inequality in the table, judge these three nodes neighbors of jumping then, promptly whether any two addresss of node appear at certain delegation in the table simultaneously in three nodes.By judging, draw A, B, three nodes of C 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 as follows:
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﹠amp; Num to node C; / * storage and forwarding Byzantium unit information */
22) end?if
23) else
24) break
25) end?if
26)end?while
27) while (receive IP﹠amp; Num)/Byzantium unit information * that * receive to transmit/
28) if(IP&num?not?in?Bform[])
29) IP&num→Bform[];
30)end?while
(2) data backup and fault-tolerant
Byzantium searches the unit, set up finish after, will carry out the backup procedure of data message, this also is the main policies of Byzantium's algorithm tolerance network node abnormality.
Attack at different situations, select the node corresponding data message to back up, when attack occurs, 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 by judging the backup information of other node in abnormal nodes place Byzantium unit, disturbs thereby get rid of.
Now that this part arthmetic statement is as follows:
1. self the node data information that select to need 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 be (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 finish 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 as 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 1 received in the data message backup sheet in, weights are designated as 1, IP address with node 1 is transmitted to node 2,3 simultaneously, node 2 is received the data message that node 1 is sent, 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 self IP address other node with the unit 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
Figure GSA00000055159800101
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 as follows:
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 actual applications,, 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, after carrying out Byzantium's algorithm, the instruction set that three " adjutant " obtains is (" attack ", " awaiting orders ", " withdrawing "), define in Byzantium's principle: " adjutant " of all loyalty observes same order, then we think that this kind situation is Byzantium's problem that can separate, 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 sends the IP address of oneself to other three nodes of the unit that exists together, after treating node interactive information being finished each other, 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 there is this possibility), because of motion causes some information of this node change (as physical address), so just appropriate node other node to place Byzantium unit in moving process sends the data message that constantly changes, and 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 considered 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 to Wireless Mesh network node fault-tolerant, also should consider the artificial invasion factors such as active attack, network cheating, congestion link of mobile node.
Reliable Routing Protocol based on Byzantium's principle will be primarily aimed at the factor that these influence network reliability, add Byzantium's algorithm in original Routing Protocol, 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 at different node backup informations.
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. at 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 sequence number, destination node address, destination node sequence number and jumping figure value.The RREQ packet infrastructure that intermediate node is transmitted is made amendment now: 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 and packet is carried out the order of decision operation, that is: when receiving RREQ, judge at first whether this node has the route that arrives destination node or be exactly destination node itself, 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, and second is its NoNnode address, the 3rd is its neighbors address, deposits the information of taking out in Bform; Second and third of RREQ value is revised by present node then, and node carries out broadcast transmission with amended RREQ, after the first step for the treatment of Byzantium's algorithm is finished, continues to carry out original algorithm flow of AODV agreement again.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 desired data can 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 data the transmitted backup information 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 the data that node 1 is 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 correct data information transfer.
After utilizing Byzantium's algorithm that Routing Protocol is improved, the data of transmission are as the backup information of node, we suppose that correct information is T, error message is F, data T is when being transferred to node 1, by carrying out the second portion of Byzantium's algorithm, node 1 is transmitted to node 2 in same Byzantium unit respectively with data T, 3,5, node 2,3,5 deposit in after receiving data among the Dform, again data are transmitted, last, the data of storing among the Dform of node 3 are T (weights 2), F (weights 1), because T, F is the data that source node A sends, and belongs to the different value of 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 finishing 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 allows 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.As Fig. 9, in the AODV agreement, when between node when transmitting Hello message and carry out route maintenance, attack node A, B and send the Hello message of node 2 and node 4 to the other side by 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 by 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 and node 5,6,7 constitute Byzantium unit (Figure 10), as node A, when B carries out the Wormhole attack, transmission by the Hello bag, inform that node 2 nodes 4 are its neighbors, node 2 is at first searched self neighbors table, discovery does 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, by the broadcasting of RREQ packet, be bound to have information (5 among the N-Nform of node 2,4), (6,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, this node can not deposited in its neighbors table, and correct link still is 1,2,3,4.
2. at 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 that intermediate node is transmitted is made amendment now: after source node address, add " neighbors address " and " present node address " that present node is received the RREQ request.
Then, revising the DSR agreement judges and the order of operating 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.Receive for the second time if this bag is destination node or the intermediate node that is cached with the destination node route, 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 the information of receiving can 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 connects the gateway node of Internet, backbone node in the network all is included in Byzantium unit at least, 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 better than 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 the link failure packet that node can send 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 that the inefficacy link that marks in this RERR packet is for true by mistake, whole link circuit deletings of chain rupture in this bar will have been used in self routing table, and to the source node direction continuation transmission RERR of current link bag, 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, as Figure 11, in link S → A → 1 → B → 4 → 5, when Node B finds that node 4 causes follow-up link down unusually, other node 1 in Byzantium unit at its place at first, 2,3 send this RERR, 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 by Byzantium's cell node at B place, these RERR bag weights must be greater than 1 among the Dform of node 1, at this moment, node 1 just can be analyzed this RERR bag, handles, and continues 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 NoNnode address and the neighbors address information of receiving 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 and sends together;
3. whether the two neighbors table N-Nform of traversal search the nodal information of receiving and exist in table, 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. self the node data information that select to need 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 finds this information in the data message backup sheet, 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 finish 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 add the fixed time broadcast information mechanism in this node.
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 considered 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.
CN2010101215229A 2010-03-11 2010-03-11 Byzantine failure tolerance method for improving reliability of wireless Mesh backbone network Expired - Fee Related CN101835195B (en)

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 true CN101835195A (en) 2010-09-15
CN101835195B 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)

Cited By (3)

* Cited by examiner, † Cited by third party
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

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005006240A2 (en) * 2003-06-24 2005-01-20 Tropos Networks, Inc. A method of wireless roaming
US20090003214A1 (en) * 2007-06-15 2009-01-01 Silver Spring Networks, Inc. Load management in wireless mesh communications networks
CN101562861A (en) * 2009-05-15 2009-10-21 重庆邮电大学 Cross-layer and bi-directional routing method based on hop number and energy in wireless sensor network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005006240A2 (en) * 2003-06-24 2005-01-20 Tropos Networks, Inc. A method of wireless roaming
US20090003214A1 (en) * 2007-06-15 2009-01-01 Silver Spring Networks, Inc. Load management in wireless mesh communications networks
CN101562861A (en) * 2009-05-15 2009-10-21 重庆邮电大学 Cross-layer and bi-directional routing method based on hop number and energy in wireless sensor network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《哈尔滨工程大学学报》 20080930 赵蕴龙等 无线Mesh网链路不相交多路径路由策略 968-972 1-3 第29卷, 第9期 *

Cited By (3)

* Cited by examiner, † Cited by third party
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

Also Published As

Publication number Publication date
CN101835195B (en) 2012-08-22

Similar Documents

Publication Publication Date Title
CN104010343A (en) Wireless network optimization method for intelligent meter reading system
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
Chandure et al. Detection & prevention of gray hole attack in mobile ad-hoc network using AODV routing protocol
CN104301222A (en) Wireless ad hoc network credible routing protocol based on package transmission rate
Sharma et al. Ant colony based node disjoint local repair in multipath routing in MANET network
CN103036783B (en) A kind of based on DTN deep space sensor network multi-path method for routing
Satav et al. Review on single-path multi-path routing protocol in manet: A study
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
Chau et al. IDRM: Inter-Domain Routing Protocol for Mobile Ad Hoc Networks
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
Geetha et al. A comparative study of gateway discovery protocol in MANET
Kumar et al. An acknowledgement-based approach for the detection of routing misbehavior in manets
Xing et al. Dynamic-adjusting AODV routing protocol based on max hop count
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
Sarumathi et al. Detection of Selfish Nodes based on Node Energy in Mobile Adhoc Networks–MANETs
Tiwari et al. Migrating Packet Dropping in Adhoc Network Based on Modified ACKbased Scheme Using FSA
Pethe et al. Distributed Routing Protocol for Different Packet Size Data Transfer over Wireless Sensor Network using NS2 Simulator
Virmani et al. Stable routing for achieving quality of service in wireless sensor networks

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120822

Termination date: 20180311