Left: | ||
Right: |
LEFT | RIGHT |
---|---|
1 .. include:: replace.txt | 1 .. include:: replace.txt |
2 .. highlight:: cpp | 2 .. highlight:: cpp |
3 | 3 |
4 Epidemic Routing | 4 Epidemic Routing |
5 ---------------- | 5 ---------------- |
6 | 6 |
7 Epidemic Routing protocol is a controlled flooding routing protocol | 7 Epidemic Routing protocol is a controlled flooding routing protocol |
8 designed specifically for use in multi-hop wireless ad hoc networks | 8 designed specifically for use in multi-hop wireless ad hoc networks |
9 of mobile nodes. This routing protocol is designed for intermittent· | 9 of mobile nodes. This routing protocol is designed for intermittent· |
10 or sparse networks. Basically, sender's transport packets are stored in· | 10 or sparse networks. Packets are held in the source nodes' buffer until |
Peter Barnes
2015/02/03 01:25:44
"… networks. Packets are held in the source nodes
mjf.alenazi
2015/04/26 22:56:05
Done.
| |
11 the sender's buffer. When two nodes come into contact, disjoint· | 11 the source node comes into communication range with another node.·· |
12 packets are exchanged. Packets are dropped if they expire or buffers· | 12 The packets are transmitted to the new node, which becomes a transit· |
13 reaches a certain limit. It is not useful for dense networks since· | 13 node for those packets. Transit nodes hold all packets received until· |
14 the number of duplicate packets will be very large. | 14 they come into range with other nodes, at which point they each send· |
15 the other any packets the other doesn't already have. The name "epidemic"· | |
16 is drawn from the way packets spread virally by communication | |
17 contact between nodes. At the source and all transit nodes, packets are | |
18 eventually dropped when the expire or the epidemic routing buffer· | |
19 becomes full, in which case the oldest packets are dropped. It is· | |
20 not useful for dense networks since the number of duplicate packets· | |
21 will be very large. | |
15 | 22 |
16 This model was developed by· | 23 This model was developed by· |
17 the `ResiliNets research group <http://www.ittc.ku.edu/resilinets>`_ | 24 the `ResiliNets research group <http://www.ittc.ku.edu/resilinets>`_ |
18 at the University of Kansas.·· | 25 at the University of Kansas.·· |
19 | 26 |
20 | 27 |
21 Epidemic Routing Routing Overview | 28 Epidemic Routing Routing Overview |
22 ********************************* | 29 ********************************* |
23 | 30 |
24 This implementation is based on the paper titled 'Epidemic Routing | 31 This implementation is based on the paper titled 'Epidemic Routing |
25 for Partially-Connected Ad Hoc Networks.'[#Vahdat]_ | 32 for Partially-Connected Ad Hoc Networks.'[#Vahdat]_ |
26 | 33 |
27 In the original paper, the implementation was on top of top of | 34 In the original paper, the implementation was on top of top of |
28 the Internet MANET Encapsulation Protocol (IMEP) layer, | 35 the Internet MANET Encapsulation Protocol (IMEP) layer, |
29 which is responsible for notifying the epidemic agent | 36 which is responsible for notifying the epidemic agent |
30 when a new node comes into radio range. However, since IMEP | 37 when a new node comes into radio range. However, since IMEP |
31 is not implemented in |ns3|, a beacon mechanism is added to the implementation. | 38 is not implemented in |ns3|, a beacon mechanism is added to the implementation. |
32 | 39 |
33 | 40 |
34 Useful parameters | 41 Useful parameters |
35 ================= | 42 ================= |
36 | 43 |
37 Epidemic routing supports these options: | 44 Epidemic routing supports these options: |
38 | 45 |
39 | |
40 +-----------------------+-----------------------------------+---------------+ | 46 +-----------------------+-----------------------------------+---------------+ |
41 | Parameter | Description | Default | | 47 | Parameter | Description | Default | |
42 +=======================+===================================+===============+ | 48 +=======================+===================================+===============+ |
43 | HopCount | Maximum number of hops a packet | 64 | | 49 | HopCount | Maximum number of hops a packet | 64 | |
44 | | can be forwarded through. | |· | 50 | | can be forwarded through. | |· |
45 |» » » » » » |» HopCount serves a simila r | | | 51 | | HopCount serves a similar | | |
Peter Barnes
2015/02/03 01:25:44
Sphinx tables can't have tabs; replace all of thes
mjf.alenazi
2015/04/26 22:56:05
Done.
| |
46 |» » » » » » |» function to TTL, but the 8-bit | | | 52 | | function to TTL, but the 8-bit | | |
47 |» » » » » » |» range of TTL is too smal l, so we | | | 53 | | range of TTL is too small, so we | | |
48 |» » » » » » |» use a 32-bit field as in | | | 54 | | use a 32-bit field as in | | |
49 |» » » » » » |» the paper. | | | 55 | | the paper. | | |
50 +-----------------------+-----------------------------------+---------------+ | 56 +-----------------------+-----------------------------------+---------------+ |
51 | QueueLength | Maximum number of packets that | 64 | | 57 | QueueLength | Maximum number of packets that | 64 | |
52 | | can be stored in Epidemic buffer | | | 58 | | can be stored in Epidemic buffer | | |
53 +-----------------------+-----------------------------------+---------------+ | 59 +-----------------------+-----------------------------------+---------------+ |
54 | QueueEntryExpireTime | Maximum time a packet can live | | | 60 | QueueEntryExpireTime | Maximum time a packet can live | | |
55 | | since generated at the source. | Seconds(100) | | 61 | | since generated at the source. | Seconds(100) | |
56 | | Network-wide synchronization | | | 62 | | Network-wide synchronization | | |
57 | | is assumed. | | | 63 | | is assumed. | | |
58 +-----------------------+-----------------------------------+---------------+ | 64 +-----------------------+-----------------------------------+---------------+ |
59 | HostRecentPeriod | Time in seconds for host recent | | | 65 | HostRecentPeriod | Time in seconds for host recent | | |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
102 ******** | 108 ******** |
103 First example creates an N-node wireless network, which is set by· | 109 First example creates an N-node wireless network, which is set by· |
104 default to 10 nodes. The mobility model can be either static Grid· | 110 default to 10 nodes. The mobility model can be either static Grid· |
105 or Randomwaypoint, which by default is selected to be Grid. | 111 or Randomwaypoint, which by default is selected to be Grid. |
106 The data traffic is generated using OnOff application and received· | 112 The data traffic is generated using OnOff application and received· |
107 by PacketSink. There is one source and one sink in this configuration. | 113 by PacketSink. There is one source and one sink in this configuration. |
108 One example can be found in ``src/epidemic/examples/epidemic-example.cc``·· | 114 One example can be found in ``src/epidemic/examples/epidemic-example.cc``·· |
109 | 115 |
110 This example creates the scenarios presented in the paper.· | 116 This example creates the scenarios presented in the paper.· |
111 [#Vahdat]_ We have 50 nodes in an area of 1500 m x 300 m.· | 117 [#Vahdat]_ We have 50 nodes in an area of 1500 m x 300 m.· |
112 45 nodes are selected to send a message of size 1KB to the other 44 nodes.· | 118 45 nodes are selected to send a packet of size 1KB to the other 44 nodes.· |
113 The total messages are 45 * 44 = 1980 messages. The buffer size is 2000· | 119 The total packets are 45 * 44 = 1980 packets. The buffer size is 2000· |
Tommaso Pecorella
2015/02/08 09:29:28
If the buffer is 2000, then it is not infinite. Re
mjf.alenazi
2015/04/26 22:56:05
Done.
| |
114 which is infinite in these scenarios. The ranges for the transmission· | 120 which can hold all packets in each simulation. The ranges for the transmission· |
115 are from 10 m to 250 m while the default is set to 50 m.· | 121 are from 10 m to 250 m while the default is set to 50 m.· |
116 The example can be found in ``src/epidemic/examples/epidemic-benchmark.cc`` | 122 The example can be found in ``src/epidemic/examples/epidemic-benchmark.cc`` |
117 | 123 |
118 | 124 |
119 Validation | 125 Validation |
120 ********** | 126 ********** |
121 | 127 |
122 This model has been tested as follows: | 128 This model has been tested as follows: |
123 | 129 |
124 * Unit tests have been written to verify the internals of Epidemic. This can· | 130 * Unit tests have been written to verify the internals of Epidemic. This can· |
125 be found in ``src/epidemic/test/epidemic-test-suite.cc``. These tests verify· | 131 be found in ``src/epidemic/test/epidemic-test-suite.cc``. These tests verify· |
Peter Barnes
2015/02/03 01:25:44
These lines have to have the same indent as "Unit
mjf.alenazi
2015/04/26 22:56:05
Done.
| |
126 whether the methods inside Epidemic module which deal with packet buffer,· | 132 whether the methods inside Epidemic module which deal with packet buffer,· |
127 headers work correctly. | 133 headers work correctly. |
128 | 134 |
129 LIMITATIONS· | 135 LIMITATIONS· |
130 *********** | 136 *********** |
131 Epidemic does not work with more than one address per each interface. Additiona l· | 137 Epidemic does not work with more than one address per each interface. Additiona l· |
132 addresses are ignored.· | 138 addresses are ignored.· |
133 | 139 |
134 Epidemic routing protocol assume many beacons are exchanged in | 140 Epidemic routing protocol assume many beacons are exchanged in the time nodes |
135 the time nodes are in range. | 141 are in range. If not, packets will not be delivered. |
Tommaso Pecorella
2015/02/08 09:29:28
Explain better. I.e., is this a limitation on the
mjf.alenazi
2015/04/26 22:56:05
Done.
| |
136 | 142 |
137 | 143 |
138 References | 144 References |
139 ********** | 145 ********** |
140 | 146 |
141 .. rubric:: Footnotes | 147 .. rubric:: Footnotes |
142 | 148 |
143 .. [#Vahdat] Amin Vahdat and David Becker, "Epidemic Routing for | 149 .. [#Vahdat] Amin Vahdat and David Becker, "Epidemic Routing for |
144 Partially-Connected Ad Hoc Networks," Duke University, Technical | 150 Partially-Connected Ad Hoc Networks," Duke University, Technical |
145 Report CS-200006, http://issg.cs.duke.edu/epidemic/epidemic.pdf | 151 Report CS-200006, http://issg.cs.duke.edu/epidemic/epidemic.pdf |
LEFT | RIGHT |