OMNeT++ MIXIM Tutorial offers detailed models of radio wave propagation, interference estimation, radio transceiver power consumption and wireless MAC protocols like Zigbee.MIXIM is a combination of various simulator combining different simulator.MIXIM is primarily developed for wireless and mobile simulations.
Mixnet:
It was a project contained in MiXiM’s “inet” folder whichever provides all modules, examples an documentation concerning using MiXiM and INET together in the same network.
Reasons for introducing MIXIM:
- Fortunately these are the layers for which the INET framework provides a lot of very detailed modules
- The idea of Mixnet was to bring INET and MIXIM together to be able to use the wireless NICs from MIXIM together with the upper network stack from INET.
- It concentrates on providing very detailed models of wireless network interface cards it does not provide very sophisticated upper layers
Models of MIXIM framework:
- Protocol library.
- Connectivity.
- Collision.
- Experiment support.
- Mobility.
- Reception.
- Environmental model.
Sample code for MIXIM:
This is the sample code of base module in MIXIM
BaseLayer::initialize(stage); if(stage == 0) { world = FindModule<BaseWorldUtility*>::findGlobalModule(); delayTimer = new cMessage("delay-timer", SEND_BROADCAST_TIMER); arp = FindModule<BaseArp*>::findSubModule(findHost()); myNetwAddr = arp->myNetwAddr(this); packetLength = par("packetLength"); packetTime = par("packetTime"); pppt = par("packetsPerPacketTime"); burstSize = par("burstSize"); destination = par("destination"); nbPacketDropped = 0; Packet p(1); catPacket = world->getCategory(&p); } else if (stage == 1) { if(burstSize > 0) { remainingBurst = burstSize; scheduleAt(dblrand() * packetTime * burstSize / pppt, delayTimer); } } else { }