File Network/LDP/LDPPacket.msg
Contains:
cplusplus {{
#include "IPAddress.h"
#define LDP_BASEHEADER_BYTES 10
#define LDP_HEADER_BYTES (LDP_BASEHEADER_BYTES+20)
}}
class noncobject IPAddress;
enum LDP_MESSAGE_TYPES
{
NOTIFICATION=10;
HELLO=11;
INITIALIZATION=12;
KEEP_ALIVE=13;
ADDRESS=14;
ADDRESS_WITHDRAW=15;
LABEL_MAPPING=16;
LABEL_REQUEST=17;
LABEL_WITHDRAW=18;
LABEL_RELEASE=19;
UNKNOWN=20;
};
enum LDP_STATUS_TYPES
{
NO_ROUTE=13;
};
struct FEC_TLV
{
fields:
IPAddress addr;
int length;
};
message LDPPacket
{
properties:
omitGetVerb = true;
fields:
int type;
IPAddress senderAddress;
IPAddress receiverAddress;
};
message LDPLabelMapping extends LDPPacket
{
fields:
FEC_TLV fec;
int label;
};
message LDPLabelRequest extends LDPPacket
{
fields:
FEC_TLV fec;
};
message LDPHello extends LDPPacket
{
fields:
double holdTime;
bool tbit;
bool rbit;
};
message LDPNotify extends LDPPacket
{
fields:
int status;
FEC_TLV fec;
};
message LDPIni extends LDPPacket
{
fields:
double keepAliveTime;
bool abit;
bool dbit;
int pvLim;
string receiverLDPIdentifier;
};
message LDPAddress extends LDPPacket
{
fields:
bool isWithdraw;
string family;
string addresses[];
};