Veins 802.11p CSMA/CA and retransmission - omnet++

Vehicles communicate using 802.11p on Veins 5.1, OmNET 5.6.2, sumo 1.8.0 environment.
My questions
Do I have to implement retransmission process(like CSMA/CA) when collision is occurred?
or, is retransmission process(like CSMA/CA) already implemented in library or such class?
I want to use RTS/CTS option, do I have to implement it too?
Thank you

To directly answer your question: the 802.11p modules that are included in Veins 5.1 trigger automatic retransmissions (following the 802.11 specification) for lost unicast messages if the MAC layer useAcks parameter is set to true (which is not the default). RTS/CTS is not implemented, so if you want to use only modules from Veins you would need to implement this yourself.
More generally, though, your research sounds like it might be better served if you would combine Veins with The INET Framework (via veins_inet); this would allow you to use the more general 802.11 simulation model included in The INET Framework. It includes features like block-ACKs, RTS/CTS, fragmentation and reassembly, infrastructure mode, automatic rate selection, and many more.

Related

how to add routing functionalities on the top of veins appl?

Veins is easy to use the map with obstacles from SUMO. However, it lacks routing operations of communication networks. I want to add AODV routing on the top of Veins' examples. What is the straightforward way ?
Thank you in advance!
INET 4 supports the simulation of routing protocols. I would therefore recommend to essentially build a simulation using INET 4, then to use Veins (and veins_inet) to drive node mobility/creation in your simulation. See the veins_inet example for how to do that.

How to implement AODV and GPSR protocols based on 80211p?

I implemented AODV and GPSR protocol existing in inet module on the senario network existing in veins-inet subproject.so, how to implement them based on 80211p ?
In other words , i want to use the upper layers of INET and lower layers of Veins?
I am using instant veins-4.7.1
If you want to use lower layers of Veins, you will need to write an adapter module yourself. Its design is straightforward: to upper layers, it will look like an INET NIC, to lower layers it will act like a Veins application.
Note, however, that recent versions of the INET Framework offer an easier way: their WLAN NIC can be configured to behave according to 802.11p. While this has not received as much use as the modules of Veins, it should serve as a reasonably-safe alternative in many applications.
See the veins_inet example of recent Veins versions for how to configure INET to model 802.11p VANETs and, at the same time, use Veins for ensuring realistic road traffic.

How to test reliability of my Veins simulations?

I am developing Car2X applications in order to simulate case studies based on Veins framework.
As an Information Systems student, I have been worried mostly about the code of my applications.
Recently I noticed that VEINS has no LLC, NETWORK and TRANSPORT layers in its source code (/src).
My question is: how to assure that my simulation runs would generate data close to reality for Car2X applications when there's none of these layers above in the source code?
P.S.: I am aware of INET framework and its protocols, I was just wondering if I could use just Veins for my case studies :)
The layers you mentioned are not needed for most Car2X simulations. If you download, for example, Veins 4.4, you will find only simulation models for single hop broadcast transmission of frames, the most general use case. If you want to simulate a special protocol, say, for multi-hop transmission of frames, you will need to implement this as a network layer. Then, your simulation will have a network layer model.

Which framework for wireless sensor networks

I want to develop and test a protocol for wireless sensor networks in OMNeT++. Which framework should I use?
Is it sensible to use Castalia or MiXiM although they are deprecated?
Is it sensible to use inet without using the 802.11 stuff?
INET is practically a superset of MiXiM. It is possible to use it without the 802.11 radio. Depending on how accurate your physical model needs to be, you can configure it with different radios (with different speed and complexity). If your goal is to test routing algorithms then probably a simple radio will do the job. I also suggest to check out the wireless tutorial for INET.

How to implement frames and commands on omnet++?

I'm working on a project evaluation of TSCH feature in 802.15.4. I don't know how to implement the Enhanced beacon and the request and confirm messages between nodes on omnet++.
This is quite a generic question. Generally I would look into the current codebase of INET (2.99 and later recommended) and would try to find similar features as a starting point.

Resources