Internet DRAFT - draft-clausen-olsrv2-link-hysteresis
draft-clausen-olsrv2-link-hysteresis
INTERNET-DRAFT Thomas Clausen
IETF MANET Working Group Emmanuel Baccelli
Expiration: 11 January 2006 LIX, Ecole Polytechnique, France
11 July 2005
OLSRv2 Link Hysteresis
draft-clausen-olsrv2-link-hysteresis-00.txt
Status of this Memo
This document is a submission to the Mobile Adhoc NETworks (MANET)
Working Group of the Internet Engineering Task Force (IETF). Comments
should be submitted to the manet@ietf.org mailing list.
Distribution of this memo is unlimited.
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC 2026.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
Established links between MANET nodes should be as reliable as
possible in order to avoid data packet loss. This implies that MANET
nodes' link sensing should be robust against bursty loss or transient
connectivity between nodes. Therefore, in order to enhance the
robustness of link sensing mechanisms, additional link hysteresis
strategies are used. This draft describes such a hysteresis mechanism
for OLSRv2.
Clausen, Baccelli [Page 1]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Applicability . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. OLSRv2 Link Hysteresis . . . . . . . . . . . . . . . . . . . . . 4
2.1. Additional Information in the Link Set . . . . . . . . . . . . 4
2.2. Additional Steps in Hello Message Generation . . . . . . . . . 4
2.3. Hysteresis Strategy . . . . . . . . . . . . . . . . . . . . . . 5
2.4. Interoperability Considerations . . . . . . . . . . . . . . . . 7
2.5. Proposed Values for Constants . . . . . . . . . . . . . . . . . 7
3. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8
4. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5. References . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
6. Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . . 9
8. Security Considerations . . . . . . . . . . . . . . . . . . . . . 9
9. Copyright . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Clausen, Baccelli [Page 2]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
1. Introduction
Established links between MANET nodes should be as reliable as possi-
ble in order to avoid data packet loss. This implies that link sens-
ing should be robust against bursty loss or transient connectivity
between nodes. Hence, to enhance the robustness of the link sensing
mechanism, an additional link hysteresis strategy should be used.
This draft describes such a hysteresis mechanism for OLSRv2. This
draft supplements OLSRv2 basic specifications [2].
1.1. Terminology
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC2119 [5].
This document supplements the OLSRv2 specification. Several refer-
ences are made to the OLSR terminology described in [1] and [2].
Among others, this document uses the following terminology:
- Node: a device capable of participating in a MANET.
- Neighbor Node: A node X is a neighbor node of node Y if node
Y can hear node X.
- Multipoint Relay (MPR): A node which is selected by its
neighbor, node X, to "re-transmit" all the broadcast messages
it emits.
- Neighbor Set: The information repository including the list
of the links established by a node with its neighbors. This
information also includes the quality of those links.
- HELLO messages: A node performs link sensing (the discovery
of its neighborhood) via the periodic exchange of HELLO
messages with its neighbors.
- TLV: a TLV is an attribute, associated to a message or set of
addresses. This attribute is in a type-length-value format.
1.2. Applicability
This draft describes a link hysteresis mechanism for OLSRv2. The
specified recommendations SHOULD be considered for an OLSRv2 imple-
mentation. This draft supplements OLSRv2 basic specifications [2].
Clausen, Baccelli [Page 3]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
2. OLSRv2 Link Hysteresis
Established links should be as reliable as possible to avoid data
packet loss. This implies that link sensing should be robust against
bursty loss or transient connectivity between nodes. Hence, to
enhance the robustness of the link sensing mechanism, the following
implementation recommendations SHOULD be considered in OLSRv2. These
recommendations are supplement to the specifications of [2].
2.1. Additional Information in the Link Set
Each link tuple in the neighbor links set of a given OLSRv2 node
SHOULD include (i) a L_link_pending field, (ii) a L_link_quality
field, and (iii) a L_LOST_LINK_time field. L_link_pending is a
boolean value specifying if the link is considered pending (i.e., the
link is not considered established). L_link_quality is a dimension-
less number between 0 and 1 describing the quality of the link.
L_LOST_LINK_time is a timer for declaring a link as lost when an
established link becomes pending.
2.2. Additional Steps in Hello Message Generation
HELLO message generation SHOULD consider those fields as follows:
1 if L_LOST_LINK_time is not expired, the link is advertised
with a link type of LOST_LINK.
2 otherwise, if L_LOST_LINK_time is expired and L_link_pending
is set to "true", the link SHOULD NOT be advertised at all;
3 otherwise, if L_LOST_LINK_time is expired and L_link_pending
is set to "false", the link is advertised.
A node considers that it has a symmetric link for each link tuple
where:
1 L_LOST_LINK_time is expired, AND
2 L_link_pending is "false", AND
3 L_SYM_time is not expired.
This definition for "symmetric link" SHOULD thereby also be used as
basis for the symmetric neighborhood when computing the MPR set, as
Clausen, Baccelli [Page 4]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
well as for "the symmetric neighbors" in the first steps of the rout-
ing table calculation.
The L_link_quality, L_link_pending and L_LOST_LINK_time fields are
exclusively updated according to the present section. This section
does not modify the function of any other fields in the link tuples.
Additionally, HELLO messages must include a specific message TLV
called H-Time (see Table 1).
+-------------+-------------------------------------+---------------+
| TLV Type | TLV Value | Default Value |
+-------------+-------------------------------------+---------------+
| H-Time | HELLO emission interval | HTIME_DEFAULT |
+-------------+-------------------------------------+---------------+
Table 1
This TLV specifies the HELLO emission interval used by the node on
this particular interface, i.e., the time before the transmission of
the next HELLO. The HELLO emission interval is represented by its
mantissa (four highest bits of H-Time field) and by its exponent
(four lowest bits of Htime field). In other words:
HELLO emission interval = C*(1+a/16)*2^b [in seconds]
where a is the integer represented by the four highest bits of H-Time
field and b the integer represented by the four lowest bits of H-Time
field. This H-Time value, as the additional parameters
L_LOST_LINK_time, L_link_pending and L_link_quality, is used by the
hysteresis strategy described in the following section.
2.3. Hysteresis Strategy
The link between a node and some of its neighbor interfaces might be
"bad", i.e., from time to time let HELLOs pass through only to fade
out immediately after. In this case, the neighbor information base
would contain a bad link for at least "validity time". The following
hysteresis strategy SHOULD be adopted to counter this situation.
For each neighbor interface NI heard by interface I, the L_link_qual-
ity field of the corresponding Link Tuple determines the establish-
ment of the link. The value of L_link_quality is compared to two
thresholds HYST_THRESHOLD_HIGH, HYST_THRESHOLD_LOW, fixed between 0
and 1 and such that HYST_THRESHOLD_HIGH >= HYST_THRESHOLD_LOW. With
Clausen, Baccelli [Page 5]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
L_time specifying the time at which the Link Tuple expires, the
L_link_pending field is set according to the following:
1 if L_link_quality > HYST_THRESHOLD_HIGH:
L_link_pending = false
L_LOST_LINK_time = current time - 1 (expired)
2 otherwise, if L_link_quality < HYST_THRESHOLD_LOW:
L_link_pending = true
L_LOST_LINK_time = min (L_time, current time +
NEIGHB_HOLD_TIME)
3 otherwise, if HYST_THRESHOLD_LOW <= L_link_quality
<= HYST_THRESHOLD_HIGH:
L_link_pending and L_LOST_LINK_time remain unchanged.
The condition for considering a link established is thus stricter
than the condition for dropping a link. Notice thus, that a link can
be dropped based on either timer expiration or on L_link_quality
dropping below HYST_THRESHOLD_LOW.
Also notice, that even if a link is not considered as established by
the link hysteresis, the link tuples are still updated for each
received HELLO message. Specifically, this implies that, regardless
of whether or not the link hysteresis considers a link as "estab-
lished", tuples in the link set do not expire except as determined by
the L_time field of the link tuples.
As a basic implementation requirement, an estimation of the link
quality must be maintained and stored in the L_link_quality field.
If some measure of the signal/noise level on a received message is as
estimation after normalization.
If no signal/noise information or other link quality information is
available from the link layer, an algorithm such as the following can
be utilized (it is an exponentially smoothed moving average of the
transmission success rate). The algorithm is parameterized by a
scaling parameter HYST_SCALING which is a number fixed between 0 and
1. For each neighbor interface NI heard by interface I, the first
time NI is heard by I, L_link_quality is set to HYST_SCALING
(L_link_pending is set to true and L_LOST_LINK_time to current time -
1).
Clausen, Baccelli [Page 6]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
A tuple is updated according to two rules. Every time an OLSR packet
emitted by NI is received by I, the stability rule is applied:
L_link_quality = (1-HYST_SCALING)*L_link_quality
+ HYST_SCALING.
When an OLSRv2 packet emitted by NI is lost by I, the instability
rule is applied:
L_link_quality = (1-HYST_SCALING)*L_link_quality.
The loss of OLSRv2 packet is detected by tracking the missing Packet
Sequence Numbers on a per interface basis and by "long period of
silence" from a node. A "long period of silence" may be detected
thus: if no OLSRv2 packet has been received on interface I from
interface NI during HELLO emission interval of interface NI (computed
from the H-Time field in the last HELLO message received from NI), a
loss of an OLSRv2 packet is detected.
2.4. Interoperability Considerations
Link hysteresis determines, for a node, the criteria at which a link
to a neighbor node is accepted or rejected. Nodes in a network may
have different criteria, according to the nature of the media over
which they are communicating. Once a link is accepted, it is adver-
tised, in accordance with the provisions described in the previous
sections of this specification.
2.5. Proposed Values for Constants
Here are the proposed values for the constants mentionned in the pre-
vious sections.
HYST_THRESHOLD_HIGH = 0.8
HYST_THRESHOLD_LOW = 0.3
HYST_SCALING = 0.5
NEIGHB_HOLD_TIME = 6 seconds
H-Time = 2 seconds
C = 1/16
Clausen, Baccelli [Page 7]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
3. Authors' Addresses
Thomas Heide Clausen,
Project PCRI
Pole Commun de Recherche en Informatique du plateau de Saclay,
CNRS, Ecole Polytechnique, INRIA, Universite Paris Sud,
Ecole polytechnique,
Laboratoire d'informatique,
91128 Palaiseau Cedex, France
Phone: +33 1 69 33 40 73,
Email: T.Clausen@computer.org
Emmanuel Baccelli
HITACHI Labs Europe/ Project PCRI,
Pole Commun de Recherche en Informatique du plateau de Saclay,
CNRS, Ecole Polytechnique, INRIA, Universite Paris Sud,
Ecole polytechnique,
Laboratoire d'informatique,
91128 Palaiseau Cedex, France
Phone: +33 1 69 33 40 73,
Email: Emmanuel.Baccelli@inria.fr
4. Contributors
Cedric Adjih, Project HIPERCOM, INRIA Rocquencourt, BP 105, 78153 Le
Chesnay Cedex, France, Phone: +33 1 3963 5215, Email:
Cedric.Adjih@inria.fr
Philippe Jacquet, Project HIPERCOM, INRIA Rocquencourt, BP 105, 78153
Le Chesnay Cedex, France, Phone: +33 1 3963 5263, Email:
Philippe.Jacquet@inria.fr
Anis Laouiti, Project HIPERCOM, INRIA Rocquencourt, BP 105, 78153 Le
Chesnay Cedex, France, Phone: +33 1 3963 5088, Email:
Anis.Laouiti@inria.fr
Paul Muhlethaler, Project HIPERCOM, INRIA Rocquencourt, BP 105, 78153
Le Chesnay Cedex, France, Phone: +33 1 3963 5278, Email:
Paul.Muhlethaler@inria.fr
Clausen, Baccelli [Page 8]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
Ryuji Wakikawa, Keio University and WIDE, 5322 Endo Fujisawa
Kanagawa, 252 JAPAN, Email: ryuji@sfc.wide.ad.jp
Christopher Dearlove, BAE SYSTEMS Advanced Technology Centre, Great
Baddow, Chelmsford, UK. Phone: +44 1245 242194 Email:
chris.dearlove@baesystems.com
Amir Qayyum Center for Advanced Research in Engineering Pvt. Ltd. 19
Ataturk Avenue Islamabad, Pakistan Phone: +92-51-2874115 Email:
amir@carepvtltd.com
Laurent Viennot Project HIPERCOM INRIA Rocquencourt, BP 105 78153 Le
Chesnay Cedex, France Phone: +33 1 3963 5225 Email:
Laurent.Viennot@inria.fr
5. References
[1] T. Clausen, P. Jacquet, RFC 3626: Optimized Link State Routing Pro-
tocol. Request for Comments (Experimental), Internet Engineering
Task Force, October 2003.
[2] T. Clausen, Optimized Link State Routing Protocol version 2, IETF
Internet Draft draft-clausen-manet-olsrv2-00, July 2005.
6. Changes
This is the initial version of this specification.
7. IANA Considerations
This document does currently not specify IANA considerations.
8. Security Considerations
This document does not specify any security considerations.
9. Copyright
Copyright (C) The Internet Society (2005). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on
Clausen, Baccelli [Page 9]
INTERNET-DRAFT OLSRv2 Link Hysteresis 9 July 2005
an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.