OMNET++ WIFI PROJECTS uses radio waves to provide high-speed network and Internet connections.Frequencies Wi-Fi works at are 2.4 GHz or 5 GHz; ensure no interference with cell phones, broadcast radio, TV antenna and two-way radios are encountered during transmission.
Features of Wi-Fi:
- More faster and secure.
- Wifi with no limitations.
- Support an entire age bracket.
- It’s convenient and everywhere.
- Future proofing technologies.

Benefits of WPA (Wi-Fi protected access):
- Robust key management.
- Data integrity protection.
- Data origin authentication.
- Enhanced data privacy
Research areas on wifi:
- Wi-fi approach for machine to machine communication.
- Data security and privacy.
- Efficient spectrum sharing.
- Demand for high data rates.
- Metropolitan area applications.
Sample code for Wi-Fi:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | void WIFIAccess::initialize(int stage) { BasicModule::initialize(stage); if (stage == 0) { cc = getChannelControl(); nb = NotificationBoardAccess().get(); hostModule = findHost(); myRadioRef = NULL; positionUpdateArrived = false ; hostModule->subscribe(mobilityStateChangedSignal, this ); } else if (stage == 2) { if (!positionUpdateArrived) { radioPos.x = parseInt(hostModule->getDisplayString().getTagArg( "p" , 0), -1); radioPos.y = parseInt(hostModule->getDisplayString().getTagArg( "p" , 1), -1); if (radioPos.x == -1 || radioPos.y == -1) error( "The coordinates of '%s' host are invalid. Please set coordinates in " "'@display' attribute, or configure Mobility for this host." , hostModule->getFullPath().c_str()); const char *s = hostModule->getDisplayString().getTagArg( "p" , 2); if (s && *s) error( "The coordinates of '%s' host are invalid. Please remove automatic arrangement" " (3rd argument of 'p' tag)" " from '@display' attribute, or configure Mobility for this host." , hostModule->getFullPath().c_str()); } myRadioRef = cc->registerRadio( this ); cc->setRadioPosition(myRadioRef, radioPos); } } IChannelControl *ChannelAccess::getChannelControl() { IChannelControl *cc = dynamic_cast<IChannelControl *>(simulation.getModuleByPath( "channelControl" )); if (!cc) throw cRuntimeError( "Could not find ChannelControl module with name 'channelControl' in the toplevel network." ); return cc; } |