SeaMoby Working Group P.D. Neumiller Internet-Draft 3Com Expires: May 18, 2001 November 17, 2000 Applying Contract net Protocol to Mobile Handover State Transfer draft-neumiller-seamoby-cnpmobility-00 Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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 May 18, 2001. Copyright Notice Copyright (C) The Internet Society (2000). All Rights Reserved. Neumiller Expires May 18, 2001 [Page 1] Internet-Draft (CNP Mobility) November 2000 1. Abstract This draft describes the Contract Net Protocol (CNP) and suggests some ways it could be used to enhance macro and/or micro mobility protocols. Specifically this draft focuses on how CNP could be used for AAA and QoS state transfer and handover negotiation in mobile IP networks. Neumiller Expires May 18, 2001 [Page 2] Internet-Draft (CNP Mobility) November 2000 2. Introduction The CONTRACT NET PROTOCOL (CNP) is a distributed interaction protocol for cooperative problem solving among agents [1][2]. CNP was born in the distributed AI community in the early 1980s. In many respects, the distributed agent nature of mobile IP lends itself naturally to the application of CNP. CNP is modeled after the contracting mechanism used by businesses to govern the exchange of goods and services. In this draft we show that CNP can be applied to mobile IP and/or other micro-mobility proposals to provide a scalable, robust, and improved distributed handover negotiation mechanism. A CONTRACT NET provides a solution to the connection problem: i.e. finding an appropriate agent to work on a given task. Neumiller Expires May 18, 2001 [Page 3] Internet-Draft (CNP Mobility) November 2000 3. CNP Overview In CNP's most basic form there is a pair of agents where one acts as a manager and one acts as a contractor. The dialogue takes place as follows: Manager (x) Contractor (y) ----------------------------------------------------- |---------- (Call for Bids) ------>| | | |<--------- (Bid) -----------------| | | |---------- (Award Contract) ----->| | | |<--------- (Bid Accept|Decline) --| (Optional) | | In the figure above we show only one contractor y. In practical applications there could be dozens of cooperating agents involved in the bidding process. Also, any agent can act as a manager and/or a contractor. The protocol is very simple. There is no negotiation, the contractor responds with an acceptance or refusal of the contract. Neumiller Expires May 18, 2001 [Page 4] Internet-Draft (CNP Mobility) November 2000 4. Applying CNP to Mobility In the micro-mobility model we use in this draft, we define the concept of a CALL ANCHOR. The CALL ANCHOR functionality is moved during a handover from one ACCESS POINT to another. The collection of all call anchors on any one access point are managed by a MICROMOBILITY AGENT residing on the access point, and one call anchor is present for each call managed by the micro-mobility agent. When a Mobile Node or an Access Point desires a handover, the micromobility agent contructs a CONTRACT that identifies the mobile node and the call anchor attributes. These attributes will typically include AP load metrics and link charactersists like compression settings, AAA parameters, and QoS requirements. After the contract has been contructed it will be announced to all handoff candidates compatible with the anchored Mobile Node (it is assumed that these have been previously discovered and screened based on the MN's capabilities). Some of the micro-mobility managers on each of the neighboring APs sends a BID back to the current call anchor. Based on information in the bid, such as received signal strength of the mobile (for example), the contract is awarded to the best AP. The award process moves the call anchor for this MN to the new AP. EXAMPLE: AP0 Propsect Propect Propect Current Anchor Anchor AP1 Anchor AP2 Anchor AP3 --------------------------------------------------------------------- |-- (HORQST Contract) ->| | | (1) | \-------------|-------------->| | | \------------|---------------|------------->| | | | | |<-- (HOBID) -----------| | | (2) |<---------(HO DECLINE) |---------------| | |<----------------------|---(HOBID)-----|--------------| | | | | |---------(CONTRACT AWARD (ANCHOR TOSS) |------------->| (3) | | | | In step (1), the micro mobility agent in AP0, sends a Handover Request Contract (HORQST) message to the the cooperating anchor handoff candidates: AP1, AP2, AP3. We assume the the neighbor list of APs was automagically discovered during initialization and configuration operations (not discussed in this draft). It is assumed that the link characteristics in use by the mobile (AAA, QoS) are part of the contract (possibly described in XML (see digression below)). In step (2), AP1's micro-mobililty agent responds with a bid to Neumiller Expires May 18, 2001 [Page 5] Internet-Draft (CNP Mobility) November 2000 handle the anchor as does AP3. AP2 declines the contract. In step (3), AP0 after comparing the bids (within a short fixed time period), awards the Handover contract to AP3 (the best AP for the job). Clearly this method for handover negotiation is very scalable since it lives completely on the edge of the internet and uses a minimal set of messages. The obvious question is how does it cooperate with mobile IP? This is covered in the subsequent section. DIGRESSION: We suggest using XML as the message format for our CNP based micro-mobility messages. It is used by Internet Open Trading Protocol (IOTP) and handovers may one day tie in directly to various e-commerce systems. It is a convenient way to build versioned and extensible messages like those we will need for link characteristic contract formation. It will require a minimal XML parser to be present in the micro-mobility agent. Neumiller Expires May 18, 2001 [Page 6] Internet-Draft (CNP Mobility) November 2000 5. Running CNP with MIP Many implementations of CNP base micro-mobility running in conjunction with mobile IP are possible. It may be desirable to place micro- mobility agents inside the mobile nodes as well as access points. This would allow mobile nodes to act as call anchors, gateways, and hop points in manet-like configurations. For the rest of this draft we will assume only access point based micro-mobility agents. MIPv4 would require the micro-mobility agent to understand the relationship between the mobile node and the foreign agent. It may be possible for a micro-mobility agent to know a-priori which handoff neighbors require a FA change (possibly via a discovery process conducted with its anchor handoff propects). By "knowing" that a new FA is required for the handover, the micro-mobility agent could orchestrate a fast, smooth, even make before break handover on behalf of the mobile (perhaps by proxying for the MN in some instances). In MIPv6, the micro-mobility agent needs to understand the current care of address assigned to the mobile and the mobile node's home agent address. When a new COA is required the agent can go get it before initiating performing the anchor toss. Many other possibilities exist and I hope to describe some of these in subsequent versions of this draft. Neumiller Expires May 18, 2001 [Page 7] Internet-Draft (CNP Mobility) November 2000 References [1] Nuns, M.N., "Multiagent Systems - A Modern Approach to Distributed Artificial Intelligence", June 1999. [2] Smith, R.G., "The Contract Net Protocol: High Level Communications and Control in as Distributed Problem Solver, IEEE Transactions on Computers, Vol. C-29, No.12, pages 1104-1113", December 1980. [3] "". Author's Address Phillip D. Neumiller 3Com Corporation, Residential Connectivity Group, Mobility Lab Neumiller Expires May 18, 2001 [Page 8] Internet-Draft (CNP Mobility) November 2000 Full Copyright Statement Copyright (C) The Internet Society (2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS 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. Acknowledgement Funding for the RFC editor function is currently provided by the Internet Society. Neumiller Expires May 18, 2001 [Page 9]