Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > d9faa203c2b0b6fbb179d93daaea81b7 > files > 2167

libdtn-devel-2.6.0-1mdv2009.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>DTN Reference Implementation: prophet::HelloTLV::HelloTLVHeader Struct Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceprophet.html">prophet</a>::<a class="el" href="classprophet_1_1HelloTLV.html">HelloTLV</a>::<a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html">HelloTLVHeader</a>
  </div>
</div>
<div class="contents">
<h1>prophet::HelloTLV::HelloTLVHeader Struct Reference</h1><!-- doxytag: class="prophet::HelloTLV::HelloTLVHeader" --><code>#include &lt;<a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>&gt;</code>
<p>

<p>
<a href="structprophet_1_1HelloTLV_1_1HelloTLVHeader-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Hello TLV header<br>
 p. 
<p>
25, 4.4.1<br>
 <br>
 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.<br>
 <br>
 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. 
<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00046">46</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#d3e0c179106155c71a8187a0b152bbde">type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">defined as 0x01  <a href="#d3e0c179106155c71a8187a0b152bbde"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#be1d003c25e3170137b011702fe3ccb1">unused__</a>:5</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#5a2028bc7d257c7091b93131f58ea0ef">HF</a>:3</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specifies the function of the Hello TLV.  <a href="#5a2028bc7d257c7091b93131f58ea0ef"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#155cc9e0b2f2c5c5349425de226b973a">length</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Length of the TLV in octets, including the TLV header and any nested TLVs.  <a href="#155cc9e0b2f2c5c5349425de226b973a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#08f471211251e2a2080742937ea12746">timer</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Timer field is used to inform the receiver of the timer value used in the Hello processing of the sender.  <a href="#08f471211251e2a2080742937ea12746"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#bb33bf927c287b2164f4e68066ef0f1c">name_length</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Name Length field is used to specify the length of the Sender Name field in octets.  <a href="#bb33bf927c287b2164f4e68066ef0f1c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">u_char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#3ff14823aa1dfdc9c2ff905325bf8ddd">sender_name</a> [0]</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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.  <a href="#3ff14823aa1dfdc9c2ff905325bf8ddd"></a><br></td></tr>
</table>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="d3e0c179106155c71a8187a0b152bbde"></a><!-- doxytag: member="prophet::HelloTLV::HelloTLVHeader::type" ref="d3e0c179106155c71a8187a0b152bbde" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int8_t <a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#d3e0c179106155c71a8187a0b152bbde">prophet::HelloTLV::HelloTLVHeader::type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
defined as 0x01 
<p>

<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00047">47</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>

<p>Referenced by <a class="el" href="HelloTLV_8cc-source.html#l00042">prophet::HelloTLV::deserialize()</a>, and <a class="el" href="HelloTLV_8cc-source.html#l00072">prophet::HelloTLV::serialize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="be1d003c25e3170137b011702fe3ccb1"></a><!-- doxytag: member="prophet::HelloTLV::HelloTLVHeader::unused__" ref="be1d003c25e3170137b011702fe3ccb1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int8_t <a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#be1d003c25e3170137b011702fe3ccb1">prophet::HelloTLV::HelloTLVHeader::unused__</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00048">48</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="5a2028bc7d257c7091b93131f58ea0ef"></a><!-- doxytag: member="prophet::HelloTLV::HelloTLVHeader::HF" ref="5a2028bc7d257c7091b93131f58ea0ef" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int8_t <a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#5a2028bc7d257c7091b93131f58ea0ef">prophet::HelloTLV::HelloTLVHeader::HF</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Specifies the function of the Hello TLV. 
<p>
Four functions are specified for the Hello TLV: <br>
 SYN: HF = 1<br>
 SYNACK: HF = 2<br>
 ACK: HF = 3<br>
 RSTACK: HF = 4.<br>
 
<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00058">58</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>

<p>Referenced by <a class="el" href="HelloTLV_8cc-source.html#l00042">prophet::HelloTLV::deserialize()</a>, and <a class="el" href="HelloTLV_8cc-source.html#l00072">prophet::HelloTLV::serialize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="155cc9e0b2f2c5c5349425de226b973a"></a><!-- doxytag: member="prophet::HelloTLV::HelloTLVHeader::length" ref="155cc9e0b2f2c5c5349425de226b973a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int16_t <a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#155cc9e0b2f2c5c5349425de226b973a">prophet::HelloTLV::HelloTLVHeader::length</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Length of the TLV in octets, including the TLV header and any nested TLVs. 
<p>

<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00063">63</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>

<p>Referenced by <a class="el" href="HelloTLV_8cc-source.html#l00042">prophet::HelloTLV::deserialize()</a>, and <a class="el" href="HelloTLV_8cc-source.html#l00072">prophet::HelloTLV::serialize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="08f471211251e2a2080742937ea12746"></a><!-- doxytag: member="prophet::HelloTLV::HelloTLVHeader::timer" ref="08f471211251e2a2080742937ea12746" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int8_t <a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#08f471211251e2a2080742937ea12746">prophet::HelloTLV::HelloTLVHeader::timer</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The Timer field is used to inform the receiver of the timer value used in the Hello processing of the sender. 
<p>
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. 
<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00071">71</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>

<p>Referenced by <a class="el" href="HelloTLV_8cc-source.html#l00042">prophet::HelloTLV::deserialize()</a>, and <a class="el" href="HelloTLV_8cc-source.html#l00072">prophet::HelloTLV::serialize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="bb33bf927c287b2164f4e68066ef0f1c"></a><!-- doxytag: member="prophet::HelloTLV::HelloTLVHeader::name_length" ref="bb33bf927c287b2164f4e68066ef0f1c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int8_t <a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#bb33bf927c287b2164f4e68066ef0f1c">prophet::HelloTLV::HelloTLVHeader::name_length</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The Name Length field is used to specify the length of the Sender Name field in octets. 
<p>
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. 
<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00079">79</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>

<p>Referenced by <a class="el" href="HelloTLV_8cc-source.html#l00042">prophet::HelloTLV::deserialize()</a>, and <a class="el" href="HelloTLV_8cc-source.html#l00072">prophet::HelloTLV::serialize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="3ff14823aa1dfdc9c2ff905325bf8ddd"></a><!-- doxytag: member="prophet::HelloTLV::HelloTLVHeader::sender_name" ref="3ff14823aa1dfdc9c2ff905325bf8ddd" args="[0]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_char <a class="el" href="structprophet_1_1HelloTLV_1_1HelloTLVHeader.html#3ff14823aa1dfdc9c2ff905325bf8ddd">prophet::HelloTLV::HelloTLVHeader::sender_name</a>[0]          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
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. 
<p>

<p>Definition at line <a class="el" href="HelloTLV_8h-source.html#l00085">85</a> of file <a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a>.</p>

<p>Referenced by <a class="el" href="HelloTLV_8cc-source.html#l00042">prophet::HelloTLV::deserialize()</a>, and <a class="el" href="HelloTLV_8cc-source.html#l00072">prophet::HelloTLV::serialize()</a>.</p>

</div>
</div><p>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="HelloTLV_8h-source.html">HelloTLV.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:56 2008 for DTN Reference Implementation by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>