e-mail address: omnetmanual@gmail.com

Phone number: +91 9444856435

Tel 7639361621

DEFENDER
  • Phd Omnet++ Projects
    • RESEARCH PROJECTS IN OMNET++
  • Network Simulator Research Papers
    • Omnet++ Thesis
    • Phd Omnet++ Projects
    • MS Omnet++ Projects
    • M.Tech Omnet++ Projects
    • Latest Omnet++ Projects
    • 2016 Omnet++ Projects
    • 2015 Omnet++ Projects
  • OMNET INSTALLATION
    • 4G LTE INSTALLATION
    • CASTALIA INSTALLATION
    • INET FRAMEWORK INSTALLATION
    • INETMANET INSTALLATION
    • JDK INSTALLATION
    • LTE INSTALLATION
    • MIXIM INSTALLATION
    • Os3 INSTALLATION
    • SUMO INSTALLATION
    • VEINS INSTALLATION
  • Latest Omnet++ Projects
    • AODV OMNET++ SOURCE CODE
    • VEINS OMNETPP
    • Network Attacks in OMNeT++
    • NETWORK SECURITY OMNET++ PROJECTS
    • Omnet++ Framework Tutorial
      • Network Simulator Research Papers
      • OMNET++ AD-HOC SIMULATION
      • OmneT++ Bandwidth
      • OMNET++ BLUETOOTH PROJECTS
      • OMNET++ CODE WSN
      • OMNET++ LTE MODULE
      • OMNET++ MESH NETWORK PROJECTS
      • OMNET++ MIXIM MANUAL
  • OMNeT++ Projects
    • OMNeT++ OS3 Manual
    • OMNET++ NETWORK PROJECTS
    • OMNET++ ROUTING EXAMPLES
    • OMNeT++ Routing Protocol Projects
    • OMNET++ SAMPLE PROJECT
    • OMNeT++ SDN PROJECTS
    • OMNET++ SMART GRID
    • OMNeT++ SUMO Tutorial
  • OMNET++ SIMULATION THESIS
    • OMNET++ TUTORIAL FOR WIRELESS SENSOR NETWORK
    • OMNET++ VANET PROJECTS
    • OMNET++ WIRELESS BODY AREA NETWORK PROJECTS
    • OMNET++ WIRELESS NETWORK SIMULATION
      • OMNeT++ Zigbee Module
    • QOS OMNET++
    • OPENFLOW OMNETPP
  • Contact

How to Implement Software Defined Wide Area Network in OMNeT++

To implement the Software-Defined Wide Area Network (SD-WAN) in OMNeT++ has needs to setup emulation wherever the network devices are controlled by a centralized controller to handle and enhance the network’s performance. The INET Framework in OMNeT++ delivers the tools to design like networks. The given below are the detailed procedures on how to implement the implementing SD-WAN in OMNeT++:

Step-by-Step Implementation:

  1. Install OMNeT++ and INET Framework

Make sure we have OMNeT++ and the INET Framework installed.

  1. Create a New OMNeT++ Project
  1. Open OMNeT++ IDE: Start the OMNeT++ IDE.
  2. Create a New Project: Go to File -> New -> OMNeT++ Project. Name your project (e.g., SDWANSimulation).
  1. Import INET into Your Project
  1. Import INET: Right-click on project in the Project Explorer, choose Properties. Go to Project References and check the INET project.
  2. Copy INET Examples: Copy example configurations from the INET framework to project for reference.
  1. Define the Network Topology

Generate a new NED file to describe the network topology has includes edge devices, routers, and the SDN controller.

Example: SD-WAN Network Topology (SDWANNetwork.ned)

package sdwan;

import inet.node.inet.StandardHost;

import inet.node.inet.Router;

import inet.node.inet.SDNController;

network SDWANNetwork

{

parameters:

@display(“bgb=800,400”);

submodules:

edgeDevice1: StandardHost {

@display(“p=100,300”);

}

edgeDevice2: StandardHost {

@display(“p=300,300”);

}

edgeDevice3: StandardHost {

@display(“p=500,300”);

}

router1: Router {

@display(“p=200,200”);

}

router2: Router {

@display(“p=400,200”);

}

router3: Router {

@display(“p=600,200”);

}

sdnController: SDNController {

@display(“p=300,100”);

}

connections:

edgeDevice1.ethg++ <–> Eth10M <–> router1.ethg++;

edgeDevice2.ethg++ <–> Eth10M <–> router2.ethg++;

edgeDevice3.ethg++ <–> Eth10M <–> router3.ethg++;

router1.ethg++ <–> Eth10M <–> router2.ethg++;

router2.ethg++ <–> Eth10M <–> router3.ethg++;

router1.ethg++ <–> Eth10M <–> sdnController.ethg++;

router2.ethg++ <–> Eth10M <–> sdnController.ethg++;

router3.ethg++ <–> Eth10M <–> sdnController.ethg++;

}

In this instance:

  • edgeDevice1, edgeDevice2, and edgeDevice3 are standard hosts representing edge devices.
  • router1, router2, and router3 are routers.
  • sdnController is the centralized SDN controller.
  • The Eth10M channel models a 10 Mbps Ethernet link.
  1. Configure the Simulation

Generate an OMNeT++ initialization file to configure the parameters of the simulation.

