0

In Veins, while sending a BSM or WSA a random initial time is chosen to make sure that the transmission time is in CCH. This is implemented in BaseWaveApplLayer::computeAsynchronousSendingTime(). Then based on beaconInterval/wsaInterval they are sent periodically.

For event driven emergency messages which are not periodic should the application layer

  1. wait for control Channel or
  2. send whenever it has to send a packet but the MAC layer queues the packet till CCH time and send in CCH time?

Which is the best way to implement this in Veins?

I see the 2nd approach as more apt way. When a WSM is scheduled in SCH by the application layer, Veins adds them in to AC queue and send the back-logged messages during the next CCH and then sends the messages generated during the next CCH (FIFO behaviour). This approach increases end to end delay for all the messages under heavy load. How is the delay actually defined for messages that are generated during SCH?

Any insights on best approach in this case?

Julian Heinovski
  • 1,822
  • 3
  • 16
  • 27
rajeswar
  • 77
  • 5
  • 1
    Queuing messages on the application layer until the MAC layer switches to a suitable channel is certainly a feasible option. From knowing the current time (in the real world: GPS time) you can derive whether the MAC is currently likely to be in a CCH interval (or you can use the `isCurrentChannelCCH` function of `WaveAppToMac1609_4Interface`). Just don't send the message as soon as the CCH interval starts (you might be one of many applications waiting for the CCH to start and, thus, trigger a massive amount of collisions on CCH interval start). – Christoph Sommer Nov 27 '17 at 20:55
  • Thanks for the answer Professor. From above answer i understood that for an emergency message generated in SCH interval, the application layer waits till CCH and sends during CCH interval. Yes it makes sense not to send the message at the CCH start. I have added an random delay similar to how you people implemented for beacons in veins. Adding a queue is also a good idea. I will see if i can try that. Again thanks for answer. – rajeswar Nov 29 '17 at 12:37

0 Answers0