#include <Prophet.h>
25, 4.4.1
The Hello TLV is used to set up and maintain a link between two PRoPHET nodes. Hello messages with the SYN function are transmitted periodically as beacons. The Hello TLV is the first TLV exchanged between two PRoPHET nodes when they encounter each other. No other TLVs can be exchanged until the first Hello sequenece is completed.
Once a communication link is established between two PRoPHET nodes, the Hello TLV will be sent once for each interval as defined in the interval timer. If a node experiences the lapse of HELLO_DEAD Hello intervals without receiving a Hello TLV on an ESTAB connection (as defined in the state machine in Section 5.2), the connection SHOULD be assumed broken.
Definition at line 247 of file Prophet.h.
Public Attributes | |
u_int8_t | type |
defined as 0x01 | |
u_int8_t | unused__:5 |
u_int8_t | HF:3 |
Specifies the function of the Hello TLV. | |
u_int16_t | length |
Length of the TLV in octets, including the TLV header and any nested TLVs. | |
u_int8_t | timer |
The Timer field is used to inform the receiver of the timer value used in the Hello processing of the sender. | |
u_int8_t | name_length |
The Name Length field is used to specify the length of the Sender Name field in octets. | |
u_char | sender_name [0] |
The Sender Name field specifies the routable DTN name of the sender that is to be used in updating routing information and making forwarding decisions. |
u_int8_t dtn::Prophet::HelloTLVHeader::type |
defined as 0x01
Definition at line 248 of file Prophet.h.
Referenced by dtn::HelloTLV::deserialize(), and dtn::HelloTLV::serialize().
u_int8_t dtn::Prophet::HelloTLVHeader::HF |
Specifies the function of the Hello TLV.
Four functions are specified for the Hello TLV:
SYN: HF = 1
SYNACK: HF = 2
ACK: HF = 3
RSTACK: HF = 4.
Definition at line 259 of file Prophet.h.
Referenced by dtn::HelloTLV::deserialize(), and dtn::HelloTLV::serialize().
u_int16_t dtn::Prophet::HelloTLVHeader::length |
Length of the TLV in octets, including the TLV header and any nested TLVs.
Definition at line 264 of file Prophet.h.
Referenced by dtn::HelloTLV::deserialize(), and dtn::HelloTLV::serialize().
u_int8_t dtn::Prophet::HelloTLVHeader::timer |
The Timer field is used to inform the receiver of the timer value used in the Hello processing of the sender.
The timer specifies the nominal time between periodic Hello messages. It is a constant for the duration of a session. The timer field is specified in units of 100ms.
Definition at line 272 of file Prophet.h.
Referenced by dtn::HelloTLV::deserialize(), and dtn::HelloTLV::serialize().
The Name Length field is used to specify the length of the Sender Name field in octets.
If the name has already been sent at least once in a message with the current Sender Instance, a node MAY choose to set this field to zero, omitting the Sender Name from the Hello TLV.
Definition at line 280 of file Prophet.h.
Referenced by dtn::HelloTLV::deserialize(), and dtn::HelloTLV::serialize().
The Sender Name field specifies the routable DTN name of the sender that is to be used in updating routing information and making forwarding decisions.
Definition at line 286 of file Prophet.h.
Referenced by dtn::HelloTLV::deserialize(), and dtn::HelloTLV::serialize().