INET Framework for OMNeT++/OMNEST
inet::bgp Namespace Reference

Namespaces

 fsm
 

Classes

class  Bgp
 
class  BgpAsPathSegment
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:26 by opp_msgtool. More...
 
class  BgpConfigReader
 
class  BgpHeader
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:53 by opp_msgtool. More...
 
class  BgpHeaderSerializer
 Converts between BgpHeader and binary (network byte order) BGP messages. More...
 
class  BgpKeepAliveMessage
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:67 by opp_msgtool. More...
 
class  BgpOpenMessage
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:89 by opp_msgtool. More...
 
class  BgpOptionalParameterBase
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:72 by opp_msgtool. More...
 
class  BgpOptionalParameterRaw
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:81 by opp_msgtool. More...
 
class  BgpRouter
 
class  BgpRoutingTableEntry
 
class  BgpSession
 
class  BgpUpdateMessage
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:215 by opp_msgtool. More...
 
struct  BgpUpdateNlri
 Struct generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:202 by opp_msgtool. More...
 
class  BgpUpdatePathAttributes
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:114 by opp_msgtool. More...
 
class  BgpUpdatePathAttributesAggregator
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:185 by opp_msgtool. More...
 
class  BgpUpdatePathAttributesAsPath
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:137 by opp_msgtool. More...
 
class  BgpUpdatePathAttributesAtomicAggregate
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:177 by opp_msgtool. More...
 
class  BgpUpdatePathAttributesLocalPref
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:167 by opp_msgtool. More...
 
class  BgpUpdatePathAttributesMultiExitDisc
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:157 by opp_msgtool. More...
 
class  BgpUpdatePathAttributesNextHop
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:147 by opp_msgtool. More...
 
class  BgpUpdatePathAttributesOrigin
 Class generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:127 by opp_msgtool. More...
 
struct  BgpUpdateWithdrawnRoutes
 Struct generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:195 by opp_msgtool. More...
 
struct  SessionInfo
 

Typedefs

typedef Ipv4Address RouterId
 
typedef Ipv4Address NextHop
 
typedef unsigned short AsId
 
typedef unsigned long SessionId
 

Enumerations

enum  BgpSessionType { IGP = 0, EGP = 1, INCOMPLETE = 2 }
 Enum generated from inet/routing/bgpv4/BgpCommon.msg:12 by opp_msgtool. More...
 
enum  BgpPathSegmentType { AS_SET = 1, AS_SEQUENCE = 2 }
 Enum generated from inet/routing/bgpv4/BgpCommon.msg:19 by opp_msgtool. More...
 
enum  BgpType { BGP_OPEN = 1, BGP_UPDATE = 2, BGP_NOTIFICATION = 3, BGP_KEEPALIVE = 4 }
 Enum generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:37 by opp_msgtool. More...
 
enum  BgpUpdateAttributeTypeCode {
  ORIGIN = 1, AS_PATH = 2, NEXT_HOP = 3, MULTI_EXIT_DISC = 4,
  LOCAL_PREF = 5, ATOMIC_AGGREGATE = 6, AGGREGATOR = 7
}
 Enum generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:103 by opp_msgtool. More...
 

Functions

 Define_Module (Bgp)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpSessionType &e)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpSessionType &e)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpPathSegmentType &e)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpPathSegmentType &e)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpAsPathSegment &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpAsPathSegment &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpType &e)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpType &e)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpHeader &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpHeader &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpKeepAliveMessage &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpKeepAliveMessage &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpOpenMessage &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpOpenMessage &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdateAttributeTypeCode &e)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdateAttributeTypeCode &e)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributes &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributes &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributesOrigin &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributesOrigin &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributesAsPath &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributesAsPath &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributesNextHop &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributesNextHop &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributesMultiExitDisc &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributesMultiExitDisc &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributesLocalPref &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributesLocalPref &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributesAtomicAggregate &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributesAtomicAggregate &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdatePathAttributesAggregator &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdatePathAttributesAggregator &obj)
 
