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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | 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 { } |