INTERNET-DRAFT S. Doi Osaka University S. Ata Osaka City University H. Kitamura NEC Corporation M. Murata Osaka University Expires in six months 24 February 2003 IPv6 Anycast Functionality/Terminology Definition 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. Abstract Today, the use of IPv6 anycast is limited. This is because the usage of IPv6 anycast is still unclear. This document describes the usage of IPv6 anycast with some examples. Moreover, we describe the functionalities of anycast, and try to define the terminology of anycast for future discussion. S. Doi [Page 1] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 1. Introduction Anycast is defined as one of new IPv6 features, which supports service-oriented address assignments in IPv6 networks. Anycast address is not determined by the location of node, but by the type of service presented at the node. In anycast communication, the client can automatically obtain the appropriate node corresponding to a specific service without knowledge of the location of the server. However, anycast is hardly used (except for MIPv6 HA address) now. This is because there are several technical problems, which were described in [ANALYSIS]. Another reason is that the usage of anycast is still unclear. In this document, we clarify the usage of anycast with some examples. Then, we analyze the functionalities of anycast and the applications suitable for anycast. Moreover, we define some terminology for anycast, which will be useful to future discussions. 2. Characteristics/Observations of Anycast The motivation for anycast, described in [ANYCASTING], is that it simplifies the task of finding an appropriate server. However, if a function has already been achieved by other services (e.g., DNS), anycast is not always the best solution to realize the function. Our question of this document is "What is the merit of using anycast?" In the following sections, we present several scenarios where anycast is better to use. 2.1 Primitive Communication Environment When a host connects to the IPv6 network, the Address Auto- configuration Mechanism [ADDR-AUTO] gives the host an IPv6 address. However, if the host doesn't know the address of the DNS server, the host cannot use most of applications. If users use a specific anycast address for DNS servers, the users would no longer configure the IP address of DNS server on their systems. The discovery of the DNS server can be simply realized by pre-defining the well-known anycast address to DNS servers. On the contrary, once the user finds the DNS server, the user enjoys the functions of anycast by using DNS alternatively. Like this, anycast is well suited to the primitive communication environment (e.g., in the case where the address of DNS server is not known in advance). It is not preferable to perform more complex tasks by using anycast. S. Doi [Page 2] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 (TBD) 2.2 Service Discovery (TBD) 2.3 Other (TBD) 3. Functionalities/Terminology Definition We first define some basic terms, which are concerned with anycast. These definitions will assist to describe the following terminology definitions. o Anycast Packet Anycast packet means the packet whose destination address is set to an anycast address. o Anycast Communication Anycast communication is the communication using anycast packets. o Anycast Routing Anycast routing means the routing method to transfer anycast packets. The first subsection describes some basic functionalities of anycast to define the terminology of architectural components; the second describes the address assignment issues of anycast to define the terminology concerned with address assignment; the last subsection introduces other terminology related to anycast. 3.1 Architectural Components As described in [ADDR-ARCH], a packet sent to an anycast address is delivered to one of the interfaces identified by that address (the "nearest" one, according to some appropriately defined metric of anycast routing). Figure 1 shows a simple anycast communication. In Fig. 1, there are three nodes which have the same anycast address "AA". When node "AI" S. Doi [Page 3] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 sends a packet to anycast address "AA", the packet is transferred to the node "AR2", which is chosen by the anycast routing. +-- Anycast Membership --+ | +-----+ | | | AR1 | (Anycast: AA) | | +-----+ (Unicast: UA1) | | | +----+ Anycast Routing | +-----+ | | AI |------------------------>| AR2 | (Anycast: AA) | +----+ to appropriate node | +-----+ (Unicast: UA2) | | | | +-----+ | | | AR3 | (Anycast: AA) | | +-----+ (Unicast: UA3) | +------------------------+ Fig. 1 anycast communication (simple model) o Anycast Initiator Anycast initiator means the node that initiates anycast communication. In Fig. 1, AI shows Anycast Initiator. o Anycast Receiver Anycast receiver means the node which is configured with an anycast address. In Fig. 1, AR1, AR2, and AR3 correspond to Anycast Receiver. o Anycast Router Anycast router means the router that can deal with anycast routing. When an anycast initiator sends an anycast packet, only one anycast receiver receives the anycast packet at any time. We define this receiver selected among candidates as Selected Anycast Receiver. "Candidates" means the nodes which have a same anycast address. Moreover, we define these candidates having the same anycast address as Anycast Membership. o Selected (Correspondent) Anycast Receiver S. Doi [Page 4] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 Selected anycast receiver means the node which actually communicates with the anycast initiator. In Fig. 1, AR2 corresponds to Selected Anycast Receiver. o Anycast Membership Anycast membership means the set of anycast receivers which share the same anycast address. o Anycast Communication Path Anycast communication path means the path that an anycast packet goes through in anycast communication. o Correspondent (Resolved) Unicast Address Correspondent unicast address means the unicast address of a specific anycast receiver. In Fig. 1, UA2 corresponds to Correspondent Unicast Address. 3.2 Addressing Anycast addresses are within the unicast address spaces [ADDR-ARCH], but, unlike unicast, assignment of anycast addresses is not determined by the node location. Henceforth, we need to consider what kind of addresses should be assigned to the anycast address. First, we define the following two types of anycast address. The assignment of anycast address dependent on whether all anycast receivers are on the same segment or on different segments. It is also true for the anycast address assignment policy. If all anycast receivers are connected to the same segment, the anycast address can be assigned with its segment's prefix. On the other hand, if anycast receivers are on different segments, the anycast address should have a new prefix assigned from an unused address space. o Subnet Anycast Subnet Anycast means an anycast address whose address prefix is determined based on the node's unicast address prefix. Its interface-ID is determined arbitrarily. All anycast receivers that share the same anycast address are connected to the same segment. S. Doi [Page 5] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 In unicast routing, routers forward packets by prefix routing. Therefore, packets having a unicast address as a destination address can reach the last hop router by prefix routing. When the last hop router receives the anycast packets, selected anycast receiver is determined by the Neighbor Cache [ND] of the last hop router. +----+ | AI | +-+--+ | +--+-----------------------+ | | | Internet | | | +---------------------+----+ | +--+-+ | R | Anycast Router +--+-+ | ---+----+---+---------+---- | | | +--+--+ +--+--+ +--+--+ | AR1 | | AR2 | | AR3 | +-----+ +-----+ +-----+ same anycast address: AA Anycast Address AA: | n bits | 128-n bits | +------------------------------------------------+----------------+ | subnet prefix (= segments' prefix) | arbitrarily | +------------------------------------------------+----------------+ Fig. 2 Subnet Anycast o Global Anycast Global anycast means an anycast address whose address prefix and interface-ID are determined arbitrarily. Generally, nodes having that address are located on different segments. S. Doi [Page 6] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 +----+ | AI | +-+--+ | +--+-----------------------+ | | | Internet | | | +----+-----------------+---+ | | +-+--+ Anycast +--+-+ | R1 | Router | R2 | +-+--+ +--+-+ | | --+---+-- ----+---+---- | | +--+--+ +--+--+ | AR1 | Anycast | AR2 | +-----+ Receiver +-----+ same anycast address: AA Anycast Address AA: | 128 bits | +-----------------------------------------------------------------+ | Anycast Address | +-----------------------------------------------------------------+ Fig. 3 Global Anycast Moreover, by introducing a "Unicast Seed", the anycast routing based anycast address can be divided into the following two types of addresses. "Unicast Seed" is a representative node of the anycast receivers. o Anycast Address with Unicast Seed Anycast address with unicast seed means an anycast address whose address prefix is determined from one (called "Seed") of its anycast membership. All other nodes belonging to the same anycast membership have an address prefix of the seed node. Packets sent to this type of anycast address is reachable at least to the Seed Node without anycast routing. S. Doi [Page 7] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 +----+ | AI | +-+--+ | +--+-----------------------+ | | | Internet | | | +----+-----------------+---+ | | +-+--+ Anycast +--+-+ | R1 | Router | R2 | +-+--+ +--+-+ | | --+---+-- ----+---+---- | | +--+--+ +--+--+ | AR1 | Anycast | AR2 |<---Seed Node +-----+ Receiver +-----+ Unicast address: UA2 same anycast address: AA Anycast Address AA: | n bits | 128-n bits | +------------------------------------------------+----------------+ | subnet prefix (= prefix of UA2) | arbitrarily | +------------------------------------------------+----------------+ Fig. 4 Anycast Address with Unicast Seed o Anycast Address without Unicast Seed Anycast address without unicast seed means an anycast address whose address prefix's segment doesn't exist in the actual network. Without anycast routing, the packet towards its address might not reach anywhere. 3.3 Other Issue In addition to the above-mentioned terminology, the following issues should be considered. o Anycast Selection Criteria Anycast selection criteria means the criteria of selecting a S. Doi [Page 8] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 selected anycast receiver from an anycast membership. o Anycast Address Resolving Anycast address resolving treats resolution from the anycast address to the correspondent unicast address. We consider anycast as a service discovery mechanism [AARP]. Once an anycast receiver is discovered, the anycast initiator uses the server's unicast address for continuous communication. 4. Security Considerations This draft does not include any security issues of anycast. Other security descriptions about anycast are shown in [ANALYSIS]. S. Doi [Page 9] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 References [ANYCASTING] Partridge, C., and Mendez, T., and Milliken, T., "Host Anycasting Service," RFC1546, November 1993 [ADDR-ARCH] Hinden, R., and Deering, S., "IP Version 6 Addressing Architecture," RFC2373, July 1998. [ANALYSIS] Hagino, J., and Ettikan, T., "An Analysis of IPv6 Anycast," , February 2001 "work in progress." [ADDR-AUTO] Thomson, S., Narten, T., "IPv6 Stateless Address Autoconfiguration," RFC2462, December 1998. [ND] Narten, T., Nordmark, E., and Simpson, W., "Neighbor Discovery for IP Version 6 (IPv6)," RFC 2461, December 1998. [AARP] ATA, S., Kitamura, H., and Murata, M., "A Protocol for Anycast Address Resolving," , June 2002. Author's Address: Satoshi Doi Graduate School of Information Science and Technology, Osaka University 1-3 Machikaneyama, Toyonaka, Osaka 560-8531, Japan Phone: +81 (6) 6850-6588 Fax: +81 (6) 6850-6589 Email: s-doi@ist.osaka-u.ac.jp Shingo Ata Graduate School of Engineering, Osaka City University 3-3-138, Sugimoto, Sumiyoshi-Ku, Osaka 558-8585, JAPAN Phone: +81 6 6605 2191 Fax: +81 6 6605 2191 Email: ata@info.eng.osaka-cu.ac.jp Hiroshi Kitamura Development Labratories, NEC Corporation (Igarashi Building 4F) 11-5, Shibaura 2-Chome, Minato-Ku, Tokyo 108-8557, JAPAN Phone: +81 3 5476 1071 Fax: +81 3 5476 1005 Email: kitamura@da.jp.nec.com S. Doi [Page 10] INTERNET-DRAFT Anycast Functionality/Terminology February 2003 Masayuki Murata Cybermedia Center, Osaka University 1-30 Machikaneyama, Toyonaka, Osaka 560-0043, JAPAN Phone: +81 6 6850 6860 Fax: +81 6 6850 6860 Email: murata@cmc.osaka-u.ac.jp S. Doi [Page 11]