void INET_API __doPacking (omnetpp::cCommBuffer *b, const BgpUpdateWithdrawnRoutes &a)
 
void INET_API __doUnpacking (omnetpp::cCommBuffer *b, BgpUpdateWithdrawnRoutes &a)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdateWithdrawnRoutes &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdateWithdrawnRoutes &obj)
 
void INET_API __doPacking (omnetpp::cCommBuffer *b, const BgpUpdateNlri &a)
 
void INET_API __doUnpacking (omnetpp::cCommBuffer *b, BgpUpdateNlri &a)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdateNlri &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdateNlri &obj)
 
void doParsimPacking (omnetpp::cCommBuffer *b, const BgpUpdateMessage &obj)
 
void doParsimUnpacking (omnetpp::cCommBuffer *b, BgpUpdateMessage &obj)
 
 Register_Serializer (BgpHeader, BgpHeaderSerializer)
 
 Register_Serializer (BgpKeepAliveMessage, BgpHeaderSerializer)
 
 Register_Serializer (BgpOpenMessage, BgpHeaderSerializer)
 
 Register_Serializer (BgpUpdateMessage, BgpHeaderSerializer)
 
unsigned short computePathAttributeBytes (const BgpUpdatePathAttributes &pathAttr)
 
std::ostream & operator<< (std::ostream &out, BgpRoutingTableEntry &entry)
 
std::ostream & operator<< (std::ostream &out, const BgpSession &entry)
 

Variables

const unsigned char TCP_PORT = 179
 
const unsigned char START_EVENT_KIND = 81
 
const unsigned char CONNECT_RETRY_KIND = 82
 
const unsigned char HOLD_TIME_KIND = 83
 
const unsigned char KEEP_ALIVE_KIND = 89
 
const unsigned char NB_TIMERS = 4
 
const unsigned char NB_STATS = 6
 
const unsigned char DEFAULT_COST = 1
 
const unsigned char NB_SESSION_MAX = 255
 
const unsigned char ROUTE_DESTINATION_CHANGED = 90
 
const unsigned char NEW_ROUTE_ADDED = 91
 
const unsigned char NEW_SESSION_ESTABLISHED = 92
 
const unsigned char ASLOOP_NO_DETECTED = 93
 
const unsigned char ASLOOP_DETECTED = 94
 
const B BGP_HEADER_OCTETS = B(19)
 
const B BGP_OPEN_OCTETS = B(10)
 
const B BGP_EMPTY_UPDATE_OCTETS = B(4)
 

Typedef Documentation

◆ AsId

typedef unsigned short inet::bgp::AsId

◆ NextHop

◆ RouterId

◆ SessionId

typedef unsigned long inet::bgp::SessionId

Enumeration Type Documentation

◆ BgpPathSegmentType

Enum generated from inet/routing/bgpv4/BgpCommon.msg:19 by opp_msgtool.

enum BgpPathSegmentType
{
    AS_SET = 1;
    AS_SEQUENCE = 2;
}
Enumerator
AS_SET 
AS_SEQUENCE 
74  {
75  AS_SET = 1,
76  AS_SEQUENCE = 2
77 };

◆ BgpSessionType

Enum generated from inet/routing/bgpv4/BgpCommon.msg:12 by opp_msgtool.

enum BgpSessionType
{
    IGP = 0;
    EGP = 1;
    INCOMPLETE = 2;
}
Enumerator
IGP 
EGP 
INCOMPLETE 
55  {
56  IGP = 0,
57  EGP = 1,
58  INCOMPLETE = 2
59 };

◆ BgpType

Enum generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:37 by opp_msgtool.

//
// BGPv4 message types
//
enum BgpType
{
    BGP_OPEN = 1;
    BGP_UPDATE = 2;
    BGP_NOTIFICATION = 3;
    BGP_KEEPALIVE = 4;
}
Enumerator
BGP_OPEN 
BGP_UPDATE 
BGP_NOTIFICATION 
BGP_KEEPALIVE 
147  {
148  BGP_OPEN = 1,
149  BGP_UPDATE = 2,
150  BGP_NOTIFICATION = 3,
151  BGP_KEEPALIVE = 4
152 };