Example: Configuration File (omnetpp.ini)

network = sdwan.SDWANNetwork

sim-time-limit = 100s

# Visualization

*.visualizer.canvasVisualizer.displayBackground = true

*.visualizer.canvasVisualizer.displayGrid = true

# Host Configuration

*.edgeDevice*.numApps = 1

*.edgeDevice*.app[0].typename = “UdpBasicApp”

*.edgeDevice*.app[0].destAddresses = “router1 router2 router3”

*.edgeDevice*.app[0].destPort = 5000

*.edgeDevice*.app[0].messageLength = 1024B

*.edgeDevice*.app[0].sendInterval = 1s

*.router*.numApps = 1

*.router*.app[0].typename = “UdpSink”

*.router*.app[0].localPort = 5000

# UDP Configuration

*.edgeDevice*.hasUdp = true

*.router*.hasUdp = true

# SDN Controller Configuration

*.sdnController.numApps = 1

*.sdnController.app[0].typename = “SDNControllerApp”

# IP Address Configuration

*.edgeDevice1.ipv4.config = xmldoc(“edgeDevice1.xml”)

*.edgeDevice2.ipv4.config = xmldoc(“edgeDevice2.xml”)

*.edgeDevice3.ipv4.config = xmldoc(“edgeDevice3.xml”)

*.router1.ipv4.config = xmldoc(“router1.xml”)

*.router2.ipv4.config = xmldoc(“router2.xml”)

*.router3.ipv4.config = xmldoc(“router3.xml”)

*.sdnController.ipv4.config = xmldoc(“sdnController.xml”)

  1. Create IP Address Configuration Files

Generate XML files to outline the IP address configuration for each host, router, and the SDN controller.

Example: IP Configuration File for edgeDevice1 (edgeDevice1.xml)

<config>

<interface>

<name>eth0</name>

<address>192.168.1.1</address>

<netmask>255.255.255.0</netmask>

</interface>

<routing>

<route>

<destination>0.0.0.0</destination>

<netmask>0.0.0.0</netmask>

<gateway>192.168.1.254</gateway>

</route>

</routing>

</config>

Example: IP Configuration File for edgeDevice2 (edgeDevice2.xml)

<config>

<interface>

<name>eth0</name>

<address>192.168.2.1</address>

<netmask>255.255.255.0</netmask>

</interface>

<routing>

<route>

<destination>0.0.0.0</destination>

<netmask>0.0.0.0</netmask>

<gateway>192.168.2.254</gateway>

</route>

</routing>

</config>

Example: IP Configuration File for edgeDevice3 (edgeDevice3.xml)

<config>

<interface>

<name>eth0</name>

<address>192.168.3.1</address>

<netmask>255.255.255.0</netmask>

</interface>

<routing>

<route>

<destination>0.0.0.0</destination>

<netmask>0.0.0.0</netmask>

<gateway>192.168.3.254</gateway>

</route>

</routing>

</config>

Example: IP Configuration File for router1 (router1.xml)

<config>

<interface>

<name>eth0</name>

<address>192.168.1.254</address>

<netmask>255.255.255.0</netmask>

</interface>

</config>

Example: IP Configuration File for router2 (router2.xml)

<config>

<interface>

<name>eth0</name>

<address>192.168.2.254</address>

<netmask>255.255.255.0</netmask>

</interface>

</config>

Example: IP Configuration File for router3 (router3.xml)

<config>

<interface>

<name>eth0</name>

<address>192.168.3.254</address>

<netmask>255.255.255.0</netmask>

</interface>

</config>

Example: IP Configuration File for sdnController (sdnController.xml)

<config>

<interface>

<name>eth0</name>

<address>192.168.4.1</address>

<netmask>255.255.255.0</netmask>

</interface>

</config>

  1. Implement SD-WAN Controller Logic

To mimic the SD-WAN, so we need to execute the controller logic for handling the network. This can be completed by extending existing applications or making the custom applications in the INET framework.

Example: Simple SDN Controller Logic (Pseudo-Code)

class SDNControllerApp : public cSimpleModule

{

protected:

virtual void initialize() override;

virtual void handleMessage(cMessage *msg) override;

private:

void setupRouting();

};

void SDNControllerApp::initialize() {

// Initialization code

setupRouting();

}

void SDNControllerApp::handleMessage(cMessage *msg) {

// Handle messages from network elements

}

void SDNControllerApp::setupRouting() {

// Logic to set up initial routing rules

// Example: setting up flow rules for routers

}

  1. Run the Simulation
  1. Build the Project: Right-click on project and choose Build Project.
  2. Run the Simulation: Click on the green play button in the OMNeT++ IDE to start the simulation.

Here, we understood how to implement, deploy the software defined wide area network in OMNeT++ simulator that will handle and manage the network performance. More information will be provided regarding the SD-WAN.

Our developers are here to assist with the implementation of Software Defined Wide Area Networks using the OMNeT++ tool. If you’re looking for more simulation and project ideas, feel free to reach out to us!

Related Topics

  • Network Intrusion Detection Projects
  • Computer Science Phd Topics
  • Iot Thesis Ideas
  • Cyber Security Thesis Topics
  • Network Security Research Topics

designed by OMNeT++ Projects .