You are on page 1of 3

Network Simulation

Winter 2013

Broadcast Storm Mitigation and Advanced Flooding


In this third exercise we extend our simple flooding based message dissemination protocol to address
the observed problems from exercise 2. The disadvantages of simple flooding includes the broadcast
storm problem which causes a congested wireless channel as well as the disconnected network problem
which causes message die-out in scenarios with sparsely connected nodes.
The aim of this exercise is first of all to understand these key problems and finally to design an
algorithm which improves the simple flooding approach in terms of channel utilization, dissemination
delay and reliability.
Your tasks are the following:
1. Create a new branch in git (out of the simple-flooding branch, or starting from scratch) called
nwsimN/advanced-flooding, where N is your group number.
2. Update your scenario such that nodes are moving during the simulation (using ConstSpeedMobility) and are sparsely connected, i.e. nodes build clusters and meet randomly. Take
care about the transmission range (by adjusting the TX-Power and/or the alpha value of the
SimplePathlossModel in the config.xml file.
3. Ideally you work in that way, that you can evaluate both the simple flooding and advanced
flooding example with the same network conditions (same amount of nodes, same mobility,
same phy/mac settings) without having duplicate and redundant configuration parameters.
4. Read the works in [1, 2] to get an idea of how such an advanced flooding algorithm could look
like. You can access the papers easily by searching for it on IEEEXplore within the universities
network.
5. Design your algorithm and create a ReadMe.txt which describes the model in detail. Mention
what you want to achieve and what you expect from the simulation. One example could be
to decrease the channel utilization by avoiding synchronized collisions of packets. Ideally you
improve two or even three dimensions within channel utilization, delay and reliability, although
also only one improvement is sufficient. If you really cannot come up with your own idea, you
can implement one of the presented techniques in [2].
Weighted p-persistent flooding [2] is described later in this exercise sheet.
6. Implement the advanced flooding algorithm using all learned techniques so far. It should be
able to handle more than one single message to be broadcast.
7. Test the implementation for correctness, define experiments (also degenerate test cases).
8. Evaluate your new protocol with R. Take care to use everything which was covered in the
Lecture and the Proseminar. You also have to do this for the simple flooding approach. Define
your hypotheses (e.g. the mean packet loss in the new protocol is lower than in the existing
protocol) before creating any plots.
9. Compare your protocol against the simple flooding approach. What are the advantages and
disadvantages? Does the new approach behaves like you expected? If not, what is the problem?
Which metrics does your advanced flooding approach improve? Which not? Why?
10. Prepare an end presentation of about 20 min showing your advanced flooding approach and a
comparison to the simple flooding example. Keep in mind to present only a maximum of three
to four plots.
1

You can work in groups of two people each. Every group member should be able to present and
understand the solution of the exercise.
Deadline: Please upload (git push) your solution together with a ReadMe in examples/flooding
answering all questions from above until Monday, Jan. 20, 11.59 pm to get the points for this
exercise. Your solution should include the complete source code of your model as well as all R-scripts,
but no binary plot outputs (pdf, ...) and no simulation results. Instead, create a script make_plots.sh
which will generate the plots for you and a script which invokes the simulation for all repetitions.
Plagiarism, however slightly, will result in zero points for this exercise.
If you experience any difficulties, do not hesitate to contact us.

weighted p-persistent flooding


As an alternative to an own idea of an protocol you could implement a simple broadcast storm
mitigation protocol called Weighted p-Persistent Flooding [2]. The tasks remain the same as before.
We are referring to the Weighted p-Persistent Flooding approach, on which receiving nodes decide
according to their distance to the sender whether to rebroadcast a packet or not. A schematic overview
of the protocol is outlined in Figure 1.

Figure 1 Weighted p-Persistent Flooding

The protocol works as follows:


Whenever a node receives a packet, it waits wait1 time to decide whether to immediately rebroadcast
the message or not. The calculation for the rebroadcast probability depends on the maximum
transmission range, which is modeled as a parameter (a typical value for it would be 350 m) and can
be found in [2].
Basically the probability increases with the distance to the sender (of the actual packet, not the node
which generated the information of the packet) leading to a higher chance of farther away nodes to
rebroadcast a message.
If during this first waiting period the node receives duplicate packets from neighboring nodes rebroadcasting the message, it selects the smallest forwarding probability.
After the first wait time, if the decision was made to not immediately forward the packet, a second
timer wait2 waits for any rebroadcasts from other nodes. If nothing is received, the node forwards the
message to avoid message die out, otherwise it goes to idle again.
2

References
[1] Ozan K. Tonguz, N. Wisitpongphan, and F. Bai. DV-CAST: A distributed vehicular broadcast
protocol for vehicular ad hoc networks. IEEE Wireless Communications, 17(2):4757, April 2010.
[2] Nawaporn Wisitpongphan, Ozan K. Tonguz, J. S. Parikh, Priyantha Mudalige, Fan Bai, and Varsha
Sadekar. Broadcast Storm Mitigation Techniques in Vehicular Ad Hoc Networks. IEEE Wireless
Communications, 14(6):8494, December 2007.

You might also like