◆ BgpUpdateAttributeTypeCode

Enum generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:103 by opp_msgtool.

enum BgpUpdateAttributeTypeCode
{
    ORIGIN = 1;
    AS_PATH = 2;
    NEXT_HOP = 3;
    MULTI_EXIT_DISC = 4;
    LOCAL_PREF = 5;
    ATOMIC_AGGREGATE = 6;
    AGGREGATOR = 7;
}
Enumerator
ORIGIN 
AS_PATH 
NEXT_HOP 
MULTI_EXIT_DISC 
LOCAL_PREF 
ATOMIC_AGGREGATE 
AGGREGATOR 
424  {
425  ORIGIN = 1,
426  AS_PATH = 2,
427  NEXT_HOP = 3,
428  MULTI_EXIT_DISC = 4,
429  LOCAL_PREF = 5,
430  ATOMIC_AGGREGATE = 6,
431  AGGREGATOR = 7
432 };

Function Documentation

◆ __doPacking() [1/2]

void INET_API inet::bgp::__doPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdateNlri a 
)

◆ __doPacking() [2/2]

void INET_API inet::bgp::__doPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdateWithdrawnRoutes a 
)

Referenced by doParsimPacking().

◆ __doUnpacking() [1/2]

void INET_API inet::bgp::__doUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdateNlri a 
)

◆ __doUnpacking() [2/2]

void INET_API inet::bgp::__doUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdateWithdrawnRoutes a 
)

Referenced by doParsimUnpacking().

◆ computePathAttributeBytes()

INET_API unsigned short inet::bgp::computePathAttributeBytes ( const BgpUpdatePathAttributes pathAttr)
13 {
14  unsigned short contentBytes = pathAttr.getExtendedLengthBit() ? 4 : 3;
15  switch (pathAttr.getTypeCode()) {
17  auto& attr = *check_and_cast<const BgpUpdatePathAttributesOrigin *>(&pathAttr);
18  ASSERT(attr.getLength() == 1);
19  contentBytes += 1;
20  return contentBytes;
21  }
23  auto& attr = *check_and_cast<const BgpUpdatePathAttributesAsPath *>(&pathAttr);
24  #ifndef NDEBUG
25  {
26  unsigned short s = 0;
27  for (size_t j = 0; j < attr.getValueArraySize(); j++) {
28  ASSERT(attr.getValue(j).getLength() == attr.getValue(j).getAsValueArraySize());
29  s += 2 + 2 * attr.getValue(j).getAsValueArraySize();
30  }
31  ASSERT(s == attr.getLength());
32  }
33  #endif
34  contentBytes += attr.getLength(); // type (1) + length (1) + value
35  return contentBytes;
36  }
38  auto& attr = *check_and_cast<const BgpUpdatePathAttributesNextHop *>(&pathAttr);
39  ASSERT(attr.getLength() == 4);
40  contentBytes += 4;
41  return contentBytes;
42  }
44  auto& attr = *check_and_cast<const BgpUpdatePathAttributesLocalPref *>(&pathAttr);
45  ASSERT(attr.getLength() == 4);
46  contentBytes += 4;
47  return contentBytes;
48  }
50  auto& attr = *check_and_cast<const BgpUpdatePathAttributesAtomicAggregate *>(&pathAttr);
51  ASSERT(attr.getLength() == 0);
52  return contentBytes;
53  }
54  default:
55  throw cRuntimeError("Unknown BgpUpdateAttributeTypeCode: %d", (int)pathAttr.getTypeCode());
56  }
57 }

Referenced by inet::bgp::BgpSession::sendUpdateMessage().

◆ Define_Module()

inet::bgp::Define_Module ( Bgp  )

◆ doParsimPacking() [1/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpAsPathSegment obj 
)
inline
129 {obj.parsimPack(b);}

