QuISP
Loading...
Searching...
No Matches
quisp::modules::Router Class Reference

Router routes messages to components or other qnode according to the message header. More...

#include <Router.h>

Inheritance diagram for quisp::modules::Router:
Collaboration diagram for quisp::modules::Router:

Public Member Functions

 Router ()
 

Protected Member Functions

virtual void initialize () override
 
virtual void handleMessage (omnetpp::cMessage *msg) override
 
void generateRoutingTable (cTopology *topo)
 
void handleOspfHelloPacket (omnetpp::cMessage *msg)
 

Protected Attributes

utils::ComponentProvider provider
 
NodeAddr my_address
 
RoutingTable routing_table
 

Private Member Functions

virtual bool parentModuleIsQNode ()
 
void nonQNodeForwardOspfPacket (messages::OspfPacket *pk)
 
void sendOspfHelloPacketToQueue (messages::OspfPacket *pk)
 
void redirectOspfHelloPacketToRoutingDaemon (messages::OspfPacket *pk)
 

Detailed Description

Router routes messages to components or other qnode according to the message header.

Constructor & Destructor Documentation

◆ Router()

quisp::modules::Router::Router ( )

Member Function Documentation

◆ generateRoutingTable()

void quisp::modules::Router::generateRoutingTable ( cTopology * topo)
protected

◆ handleMessage()

void quisp::modules::Router::handleMessage ( omnetpp::cMessage * msg)
overrideprotectedvirtual

◆ handleOspfHelloPacket()

void quisp::modules::Router::handleOspfHelloPacket ( omnetpp::cMessage * msg)
protected

◆ initialize()

void quisp::modules::Router::initialize ( )
overrideprotectedvirtual

◆ nonQNodeForwardOspfPacket()

void quisp::modules::Router::nonQNodeForwardOspfPacket ( messages::OspfPacket * pk)
private

Unlike QNodes, BSA nodes are connected to only two nodes (at least that is the assumption) So this function simulates BSA nodes receiving packets from one node, and sending them to the other node.

◆ parentModuleIsQNode()

bool quisp::modules::Router::parentModuleIsQNode ( )
privatevirtual

◆ redirectOspfHelloPacketToRoutingDaemon()

void quisp::modules::Router::redirectOspfHelloPacketToRoutingDaemon ( messages::OspfPacket * pk)
private

◆ sendOspfHelloPacketToQueue()

void quisp::modules::Router::sendOspfHelloPacketToQueue ( messages::OspfPacket * pk)
private

Member Data Documentation

◆ my_address

NodeAddr quisp::modules::Router::my_address
protected

◆ provider

utils::ComponentProvider quisp::modules::Router::provider
protected

◆ routing_table

RoutingTable quisp::modules::Router::routing_table
protected

The documentation for this class was generated from the following files: