QuISP
|
This file contains the declaration of the LinkStateDatabase and classes and structs which LinkStateDatabase depends on. These classes are necessary in RoutingDaemon.cc in order to conduct OSPF Routing Protocol. Please refer to https://tech.pjin.jp/blog/2021/03/03/ospf_4/ for description of OSPF. More...
#include <omnetpp.h>
#include <algorithm>
#include <limits>
#include <memory>
#include <queue>
#include <vector>
#include "omnetpp/cexception.h"
Go to the source code of this file.
Classes | |
struct | quisp::modules::ospf::OspfNeighborInfo |
struct | quisp::modules::ospf::SummaryLinkStateAdvertisement |
This struct is used in DBD packet exchange for two nodes to communicate what link-state advertisements are missing from one or the other. More... | |
struct | quisp::modules::ospf::LinkStateAdvertisement |
Full link-state advertisement that holds info of neighbor_nodes. Element that makes up the LinkStateDatabase topology information. More... | |
class | quisp::modules::ospf::LinkStateDatabase |
Represents the database that holds link-state advertisements of nodes. Effectively, link_state_database is the topology information of a network. This class holds several public methods that enable easy execution of OSPF. More... | |
struct | quisp::modules::ospf::LinkStateDatabase::Vertex |
struct | quisp::modules::ospf::LinkStateDatabase::VertexMinPriority |
Namespaces | |
namespace | quisp |
namespace | quisp::modules |
namespace | quisp::modules::ospf |
Typedefs | |
using | quisp::modules::ospf::NodeAddr = int |
using | quisp::modules::ospf::RouterIds = std::vector<int> |
using | quisp::modules::ospf::NeighborTable = std::map<NodeAddr, OspfNeighborInfo> |
using | quisp::modules::ospf::LinkStateDatabaseSummary = std::vector<SummaryLinkStateAdvertisement> |
using | quisp::modules::ospf::LinkStateUpdate = std::vector<LinkStateAdvertisement> |
Enumerations | |
enum class | quisp::modules::ospf::OspfState { quisp::modules::ospf::DOWN = 0 , quisp::modules::ospf::INIT = 1 , quisp::modules::ospf::TWO_WAY = 2 , quisp::modules::ospf::EXSTART = 3 , quisp::modules::ospf::EXCHANGE = 4 , quisp::modules::ospf::LOADING = 5 , quisp::modules::ospf::FULL = 6 } |
This file contains the declaration of the LinkStateDatabase and classes and structs which LinkStateDatabase depends on. These classes are necessary in RoutingDaemon.cc in order to conduct OSPF Routing Protocol. Please refer to https://tech.pjin.jp/blog/2021/03/03/ospf_4/ for description of OSPF.