◆ doParsimPacking() [2/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpHeader obj 
)
inline
210 {obj.parsimPack(b);}

◆ doParsimPacking() [3/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpKeepAliveMessage obj 
)
inline
248 {obj.parsimPack(b);}

◆ doParsimPacking() [4/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpOpenMessage obj 
)
inline
406 {obj.parsimPack(b);}

◆ doParsimPacking() [5/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpPathSegmentType e 
)
inline
79 { b->pack(static_cast<int>(e)); }

◆ doParsimPacking() [6/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpSessionType e 
)
inline
61 { b->pack(static_cast<int>(e)); }

◆ doParsimPacking() [7/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpType e 
)
inline
154 { b->pack(static_cast<int>(e)); }

◆ doParsimPacking() [8/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdateAttributeTypeCode e 
)
inline
434 { b->pack(static_cast<int>(e)); }

◆ doParsimPacking() [9/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdateMessage obj 
)
inline
937 {obj.parsimPack(b);}

◆ doParsimPacking() [10/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdateNlri obj 
)
inline
831 { __doPacking(b, obj); }

◆ doParsimPacking() [11/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributes obj 
)
inline
501 {obj.parsimPack(b);}

◆ doParsimPacking() [12/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributesAggregator obj 
)
inline
797 {obj.parsimPack(b);}

◆ doParsimPacking() [13/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributesAsPath obj 
)
inline
591 {obj.parsimPack(b);}

◆ doParsimPacking() [14/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributesAtomicAggregate obj 
)
inline
751 {obj.parsimPack(b);}

◆ doParsimPacking() [15/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributesLocalPref obj 
)
inline
715 {obj.parsimPack(b);}

◆ doParsimPacking() [16/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributesMultiExitDisc obj 
)
inline
674 {obj.parsimPack(b);}

◆ doParsimPacking() [17/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributesNextHop obj 
)
inline
633 {obj.parsimPack(b);}

◆ doParsimPacking() [18/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdatePathAttributesOrigin obj 
)
inline
542 {obj.parsimPack(b);}

◆ doParsimPacking() [19/19]

void inet::bgp::doParsimPacking ( omnetpp::cCommBuffer *  b,
const BgpUpdateWithdrawnRoutes obj 
)
inline
814 { __doPacking(b, obj); }

◆ doParsimUnpacking() [1/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpAsPathSegment obj 
)
inline
130 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [2/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpHeader obj 
)
inline
211 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [3/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpKeepAliveMessage obj 
)
inline
249 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [4/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpOpenMessage obj 
)
inline
407 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [5/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpPathSegmentType e 
)
inline
80 { int n; b->unpack(n); e = static_cast<BgpPathSegmentType>(n); }

◆ doParsimUnpacking() [6/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpSessionType e 
)
inline
62 { int n; b->unpack(n); e = static_cast<BgpSessionType>(n); }

◆ doParsimUnpacking() [7/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpType e 
)
inline
155 { int n; b->unpack(n); e = static_cast<BgpType>(n); }

◆ doParsimUnpacking() [8/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdateAttributeTypeCode e 
)
inline
435 { int n; b->unpack(n); e = static_cast<BgpUpdateAttributeTypeCode>(n); }

◆ doParsimUnpacking() [9/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdateMessage obj 
)
inline
938 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [10/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdateNlri obj 
)
inline
832 { __doUnpacking(b, obj); }

◆ doParsimUnpacking() [11/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributes obj 
)
inline
502 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [12/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributesAggregator obj 
)
inline
798 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [13/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributesAsPath obj 
)
inline
592 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [14/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributesAtomicAggregate obj 
)
inline
752 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [15/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributesLocalPref obj 
)
inline
716 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [16/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributesMultiExitDisc obj 
)
inline
675 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [17/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributesNextHop obj 
)
inline
634 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [18/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdatePathAttributesOrigin obj 
)
inline
543 {obj.parsimUnpack(b);}

