To implement Network Function Virtualization (NFV) and Virtual Network Function (VNF) orchestration in OMNeT++ has essential to have good knowledge of NFV concepts and how to model them within the simulation environment. Stay in touch with us if you want to get in touch with us for best project and simulation results. The given below are the structured procedures on how to implement this approach in OMNeT++:
Step-by-Step Implementation:
Example of a simple VNF module in NED:
// firewall.ned
simple Firewall {
parameters:
double processingDelay @unit(s) = default(0.005s);
string policyFile = default(“firewallPolicy.txt”);
gates:
input in;
output out;
}
}
// nat.ned
simple NAT {
parameters:
double translationDelay @unit(s) = default(0.002s);
gates:
input in;
output out;
}
}
Example of an Orchestrator in NED:
// orchestrator.ned
simple Orchestrator {
parameters:
double orchestrationInterval @unit(s) = default(1s);
gates:
input controlIn;
output controlOut;
}
}
// orchestrator.cc
void Orchestrator::handleMessage(cMessage *msg) {
if (msg->isSelfMessage()) {
// Orchestration logic: scale up, scale down, migrate VNFs
scheduleAt(simTime() + orchestrationInterval, msg);
} else {
// Handle messages from VNFs
}
}
Example of Service Chain Definition:
// serviceChain.ned
network ServiceChain {
submodules:
vnf1: Firewall;
vnf2: NAT;
vnf3: LoadBalancer;
connections allowunconnected:
vnf1.out –> vnf2.in;
vnf2.out –> vnf3.in;
vnf3.out –> outGate;
}
The below are the sample scenario where an orchestrator dynamically scales a firewall VNF based on incoming traffic load:
// dynamicOrchestration.ned
network DynamicOrchestration {
submodules:
orchestrator: Orchestrator;
firewall1: Firewall;
firewall2: Firewall; // Scaled VNF
connections allowunconnected:
inGate –> firewall1.in;
firewall1.out –> firewall2.in;
firewall2.out –> outGate;
}
We had clearly learnt and familiarize the concepts to execute the network VNF orchestration in OMNeT++ simulation tool. We will provide the more information on how the network VNFs orchestration will perform in other simulation scenario