IETF MANET Working Group T. Ramrekha Internet-Draft E. Panaousis Intended status: Informational C. Politis Expires: October 2011 WMN Research Group Kingston University London APR 21, 2011 A Generic Cognitive Adaptive Module (CAM) for Ad Hoc Routing Protocols draft-ramrekha-manet-cam-02.txt Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. 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 This Internet-Draft will expire on October 21, 2011. Ramrekha et al. Expires October 21, 2011 [Page 1] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 Copyright Notice Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Abstract This document describes a generic Cognitive Adaptive Module (CAM) that can be utilized in conjunction with Mobile Ad hoc Network (MANET) routing protocols. The main concept behind CAM is the fact that the provisioning of multimedia communications traditionally requires routing Quality of Service (QoS) guarantees [9]. Such a task is NP Complete in MANETs when QoS optimization is subject to more than one parameter [9]. Hence, the provisioning of soft QoS guarantees for effective and efficient routing in dynamic environments, as specified in [1], is the best alternative. However, the latter cannot be optimally achieved by using a single metric based path selection process or routing approach due to variations in both upper layer service QoS requirements and situational constraints. CAM provides interfaces to routing components such that protocols can be segmented into these components and can be easily made configurable and adaptive. For instance, the route selection process can be done in an adaptive manner to satisfy the requirements for effective and efficient routing. This is achieved by providing interfaces from the CAM core to various user defined components (e.g. Repositories Component) such that all components and component parts (e.g. DYMO reactive routing logic) can inter- communicate. 1. Introduction The autonomous nature of Mobile Ad hoc Networks (MANETs) makes them suitable for deployment in various scenarios. In such scenarios, the routing QoS is defined by the service requirements but the achievable QoS is limited by network and scenario constraints. A detailed list of these requirements and constraints is presented in [1]. It can be deduced that rigid routing protocols based on a fixed route selection process that only consider single path metrics SHALL Ramrekha et al. Expires October 21, 2011 [Page 2] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 NOT perform optimally in such dynamically varying environments. Although the network performance using such protocols MAY be satisfactory for specific scenarios, the routing approach performs sub-optimally for wider context usages. An adaptive approach using routing logics from well tested protocols such as [3] and [4] will provide a more flexible routing solution for the widespread use of MANETs. CAM is a generic module that provides interfaces for user defined routing components e.g. "Routing algorithms", "Repositories" and "Route quality" determination so that these are easily configurable and reusable for different scenarios. In addition, CAM offers interfaces to "Monitor" and "Adaptive" components that allow protocols to cognitively adapt its routing process in dynamic environments. This SHOULD enhance overall efficiency and effectiveness (both terms defined as design requirements in [1]) of routing algorithms. This version of CAM defines the appropriate module, interfaces and components necessary to enable this. Furthermore, this document describes the operation of a modified version of [10] that uses CAM. This CML version utilizes [3], [4] and [5] in order to adapt to various network sizes and node distributions by utilizing CAM as a facilitator towards making the protocol cognitive and adaptive. CAM optionally uses protocols and requirements defined in [3], [4], [5] and [10]. The module makes no assumption about the underlying link layer other than those made in [10]. 2. Notation and Definitions lg - The base 2 logarithm function, so that 2^lg(x) = x. x||y - concatenation of bit string x and bit string y. |x| - number of bits in string x. 3. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [2]. 3.1. CML Terminology This section defines terminology associated with CAM that are not already defined in or that differs in meaning from the terminology of [3], [4], [5], [7] and [10]. Ramrekha et al. Expires October 21, 2011 [Page 3] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 CAM Module - A collection of interfaces and generalized functions used to separate routing protocol components. Also defines components that are necessary for cognition and adaptation. CAM Interface - A structure defining the elements required and provided by the module. CAM Component - A structure containing definitions and implementations of routing logics and structures. Routing algorithm - A logic that defines a process for data packet delivery including route selection. Message passing - A method of transferring information from component parts to the CAM module and vice-versa. Threshold - A threshold for the context being monitored in the network e.g. density of network, network size, battery levels of nodes, etc. Upper_Threshold_C - The upper value of a threshold for a particular monitored MANET context such as network size, node density in the neighborhood and battery level of nodes. Lower_Threshold_C - The lower value of threshold for a particular monitored context. MANET Context - A set of characteristics describing the MANET and its environment as defined in [1]. This includes node mobility levels, small and large node groups as well as technological and environmental constraints such as limited battery life of devices and bandwidth limitations of wireless links. Monitors - A part of the Monitor Component that defines and implements necessary logic for user defined monitoring requirements for MANET contexts. Operation Band - The nodal routing state relative to the monitored Context being less than the threshold or more than threshold. Coarse variables - This identifies the component that is being targeted. The value of the coarse variable MAY be equal to the ID of the component for convenience. Fine variables - This identifies the parameter that needs to be modified within a component part. The variable value SHOULD uniquely identify variable parameters within each component part. Ramrekha et al. Expires October 21, 2011 [Page 4] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 Trigger - An implemented logic in the CAM core that is used by the Monitors to activate specific Adaptive component parts when a threshold is exceeded. 4. Applicability This module is designed to be used with protocols that follow recommendations particularly from [1] and [7]. It also extends the concept of protocol segmentation as introduced by [7] for reasons specified thereby. Most notably segments from protocols [3] and [4] can be used within such parts of the component for ease of implementation and configuration. A standard MANET routing protocol should be able to provide optimal QoS performances in all situations and the main goal of CAM is to facilitate such an optimization by adding cognitive and adaptive features to routing algorithms so that they are best fitted for all application purposes and easily configurable by users. Examples and particularities of some possible scenarios (also mentioned in [1]) where MANETs could be deployed are: Emergency rescuer and military ad hoc communication - Rescuers and military participants will require multimedia communications (requiring low delay and delay jitter as well as high throughput routing QoS) in terrains where obstacles are common. Devices will have limited battery resources and the network topology (in terms of both network size and node distribution) will change regularly as participating nodes join or leave the network. Mesh-based wireless community networks - Community users are likely to access multimedia services. Since the topology consists of static rechargeable routers, energy spent for routing is not a limitation towards QoS provisioning. However, users might prefer more efficient energy utilization for greener and cheaper solutions while also maintaining the required QoS routing levels. Mesh-based wireless enterprise networks - Enterprise users (i.e. office users) are likely to access email and file transfer services (requiring low packet loss routing QoS). Since the nodes are rechargeable, energy limitation is not an issue but users might prefer more efficient energy utilization for greener and cheaper solutions. Smart home ad hoc networks - Home users MAY want to distribute content among home devices such as TV, IP-radios, laptops and PCs. Here "bursty" communication would be desired and proactive maintenance of route information MAY be inefficient and expensive in idle periods between bursts. Ramrekha et al. Expires October 21, 2011 [Page 5] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 In addition, CAM SHOULD be useful for communication devices with multithreading capabilities such as new generation PDAs. Moreover, CAM MAY also be used for general purpose MANETs. 5. Protocol Functioning and Overview This document does not describe a protocol but a module that can incorporate parts of routing protocols such as [3], [4] and [5]. Thus this section contains an overview of the module and its functional descriptions. 5.1. CAM Overview This module is designed to work as a facilitator in the deployment of adaptive routing protocols for MANETs including adaptive hybrid approaches such as [10]. It is required that CAM MUST be installed in each MANET node. The module consists of the module core and components as shown in Error! Reference source not found.. The core contains generic logic to enable data and control flow among components. Then, the pluggable components contain self-configurable logical parts that can be easily modified or defined by users. 5.2. CAM Core The module core contains essential data structures and logic definitions as well as implementations required by the module components. These SHOULD facilitate the configuration of well known routing parts into more adaptive and hybrid routing approaches. 5.2.1. Interfaces The core MUST implement interfaces for each defined component. Thus, the core can communicate to the components through these interfaces. Component-to-Component communication MUST only be possible via the core. Each interface is associated with a component ID. The core can then pass messages to the required component using its stored ID within core data structures. 5.2.2. Component and part IDs Each component and each component part is identified through a unique ID. This ID MAY be coded as a 'x' bit string where x = x_component || x_part |x_component| = (lg (Number of components)) Ramrekha et al. Expires October 21, 2011 [Page 6] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 |x_part| = (lg (Number of parts)) 5.2.3. Thresholds and Triggers The core MUST define triggers for all the contexts being monitored in the Monitor component parts. To achieve this, an upper and lower threshold MUST be defined for each monitored context. The trigger is used to contact the Adaptive module if for a context C: 1. (Previous_C_Value < Lower_Threshold_C) and (Current_C_Value>= Lower_Threshold_C) or 2. (Previous_C_Value > Upper_Threshold_C) and (Current_C_Value<= Upper_Threshold_C) The trigger MUST contact the appropriate component by using the required IDs in order to change the operation band. 5.2.4. Component Coarse and Fine variables The core MUST define both coarse and fine variables for component parts. This will allow the core to change routing behavior according to context changes. For each active component part, a coarse variable MAY be assigned the component part ID. Then, for each defined coarse variable specifying a part, associated parameter names and values are stored. These values are set by the Adaptive component parts and are used to change the routing behavior of protocols. The CAM MUST be able to accommodate user defined components and parts. 6. Constants 6.1. Network Threshold and other parameter Values The considered constants Upper_Threshold_C, and Lower_Threshold_C values as well as coefficients a, b, c, d, e and f are found through experimentation or research results. These are dependent on the module components that are defined by the users and MUST be modifiable by the "Adaptive" Component. Ramrekha et al. Expires October 21, 2011 [Page 7] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 In the case of CML the values for H1, H2, R, D1, D2, and N are also determined using experimental and research results. Other parameter values are specified in [3], [4] and [5]. 7. Message Emission and Jitter Synchronization of control messages SHOULD be avoided as mentioned in [6]. 8. IPv6 Considerations All the operations and parameters described in this document can be used for both IP version 4 and IP version 6. For IPv6 networks, the IPv4 addresses in the utilized packets and messages need to be replaced by IPv6 addresses. The packet and message sizes will also increase accordingly. 9. Security Considerations CAM SHOULD have a security component where logics for security measures are defined. There are special security considerations for MANET routing protocols as described in [16]. Apart from authentication, integrity, confidentiality and availability which MUST be satisfied for any MANET communication path to defend legitimate nodes against malicious external entities, intrusion detection SHOULD be designed for the CAM. Intrusion detection techniques SHOULD protect MANET against compromised entities, node capture attacks or jammers. These are more critical security vulnerabilities since cryptographic techniques cannot prevent them. Smart intrusion detection and prevention mechanisms MUST be adopted by CAM to recognize any adversary that has succeeded to penetrate the cryptographic primitives or it has launched a denial of service attack. In a MANET, which uses IDSs (intrusion detection systems) integrated into the nodes, to detect attacks, apart from the energy spent for forwarding, some important part of the energy is spent for detection purposes. Thus, CAM SHOULD be aware of the energy spent by the IDSs as well as the residual energy of the (i) relay nodes and (ii) the detection nodes. Therefore, this routing mechanism can extend the MANET's lifetime and avoid network's segmentation. MANET routing mechanisms based on game theoretic concepts such as the one published in [17] MAY be adopted in CAM to provide energy efficient and more precise intrusion detection. Ramrekha et al. Expires October 21, 2011 [Page 8] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 Adversaries might launch attacks against one or more components of CAM thus a security module MUST provide protection, privacy and trustworthiness. 10. IANA Considerations The values assigned to messages and message types must in conformance with the ones defined in specifications within [3], [4], [5] and [12]. 11. Conclusions This I-D presents CAM, a module that aims at easing the configuration of MANET routing protocols. This is an extension of the concept of segmenting [5] from [3]. In this document, the objective is to encourage designs for more flexible routing protocols by segmenting the routing logic into segregated components that can be easily configured and rendered adaptive. Thus, such a routing protocol will be better suited for a wider range of real life applications. A modified version of [10] that integrates [3], [4] and [5] routing logics is also presented to demonstrate this. This version of CML MAY be better suited than its individual component parts if they were all to be used for a given scenario e.g. disaster multimedia communication where data delivery latency has to be minimized, the battery power of devices is limited while the network size as well as node distribution are bound to change. Thus CAM SHOULD allow for easier deployments of MANETs in a wider range of applications. 12. References 12.1. Normative References [1] Macker, J. and S. Corson, "Mobile Ad hoc Networking (MANET): Routing Protocol Performance Issues and Evaluation Considerations", RFC 2501, January 1999. [2] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [3] Clausen, T., Dearlove, C., and P. Jacquet, "The Optimized Link State Routing Protocol version 2", draft-ietf-manet-olsrv2- 11.txt (work in progress), March 2010. [4] Chakeres, I., and Perkins, C., " Dynamic MANET On-demand (DYMO) Routing", draft-ietf-manet-dymo-19.txt (work in progress), March 2010. Ramrekha et al. Expires October 21, 2011 [Page 9] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 [5] Clausen, T., C. Dearlove, and Dean, J., "MANET Neighborhood Discovery Protocol (NHDP)", draft-ietf-manet-nhdp-12.txt (work in progress), March 2010. [6] Clausen, T., Dearlove, C., and B. Adamson, "Jitter considerations in MANETs", RFC 5148, February 2008. [7] Clausen, T., Dean, J., Dearlove, C., and Adjih, C. "Generalized MANET Packet/Message Format", RFC 5444, February 2009. [8] Dearlove, C., Clausen, T., and P. Jacquet, "Link Metrics for OLSRv2" (work in progress). 12.2. Informative References [9] L. Chen and W. Heinzelman, "Qos-aware routing based on bandwidth estimation for mobile ad hoc networks," Selected Areas in Communications, IEEE Journal on, vol. 23, no. 3, pp. 561-572, March 2005. [10] Ramrekha, T., Panaousis, E., Millar, G. and Politis, C., "ChaMeLeon (CML): A hybrid and adaptive routing protocol for Emergency Situations" draft-ramrekha-manet-cml-00.txt (work in progress), February 2010. [11] De Couto, D., Aguayo, D., Bicket, J., and R. Morris, "A High- Throughput Path Metric for Multi-Hop Wireless Routing", Proceedings of the MOBICOM Conference, 2003. [12] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", RFC 5226, BCP 26, May 2008. [13] Rogge, H., Baccelli, E., and Kaplan, A.," Packet Sequence Number based ETX Metric for Mobile Ad Hoc Networks" draft- funkfeuer-manet-olsrv2-etx-01 (work in progress), March 2010. [14] Chakeres, I., "IANA Allocations for MANET Protocols", RFC 5498, March 2009. [15] Clausen, T. and C. Dearlove, "Representing multi-value time in MANETs", RFC 5497, March 2009. [16] Anjum, F. and Mouchtaris, P. "Security for Wireless Ad Hoc Networks", ISBN: 978-0-471-75688-0, John Wiley & Sons, March 2007. Ramrekha et al. Expires October 21, 2011 [Page 10] Internet-Draft Cognitive Adaptive Module (CAM) April 2011 [17] Panaousis, E.A and Politis, C. "A game theoretic approach for securing AODV in emergency Mobile Ad Hoc Networks," Local Computer Networks, 2009. LCN 2009. IEEE 34th Conference on, vol., no., pp.985-992, 20-23 Oct. 2009, doi: 10.1109/LCN.2009.5355020 13. Acknowledgments The authors wish to acknowledge the support of the ICT European 7th Framework Program and all the partners in PEACE (IP-based Emergency Applications and services for next generation networks) project with contract number 225654. In particular, the input from Mr. Grant P. Millar, Researcher at WMN Group Kingston University, was well appreciated. This document was prepared using 2-Word-v2.0.template.dot. Authors' Addresses The following researchers who have contributed to this I-D are members of the Wireless Multimedia and Networking (WMN) Research Group at Kingston University London: Tipu Arvind Ramrekha Researcher, WMN Research Group Kingston University London KT1 2EE Phone: (+44) 02084177025 Email: a.ramrekha@kingston.ac.uk Emmanouil A. Panaousis Researcher, WMN Research Group Kingston University London KT1 2EE Phone: (+44) 02084177025 Email: e.panaousis@kingston.ac.uk Christos Politis Head of WMN Research Group Kingston University London KT1 2EE Phone: (+44) 02084172653 Email: c.politis@kingston.ac.uk Ramrekha et al. Expires October 21, 2011 [Page 11]