◆ doParsimUnpacking() [19/19]

void inet::bgp::doParsimUnpacking ( omnetpp::cCommBuffer *  b,
BgpUpdateWithdrawnRoutes obj 
)
inline
815 { __doUnpacking(b, obj); }

◆ operator<<() [1/2]

std::ostream& inet::bgp::operator<< ( std::ostream &  out,
BgpRoutingTableEntry entry 
)
inline
77 {
78  if (entry.getDestination().isUnspecified())
79  out << "0.0.0.0";
80  else
81  out << entry.getDestination();
82  out << "/";
83  if (entry.getNetmask().isUnspecified())
84  out << "0";
85  else
86  out << entry.getNetmask().getNetmaskLength();
87  out << " nextHop: " << entry.getGateway().str(false)
88  << " cost: " << entry.getMetric()
89  << " if: " << entry.getInterfaceName()
90  << " origin: " << BgpRoutingTableEntry::getPathTypeString(entry.getPathType());
91  if (entry.isIBgpLearned())
92  out << " localPref: " << entry.getLocalPreference();
93  out << " ASlist: ";
94  for (uint32_t i = 0; i < entry.getASCount(); i++)
95  out << entry.getAS(i) << ' ';
96 
97  return out;
98 }

◆ operator<<() [2/2]

std::ostream & inet::bgp::operator<< ( std::ostream &  out,
const BgpSession entry 
)
218 {
219  out << "sessionId: " << entry.getSessionID() << " "
220  << "sessionType: " << entry.getTypeString(entry.getType()) << " "
221  << "established: " << (entry.isEstablished() == true ? "true" : "false") << " "
222  << "state: " << entry.getFSM().currentState().name() << " "
223  << "peer: " << entry.getPeerAddr().str(false) << " "
224  << "nextHopSelf: " << (entry.getNextHopSelf() == true ? "true" : "false") << " "
225  << "startEventTime: " << entry.getStartEventTime() << " "
226  << "connectionRetryTime: " << entry.getConnectionRetryTime() << " "
227  << "holdTime: " << entry.getHoldTime() << " "
228  << "keepAliveTime: " << entry.getKeepAliveTime();
229 
230  return out;
231 }

◆ Register_Serializer() [1/4]

inet::bgp::Register_Serializer ( BgpHeader  ,
BgpHeaderSerializer   
)

◆ Register_Serializer() [2/4]

inet::bgp::Register_Serializer ( BgpKeepAliveMessage  ,
BgpHeaderSerializer   
)

◆ Register_Serializer() [3/4]

inet::bgp::Register_Serializer ( BgpOpenMessage  ,
BgpHeaderSerializer   
)

◆ Register_Serializer() [4/4]

inet::bgp::Register_Serializer ( BgpUpdateMessage  ,
BgpHeaderSerializer   
)

Variable Documentation

◆ ASLOOP_DETECTED

const unsigned char inet::bgp::ASLOOP_DETECTED = 94

◆ ASLOOP_NO_DETECTED

const unsigned char inet::bgp::ASLOOP_NO_DETECTED = 93

◆ BGP_EMPTY_UPDATE_OCTETS

const B inet::bgp::BGP_EMPTY_UPDATE_OCTETS = B(4)

◆ BGP_HEADER_OCTETS

const B inet::bgp::BGP_HEADER_OCTETS = B(19)

◆ BGP_OPEN_OCTETS

const B inet::bgp::BGP_OPEN_OCTETS = B(10)

◆ CONNECT_RETRY_KIND

const unsigned char inet::bgp::CONNECT_RETRY_KIND = 82

◆ DEFAULT_COST

const unsigned char inet::bgp::DEFAULT_COST = 1

◆ HOLD_TIME_KIND

const unsigned char inet::bgp::HOLD_TIME_KIND = 83

◆ KEEP_ALIVE_KIND

const unsigned char inet::bgp::KEEP_ALIVE_KIND = 89

◆ NB_SESSION_MAX

