idnits 2.17.1 draft-ietf-mipshop-mos-dns-discovery-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 15. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 354. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 365. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 372. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 378. 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 ([1]), 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 Copyright Line does not match the current year == Line 192 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 (May 19, 2008) is 5811 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) -- Obsolete informational reference (is this intentional?): RFC 4641 (Obsoleted by RFC 6781) Summary: 2 errors (**), 0 flaws (~~), 2 warnings (==), 8 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 MIPSHOP WG Gabor Bajko 3 Internet Draft Nokia 4 Intended Status: Proposed Standard May 19, 2008 5 Expires: November 19, 2008 7 Locating Mobility Servers using DNS 8 draft-ietf-mipshop-mos-dns-discovery-01 10 Status of this Memo 12 By submitting this Internet-Draft, each author represents that any 13 applicable patent or other IPR claims of which he or she is aware 14 have been or will be disclosed, and any of which he or she becomes 15 aware will be disclosed, in accordance with Section 6 of BCP 79. 17 Internet-Drafts are working documents of the Internet Engineering 18 Task Force (IETF), its areas, and its working groups. Note that 19 other groups may also distribute working documents as Internet- 20 Drafts. 22 Internet-Drafts are draft documents valid for a maximum of six 23 months and may be updated, replaced, or obsoleted by other documents 24 at any time. It is inappropriate to use Internet-Drafts as reference 25 material or to cite them other than as "work in progress." 27 The list of current Internet-Drafts can be accessed at 28 http://www.ietf.org/ietf/1id-abstracts.txt. 30 The list of Internet-Draft Shadow Directories can be accessed at 31 http://www.ietf.org/shadow.html. 33 This Internet-Draft will expire on November 19, 2008. 35 Copyright Notice 37 Copyright (C) The IETF Trust (2008). 39 Abstract 41 This document defines application service tags that allow service 42 location without relying on rigid domain naming conventions, and DNS 43 procedures for discovering servers which provide Mobility Services. 44 Mobility Services are used to assist an MN in handover preparation 45 (network discovery) and handover decision (network selection). The 46 services addressed by this document are the Media Independent 47 Handover Services defined in [1]. 49 Conventions used in this document 50 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 51 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in 52 this document are to be interpreted as described in RFC-2119 [1]. 54 Terminology and abbreviations used in this document 56 Mobility Services: comprises of a set of different services provided 57 by the network to mobile nodes to facilitate handover preparation 58 and handover decision. 60 Mobility Server: a network node providing Mobility Services. 62 MIH: Media Independent Handover, as defined in [1]. 64 MIH Service: IS, ES or CS type of service, as defined in [1]. 66 Application service: is a generic term for some type of 67 application, independent of the protocol that may be used to offer 68 it. Each application service will be associated with an IANA- 69 registered tag. 71 Application protocol: is used to implement the application service. 72 These are also associated with IANA-registered tags. 74 Table of Content 76 1. Introduction....................................................2 77 2. Discovering a Mobility Server...................................3 78 2.1 Selecting a Mobility Service..............................3 79 2.2 Selecting the transport protocol..........................4 80 2.3 Determining the IP address and port.......................5 81 3. IANA Considerations.............................................6 82 4. Security Considerations.........................................6 83 5. Normative References............................................6 84 6. Informative References..........................................7 85 7. Author's Address................................................7 87 1. Introduction 89 IEEE 802.21 [1] defines three distinct service types to facilitate 90 link layer handovers across heterogeneous technologies: 92 a) Information Services (IS) 93 IS provides a unified framework to the higher layer entities 94 across the heterogeneous network environment to facilitate discovery 95 and selection of multiple types of networks existing within a 96 geographical area, with the objective to help the higher layer 97 mobility protocols to acquire a global view of the heterogeneous 98 networks and perform seamless handover across these networks. 100 b) Event Services (ES) 101 Events may indicate changes in state and transmission behavior 102 of the physical, data link and logical link layers, or predict state 103 changes of these layers. The Event Service may also be used to 104 indicate management actions or command status on the part of the 105 network or some management entity. 107 c) Command Services (CS) 108 The command service enables higher layers to control the 109 physical, data link, and logical link layers. The higher layers may 110 control the reconfiguration or selection of an appropriate link 111 through a set of handover commands. 113 In IEEE terminology these services are called Media Independent 114 Handover (MIH) services. 115 While these services may be co-located, the different pattern and 116 type of information they provide does not necessitate the co- 117 location. 119 An MN may make use of any of these MIH service types separately or 120 any combination of them. 122 It is anticipated that a Mobility Server will not necessarily host 123 all three of these MIH Services together, thus there is a need to 124 discover the MIH Service types separately. 126 This document defines a number of application service tags that 127 allow service location without relying on rigid domain naming 128 conventions. 130 2. Discovering a Mobility Server 132 The procedures defined here assume that the MN knows the domain name 133 of the network where it wants to locate a Mobility Server. The 134 domain name of the network can either be pre-configured, discovered 135 using DHCP or learned from a previous Information Service (IS) query 136 [1] as described in [ID.ietf-mipshop-mstp-solution]. 137 The procedures defined here result in an IP address, port and 138 transport protocol where the MN can contact the Mobility Server 139 which hosts the service the MN is looking for. 141 2.1 Selecting a Mobility Service 143 The MN should know the characteristics of the Mobility Services 144 defined in [1] and based on that it should be able to select the 145 service it wants to use to facilitate its handover. The services it 146 can choose from are: 147 - Information Service (IS) 148 - Event Service (ES) 149 - Command Service (CS) 151 The service identifiers for the services are "IS", "ES" and "CS" 152 respectively. 154 The server supporting any of the above services MUST support UDP and 155 TCP as transport, as described in [ID.ietf-mipshop-mstp-solution]. 157 2.2 Selecting the transport protocol 159 After the desired service has been chosen, the client selects the 160 transport protocol it prefers to use. Note, that transport selection 161 may impact the handover performance. 163 The services relevant for the task of transport protocol selection 164 are those with NAPTR service fields with values "IS+M2X" for IS 165 service, "ES+M2X" for the ES service, "CS+M2X" for the CS service, 166 where X is a letter that corresponds to a transport protocol 167 supported by the domain. This specification defines M2U for UDP, M2T 168 for TCP and M2S for SCTP. We also establish an IANA registry for 169 NAPTR service name to transport protocol mappings. 171 These NAPTR [3] records provide a mapping from a domain to the SRV 172 [2] record for contacting a server with the specific transport 173 protocol in the NAPTR services field. The resource record will 174 contain an empty regular expression and a replacement value, which 175 is the SRV record for that particular transport protocol. If the 176 server supports multiple transport protocols, there will be multiple 177 NAPTR records, each with a different service value. As per RFC 3403 178 [3], the client discards any records whose services fields are not 179 applicable. 181 The MN MUST discard any service fields that identify a resolution 182 service whose value is not "M2X", for values of X that indicate 183 transport protocols supported by the client. The NAPTR processing 184 as described in RFC 3403 will result in the discovery of the most 185 preferred transport protocol of the server that is supported by the 186 client, as well as an SRV record for the server. 188 As an example, consider a client that wishes to find IS service in 189 the example.com domain. The client performs a NAPTR query for that 190 domain, and the following NAPTR records are returned: 192 order pref flags service regexp replacement 193 IN NAPTR 50 50 "s" "IS+M2T" "" _IS._tcp.example.com 194 IN NAPTR 90 50 "s" "IS+M2U" "" _IS._ucp.example.com 196 This indicates that the domain does have a server providing IS 197 services over TCP and UDP, in that order of preference. Since the 198 client supports TCP and UDP, TCP will be used, targeted to a host 199 determined by an SRV lookup of _IS._tcp.example.com. That lookup 200 would return: 202 ;; Priority Weight Port Target 203 IN SRV 0 1 XXXX server1.example.com 204 IN SRV 0 2 XXXX server2.example.com 206 If the client implementation is configured to only use one specific 207 transport protocol for a service, e.g. UDP for ES, then NAPTR query 208 is not necessary, but only an SRV lookup of _ES._udp.example.com. 210 It is not necessary for the domain suffixes in the NAPTR replacement 211 field to match the domain of the original query (i.e., example.com 212 above). However, a domain MUST maintain SRV records for the domain 213 of the original query, even if the NAPTR record is in a different 214 domain, as the access network the MN is attached to might implement 215 policies which restrict access to certain domains. As an example, 216 even though the SRV record for TCP is _IS._tcp.school.edu, there 217 MUST also be an SRV record at _IS._tcp.example.com. 219 If no NAPTR records are found, the client constructs SRV queries for 220 those transport protocols it supports, and does a query for each. 221 Queries are done using the service identifier "_IS" for the 222 Information Service, "_ES" for the Event Service and "_CS" for 223 Command Service. A particular transport is supported if the query is 224 successful. The client MAY use any transport protocol it desires 225 which is supported by the server. 227 Note, that the regexp field in the NAPTR example above is empty. 228 This document discourages the use of this field as its usage can be 229 complex and error prone; and the discovery of the MIH services do 230 not require the flexibility provided by this field over a static 231 target present in the TARGET field. 233 If no SRV records are found, the client SHOULD use TCP to contact a 234 server which hosts an IS service and UDP to contact a server which 235 hosts an ES and/or CS service. 237 If the MN knows the IP address of the server, it may contact the 238 server using the default port number for that service. Default port 239 numbers for IS, ES and CS services are requested from IANA in 240 [ID.ietf-mipshop-mstp-solution]. 242 2.3 Determining the IP address and port 244 Once the server providing the desired service and the transport 245 protocol has been determined, the next step is to determine the IP 246 address and port. 248 If TARGET is a numeric IP address, the MN uses that IP address and 249 the already chosen transport to contact the server providing the 250 desired service. 252 If the TARGET was not a numeric IP address, then the MN performs an 253 A or AAAA record lookup of the domain name. The result will be a 254 list of IP addresses, each of which can be contacted using the 255 transport protocol determined previously. 257 If the result of the SRV query contains a port number, then the MN 258 SHOULD contact the server at that port number. If the SRV record did 259 not contain a port number then the MN SHOULD contact the server at 260 the default port number of that particular service. Default port 261 numbers for IS, ES and CS services are requested from IANA in 262 [ID.ietf-mipshop-mstp-solution]. 264 3. IANA considerations 266 The usage of NAPTR records described here requires well known values 267 for the service fields for each transport supported by Mobility 268 Services. The table of mappings from service field values to 269 transport protocols is to be maintained by IANA. 271 The registration in the RFC MUST include the following information: 273 Service Field: The service field being registered. 275 Protocol: The specific transport protocol associated with that 276 service field. This MUST include the name and acronym for the 277 protocol, along with reference to a document that describes the 278 transport protocol. 280 Name and Contact Information: The name, address, email address 281 and telephone number for the person performing the 282 registration. 284 The following values have been placed into the registry: 286 Service Fields Protocol 287 IS+M2T TCP 288 IS+M2U UDP 289 IS+M2S SCTP 290 ES+M2T TCP 291 ES+M2U UDP 292 ES+M2S SCTP 293 CS+M2T TCP 294 CS+M2U UDP 295 CS+M2S SCTP 297 New entries to the registry MAY be added by IANA on a "First Come 298 First Served" basis. 300 4. Security considerations 302 Fake DNS requests and responses may cause DoS. Where networks are 303 exposed to such DoS, it is recommended that DNS service providers 304 use the Domain Name System Security Extensions (DNSSEC) as described 305 in [RFC4033]. 307 Readers may also refer to [RFC4641] to consider the aspects of 308 DNSSEC Operational Practices. 310 5. Normative References 312 [2] Gulbrandsen, A., Vixie, P. and L. Esibov, "A DNS RR for 313 Specifying the Location of Services (DNS SRV)", RFC 2782, 314 February 2000. 316 [3] Mealling, M., "DDDS, The Domain Name System (DNS) Database", RFC 317 3403, October 2002. 319 [RFC4033] DNS Security Introduction and Requirements, Arends et al, 320 March 2005 322 6. Informative References 324 [1] IEEE 802.21 Standard for Local and Metropolitan Area Networks: 325 Media Independent Handover Services 327 [ID.ietf-mipshop-mstp-solution] Mobility Services Transport 328 Protocol Design, Melia et al, April 2008, work in progress 330 [RFC4641] DNSSEC Operational Practices, Kolkman et al, September 331 2006 333 7. Author's Address 335 Gabor Bajko 336 Nokia 337 gabor.bajko@nokia.com 339 Full Copyright Statement 341 Copyright (C) The IETF Trust (2008). 343 This document is subject to the rights, licenses and restrictions 344 contained in BCP 78, and except as set forth therein, the authors 345 retain all their rights. 347 This document and the information contained herein are provided on 348 an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE 349 REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE 350 IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL 351 WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY 352 WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE 353 ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS 354 FOR A PARTICULAR PURPOSE. 356 Intellectual Property 358 The IETF takes no position regarding the validity or scope of any 359 Intellectual Property Rights or other rights that might be claimed 360 to pertain to the implementation or use of the technology described 361 in this document or the extent to which any license under such 362 rights might or might not be available; nor does it represent that 363 it has made any independent effort to identify any such rights. 364 Information on the procedures with respect to rights in RFC 365 documents can be found in BCP 78 and BCP 79. 367 Copies of IPR disclosures made to the IETF Secretariat and any 368 assurances of licenses to be made available, or the result of an 369 attempt made to obtain a general license or permission for the use 370 of such proprietary rights by implementers or users of this 371 specification can be obtained from the IETF on-line IPR repository 372 at http://www.ietf.org/ipr. 374 The IETF invites any interested party to bring to its attention any 375 copyrights, patents or patent applications, or other proprietary 376 rights that may cover technology that may be required to implement 377 this standard. Please address the information to the IETF at ietf- 378 ipr@ietf.org. 380 Acknowledgment 382 Funding for the RFC Editor function is provided by the IETF 383 Administrative Support Activity (IASA).