Jeff, EMANE 0.9 introduced attached events to the downstream packet API. DownstreamPacket::attachEvent() can be used to attach events to a packet for transmission across the OTA channel instead of the event channel.
Sometimes there is event information that originates from a radio model instance that must be synchronized across the emulation prior to the reception and processing of a packet. There is no way to guarantee this using two separate communication channels. When attached events are received as part of an OTA packet transmission, they are deserialized and pushed onto the message queue before the upstream packet is enqueued. This provides a guarantee that receiving NEMs will process the events prior to processing the received packet. An example of this is the Antenna Profile control message and Antenna Profile event relationship. A radio model can send an Antenna Profile control message along with a downstream packet transmission. When this occurs, the emulator physical layer creates an Antenna Profile event and attaches it to the packet. All receivers will update the antenna profile information for the transmitter before processing the transmission. If a radio model sends an Antenna Profile control message by itself, with no packet data, the physical layer will send out an Antenna Profile event using the event channel. Attached events are for the exclusive use of radio models. It is considered extremely bad form for an event generator to send an event over the OTA channel. emanesh.Events.EventService will listen to both the event channel and the OTA channel for subscribed events. To date, none of the open source radio models use attached events, which is why you are not seeing any. I added this information to the EMANE FAQ: https://github.com/adjacentlink/emane/wiki/FAQ -- Steven Galgano Adjacent Link LLC www.adjacentlink.com On 09/18/2014 04:28 PM, Ahrenholz, Jeffrey M wrote: > Hello EMANE devs, > Why does the EMANE EventService (e.g. Python class or emaneevent-dump) have > an otachannel argument? > > I was looking through the eventservice.py code, and it appears to > listen/receive on a _socketOTA member. I tried the "--device-ota" etc > parameters with emaneevent-dump, but didn't see any output when running emane > (I did verify OTA UDP packets with tcpdump). > > Also I was wondering what business the event channel had with the > over-the-air channel... > > thanks! > > -Jeff > _______________________________________________ > emane-users mailing list > [email protected] > http://pf.itd.nrl.navy.mil/mailman/listinfo/emane-users > _______________________________________________ emane-users mailing list [email protected] http://pf.itd.nrl.navy.mil/mailman/listinfo/emane-users
