OMNET++ WIFI PROJECTS

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.
Architecture of Wifi
Architecture of Wifi

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:

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;
}