const unsigned char inet::bgp::NB_SESSION_MAX = 255

◆ NB_STATS

const unsigned char inet::bgp::NB_STATS = 6

◆ NB_TIMERS

const unsigned char inet::bgp::NB_TIMERS = 4

◆ NEW_ROUTE_ADDED

const unsigned char inet::bgp::NEW_ROUTE_ADDED = 91

◆ NEW_SESSION_ESTABLISHED

const unsigned char inet::bgp::NEW_SESSION_ESTABLISHED = 92

◆ ROUTE_DESTINATION_CHANGED

const unsigned char inet::bgp::ROUTE_DESTINATION_CHANGED = 90

◆ START_EVENT_KIND

const unsigned char inet::bgp::START_EVENT_KIND = 81

◆ TCP_PORT

const unsigned char inet::bgp::TCP_PORT = 179
inet::bgp::EGP
@ EGP
Definition: BgpCommon_m.h:57
inet::bgp::BgpPathSegmentType
BgpPathSegmentType
Enum generated from inet/routing/bgpv4/BgpCommon.msg:19 by opp_msgtool.
Definition: BgpCommon_m.h:74
inet::bgp::ORIGIN
@ ORIGIN
Definition: BgpHeader_m.h:425
inet::bgp::AS_SET
@ AS_SET
Definition: BgpCommon_m.h:75
inet::bgp::BgpType
BgpType
Enum generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:37 by opp_msgtool.
Definition: BgpHeader_m.h:147
inet::bgp::ATOMIC_AGGREGATE
@ ATOMIC_AGGREGATE
Definition: BgpHeader_m.h:430
inet::units::constants::e
const value< double, units::C > e(1.602176487e-19)
inet::bgp::AS_SEQUENCE
@ AS_SEQUENCE
Definition: BgpCommon_m.h:76
inet::bgp::__doPacking
void INET_API __doPacking(omnetpp::cCommBuffer *b, const BgpUpdateNlri &a)
inet::bgp::IGP
@ IGP
Definition: BgpCommon_m.h:56
inet::bgp::NEXT_HOP
@ NEXT_HOP
Definition: BgpHeader_m.h:427
inet::units::values::s
value< double, units::s > s
Definition: Units.h:1235
inet::bgp::__doUnpacking
void INET_API __doUnpacking(omnetpp::cCommBuffer *b, BgpUpdateNlri &a)
inet::bgp::AS_PATH
@ AS_PATH
Definition: BgpHeader_m.h:426
inet::units::values::b
value< int64_t, units::b > b
Definition: Units.h:1241
inet::bgp::BgpUpdateAttributeTypeCode
BgpUpdateAttributeTypeCode
Enum generated from inet/routing/bgpv4/bgpmessage/BgpHeader.msg:103 by opp_msgtool.
Definition: BgpHeader_m.h:424
inet::bgp::LOCAL_PREF
@ LOCAL_PREF
Definition: BgpHeader_m.h:429
inet::bgp::AGGREGATOR
@ AGGREGATOR
Definition: BgpHeader_m.h:431
inet::bgp::BGP_KEEPALIVE
@ BGP_KEEPALIVE
Definition: BgpHeader_m.h:151
inet::bgp::BGP_OPEN
@ BGP_OPEN
Definition: BgpHeader_m.h:148
inet::bgp::BgpSessionType
BgpSessionType
Enum generated from inet/routing/bgpv4/BgpCommon.msg:12 by opp_msgtool.
Definition: BgpCommon_m.h:55
inet::bgp::MULTI_EXIT_DISC
@ MULTI_EXIT_DISC
Definition: BgpHeader_m.h:428
inet::bgp::BGP_NOTIFICATION
@ BGP_NOTIFICATION
Definition: BgpHeader_m.h:150
inet::bgp::INCOMPLETE
@ INCOMPLETE
Definition: BgpCommon_m.h:58
inet::bgp::BGP_UPDATE
@ BGP_UPDATE
Definition: BgpHeader_m.h:149