--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+ <title>nepi.resources.ns3.classes.dsrdsr_routing — NEPI 3.0 documentation</title>
+
+ <link rel="stylesheet" href="../../../../../_static/sphinxdoc.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../../_static/pygments.css" type="text/css" />
+
+ <script type="text/javascript">
+ var DOCUMENTATION_OPTIONS = {
+ URL_ROOT: '../../../../../',
+ VERSION: '3.0',
+ COLLAPSE_INDEX: false,
+ FILE_SUFFIX: '.html',
+ HAS_SOURCE: true
+ };
+ </script>
+ <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
+ <link rel="top" title="NEPI 3.0 documentation" href="../../../../../index.html" />
+ <link rel="up" title="Module code" href="../../../../index.html" />
+ </head>
+ <body>
+ <div class="related">
+ <h3>Navigation</h3>
+ <ul>
+ <li class="right" style="margin-right: 10px">
+ <a href="../../../../../genindex.html" title="General Index"
+ accesskey="I">index</a></li>
+ <li class="right" >
+ <a href="../../../../../py-modindex.html" title="Python Module Index"
+ >modules</a> |</li>
+ <li><a href="../../../../../index.html">NEPI 3.0 documentation</a> »</li>
+ <li><a href="../../../../index.html" accesskey="U">Module code</a> »</li>
+ </ul>
+ </div>
+ <div class="sphinxsidebar">
+ <div class="sphinxsidebarwrapper">
+<div id="searchbox" style="display: none">
+ <h3>Quick search</h3>
+ <form class="search" action="../../../../../search.html" method="get">
+ <input type="text" name="q" />
+ <input type="submit" value="Go" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+ <p class="searchtip" style="font-size: 90%">
+ Enter search terms or a module, class or function name.
+ </p>
+</div>
+<script type="text/javascript">$('#searchbox').show(0);</script>
+ </div>
+ </div>
+
+ <div class="document">
+ <div class="documentwrapper">
+ <div class="bodywrapper">
+ <div class="body">
+
+ <h1>Source code for nepi.resources.ns3.classes.dsrdsr_routing</h1><div class="highlight"><pre>
+<span class="c">#</span>
+<span class="c"># NEPI, a framework to manage network experiments</span>
+<span class="c"># Copyright (C) 2014 INRIA</span>
+<span class="c">#</span>
+<span class="c"># This program is free software: you can redistribute it and/or modify</span>
+<span class="c"># it under the terms of the GNU General Public License version 2 as</span>
+<span class="c"># published by the Free Software Foundation;</span>
+<span class="c">#</span>
+<span class="c"># This program is distributed in the hope that it will be useful,</span>
+<span class="c"># but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
+<span class="c"># MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span>
+<span class="c"># GNU General Public License for more details.</span>
+<span class="c">#</span>
+<span class="c"># You should have received a copy of the GNU General Public License</span>
+<span class="c"># along with this program. If not, see <http://www.gnu.org/licenses/>.</span>
+<span class="c">#</span>
+
+<span class="kn">from</span> <span class="nn">nepi.execution.attribute</span> <span class="kn">import</span> <span class="n">Attribute</span><span class="p">,</span> <span class="n">Flags</span><span class="p">,</span> <span class="n">Types</span>
+<span class="kn">from</span> <span class="nn">nepi.execution.trace</span> <span class="kn">import</span> <span class="n">Trace</span><span class="p">,</span> <span class="n">TraceAttr</span>
+<span class="kn">from</span> <span class="nn">nepi.execution.resource</span> <span class="kn">import</span> <span class="n">ResourceManager</span><span class="p">,</span> <span class="n">clsinit_copy</span><span class="p">,</span> \
+ <span class="n">ResourceState</span>
+<span class="kn">from</span> <span class="nn">nepi.resources.ns3.ns3base</span> <span class="kn">import</span> <span class="n">NS3Base</span>
+
+<span class="nd">@clsinit_copy</span>
+<div class="viewcode-block" id="NS3dsrDsrRouting"><a class="viewcode-back" href="../../../../../_layout/nepi.resources.ns3.classes.html#nepi.resources.ns3.classes.dsrdsr_routing.NS3dsrDsrRouting">[docs]</a><span class="k">class</span> <span class="nc">NS3dsrDsrRouting</span><span class="p">(</span><span class="n">NS3Base</span><span class="p">):</span>
+ <span class="n">_rtype</span> <span class="o">=</span> <span class="s">"ns3::dsr::DsrRouting"</span>
+
+ <span class="nd">@classmethod</span>
+ <span class="k">def</span> <span class="nf">_register_attributes</span><span class="p">(</span><span class="n">cls</span><span class="p">):</span>
+
+ <span class="n">attr_maxsendbufflen</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxSendBuffLen"</span><span class="p">,</span>
+ <span class="s">"Maximum number of packets that can be stored in send buffer."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"64"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxsendbufflen</span><span class="p">)</span>
+
+ <span class="n">attr_maxsendbufftime</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxSendBuffTime"</span><span class="p">,</span>
+ <span class="s">"Maximum time packets can be queued in the send buffer ."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+30000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxsendbufftime</span><span class="p">)</span>
+
+ <span class="n">attr_maxmaintlen</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxMaintLen"</span><span class="p">,</span>
+ <span class="s">"Maximum number of packets that can be stored in maintenance buffer."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"50"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxmaintlen</span><span class="p">)</span>
+
+ <span class="n">attr_maxmainttime</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxMaintTime"</span><span class="p">,</span>
+ <span class="s">"Maximum time packets can be queued in maintenance buffer."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+30000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxmainttime</span><span class="p">)</span>
+
+ <span class="n">attr_maxcachelen</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxCacheLen"</span><span class="p">,</span>
+ <span class="s">"Maximum number of route entries that can be stored in route cache."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"64"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxcachelen</span><span class="p">)</span>
+
+ <span class="n">attr_routecachetimeout</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"RouteCacheTimeout"</span><span class="p">,</span>
+ <span class="s">"Maximum time the route cache can be queued in route cache."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+300000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_routecachetimeout</span><span class="p">)</span>
+
+ <span class="n">attr_maxentrieseachdst</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxEntriesEachDst"</span><span class="p">,</span>
+ <span class="s">"Maximum number of route entries for a single destination to respond."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"20"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxentrieseachdst</span><span class="p">)</span>
+
+ <span class="n">attr_sendbuffinterval</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"SendBuffInterval"</span><span class="p">,</span>
+ <span class="s">"How often to check send buffer for packet with route."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+500000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_sendbuffinterval</span><span class="p">)</span>
+
+ <span class="n">attr_nodetraversaltime</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"NodeTraversalTime"</span><span class="p">,</span>
+ <span class="s">"The time it takes to traverse two neighboring nodes."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+40000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_nodetraversaltime</span><span class="p">)</span>
+
+ <span class="n">attr_rreqretries</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"RreqRetries"</span><span class="p">,</span>
+ <span class="s">"Maximum number of retransmissions for request discovery of a route."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"16"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_rreqretries</span><span class="p">)</span>
+
+ <span class="n">attr_maintenanceretries</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaintenanceRetries"</span><span class="p">,</span>
+ <span class="s">"Maximum number of retransmissions for data packets from maintenance buffer."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"2"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maintenanceretries</span><span class="p">)</span>
+
+ <span class="n">attr_requesttablesize</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"RequestTableSize"</span><span class="p">,</span>
+ <span class="s">"Maximum number of request entries in the request table, set this as the number of nodes in the simulation."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"64"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_requesttablesize</span><span class="p">)</span>
+
+ <span class="n">attr_requestidsize</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"RequestIdSize"</span><span class="p">,</span>
+ <span class="s">"Maximum number of request source Ids in the request table."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"16"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_requestidsize</span><span class="p">)</span>
+
+ <span class="n">attr_uniquerequestidsize</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"UniqueRequestIdSize"</span><span class="p">,</span>
+ <span class="s">"Maximum number of request Ids in the request table for a single destination."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"256"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_uniquerequestidsize</span><span class="p">)</span>
+
+ <span class="n">attr_nonproprequesttimeout</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"NonPropRequestTimeout"</span><span class="p">,</span>
+ <span class="s">"The timeout value for non-propagation request."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+30000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_nonproprequesttimeout</span><span class="p">)</span>
+
+ <span class="n">attr_discoveryhoplimit</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"DiscoveryHopLimit"</span><span class="p">,</span>
+ <span class="s">"The max discovery hop limit for route requests."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"255"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_discoveryhoplimit</span><span class="p">)</span>
+
+ <span class="n">attr_maxsalvagecount</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxSalvageCount"</span><span class="p">,</span>
+ <span class="s">"The max salvage count for a single data packet."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"15"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxsalvagecount</span><span class="p">)</span>
+
+ <span class="n">attr_blacklisttimeout</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"BlacklistTimeout"</span><span class="p">,</span>
+ <span class="s">"The time for a neighbor to stay in blacklist."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+3000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_blacklisttimeout</span><span class="p">)</span>
+
+ <span class="n">attr_gratreplyholdoff</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"GratReplyHoldoff"</span><span class="p">,</span>
+ <span class="s">"The time for gratuitous reply entry to expire."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+1000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_gratreplyholdoff</span><span class="p">)</span>
+
+ <span class="n">attr_broadcastjitter</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"BroadcastJitter"</span><span class="p">,</span>
+ <span class="s">"The jitter time to avoid collision for broadcast packets."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"10"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_broadcastjitter</span><span class="p">)</span>
+
+ <span class="n">attr_linkacktimeout</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"LinkAckTimeout"</span><span class="p">,</span>
+ <span class="s">"The time a packet in maintenance buffer wait for link acknowledgment."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+100000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_linkacktimeout</span><span class="p">)</span>
+
+ <span class="n">attr_trylinkacks</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"TryLinkAcks"</span><span class="p">,</span>
+ <span class="s">"The number of link acknowledgment to use."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"1"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_trylinkacks</span><span class="p">)</span>
+
+ <span class="n">attr_passiveacktimeout</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"PassiveAckTimeout"</span><span class="p">,</span>
+ <span class="s">"The time a packet in maintenance buffer wait for passive acknowledgment."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+100000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_passiveacktimeout</span><span class="p">)</span>
+
+ <span class="n">attr_trypassiveacks</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"TryPassiveAcks"</span><span class="p">,</span>
+ <span class="s">"The number of passive acknowledgment to use."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"1"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_trypassiveacks</span><span class="p">)</span>
+
+ <span class="n">attr_requestperiod</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"RequestPeriod"</span><span class="p">,</span>
+ <span class="s">"The base time interval between route requests."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+500000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_requestperiod</span><span class="p">)</span>
+
+ <span class="n">attr_maxrequestperiod</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxRequestPeriod"</span><span class="p">,</span>
+ <span class="s">"The max time interval between route requests."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+10000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxrequestperiod</span><span class="p">)</span>
+
+ <span class="n">attr_grareplytablesize</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"GraReplyTableSize"</span><span class="p">,</span>
+ <span class="s">"The gratuitous reply table size."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"64"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_grareplytablesize</span><span class="p">)</span>
+
+ <span class="n">attr_cachetype</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"CacheType"</span><span class="p">,</span>
+ <span class="s">"Use Link Cache or use Path Cache"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"LinkCache"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_cachetype</span><span class="p">)</span>
+
+ <span class="n">attr_stabilitydecrfactor</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"StabilityDecrFactor"</span><span class="p">,</span>
+ <span class="s">"The stability decrease factor for link cache"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"2"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_stabilitydecrfactor</span><span class="p">)</span>
+
+ <span class="n">attr_stabilityincrfactor</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"StabilityIncrFactor"</span><span class="p">,</span>
+ <span class="s">"The stability increase factor for link cache"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"4"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_stabilityincrfactor</span><span class="p">)</span>
+
+ <span class="n">attr_initstability</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"InitStability"</span><span class="p">,</span>
+ <span class="s">"The initial stability factor for link cache"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+25000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_initstability</span><span class="p">)</span>
+
+ <span class="n">attr_minlifetime</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MinLifeTime"</span><span class="p">,</span>
+ <span class="s">"The minimal life time for link cache"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+1000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_minlifetime</span><span class="p">)</span>
+
+ <span class="n">attr_useextends</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"UseExtends"</span><span class="p">,</span>
+ <span class="s">"The extension time for link cache"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+120000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_useextends</span><span class="p">)</span>
+
+ <span class="n">attr_enablesubroute</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"EnableSubRoute"</span><span class="p">,</span>
+ <span class="s">"Enables saving of sub route when receiving route error messages, only available when using path route cache"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Bool</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"True"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_enablesubroute</span><span class="p">)</span>
+
+ <span class="n">attr_retransincr</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"RetransIncr"</span><span class="p">,</span>
+ <span class="s">"The increase time for retransmission timer when facing network congestion"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+20000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_retransincr</span><span class="p">)</span>
+
+ <span class="n">attr_maxnetworkqueuesize</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxNetworkQueueSize"</span><span class="p">,</span>
+ <span class="s">"The max number of packet to save in the network queue."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"400"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxnetworkqueuesize</span><span class="p">)</span>
+
+ <span class="n">attr_maxnetworkqueuedelay</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"MaxNetworkQueueDelay"</span><span class="p">,</span>
+ <span class="s">"The max time for a packet to stay in the network queue."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">String</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"+30000000000.0ns"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_maxnetworkqueuedelay</span><span class="p">)</span>
+
+ <span class="n">attr_numpriorityqueues</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"NumPriorityQueues"</span><span class="p">,</span>
+ <span class="s">"The max number of packet to save in the network queue."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"2"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_numpriorityqueues</span><span class="p">)</span>
+
+ <span class="n">attr_linkacknowledgment</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"LinkAcknowledgment"</span><span class="p">,</span>
+ <span class="s">"Enable Link layer acknowledgment mechanism"</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Bool</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"True"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_linkacknowledgment</span><span class="p">)</span>
+
+ <span class="n">attr_protocolnumber</span> <span class="o">=</span> <span class="n">Attribute</span><span class="p">(</span><span class="s">"ProtocolNumber"</span><span class="p">,</span>
+ <span class="s">"The Ip protocol number."</span><span class="p">,</span>
+ <span class="nb">type</span> <span class="o">=</span> <span class="n">Types</span><span class="o">.</span><span class="n">Integer</span><span class="p">,</span>
+ <span class="n">default</span> <span class="o">=</span> <span class="s">"0"</span><span class="p">,</span>
+ <span class="n">allowed</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="nb">range</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span>
+ <span class="n">flags</span> <span class="o">=</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Reserved</span> <span class="o">|</span> <span class="n">Flags</span><span class="o">.</span><span class="n">Construct</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_attribute</span><span class="p">(</span><span class="n">attr_protocolnumber</span><span class="p">)</span>
+
+
+
+ <span class="nd">@classmethod</span>
+ <span class="k">def</span> <span class="nf">_register_traces</span><span class="p">(</span><span class="n">cls</span><span class="p">):</span>
+
+ <span class="n">tx</span> <span class="o">=</span> <span class="n">Trace</span><span class="p">(</span><span class="s">"Tx"</span><span class="p">,</span> <span class="s">"Send DSR packet."</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_trace</span><span class="p">(</span><span class="n">tx</span><span class="p">)</span>
+
+ <span class="n">drop</span> <span class="o">=</span> <span class="n">Trace</span><span class="p">(</span><span class="s">"Drop"</span><span class="p">,</span> <span class="s">"Drop DSR packet"</span><span class="p">)</span>
+
+ <span class="n">cls</span><span class="o">.</span><span class="n">_register_trace</span><span class="p">(</span><span class="n">drop</span><span class="p">)</span>
+
+
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">ec</span><span class="p">,</span> <span class="n">guid</span><span class="p">):</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">NS3dsrDsrRouting</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="n">__init__</span><span class="p">(</span><span class="n">ec</span><span class="p">,</span> <span class="n">guid</span><span class="p">)</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">_home</span> <span class="o">=</span> <span class="s">"ns3-dsr-dsr-routing-</span><span class="si">%s</span><span class="s">"</span> <span class="o">%</span> <span class="bp">self</span><span class="o">.</span><span class="n">guid</span></div>
+</pre></div>
+
+ </div>
+ </div>
+ </div>
+ <div class="clearer"></div>
+ </div>
+ <div class="related">
+ <h3>Navigation</h3>
+ <ul>
+ <li class="right" style="margin-right: 10px">
+ <a href="../../../../../genindex.html" title="General Index"
+ >index</a></li>
+ <li class="right" >
+ <a href="../../../../../py-modindex.html" title="Python Module Index"
+ >modules</a> |</li>
+ <li><a href="../../../../../index.html">NEPI 3.0 documentation</a> »</li>
+ <li><a href="../../../../index.html" >Module code</a> »</li>
+ </ul>
+ </div>
+ <div class="footer">
+ © Copyright 2014, Alina Quereilhac, Lucia Guevgeozian Odizzio, Julien Tribino.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ </div>
+ </body>
+</html>
\ No newline at end of file