<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>

<rfc ipr="trust200902"
category="info"
docName="draft-ietf-manet-olsrv2-management-snapshot-00">

<front>
<title abbrev="OLSRv2-Routed MANET Management">Snapshot of OLSRv2-Routed MANET Management</title>

<author fullname="Thomas Clausen" initials="T" surname="Clausen">
<organization>LIX, Ecole Polytechnique</organization>
<address>
<postal>
<street></street>
<city>91128 Palaiseau Cedex</city>
<region></region>
<country>France</country>
</postal>
<phone>+33-6-6058-9349</phone>
<email>T.Clausen@computer.org</email>
<uri>http://www.thomasclausen.org</uri>
</address>
</author>

<author fullname="Ulrich Herberg" initials="U" surname="Herberg">
<organization>Fujitsu Laboratories of America</organization>
<address>
<postal>
<street>1240 E Arques Ave</street>
<city>Sunnyvale CA 94086</city>
<region></region>
<country>US</country>
</postal>
<phone></phone>
<email>ulrich@herberg.name</email>
<uri>http://www.herberg.name</uri>
</address>
</author>


<date/>

<workgroup>Network Working Group</workgroup>
<keyword></keyword>

<abstract>
<t>
This document describes how Mobile Ad Hoc Networks (MANETs) are typically managed, in terms of pre-deployment management, as well as rationale and means of monitoring and management of MANET routers running the routing protocol OLSRv2 and its constituent protocol NHDP. Apart from pre-deployment management for setting up IP addresses and security related credentials, OLSRv2 only needs routers to agree one single parameter (called "C"). Other parameters for tweaking network performance may be determined during operation of the network, and need not be the same in all routers. This, using MIB modules and related management protocols such as SNMP (or possibly other, less "chatty", protocols). In addition, for debugging purposes, monitoring data and performance related counters can be sent to the Network Management System (NMS) via standardized management protocols.
</t>
</abstract>

</front>

<middle>

<section title="Introduction" anchor="introduction">
	<t>
		The MANET routing protocol  <xref target="RFC7181">OLSRv2</xref>, as well as its constituent parts <xref target="RFC6130">NHDP</xref>, <xref target="RFC5497"/>, <xref target="RFC5148"/>, <xref target="RFC5444"/>, <xref target="RFC7182"/>, <xref target="RFC7183"/>, is designed to autonomously maintain routes across a dynamic network topology. OLSRv2 is designed so as to minimize operator intervention throughout the duration of a network deployment, and to allow for heterogeneous configuration of routers within the same network deployment: most configuration values are either of local significance only (e.g., message jitter parameters) or, when they are not, are carried in control signals exchanged between routers (e.g., information validity time).
	</t>

	<t>
		All the same, a small set of configuration options must be established in each router prior to deployment, with some requiring agreement among all the routers within the same deployment. Furthermore, throughout the duration of a network deployment, external management and monitoring of a network may be desirable, e.g., for performance optimization or debugging purposes.
	</t>

	<section title="Statement of Purpose" anchor="purpose">
		<t>
			Deployments of OLSRv2 are diverse, and may include community networks, constrained environments, tactical networks, etc. Each such environment may present distinctly different requirements as to management and monitoring.
		</t>

		<t>
			This document does therefore explicitly not pretend to provide an exhaustive description of how all OLSRv2 network deployments should be managed and monitored - and does, specifically, not prescribe any management model.
		</t>

		<t>
			What this document does, however, is to present how some OLSRv2 network deployments are managed and monitored, using well-established management patterns and well-known protocols.
		</t>
	</section>
    
</section><section title="Terminology" anchor="terminology">
	<t>
		This document uses terminology from <xref target="RFC7181"/>, <xref target="RFC6130"/>, and <xref target="RFC5497"/>.
	</t>
