idnits 2.17.1 draft-ietf-mipshop-mos-dns-discovery-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** The document seems to lack a License Notice according IETF Trust Provisions of 28 Dec 2009, Section 6.b.i or Provisions of 12 Sep 2009 Section 6.b -- however, there's a paragraph with a matching beginning. Boilerplate error? (You're using the IETF Trust Provisions' Section 6.b License Notice from 12 Feb 2009 rather than one of the newer Notices. See https://trustee.ietf.org/license-info/.) Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The abstract seems to contain references ([IEEE802.21]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 252 has weird spacing: '...f flags servi...' -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (June 4, 2009) is 5438 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'ID.ietf-mipshop-mos-dhcp-options' is defined on line 402, but no explicit reference was found in the text ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) -- Obsolete informational reference (is this intentional?): RFC 4641 (Obsoleted by RFC 6781) Summary: 3 errors (**), 0 flaws (~~), 3 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 MIPSHOP WG G. Bajko 3 Internet Draft Nokia 4 Intended Status: Proposed Standard June 4, 2009 5 Expires: December 3, 2009 7 Locating IEEE 802.21 Mobility Servers using DNS 8 draft-ietf-mipshop-mos-dns-discovery-06 10 Status of this Memo 12 This Internet-Draft is submitted to IETF in full conformance with 13 the provisions of BCP 78 and BCP 79. 15 Internet-Drafts are working documents of the Internet Engineering 16 Task Force (IETF), its areas, and its working groups. Note that 17 other groups may also distribute working documents as Internet- 18 Drafts. 20 Internet-Drafts are draft documents valid for a maximum of six 21 months and may be updated, replaced, or obsoleted by other documents 22 at any time. It is inappropriate to use Internet-Drafts as 23 reference material or to cite them other than as "work in progress." 25 The list of current Internet-Drafts can be accessed at 26 http://www.ietf.org/ietf/1id-abstracts.txt. 28 The list of Internet-Draft Shadow Directories can be accessed at 29 http://www.ietf.org/shadow.html. 31 This Internet-Draft will expire on December 3, 2009. 33 Copyright and License Notice 35 Copyright (c) 2009 IETF Trust and the persons identified as the 36 document authors. All rights reserved. 38 This document is subject to BCP 78 and the IETF Trust's Legal 39 Provisions Relating to IETF Documents in effect on the date of 40 publication of this document (http://trustee.ietf.org/license-info). 41 Please review these documents carefully, as they describe your 42 rights and restrictions with respect to this document. 44 Abstract 46 This document defines application service tags that allow service 47 location without relying on rigid domain naming conventions, and DNS 48 procedures for discovering servers which provide IEEE 802.21 49 [IEEE802.21] defined Mobility Services. Such Mobility Services are 50 used to assist a Mobile Node (MN) supporting IEEE 802.21 51 [IEEE802.21], in handover preparation (network discovery) and 52 handover decision (network selection). The services addressed by 53 this document are the Media Independent Handover Services defined in 54 [IEEE802.21]. 56 Conventions used in this document 58 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 59 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in 60 this document are to be interpreted as described in RFC-2119. 62 Terminology and abbreviations used in this document 64 Mobility Services: comprises of a set of different services provided 65 by the network to mobile nodes to facilitate handover preparation 66 and handover decision, as described in [IEEE802.21]. 68 Mobility Server: a network node providing IEEE 802.21 Mobility 69 Services. 71 MIH: Media Independent Handover, as defined in [IEEE802.21]. 73 MIH Service: IS, ES or CS type of service, as defined in 74 [IEEE802.21]. 76 Application service: is a generic term for some type of 77 application, independent of the protocol that may be used to offer 78 it. Each application service will be associated with an IANA- 79 registered tag. 81 Application protocol: is used to implement the application service. 82 These are also associated with IANA-registered tags. 84 Table of Content 86 1. Introduction....................................................2 87 2. Discovering a Mobility Server...................................3 88 2.1 Selecting a Mobility Service..............................4 89 2.2 Selecting the transport protocol..........................4 90 2.3 Determining the IP address and port.......................6 91 3. IANA Considerations.............................................6 92 4. Security Considerations.........................................7 93 5. Normative References............................................8 94 6. Informative References..........................................8 95 7. Author's Address................................................9 97 1. Introduction 99 IEEE 802.21 [IEEE802.21] defines three distinct service types to 100 facilitate link layer handovers across heterogeneous technologies: 102 a) Information Services (IS) 103 IS provides a unified framework to the higher layer entities 104 across the heterogeneous network environment to facilitate 105 discovery and selection of multiple types of networks existing 106 within a geographical area, with the objective to help the 107 higher layer mobility protocols to acquire a global view of the 108 heterogeneous networks and perform seamless handover across 109 these networks. 111 b) Event Services (ES) 112 Events may indicate changes in state and transmission behavior 113 of the physical, data link and logical link layers, or predict 114 state changes of these layers. The Event Service may also be 115 used to indicate management actions or command status on the 116 part of the network or some management entity. 118 c) Command Services (CS) 119 The command service enables higher layers to control the 120 physical, data link, and logical link layers. The higher layers 121 may control the reconfiguration or selection of an appropriate 122 link through a set of handover commands. 124 In IEEE terminology these services are called Media Independent 125 Handover (MIH) services. 126 While these services may be co-located, the different pattern and 127 type of information they provide does not necessitate the co- 128 location. 130 "Service Management" service messages, i.e., MIH registration, MIH 131 capability discovery and MIH event subscription messages, are 132 considered as ES and CS when transporting MIH messages over L3 133 transport. 135 An MN may make use of any of these MIH service types separately or 136 any combination of them. 138 It is anticipated that a Mobility Server will not necessarily host 139 all three of these MIH Services together, thus there is a need to 140 discover the MIH Service types separately. 142 This document defines a number of application service tags that 143 allow service location without relying on rigid domain naming 144 conventions. 146 2. Discovering a Mobility Server 148 The Dynamic Delegation Discovery System (DDDS) [RFC3401] is used to 149 implement lazy binding of strings to data, in order to support 150 dynamically configured delegation systems. The DDDS functions by 151 mapping some unique string to data stored within a DDDS Database by 152 iteratively applying string transformation rules until a terminal 153 condition is reached. When DDDS uses DNS as a distributed database 154 of Rules, these Rules are encoded using the Naming Authority Pointer 155 (NAPTR) Resource Record (RR). One of these Rules is the First Well 156 Known Rule, which says where the process starts. 158 In current specifications, the First Well Known Rule in a DDDS 159 application [RFC3403] is assumed to be fixed, ie the domain in the 160 tree where the lookups are to be routed to, is known. This document 161 proposes the input to the First Well Known Rule to be dynamic, based 162 on the search path the resolver discovers or is configured with. 164 The search path of the resolver can either be pre-configured, 165 discovered using DHCP or learned from a previous MIH Information 166 Service (IS) query [IEEE802.21] as described in 167 [ID.ietf-mipshop-mstp-solution]. 169 When the MN needs to discover Mobility Services in its home domain, 170 the input to the First Well Known Rule MUST be the MN's home domain, 171 which is assumed to be pre-configured in the MN. 173 When the MN needs to discover Mobility Services in a local (visited) 174 domain, it SHOULD use DHCP as described in [ID.ietf-mipshop-mos- 175 dhcp-options] to discover the IP address of the server hosting the 176 desired service, and use it in SRV queries. In some instances, the 177 discovery may result in a per protocol/application list of domain 178 names which are then to be used as starting points for the 179 subsequent NAPTR lookups. If neither IP address or domain name can 180 be discovered with the above procedure, the MN MAY request for a 181 domain search list, as described in [RFC3397] and [RFC3646], and use 182 it as input to the DDDS application. 184 The MN may also have a list of cached domain names of Service 185 Providers, learned from a previous MIH Information Service (IS) 186 query [IEEE802.21]. If the cache entries have not expired, they can 187 be used as input to the DDDS application. 189 When the MN does not find valid domain names using the procedures 190 above, it MUST stop any attempt to discover MIH Services. 192 The dynamic rule described above SHOULD NOT be used for discovering 193 services other than MIH Services described in this document, unless 194 stated otherwise by a future specification. 196 The procedures defined here result in an IP address, port and 197 transport protocol where the MN can contact the Mobility Server 198 which hosts the service the MN is looking for. 200 2.1 Selecting a Mobility Service 202 The MN should know the characteristics of the Mobility Services 203 defined in [IEEE802.21] and based on that it should be able to 204 select the service it wants to use to facilitate its handover. The 205 services it can choose from are: 206 - Information Service (MIHIS) 207 - Event Service (MIHES) 208 - Command Service (MIHCS) 210 The service identifiers for the services are "MIHIS", "MIHES", and 211 "MIHCS" respectively. 212 The server supporting any of the above services MUST support at 213 least UDP and TCP as transport, as described in [ID.ietf-mipshop- 214 mstp-solution]. SCTP and other transport protocols MAY also be 215 supported. 217 2.2 Selecting the transport protocol 219 After the desired service has been chosen, the client selects the 220 transport protocol it prefers to use. Note, that transport selection 221 may impact the handover performance. 223 The services relevant for the task of transport protocol selection 224 are those with NAPTR service fields with values "ID+M2X", where ID 225 is the service identifier defined in the previous section and X is a 226 letter that corresponds to a transport protocol supported by the 227 domain. This specification defines M2U for UDP, M2T for TCP and M2S 228 for SCTP. This document also establishes an IANA registry for 229 NAPTR service name to transport protocol mappings. 231 These NAPTR [RFC3403] records provide a mapping from a domain to the 232 SRV [RFC2782] record for contacting a server with the specific 233 transport protocol in the NAPTR services field. The resource record 234 will contain an empty regular expression and a replacement value, 235 which indicates the domain name where the SRV record for that 236 particular transport protocol can be found. If the server supports 237 multiple transport protocols, there will be multiple NAPTR records, 238 each with a different service value. As per [RFC3403], the client 239 discards any records whose services fields are not applicable. 241 The MN MUST discard any service fields that identify a resolution 242 service whose value is not "M2X", for values of X that indicate 243 transport protocols supported by the client. The NAPTR processing 244 as described in RFC 3403 will result in the discovery of the most 245 preferred transport protocol of the server that is supported by the 246 client, as well as an SRV record for the server. 248 As an example, consider a client that wishes to find MIHIS service 249 in the example.com domain. The client performs a NAPTR query for 250 that domain, and the following NAPTR records are returned: 252 order pref flags service regexp replacement 253 IN NAPTR 50 50 "s" "MIHIS+M2T" "" _MIHIS._tcp.example.com 254 IN NAPTR 90 50 "s" "MIHIS+M2U" "" _MIHIS._udp.example.com 256 This indicates that the domain does have a server providing MIHIS 257 services over TCP and UDP, in that order of preference. Since the 258 client supports TCP and UDP, TCP will be used, targeted to a host 259 determined by an SRV lookup of _MIHIS._tcp.example.com. That lookup 260 would return: 262 ;; Priority Weight Port Target 263 IN SRV 0 1 XXXX server1.example.com 264 IN SRV 0 2 XXXX server2.example.com 266 If no NAPTR records are found, the client constructs SRV queries for 267 those transport protocols it supports, and does a query for each. 268 Queries are done using the service identifier "_MIHIS" for the MIH 269 Information Service, "_MIHES" for the MIH Event Service and "_MIHCS" 270 for the MIH Command Service. A particular transport is supported if 271 the query is successful. The client MAY use any transport protocol 272 it desires which is supported by the server. 274 Note, that the regexp field in the NAPTR example above is empty. 275 This document discourages the use of this field as its usage can be 276 complex and error prone; and the discovery of the MIH services do 277 not require the flexibility provided by this field over a static 278 target present in the TARGET field. 280 If the client is already configured with the information about which 281 transport protocol is used for a mobility service in a particular 282 domain, it can directly perform an SRV query for that specific 283 transport using the service identifier of the Mobility Service. For 284 example, if the client knows that it should be using TCP for MIH IS 285 service, it can perform a SRV query directly for 286 _MIHIS._tcp.example.com. 288 2.3 Determining the IP address and port 290 Once the server providing the desired service and the transport 291 protocol has been determined, the next step is to determine the IP 292 address and port. 294 If TARGET is a numeric IP address, the MN uses that IP address and 295 the already chosen transport to contact the server providing the 296 desired service. 298 If the TARGET was not a numeric IP address, then the MN performs an 299 A and/or AAAA record lookup of the domain name, as appropriate. The 300 result will be a list of IP addresses, each of which can be 301 contacted using the transport protocol determined previously. 303 If the result of the SRV query contains a port number, then the MN 304 SHOULD contact the server at that port number. If the SRV record did 305 not contain a port number then the MN SHOULD contact the server at 306 the default port number of that particular service. A default port 307 number for MIH services is requested from IANA in [ID.ietf-mipshop- 308 mstp-solution]. 310 3. IANA considerations 311 The usage of NAPTR records described here requires well known values 312 for the service fields for each transport supported by Mobility 313 Services. The table of mappings from service field values to 314 transport protocols is to be maintained by IANA. 316 The registration in the RFC MUST include the following information: 318 Service Field: The service field being registered. 320 Protocol: The specific transport protocol associated with that 321 service field. This MUST include the name and acronym for the 322 protocol, along with reference to a document that describes the 323 transport protocol. 325 Name and Contact Information: The name, address, email address 326 and telephone number for the person performing the 327 registration. 329 The following values have been placed into the registry: 331 Service Fields Protocol 332 MIHIS+M2T TCP 333 MIHIS+M2U UDP 334 MIHIS+M2S SCTP 335 MIHES+M2T TCP 336 MIHES+M2U UDP 337 MIHES+M2S SCTP 338 MIHCS+M2T TCP 339 MIHCS+M2U UDP 340 MIHCS+M2S SCTP 342 New Service Fields are to be added via Standards Action as defined 343 in [RFC5226]. 344 New entries to the table that specify additional transport protocols 345 for the existing Service Fields may be registered by IANA on a First 346 Come First Served' basis [RFC5226]. 348 4. Security considerations 350 A list of known threats to services using DNS is documented in 351 [RFC3833]. For most of those identified threats, the DNS Security 352 Extensions [RFC4033] does provide protection. It is therefore 353 recommended to consider the usage of DNSSEC [RFC4033] and the 354 aspects of DNSSEC Operational Practices [RFC4641] when deploying 355 IEEE 802.21 Mobility Services. 357 In deployments where DNSSEC usage is not feasible, measures should 358 be taken to protect against forged DNS responses and cache poisoning 359 as much as possible. Efforts in this direction are documented in 360 [ID.ietf-dnsext-forgery-resilience]. 362 5. Normative References 364 [RFC2782] Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for 365 specifying the location of services (DNS SRV)", RFC 2782, 366 February 2000. 368 [RFC3403] Mealling, M., "Dynamic Delegation Discovery System (DDDS) 369 Part Three: The Domain Name System (DNS) Database", RFC 3403, 370 October 2002. 372 [RFC4033] Arends, R., Austein, R., Larson, M., Massey, D., and S. 373 Rose, "DNS Security Introduction and Requirements", RFC 4033, 374 March 2005. 376 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 377 IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 378 2008. 379 [RFC3397] B. Aboba and S. Cheshire, "DHCP Domain Search Option", RFC 380 3397, November 2002. 382 [RFC3646] R. Droms, "DNS Configuration options for DHCPv6", RFC 383 3646, December 2003. 385 6. Informative References 387 [IEEE802.21] IEEE 802.21 Standard for Local and Metropolitan Area 388 Networks: Media Independent Handover Services 390 [RFC4641] Kolkman, O. and R. Gieben, "DNSSEC Operational Practices", 391 RFC 4641, September 2006. 393 [RFC3401] M. Mealling, "Dynamic Delegation Discovery System (DDDS) 394 Part One: The Comprehensive DDDS", RFC 3401, October 2002. 396 [RFC3833] Atkins, D. and R. Austein, "Threat Analysis of the Domain 397 Name System (DNS)", RFC 3833, August 2004. 399 [ID.ietf-mipshop-mstp-solution] Mobility Services Transport Protocol 400 Design, Melia et al, April 2008, work in progress 402 [ID.ietf-mipshop-mos-dhcp-options] DHCP Options for IEEE 802.21 403 Mobility Services (MoS) Discovery, Bajko et al, May 2009, work 404 in progress 406 [ID.ietf-dnsext-forgery-resilience] Measures for making DNS more 407 resilient against forged answers, Hubert et al, August 2008, 408 work in progress 410 7. Author's Addresses 411 Gabor Bajko 412 gabor(dot)bajko(at)nokia(dot)com