OMNET MULTICAST PROJECTS transmission method one device communicates with several devices in a single transmission.A multicast address is a single IP data packet set that represents a network host group. Multicast addresses are available to process datagram’s or frames intended.
Different Ranges of multicast address:
Multicast address ranges from the 224.0.0.0 to 239.255.255.255. IPV4-reserved address for multicast
- 224.0.0.0: based address reserved
- 224.0.0.1: Used for all multicasting host groups
- 224.0.0.2: Used for all subnet routers
- 224.0.0.5 and 224.0.0.6: Used by Open Shortest Path First, an interior gateway protocol for all network segment routing information.
Procedures involved in setting multicast network:
- Routers in the network’s are multicast enabled
- Configurations of multicast network is also support multicast enabled.
- Select the address you’ll use for your multicast

Algorithm involved in multicast routing protocol:
- Reverse path multicasting.
- Flooding.
- Core-based tree.
- Spanning trees.
- Truncated reverse path broadcasting.
- Reverse path broadcasting etc.
Many different algorithm can be implemented for multicast routing protocol projects depending upon requirement of your projects.,
Sample Output video representing Omnet++ Multicasting Projects
Sample Omnet++ code for Multicast routing Protocol
void MULTICAST::processEchoReply(MULTICASTMessage *reply)
{
IPv4ControlInfo *ctrl = check_and_cast<IPv4ControlInfo*>(reply->removeControlInfo());
PingPayload *payload = check_and_cast<PingPayload *>(reply->decapsulate());
payload->setControlInfo(ctrl);
delete reply;
long originatorId = payload->getOriginatorId();
PingMap::iterator i = pingMap.find(originatorId);
if (i != pingMap.end())
send(payload, "pingOut", i->second);
else
{
EV << "Received ECHO REPLY has an unknown originator ID: " << originatorId << ", packet dropped." << endl;
delete payload;
}
}
void MULTICAST::sendEchoRequest(PingPayload *msg)
{
cGate *arrivalGate = msg->getArrivalGate();
int i = arrivalGate->getIndex();
pingMap[msg->getOriginatorId()] = i;
IPv4ControlInfo *ctrl = check_and_cast<IPv4ControlInfo*>(msg->removeControlInfo());
ctrl->setProtocol(IP_PROT_MULTICAST);
MULTICASTMessage *request = new MULTICASTMessage(msg->getName());
request->setType(MULTICAST_ECHO_REQUEST);
request->encapsulate(msg);
request->setControlInfo(ctrl);
sendToIP(request);
}