</section><section anchor="predeployment" title="Pre-Deployment Management">
	<t>
      Prior to operation of an OLSRv2 network, or more precisely, prior to proper operation of OLSRv2 and its constituent parts, certain parameters need to be configured on each router. The following sections describe the required pre-deployment management.
	</t>
	
	<section anchor="lower_layer_settings" title="Lower Layer Alignment">
		<t>
			Interoperability between  routers requires alignment of lower protocol layers below OLSRv2. In particular, all routers in the same MANET topology must be pre-configured to use the same IP address family (IPv4 or IPv6). In a single OLSRv2 topology, it is not possible to mix IPv4 and IPv6 addresses, notably because <xref target="RFC5444"/> messages can contain either IPv4 *or* IPv6 addresses, but not both at the same time. It is, however, possible to run two instances of OLSRv2, one instance for IPv4 and another one for IPv6, within the same network.
		</t>
		
		<t>
			In addition to the IP address family, other lower layer parameters may also need to be aligned, e.g., radio channel selections. A single OLSRv2 topology may, of course, span different link layers (or the same link layer with different configuration settings such as cryptographic keys) when routers in the topology have OLSRv2 interfaces towards these different link layers.
		</t>
	</section>
	
	<section anchor="IP_addresses" title="Interface Addresses">
		<t>
			According to <xref target="RFC6130"/>, and as used by <xref target="RFC7181"/>, each interface of a router must be configured with at least one IP address. <xref target="RFC6130"/> provides guidance as to the characteristics of such IP addresses, including the (limited) conditions under which an IP address may be configured on multiple interfaces.
		</t>
		
		<t>
			While automatic configuration of IP addresses on router interfaces is not excluded, currently no address autoconfiguration protocols have been standardized (in the IETF) to accomplish this. As a consequence, static configuration, or proprietary (as in: non-standardized) protocols ensure this. 
		</t>
		
		<t>
			Note that this required pre-deployment of interface addresses does not include "external" IP addresses, i.e., IP addresses that are configured on local non-MANET interfaces or IP addresses from remote destinations reachable through this router (i.e., addresses for which this router serves as gateway). These can be added or removed dynamically during runtime of OLSRv2. Such local non-MANET interface addresses are managed by way of the Local Interface Set (as defined in <xref target="RFC6130"/>) and remote addresses by way of the Attached Network Set (as defined in <xref target="RFC7181"/>).
		</t>
	</section>
	
	<section anchor="security_material" title="Security Material">
		<t>
			Security material (keys, algorithms, etc.) must be available for generating Integrity Check Values (ICVs) for outgoing control messages, and to allow validating ICVs in incoming control messages <xref target="RFC7182"/> <xref target="RFC7183"/>.
		</t>
		<t>
			The appropriate way of making such security material available is dependent on the deployment type. For example, community networks (such as "Funkfeuer", http://funkfeuer.at), do currently not use any security at all. Other deployment types may use a simple manual shared key distribution mechanism, or may use a proprietary key distribution protocol. Tactical networks have much more stringent requirements for distributing key material, e.g., using manual distribution of the keys on encrypted USB keys, and with defensive mechanisms (up to and including mechanisms involving depleted uranium) if the keys are compromised.
		</t>
		<t>
			In general, Automatic Key Management (AKM) as well as static/manual or other out-of-band mechanisms, can be viable options for distributing keys. Currently, no standardized AKM mechanism for MANETs exist. If the IETF standardizes such mechanisms in the future, for deployment types where such is appropriate, these can be used for distributing keys. Until such time, manual key distribution as well as proprietary mechanisms, prevail. 
		</t>
		<t>
			The important point to make here, however, is that by whichever method  (automatic/manual, dynamic/static, ... ) a key and other security material is made available, the security mechanisms of OLSRv2, as defined by <xref target="RFC7183"/>, will be able to properly use it for generating and validating ICVs.
		</t>
	</section>
	
	<section anchor="C" title="The Value of C">
		<t>
			The only pre-deployment configuration parameter that directly impacts protocol operation is the value of C. This value is used by each router for calculating the representation of interval and validity time, as included in control messages. All routers in a deployment must agree on the value of C, as described in <xref target="RFC5497"/>.

		</t>
	</section>
	
	
</section>


<section anchor="how" title="How do we Manage MANETs?">
	<t>
		A deployed OLSRv2 network is, as previously discussed, operating autonomously, but occasionally with internal or external management operations being desirable, described in the following two sections.
	</t>
		
	<section title="Internal Management">
		<t>	
			Internal management describes a local process running on an router that automatically (i.e., without external messaging or human interaction) modifies the configuration of OLSRv2 based on different environmental factors. For example, the HELLO interval may be updated according to the rate of topology changes measured (or, inferred: after all, the 'M' in MANET is for "Mobility") locally: if the rate is high, then a more frequent HELLO update assures that routes are more accurate. At a lower rate of topology changes, network capacity and energy capacity of the router may be conserved by increasing the HELLO interval.
		</t>
	
		<t>
			Depending on the use case, many different automatic configuration agents can be envisioned. As parameters in NHDP and OLSRv2 are either only used locally or, in the case of HELLO_INTERVAL and REFRESH_INTERVAL, are selected locally and then included in the messages exchanged between adjacent routers in their HELLO messages, none of these automatic local configuration methods needs necessarily to be standardized: different routers doing different things will interoperate.
		</t>
	</section>
		
	<section title="External Management">
		<t>	
			For the deployments described by this document (but see <xref target="no_constrain"/>),  external management operations are undertaken by a central Network Management Station (NMS).
		</t>
	
		<t>
			The MIB modules developed for OLSRv2 <xref target="RFC7184"/> and for its constituent protocol <xref target="RFC6779">NHDP</xref> are verbose, in as much as that they expose for interrogation the complete protocol and router state, as well as enable setting all  parameters (timer intervals, time-outs, jitter values etc.). They do explicitly not enable setting the value of C (as that is required to be constant and uniform across the network, see <xref target="C"/>), nor distributing security material (see <xref target="security_material"/>).
		</t>
	
		<t>
			In some deployments, the NMS communicates with individual routers by way of SNMP - and, more commonly, by way of "proprietary" simpler, less verbose and (often) less secure protocols, and over UDP. Note that this does not constitute a recommendation, but rather an observation that (apparently) SNMP has found less application in MANETs.
		</t>

		<t>
			The predecessor of OLSRv2, OLSR <xref target="RFC3626"/> did not have an associated MIB module. Many deployments of OLSR did not support network management operations per se (i.e., configuration-on-launch was the way in which routers in these deployments were managed). Those implementations and deployments of OLSR that did support network management operations used a similar architecture to the one described in this document, but with "proprietary" protocols and APIs for parameters and router states, "proprietary" data-models, etc. It can be speculated that the "proprietary" protocols used for communication between the NMS and the MIB modules on each router also for OLSRv2, in part, exist as inherited from the protocols used for OLSR.
		</t>

		<t>
			Finally, it is uncommon to see an NMS permanently active in a deployed OLSRv2 network; rather, on an "ad hoc" basis an NMS is introduced into the network, parameters configured or state interrogated, following which the NMS disappears.
		</t>
	</section>
</section>
    
<section anchor="what_why" title="What and Why do we Manage and Monitor?">
	<t>
		As indicated earlier, OLSRv2 and its constituent protocol NHDP, are reasonably robust with respect to parameter values: a deployment can operate with different parameters used in different routers in the same network. That being said, adapting these parameters according to circumstances is (often) desired. For example, in a stable network (such as a wired network), TC messages may be sent infrequently and with long validity times, whereas in a highly dynamic network (such as in a vehicular network) TC messages may need to be sent more frequently and HELLO messages for discovering the local topology (almost) continuously. In a similar vein, the message emission intervals and the information validity times should also be commensurate with the available network capacity: millisecond intervals between TC messages, for example, will consume all available network capacity whereas hourly intervals will be inappropriate even for a static and stable, wired, network (by way of simply new routers arriving in the network, which will not "learn" the network topology before undue long delays).
	</t>

	<t>
		This adaptation may happen autonomously by a central NMS monitoring and adopting the parameters globally, autonomously by an NMS in each router, monitoring its local topology (and its stability) and adapting parameters locally, or by manual operator intervention.
	</t>

	<t>
		Given the dynamic and evolutive topology of OLSRv2 networks, a highly desirable property of an NMS is the ability to display and offer visibility of the current network status - for example, to display a graphical map of which routers are currently part of the network. As a proactive protocol, OLSRv2 maintains, in each router, a topology map including all destinations and a subset of the links present in the network (particularly true in a very dense network). A typical feature of an NMS is to inquire as to the topology map of a single router. A slightly less typical feature is to inquire all (or, at least, many) routers in a network, with the purpose of presenting a complete topology map.
	</t>
	
	<t>
		In addition to actively monitoring an OLSRv2 network, erroneous or unusual conditions on an router can be flagged to management, e.g., detection of an unusually high number of 1-hop or 2-hop neighborhood changes in a short amount of time, indicating potential problems in that area of the network. <xref target="RFC6779"/> and <xref target="RFC7184"/> facilitate proactively sending "notifications" (also known as traps) from the router towards an NMS. The MIB modules defined in <xref target="RFC6779"/> and <xref target="RFC7184"/> allow for defining both the threshold and the time window of how many times this erroneous condition may occur in the time window before the notification is sent to the NMS. Once the NMS receives a notification, a network operator may investigate if there is a problem that needs to be resolved, e.g., by changing parameters via the above-described external management.
	</t>
</section>
<section anchor="no_constrain" title="This Document does not Constrain how to Manage and Monitor MANETs">
	<t>
		As explained in Section 1, this document describes how, what and why some (typical) OLSRv2 networks are managed and monitored as of early 2014. As such, the document is reflexive, not prescriptive: it does not stipulate requirements for how to manage OLSRv2 networks, nor does it claim to be a complete list of all management patterns or protocols. Other ways of managing an OLSRv2 network are very well imaginable - now, or in future deployments of OLSRv2.
	</t>
	
	<t>
		As an example of such a "future management scenario", rather than managing and monitoring  routers from a central NMS, a distributed, autonomous management system between multiple  routers can be envisioned. In particular, monitoring data that is used to debug network problems and to tweak inefficiencies could be distributed amongst a group of  routers in the same network. This would both address problems of single point of failure when using only a single NMS, as well provide additional information about groups of multiple routers, rather than a single router. An example use for such a distributed information flow would be to identify areas of a network wherein, e.g., due to different router densities, message sending interval parameters could be exchanged and optimal values negotiated between routers, so as to obtain locally optimized performance.
	</t>
	<t>
		While such a management model is highly interesting, it is also at present entirely fictional - at least outside the realm of research. It is included to, both, indicate directions being explored (but not exploited), and to insist that the intent of this document is not to prescribe how MANETs are to be managed, in the presence or in the future, but to describe the (known) state of how MANETs are managed, presently.
	</t>
</section><section anchor="acknowledgments" title="Acknowledgments">
	<t>
		The authors would like to gratefully acknowledge the following people for intense technical discussions, early reviews, and comments on the documents: Alan Cullen (BAE Systems), Christopher Dearlove (BAE Systems), and Adrian Farrel (Juniper).  
	</t>
</section>
</middle>

<back>

<references title="Informative References">
  
  <reference anchor="RFC3626">
    <front>
      <title>The Optimized Link State Routing Protocol</title>
      <author initials="T.H." surname="Clausen" fullname="Thomas Heide Clausen (ed.)">
        <organization abbrev="PCRI">Ecole Polytechnique, France</organization>
      </author>
      <author initials="P." surname="Jacquet" fullname="Philippe Jacquet (ed.)">
        <organization abbrev="INRIA">Project Hipercom, INRIA Rocquencourt, France</organization>
      </author>
      <date month="October" year="2003"/>
    </front>
    <seriesInfo name="RFC" value="3626"/>
  </reference>
    
    
  <reference anchor="RFC5148">
    <front>
      <title abbrev="timetlv">Jitter Considerations in Mobile Ad Hoc Networks (MANETs)</title>
      <author initials="T.H." surname="Clausen" fullname="Thomas Heide Clausen">
        <organization abbrev="X">Ecole Polytechnique, France</organization>
      </author>
      <author initials="C.M." surname="Dearlove" fullname="Christopher Dearlove">
        <organization abbrev="BAE">BAE Systems Advanced Technology Centre, UK</organization>
      </author>
      <author initials="B." surname="Adamson" fullname="Brian Adamson">
        <organization abbrev="NRL">Naval Research Laboratory, USA</organization>
      </author>
      <date month="February" year="2008" />
    </front>
    <seriesInfo name="RFC" value="5148"/>
  </reference>
  
  <reference anchor="RFC5444">
    <front>
      <title abbrev="RFC5444">Generalized MANET Packet/Message Format</title>
        <author initials="T.H." surname="Clausen" fullname="Thomas Heide Clausen">
          <organization abbrev="X">Ecole Polytechnique, France</organization>
        </author>
        <author initials="C.M." surname="Dearlove" fullname="Christopher Dearlove">
          <organization abbrev="BAE">BAE Systems Advanced Technology Centre, UK</organization>
        </author>
        <author initials="J.W." surname="Dean" fullname="Justin W. Dean">
          <organization abbrev="NRL">Naval Research Laboratory, USA</organization>
        </author>
        <author initials="C." surname="Adjih" fullname="Cedric Adjih">
          <organization>INRIA Rocquencourt</organization>
        </author>
        <date month="February" year="2009" />
      </front>
      <seriesInfo name="RFC" value="5444"/>
    </reference>


	  <reference anchor="RFC5497">
            <front>
                <title abbrev="RFC5497">Representing Multi-Value Time in Mobile Ad Hoc Networks (MANETs)</title>
                <author initials="T.H." surname="Clausen" fullname="Thomas Heide Clausen">
                    <organization abbrev="X">Ecole Polytechnique, France</organization>
                </author>
                <author initials="C.M." surname="Dearlove" fullname="Christopher Dearlove">
                    <organization abbrev="BAE">BAE Systems Advanced Technology Centre, UK</organization>
                </author>
                <date month="March" year="2009"/>
            </front>
            <seriesInfo name="RFC" value="5497"/>
        </reference>

      <reference anchor="RFC6130">
        <front>
          <title>Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP)</title>
          <author initials="T." surname="Clausen">
          </author>
          <author initials="C." surname="Dearlove">
          </author>
          <author initials="J." surname="Dean">
          </author>
          <date month="April" year="2011" />
        </front>
        <seriesInfo name='RFC' value='6130' />
        <format type='TXT' target='http://tools.ietf.org/rfc/rfc6130.txt' />
      </reference>




     <reference anchor="RFC6779">
        <front>
          <title>Definition of Managed Objects for the Neighborhood Discovery Protocol</title>
          <author initials="U." surname="Herberg">
          </author>
          <author initials="R." surname="Cole">
          </author>
          <author initials="I." surname="Chakeres">
          </author>
          <date month="May" day="6" year="2012" />
        </front>
       <seriesInfo name='RFC' value='6779' />
        <format type='TXT' octets='0' target='http://tools.ietf.org/rfc/rfc6779.txt' />
      </reference>
         
      <reference anchor="RFC7181">
        <front>
          <title>The Optimized Link State Routing Protocol Version 2</title>
          <author initials="T." surname="Clausen">
          </author>
          <author initials="C." surname="Dearlove">
          </author>
          <author initials="P." surname="Jacquet">
          </author>
          <author initials="U." surname="Herberg">
          </author>
          <date month="April" year="2014" />
        </front>
        <seriesInfo name='RFC' value='7181' />
        <format type='TXT' target='http://www.ietf.org/rfc/rfc7181.txt' />
      </reference>    
      
      	<reference anchor="RFC7182">
			<front>
				<title>Integrity Check Value and Timestamp TLV Definitions for Mobile Ad Hoc Networks (MANETs)</title>
				<author fullname="Ulrich Herberg" initials="U" surname="Herberg">
					<organization>Fujitsu Laboratories of America</organization>
				</author>
				<author fullname="Thomas Heide Clausen" initials="T" surname="Clausen">
					<organization>LIX, Ecole Polytechnique</organization>
				</author>
				<author initials="C." surname="Dearlove">
				</author>
				<date year="2014" month="April"/>
			</front>
			<seriesInfo name='RFC' value='7182' />
            <format type='TXT' target='http://www.ietf.org/rfc/rfc7182.txt' />
		</reference>       

  <reference anchor="RFC7183">
  <front>
    <title abbrev="Integrity Protection for NHDP and OLSRv2">
      Integrity Protection for the Neighborhood Discovery Protocol (NHDP) and Optimized Link State Routing Protocol Version 2 (OLSRv2)
    </title>
    <author fullname="Ulrich Herberg" initials="U" surname="Herberg">
      <organization>Fujitsu Laboratories of America</organization>
    </author>
    <author initials="C.M." surname="Dearlove" fullname="Christopher Dearlove">
      <organization>BAE Systems ATC</organization>
    </author>
    <author fullname="Thomas Heide Clausen" initials="T" surname="Clausen">
      <organization>LIX, Ecole Polytechnique</organization>
    </author>
    <date month="April" year="2014" />
    </front>
    <seriesInfo name='RFC' value='7183' />
    <format type='TXT' target='http://www.ietf.org/rfc/rfc7183.txt' />
  </reference>
         
  <reference anchor="RFC7184">
  <front>
    <title abbrev="OLSRv2-MIB">
	  Definition of Managed Objects for the Optimized Link State Routing Protocol Version 2
    </title>
    <author fullname="Ulrich Herberg" initials="U" surname="Herberg">
      <organization>Fujitsu Laboratories of America</organization>
    </author>
	<author initials="R." surname="Cole">
	</author>
    <author fullname="Thomas Heide Clausen" initials="T" surname="Clausen">
      <organization>LIX, Ecole Polytechnique</organization>
    </author>
    <date month="April" year="2014" />
  </front>
    <seriesInfo name='RFC' value='7184' />
    <format type='TXT' target='http://www.ietf.org/rfc/rfc7184.txt' />
  </reference>

</references>
</back>
</rfc>
