summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc4698.txt
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
commit4bfd864f10b68b71482b35c818559068ef8d5797 (patch)
treee3989f47a7994642eb325063d46e8f08ffa681dc /doc/rfc/rfc4698.txt
parentea76e11061bda059ae9f9ad130a9895cc85607db (diff)
doc: Add RFC documents
Diffstat (limited to 'doc/rfc/rfc4698.txt')
-rw-r--r--doc/rfc/rfc4698.txt2691
1 files changed, 2691 insertions, 0 deletions
diff --git a/doc/rfc/rfc4698.txt b/doc/rfc/rfc4698.txt
new file mode 100644
index 0000000..78579d7
--- /dev/null
+++ b/doc/rfc/rfc4698.txt
@@ -0,0 +1,2691 @@
+
+
+
+
+
+
+Network Working Group E. Gunduz
+Request for Comments: 4698 RIPE NCC
+Category: Standards Track A. Newton
+ VeriSign, Inc.
+ S. Kerr
+ RIPE NCC
+ October 2006
+
+
+ IRIS: An Address Registry (areg) Type
+ for the Internet Registry Information Service
+
+Status of This Memo
+
+ This document specifies an Internet standards track protocol for the
+ Internet community, and requests discussion and suggestions for
+ improvements. Please refer to the current edition of the "Internet
+ Official Protocol Standards" (STD 1) for the standardization state
+ and status of this protocol. Distribution of this memo is unlimited.
+
+Copyright Notice
+
+ Copyright (C) The Internet Society (2006).
+
+Abstract
+
+ This document describes an IRIS registry schema for IP address and
+ Autonomous System Number information. The schema extends the
+ necessary query and result operations of IRIS to provide the
+ functional information service needs for syntaxes and results used by
+ Internet Protocol address registries.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 1]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+Table of Contents
+
+ 1. Introduction ....................................................3
+ 2. Document Terminology ............................................3
+ 3. Schema Description ..............................................3
+ 3.1. Query Derivatives ..........................................4
+ 3.1.1. <findContacts> Query ................................4
+ 3.1.2. <findOrganizations> .................................4
+ 3.1.3. <findAutonomousSystemsByName> and
+ <findNetworksByName> ................................5
+ 3.1.4. <findNetworksByAddress> .............................5
+ 3.1.5. <findNetworksByHandle> ..............................6
+ 3.1.6. <findASByNumber> ....................................6
+ 3.1.7. <findByContact> .....................................7
+ 3.1.8. <findNetworksByNameServer> ..........................7
+ 3.1.9. Contact Search Group ................................8
+ 3.1.10. Common Search Group ................................8
+ 3.1.11. Match Parameters ...................................8
+ 3.2. Result Derivatives .........................................9
+ 3.2.1. <ipv4Network> and <ipv6Network> Results .............9
+ 3.2.2. <autonomousSystem> Result ..........................10
+ 3.2.3. <contact> Result ...................................11
+ 3.2.4. <organization> Result ..............................12
+ 3.2.5. Contact References .................................12
+ 3.2.6. Common Result Child Elements .......................13
+ 3.3. Support for <iris:lookupEntity> ...........................13
+ 4. Terminology for Nesting of Networks ............................14
+ 5. Formal XML Syntax ..............................................18
+ 6. BEEP Transport Compliance ......................................31
+ 6.1. Message Pattern ...........................................31
+ 6.2. Server Authentication .....................................31
+ 7. URI Resolution .................................................31
+ 7.1. Application Service Label .................................31
+ 7.2. Operational Considerations ................................31
+ 7.3. Top-Down Resolution .......................................31
+ 8. Internationalization Considerations ............................32
+ 9. IANA Considerations ............................................32
+ 10. Security Considerations .......................................32
+ 11. References ....................................................33
+ 11.1. Normative References .....................................33
+ 11.2. Informative References ...................................33
+ Appendix A. Privacy Considerations ................................34
+ Appendix B. Example Requests and Responses ........................34
+ B.1. Example 1 .................................................34
+ B.2. Example 2 .................................................36
+ Appendix C. Specificity Examples ..................................39
+ Appendix D. Contributors ..........................................46
+ Appendix E. Acknowledgements ......................................46
+
+
+
+Gunduz, et al. Standards Track [Page 2]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+1. Introduction
+
+ An Internet address registry stores information about:
+
+ o address ranges
+
+ o autonomous system number ranges
+
+ o associated contacts and organizations
+
+ o name servers
+
+ This information is interrelated, and Internet address registries
+ store this information and the information's interrelationships in a
+ manner befitting the needs of each Internet address registry and its
+ constituents. This document specifies a method for accessing and
+ retrieving this information in a common XML format.
+
+ This document describes an IRIS namespace for Internet address
+ registries using an XML Schema [8] derived from and using the IRIS
+ [2] schema. This schema and registry type are provided to
+ demonstrate the extensibility of the IRIS framework beyond the use of
+ domains, a criteria defined in CRISP [4].
+
+ The schema given is this document is specified using the Extensible
+ Markup Language (XML) 1.0 as described in XML [5], XML Schema
+ notation as described in XML_SD [7] and XML_SS [8], and XML
+ Namespaces as described in XML_NS [6].
+
+ Examples of client/server XML exchanges with this registry type are
+ available in Appendix B.
+
+2. Document Terminology
+
+ 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 RFC 2119 [1].
+
+3. Schema Description
+
+ IRIS requires the derivation of both query and result elements by a
+ registry schema. Descriptions for these follow.
+
+ The descriptions contained within this section refer to XML elements
+ and attributes and their relation to the exchange of data within the
+ protocol. These descriptions also contain specifications outside the
+ scope of the formal XML syntax. Therefore, this section will use
+ terms defined by RFC 2119 [1] to describe the specification outside
+
+
+
+Gunduz, et al. Standards Track [Page 3]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ the scope of the formal XML syntax. While reading this section,
+ please reference Section 5 for needed details on the formal XML
+ syntax.
+
+3.1. Query Derivatives
+
+3.1.1. <findContacts> Query
+
+ <findContacts> searches for contacts given search constraints.
+
+ The allowable search fields are handled by one of the elements in the
+ "contactSearchGroup" (see Section 3.1.9) or the element
+ <organizationId>. The <organizationId> element constrains the query
+ based on the organization ID (handle) associated with contacts. This
+ element is an "exactMatchParameter" (see Section 3.1.11).
+
+ This query also provides optional <language> elements containing
+ language tags. Clients MAY use these elements to give a hint about
+ the natural language(s) of the affected element. Servers MAY use
+ this information in processing the query, such as tailoring
+ normalization routines to aid in more effective searches.
+
+ The client SHOULD pass the names unchanged to the server, and the
+ implementation of the server decides if the search is case sensitive
+ or not.
+
+3.1.2. <findOrganizations>
+
+ <findOrganizations> searches for organizations given search
+ constraints.
+
+ The allowable search fields are handled by one of the elements in the
+ "commonSearchGroup" (see Section 3.1.10) or the element
+ <organizationName>. This element is an
+ "exactOrPartialMatchParameter" (see Section 3.1.11).
+
+ This query also provides optional <language> elements containing
+ language tags. Clients MAY use these elements to give a hint about
+ the natural language(s) of the affected element. Servers MAY use
+ this information in processing the query, such as tailoring
+ normalization routines to aid in more effective searches.
+
+ The client SHOULD pass the names unchanged to the server, and the
+ implementation of the server decides if the search is case sensitive
+ or not.
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 4]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+3.1.3. <findAutonomousSystemsByName> and <findNetworksByName>
+
+ The <findAutonomousSystemsByName> and <findNetworksByName> elements
+ allow searches by name of autonomous systems and networks,
+ respectively. Both have the same format.
+
+ The child element <name> is an "exactOrPartialMatchParameter" (see
+ Section 3.1.11).
+
+ This query also provides optional <language> elements containing
+ language tags. Clients MAY use these elements to give a hint about
+ the natural language(s) of the affected element. Servers MAY use
+ this information in processing the query, such as tailoring
+ normalization routines to aid in more effective searches.
+
+ The client SHOULD pass the names unchanged to the server, and the
+ implementation of the server decides if the search is case sensitive
+ or not.
+
+3.1.4. <findNetworksByAddress>
+
+ The <findNetworksByAddress> element is a query for a network given a
+ related IP address or IP address range. It has the following child
+ elements:
+
+ o <ipv4Address> - has a child <start> element containing the
+ starting IPv4 address of the network and an optional child of
+ <end> containing the ending IPv4 address of the network. Clients
+ MUST convert any short-form notation to the fully-qualified
+ notation.
+
+ o <ipv6Address> - same as <ipv4Address>, but the child addresses
+ contain IPv6 addresses. Clients MUST convert any short-form
+ notation to the fully-qualified notation.
+
+ o <specificity> - determines the network specificity for the search
+ (see Section 4). Valid values are "exact-match", "all-less-
+ specific", "one-level-less-specific", "all-more-specific", and
+ "one-level-more-specific". This element may have the optional
+ attribute 'allowEquivalences'. When it is set to "true", the
+ result set should include networks with equivalent starting and
+ ending addresses. The default value for 'allowEquivalences' is
+ "false".
+
+ The results from this query MUST be either <ipv4Network> or
+ <ipv6Network> results. More than one network result MAY be returned.
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 5]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+3.1.5. <findNetworksByHandle>
+
+ The <findNetworksByHandle> element is a query for a network given a
+ the handle of a related network. It has the following child
+ elements:
+
+ o <networkHandle> - specifies the network handle.
+
+ o <specificity> - determines the network specificity for the search
+ (see Section 4). Valid values are "all-less-specifics", "one-
+ level-less-specifics", "all-more-specifics", and "one-level-more-
+ specifics".
+
+ The results from this query MUST be either <ipv4Network> or
+ <ipv6Network> results. More than one network result MAY be returned.
+
+ This query could be used to discover the parentage relationships
+ between networks that have the same starting and ending addresses.
+
+ The client SHOULD pass handles unchanged to the server, and the
+ implementation of the server decides if the search is case sensitive
+ or not.
+
+3.1.6. <findASByNumber>
+
+ The <findASByNumber> element allows a search for autonomous systems
+ given an autonomous system number (ASN) range. It has the following
+ child elements:
+
+ o <asNumberStart> - specifies the start of the ASN range.
+
+ o <asNumberEnd> - specifies the end of the ASN range.
+
+ o <specificity> - determines the range specificity for the search
+ (see Section 4). Valid values are "exact-match", "all-less-
+ specific", "one-level-less-specific", "all-more-specific", and
+ "one-level-more-specific". This element may have the optional
+ attribute 'allowEquivalences'. When it is set to "true", the
+ result set should include ranges with equivalent starting and
+ ending numbers. The default value for 'allowEquivalences' is
+ "false".
+
+ The results from this query MUST be <autonomousSystem> results. More
+ than one result MAY be returned.
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 6]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+3.1.7. <findByContact>
+
+ The <findByContact> element allows a search for autonomous systems,
+ IP networks, and organizations on fields associated with that
+ entity's contact. The optional search element <returnedResultType>
+ MUST restrict the results to autonomous systems, IPv4 networks, IPv6
+ networks, or organizations using the values 'returnASs',
+ 'returnIPv4Networks', 'returnIPv6Networks', and
+ 'returnOrganizations', respectively.
+
+ The allowable search fields are handled with either the
+ <contactHandle> element or one of the elements in the
+ "contactSearchGroup" (see Section 3.1.9). The <contactHandle>
+ element allows for the entities to be selected based on the contact
+ having the specified contact handle, and it is an
+ "exactMatchParameter" type (see Section 3.1.11). The client SHOULD
+ pass these search fields unchanged to the server, and the
+ implementation of the server decides if the search is case sensitive
+ or not.
+
+ The query MAY also be constrained further using the optional <role>
+ element. The contents of this element signify the role the contact
+ has with the entity. The allowable values for this element are
+ "adminContact", "nocContact", "techContact", "abuseContact", and
+ "otherContact".
+
+ This query also provides optional <language> elements containing
+ language tags. Clients MAY use these elements to give a hint about
+ the natural language(s) of the affected element. Servers MAY use
+ this information in processing the query, such as tailoring
+ normalization routines to aid in more effective searches.
+
+ The results from this query MUST be <ipv4Network> results,
+ <ipv6Network> results, <autonomousSystem> results, or <organization>
+ results. More than one result MAY be returned, and the results MAY
+ be of mixed types.
+
+3.1.8. <findNetworksByNameServer>
+
+ The <findNetworksByNameServer> element allows a search for IP
+ networks based on their associated name servers. The <nameServer>
+ element contains the fully qualified domain name of the name server.
+ The optional search element <returnedResultType> MUST restrict the
+ results to IPv4 networks or IPv6 networks using the values
+ 'returnIPv4Networks' and 'returnIPv6Networks', respectively.
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 7]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ The results from this query MUST be <ipv4Network> or <ipv6Network>
+ results. More than one result MAY be returned, and the results MAY
+ be of mixed types.
+
+3.1.9. Contact Search Group
+
+ Some of the queries above have similar query constraints for
+ searching on contacts. This section describes those common
+ parameters.
+
+ <commonName> allows the query to be constrained based on the common
+ name of the contact. This constraint is an
+ "exactOrPartialMatchParameter" (see Section 3.1.11).
+
+ This group also contains all the members of the "commonSearchGroup"
+ (see Section 3.1.10).
+
+3.1.10. Common Search Group
+
+ Some of the queries above have similar query constraints for
+ searching on contacts. This section describes those common
+ parameters.
+
+ <eMail> constrains the query based on the e-mail address of the
+ contact. This constraint is a "domainResource" type (see
+ Section 3.1.11).
+
+ The <city>, <region>, <country>, and <postalCode> elements restrict
+ the scope of the query based on the city, region, country, or postal
+ code of the contact, respectively. These constraints are all
+ "exactMatchParameter" types (see Section 3.1.11). The contents of
+ <country> MUST be compliant with ISO 3166 [9] two-character country
+ codes.
+
+3.1.11. Match Parameters
+
+ Some of the queries above have constraints that match strings using
+ matching parameters. This section describes those matching
+ parameters.
+
+ Elements of type "exactMatchParameter" will have one child element of
+ <exactMatch>. The contents of this child element are to match
+ exactly in the use of the constraint.
+
+ Elements of type "partialMatchParameter" will have either a
+ <beginsWith> child element with an optional <endsWith> child element
+ or an <endsWith> child element. The content of the <beginsWith>
+
+
+
+
+Gunduz, et al. Standards Track [Page 8]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ element specifies the beginning character sequence for the
+ constraint. The content of the <endsWith> element specifies the
+ ending character sequence for the constraint.
+
+ Elements of type "exactOrPartialMatchParameter" can have either the
+ child element allowed with the "exactMatchParameter" type or the
+ child elements allowed with the "partialMatchParameter" type.
+
+ Elements of type "domainResource" can have either the child element
+ allowed with the "exactMatchParameter" type or a child element of
+ <inDomain>. This parameter type is meant to match email, SIP,
+ Extensible Messaging and Presence Protocol (XMPP), and other types of
+ "user@domain" addresses. When this parameter is specified with the
+ <exactMatch> child element, the constraint is based on the whole
+ email address. When this parameter is specified with the <inDomain>
+ child element, the constraint is based on any email address within
+ the domain given. The <inDomain> MUST only contain a valid domain
+ name (i.e., no '@' symbol), and the matching SHOULD take place only
+ on the domain given (i.e., no partial matches with respect to
+ substrings or parent domains).
+
+3.2. Result Derivatives
+
+3.2.1. <ipv4Network> and <ipv6Network> Results
+
+ The <ipv4Network> and <ipv6Network> share a common definition of
+ 'ipNetworkType'. It has the following child elements:
+
+ o <networkHandle> contains the registry-unique assigned handle for
+ this network.
+
+ o <name> contains a human-friendly name for the network.
+
+ o <startAddress> contains the first IP address of the network.
+
+ o <endAddress> contains the last IP address of the network.
+
+ o <networkType> contains a string denoting the type of network.
+
+ o <networkTypeInfo> is an entity reference to a definition of the
+ values explained in a plain natural language. The referent MUST
+ be a <simpleEntity> as defined by [2].
+
+ o <nameServer> contains the domain name of a nameserver responsible
+ for reverse-DNS mapping for this network.
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 9]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ o <organization> contains an entity reference to the organization
+ assigned this network. The referent MUST be an <organization>
+ (Section 3.2.4) result.
+
+ o One of the following:
+
+ * <parent> contains an entity reference to the parent network of
+ this network. The referent MUST be an <ipv4Network>
+ (Section 3.2.1) result if this reference is a child of
+ <ipv4Network>. The referent MUST be an <ipv6Network>
+ (Section 3.2.1) result if this reference is a child of
+ <ipv6Network>.
+
+ * <noParent> signifies that this network has no parent network.
+
+ o Contact references (see Section 3.2.5).
+
+ o Common child elements (see Section 3.2.6).
+
+3.2.2. <autonomousSystem> Result
+
+ The <autonomousSystem> element represents an assigned or allocated
+ autonomous system number range. It has the following children:
+
+ o <asHandle> contains a registry-unique assigned handle for this
+ autonomous system number range.
+
+ o <asNumberStart> contains an integer indicating the starting number
+ for the autonomous system number range.
+
+ o <asNumberEnd> contains an integer indicating the ending number for
+ the autonomous system number range.
+
+ o <name> contains a human-readable name for this autonomous system.
+
+ o <organization> contains an entity reference to the organization
+ assigned or allocated this autonomous system number range. The
+ referent MUST be an <organization> (Section 3.2.4) result.
+
+ o One of the following:
+
+ * <parent> contains an entity reference to the parent autonomous
+ system of this autonomous system. The referent MUST be an
+ <autonomousSystem> (Section 3.2.2) result.
+
+ * <noParent> signifies that this autonomous system has no parent
+ autonomous system.
+
+
+
+
+Gunduz, et al. Standards Track [Page 10]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ o Contact references (see Section 3.2.5).
+
+ o Common child elements (see Section 3.2.6).
+
+3.2.3. <contact> Result
+
+ The <contact> element represents the registration of a point of
+ contact. It has the following child elements:
+
+ o <contactHandle> contains the registry-unique assigned handle for
+ this contact.
+
+ o <commonName> specifies the name of the contact.
+
+ o <eMail> contains the email address for this contact.
+
+ o <sip> contains the sip address for this contact.
+
+ o <organization> contains an entity reference to the organization
+ associated with this contact. The referent MUST be an
+ <organization> (Section 3.2.4) result.
+
+ o <postalAddress> contains information for reaching the contact via
+ postal mail. It is composed of the following child elements:
+
+ * <address> contains the address for this contact.
+
+ * <city> contains the city where this contact is located.
+
+ * <region> contains the national region where this contact is
+ located.
+
+ * <postalCode> contains the postal code where this contact is
+ located.
+
+ * <country> contains the country code where this contact is
+ located. This MUST be compliant with ISO 3166 [9]
+ two-character country codes.
+
+ o <phone> contains child elements describing the phone number of the
+ contact. The child elements are <number>, <extension>, and
+ <type>.
+
+ o Common child elements (see Section 3.2.6).
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 11]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+3.2.4. <organization> Result
+
+ The <organization> element represents an organization. It has the
+ following child elements:
+
+ o <name> contains the name of the organization.
+
+ o <id> contains a registry-unique identifier for this organization.
+
+ o <eMail> contains the email address for this organization.
+
+ o <postalAddress> contains a information for reaching the
+ organization via postal mail. It is composed of the following
+ child elements:
+
+ * <address> contains the address for this organization.
+
+ * <city> contains the city where this organization is located.
+
+ * <region> contains the national region where this organization
+ is located.
+
+ * <postalCode> contains the postal code where this organization
+ is located.
+
+ * <country> contains the country code where this organization is
+ located. This MUST be compliant with ISO 3166 [9]
+ two-character country codes.
+
+ o <phone> contains child elements describing the phone number of the
+ contact. The child elements are <number>, <extension>, and
+ <type>.
+
+ o Contact references (see Section 3.2.5).
+
+ o Common child elements (see Section 3.2.6).
+
+3.2.5. Contact References
+
+ The registry schema defined in Section 5 normalizes out a group of
+ elements used to reference contacts. This group is used by many of
+ the result types for this registry. The group has the following
+ elements, each of which may appear as many times as needed. The
+ referent of each MUST be <contact> (Section 3.2.3) results.
+
+ o <adminContact>
+
+ o <techContact>
+
+
+
+Gunduz, et al. Standards Track [Page 12]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ o <nocContact>
+
+ o <abuseContact>
+
+ o <otherContact>
+
+3.2.6. Common Result Child Elements
+
+ The registry schema defined in Section 5 normalizes out a group of
+ common elements that are used most among the result types. The group
+ has the following elements:
+
+ o <numberResourceRegistry> contains an entity reference to the
+ number resource registry of record. The referent MUST be an
+ <organization> (Section 3.2.4) result.
+
+ o <registrationDate> contains the date of first registration.
+
+ o <lastUpdatedDate> contains the date when the registration was last
+ updated.
+
+ o The <iris:seeAlso> element contains an entity reference specifying
+ an entity that is indirectly associated with this result object.
+ This element can be used for comments and remarks.
+
+3.3. Support for <iris:lookupEntity>
+
+ The following types of entity classes are recognized by the
+ <lookupEntity> query of IRIS for this registry:
+
+ o ipv4-handle - a registry-unique identifier specifying an IPv4
+ network. Queries with these names will yield a <ipv4Network>
+ result.
+
+ o ipv6-handle - a registry-unique identifier specifying an IPv6
+ network. Queries with these names will yield a <ipv6Network>
+ result.
+
+ o as-handle - a registry-unique identifier specifying an autonomous
+ system. It yields a result of <autonomousSystem>.
+
+ o contact-handle - a registry-unique identifier of a contact.
+ Yields a result of <contact>.
+
+ o organization-id - a registry-unique identifier of an organization.
+ Yields a result of <organization>.
+
+ o The entity names of these entity classes are case insensitive.
+
+
+
+Gunduz, et al. Standards Track [Page 13]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+4. Terminology for Nesting of Networks
+
+ The following terms are defined for describing the nesting of IP
+ networks.
+
+ o More specific: Given two networks, A and B, A is more specific
+ than B if network B includes all space of network A, and if
+ network B is larger than network A.
+
+ o Less specific: Opposite of more specific. The network B is less
+ specific than network A if network A's space is completely
+ included in network B and if network A is smaller than network B.
+
+ o Most specific: Given a set of networks, the network or networks
+ that are more specific than zero or more specific of the other
+ networks in the set, and that are not less specific of any of the
+ networks in the set.
+
+ o Least specific: Given a set of networks, the network or networks
+ that are not more specific to any of the other networks in the
+ set.
+
+ Examples:
+
+ +-------------------------------------------------------+
+ | |
+ | Given the networks A, B, C, and D as follows: |
+ | |
+ | A |---------------------------------| |
+ | B |-----------------| |
+ | C |---------| |
+ | D |-------| |
+ | |
+ | |
+ | Network A is less specific than B, C, and D. |
+ | Network B is more specific than A. |
+ | Among these four networks, A is the least specific, |
+ | and C and D are the most specific. |
+ | |
+ +-------------------------------------------------------+
+
+ Figure 1: Nesting Example 1
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 14]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ +-------------------------------------------------------+
+ | |
+ | Given networks E, F, and G: |
+ | |
+ | E |----------| |
+ | F |--------------| |
+ | G |---| |
+ | |
+ | Networks E and F are least specific networks. |
+ | Networks F and G are most specific networks. |
+ | |
+ +-------------------------------------------------------+
+
+ Figure 2: Nesting Example 2
+
+ The following definitions assume that there are no overlapping
+ networks in the database. A network overlaps with another one when
+ they encompass each other's space partially. Examples:
+
+ A |---------------------|
+ B |----------------------------|
+
+ Figure 3: Nesting Example 3
+
+ Here, networks A and B are overlapping networks because network A
+ encompasses network B's space partially, and network B encompasses
+ network A's space partially.
+
+ C |------------------|
+ D |---------|
+
+ Figure 4: Nesting Example 4
+
+ Here, networks C and D are NOT overlapping networks because even if
+ network D encompasses a part of network C's space, network C does not
+ encompass network D's space partially (it encompasses network D
+ completely).
+
+ The address directory can contain more than one network with the same
+ range. They are said to be exact match networks.
+
+ The parent/child relationship in the internet address directory is
+ unidirectional. That is, there might also be parent/child
+ relationship with exact match networks, but a network cannot be a
+ parent and a child of its exact match network at the same time.
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 15]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ The following are nested matching searches:
+
+ (1) all less specifics search: Given a range, find all the networks
+ that contain that range (i.e., all less specifics and exact
+ matches). These networks are the networks that fulfill the
+ following condition:
+
+ (start(network) <= start(search)) AND (end(network) >= end(search))
+
+ (2) one-level less specifics search: Given a range, find only the
+ most specific network that contains that range (could be multiple
+ networks, but usually single). This is the set of networks from
+ (1), with the provision that no network in the return set is
+ contained by any other network in the set. If there are exact
+ match networks in the set from (1), they both must appear in the
+ result set. The result set may contain a network that is exact
+ match to the query range, if the search allows exact matches.
+
+ A |-------------------------------|
+ B |---------------------------|
+ C |-------|
+ Query |- - - - - - - - - -|
+
+ Figure 5: Nesting Example 5
+
+ In the above case, the query must return B.
+
+ A |-------------------------------|
+ B |---------------------------|
+ C |---------------------------|
+ D |-------|
+ Query |- - - - - - - - - -|
+
+ Figure 6: Nesting Example 6
+
+ Here, the query must return B and C (they are exact matches of
+ each other).
+
+ A |-------------------------------|
+ B |---------------------------|
+ C |---------------------------|
+ D |-------|
+ Query |- - - -|
+
+ Figure 7: Nesting Example 7
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 16]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ Here, the query must return B and C (they are exact matches of
+ each other). D must not be in the result set, as it is exact
+ match to the query if the search specifies that exact matches of
+ query range should not appear in the result set.
+
+ In Figure 7, if the search specifies that exact matches to the
+ query range are allowed in the result set, then only D must be
+ returned.
+
+ (3) all more specifics search: Given a range, find all the networks
+ that are fully within that range. The search contains a flag
+ that specifies if an exact match to the query range should appear
+ in the result set or not. Thus, the result set may or may not
+ contain the exact match to the query range, as instructed by the
+ search.
+
+ (start(network) >= start(search)) AND (end(network) <= end(search))
+
+ (4) one-level more specifics search: Given a range, find only the
+ least specific networks that are fully within that range. This
+ is the set of networks from (3), with the provision that no
+ network in the return set contains any other network in the
+ return set.
+
+ Query |- - - - - - - - - - - - - - - - - - - - - - -|
+
+ A |------------------|
+ B |-------------------------|
+ C |--------|
+ D |---------|
+
+ Figure 8: Nesting Example 8
+
+ (5) exact match search: Given a range, find the networks that begin
+ and end on the same IP addresses as the range. That is, the
+ networks that fulfill the following condition:
+
+ (start(network) = start(search)) AND (end(network) = end(search))
+
+ (6) Given a range, find the exact match network if it exists, and if
+ it does not, perform the (2) search.
+
+ The following are parent-child relationship searches:
+
+ (7) Given a network handle, find the network that is the direct (one
+ level up) parent of the network with the given handle.
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 17]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ (8) Given a network handle, find the network or networks that are
+ direct (one level down) children of the network with the handle
+ given.
+
+5. Formal XML Syntax
+
+ This IP address registry is specified in the XML Schema notation.
+ The formal syntax presented here is a complete schema representation
+ suitable for automated validation of an XML instance when combined
+ with the formal schema syntax of IRIS.
+
+
+ <?xml version="1.0"?>
+ <schema xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:areg="urn:ietf:params:xml:ns:areg1"
+ xmlns:iris="urn:ietf:params:xml:ns:iris1"
+ targetNamespace="urn:ietf:params:xml:ns:areg1"
+ elementFormDefault="qualified" >
+
+ <import namespace="urn:ietf:params:xml:ns:iris1" />
+
+ <annotation>
+ <documentation> IP address registry schema derived from IRIS
+ schema </documentation>
+ </annotation>
+
+ <!-- ========================================= -->
+ <!-- -->
+ <!-- Query Types -->
+ <!-- -->
+
+ <!-- ========================================= -->
+ <!-- -->
+ <!-- Find Autonomous Systems By Name -->
+ <!-- Find Networks By Name -->
+ <!-- -->
+
+ <complexType name="findByNameType" >
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element name="name"
+ type="areg:exactOrPartialMatchParameter" />
+ <element name="language" type="language" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+
+
+
+Gunduz, et al. Standards Track [Page 18]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ </complexType>
+
+ <element name="findNetworksByName" type="areg:findByNameType"
+ substitutionGroup="iris:query" />
+ <element name="findAutonomousSystemsByName"
+ type="areg:findByNameType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Address/Address Range type for -->
+ <!-- Find Network -->
+ <!-- -->
+
+ <complexType name="addressRangeType">
+ <sequence>
+ <element name="start" type="token" />
+ <element name="end" type="token" minOccurs="0" maxOccurs="1" />
+ </sequence>
+ </complexType>
+
+ <!-- -->
+ <!-- Find Networks By Address -->
+ <!-- -->
+
+ <complexType name="findNetworksByAddressType" >
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <choice>
+ <element name="ipv4Address" type="areg:addressRangeType"
+ />
+ <element name="ipv6Address" type="areg:addressRangeType"
+ />
+ </choice>
+ <element name="specificity">
+ <complexType>
+ <simpleContent>
+ <extension base="areg:specificityType" >
+ <attribute name="allowEquivalences" type="boolean"
+ default="false" />
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+
+
+Gunduz, et al. Standards Track [Page 19]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <element name="findNetworksByAddress"
+ type="areg:findNetworksByAddressType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Find AS By Number -->
+ <!-- -->
+
+ <complexType name="findASByNumberType" >
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element name="asNumberStart" type="token" />
+ <element name="asNumberEnd" type="token" minOccurs="0"
+ maxOccurs="1" />
+ <element name="specificity">
+ <complexType>
+ <simpleContent>
+ <extension base="areg:specificityType" >
+ <attribute name="allowEquivalences" type="boolean"
+ default="false" />
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="findASByNumber" type="areg:findASByNumberType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Specificity Type -->
+ <!-- -->
+
+ <simpleType name="specificityType">
+ <restriction base="string">
+ <enumeration value="exact-match" />
+ <enumeration value="all-less-specific" />
+ <enumeration value="one-level-less-specific" />
+ <enumeration value="all-more-specific" />
+ <enumeration value="one-level-more-specific" />
+ </restriction>
+ </simpleType>
+
+ <!-- -->
+
+
+
+Gunduz, et al. Standards Track [Page 20]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <!-- Find By Contact -->
+ <!-- -->
+
+ <complexType name="findByContactType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <choice>
+ <group ref="areg:contactSearchGroup" />
+ <element name="contactHandle"
+ type="areg:exactMatchParameter" />
+ </choice>
+ <element name="returnedResultType" minOccurs="0"
+ maxOccurs="1" >
+ <simpleType>
+ <restriction base="string" >
+ <enumeration value="returnASs" />
+ <enumeration value="returnIPv4Networks" />
+ <enumeration value="returnIPv6Networks" />
+ <enumeration value="returnOrganizations" />
+ </restriction>
+ </simpleType>
+ </element>
+ <element name="role" minOccurs="0" maxOccurs="1" >
+ <simpleType>
+ <restriction base="string" >
+ <enumeration value="adminContact" />
+ <enumeration value="techContact" />
+ <enumeration value="nocContact" />
+ <enumeration value="abuseContact" />
+ <enumeration value="otherContact" />
+ </restriction>
+ </simpleType>
+ </element>
+ <element name="language" type="language" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="findByContact" type="areg:findByContactType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Find Networks By Handle -->
+ <!-- -->
+
+
+
+
+Gunduz, et al. Standards Track [Page 21]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <complexType name="findNetworksByHandleType" >
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element name="networkHandle" type="token" />
+ <element name="specificity"
+ type="areg:specificitySubsetType" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="findNetworksByHandle"
+ type="areg:findNetworksByHandleType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Specificity Subtype -->
+ <!-- -->
+
+ <simpleType name="specificitySubsetType">
+ <restriction base="string">
+ <enumeration value="all-less-specific" />
+ <enumeration value="one-level-less-specific" />
+ <enumeration value="all-more-specific" />
+ <enumeration value="one-level-more-specific" />
+ </restriction>
+ </simpleType>
+
+ <!-- -->
+ <!-- Find Contacts -->
+ <!-- -->
+
+ <complexType name="findContactsType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <choice>
+ <group ref="areg:contactSearchGroup" />
+ <element name="organizationId"
+ type="areg:exactMatchParameter" />
+ </choice>
+ <element name="language" type="language" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+
+
+Gunduz, et al. Standards Track [Page 22]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <element name="findContacts" type="areg:findContactsType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Find Organizations -->
+ <!-- -->
+
+ <complexType name="findOrganizationsType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <choice>
+ <element name="organizationName"
+ type="areg:exactOrPartialMatchParameter" />
+ <group ref="areg:commonSearchGroup" />
+ </choice>
+ <element name="language" type="language" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="findOrganizations" type="areg:findOrganizationsType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Find Networks by Name Server -->
+ <!-- -->
+
+ <complexType name="findNetworksByNameServerType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element name="nameServer" type="normalizedString" />
+ <element name="returnedResultType" minOccurs="0"
+ maxOccurs="1" >
+ <simpleType>
+ <restriction base="string" >
+ <enumeration value="returnIPv4Networks" />
+ <enumeration value="returnIPv6Networks" />
+ </restriction>
+ </simpleType>
+ </element>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+
+
+Gunduz, et al. Standards Track [Page 23]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <element name="findNetworksByNameServer"
+ type="areg:findNetworksByNameServerType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Contact Search Group -->
+ <!-- -->
+
+ <group name="contactSearchGroup">
+ <choice>
+ <element name="commonName"
+ type="areg:exactOrPartialMatchParameter" />
+ <group ref="areg:commonSearchGroup" />
+ </choice>
+ </group>
+
+ <!-- -->
+ <!-- Common Search Group -->
+ <!-- -->
+
+ <group name="commonSearchGroup">
+ <choice>
+ <element name="eMail" type="areg:domainResourceParameter" />
+ <element name="city" type="areg:exactMatchParameter" />
+ <element name="region" type="areg:exactMatchParameter" />
+ <element name="country" type="areg:exactMatchParameter" />
+ <element name="postalCode" type="areg:exactMatchParameter" />
+ </choice>
+ </group>
+
+ <!-- -->
+ <!-- Parameters for Search Groups -->
+ <!-- -->
+
+ <complexType name="exactOrPartialMatchParameter">
+ <choice>
+ <group ref="areg:partialMatchGroup" />
+ <group ref="areg:exactMatchGroup" />
+ </choice>
+ </complexType>
+
+ <complexType name="exactMatchParameter">
+ <group ref="areg:exactMatchGroup" />
+ </complexType>
+
+ <complexType name="partialMatchParameter">
+ <sequence>
+ <group ref="areg:partialMatchGroup" />
+
+
+
+Gunduz, et al. Standards Track [Page 24]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ </sequence>
+ </complexType>
+
+ <complexType name="domainResourceParameter" >
+ <choice>
+ <group ref="areg:exactMatchGroup" />
+ <element name="inDomain" type="token" />
+ </choice>
+ </complexType>
+
+ <group name="partialMatchGroup">
+ <choice>
+ <sequence>
+ <element name="beginsWith">
+ <simpleType>
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+ </element>
+ <element minOccurs="0" ref="areg:endsWith"/>
+ </sequence>
+ <element ref="areg:endsWith" />
+ </choice>
+ </group>
+
+ <element name="endsWith">
+ <simpleType>
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+ </element>
+
+ <group name="exactMatchGroup">
+ <sequence>
+ <element name="exactMatch" type="normalizedString" />
+ </sequence>
+ </group>
+
+ <!-- ========================================= -->
+ <!-- -->
+ <!-- Result Types -->
+ <!-- -->
+ <!-- ========================================= -->
+
+ <!-- -->
+ <!-- IPv4 and IPv6 Network Results -->
+
+
+
+Gunduz, et al. Standards Track [Page 25]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <!-- -->
+
+ <complexType name="ipNetworkType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="networkHandle" type="token"
+ minOccurs="0" maxOccurs="1" />
+ <element name="name" minOccurs="0" maxOccurs="1"
+ type="normalizedString" />
+ <element name="startAddress" type="token" />
+ <element name="endAddress" type="token" />
+ <sequence minOccurs="0" maxOccurs="1">
+ <element name="networkType" type="normalizedString"
+ minOccurs="1" maxOccurs="1" />
+ <element name="networkTypeInfo" type="iris:entityType"
+ minOccurs="0" maxOccurs="1" />
+ </sequence>
+ <element name="nameServer" type="normalizedString"
+ minOccurs="0" maxOccurs="unbounded" />
+ <element name="organization" type="iris:entityType"
+ minOccurs="0" maxOccurs="1" />
+ <choice minOccurs="0" maxOccurs="1" >
+ <element name="parent" type="iris:entityType" />
+ <element name="noParent">
+ </element>
+ </choice>
+ <group ref="areg:contactGroup" />
+ <group ref="areg:commonGroup" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="ipv4Network" type="areg:ipNetworkType"
+ substitutionGroup="iris:result" />
+
+ <element name="ipv6Network" type="areg:ipNetworkType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Autonomous System -->
+ <!-- -->
+
+ <complexType name="autonomousSystemType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+
+
+
+Gunduz, et al. Standards Track [Page 26]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <element name="asHandle" type="token"
+ minOccurs="0" maxOccurs="1" />
+ <element name="asNumberStart" type="integer" minOccurs="0"
+ maxOccurs="1" />
+ <element name="asNumberEnd" type="integer" minOccurs="0"
+ maxOccurs="1" />
+ <element name="name" type="normalizedString" minOccurs="0"
+ maxOccurs="1" />
+ <element name="organization" type="iris:entityType"
+ minOccurs="0" maxOccurs="1" />
+ <choice minOccurs="0" maxOccurs="1">
+ <element name="parent" type="iris:entityType" />
+ <element name="noParent" />
+ </choice>
+ <group ref="areg:contactGroup" />
+ <group ref="areg:commonGroup" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="autonomousSystem" type="areg:autonomousSystemType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Contact -->
+ <!-- -->
+
+ <complexType name="contactType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="contactHandle" type="token"
+ minOccurs="0" maxOccurs="1" />
+ <element name="commonName" type="normalizedString"
+ minOccurs="0" maxOccurs="1" />
+ <element name="eMail" type="normalizedString" minOccurs="0"
+ maxOccurs="unbounded" />
+ <element name="sip" type="normalizedString" minOccurs="0"
+ maxOccurs="unbounded" />
+ <element name="organization" type="iris:entityType"
+ minOccurs="0" maxOccurs="unbounded" />
+ <element name="postalAddress" minOccurs="0"
+ maxOccurs="unbounded">
+ <complexType>
+ <sequence>
+ <element name="address" type="string" minOccurs="0"
+ maxOccurs="1" />
+
+
+
+Gunduz, et al. Standards Track [Page 27]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <element name="city" type="string" minOccurs="0"
+ maxOccurs="1" />
+ <element name="region" type="string" minOccurs="0"
+ maxOccurs="1" />
+ <element name="postalCode" type="normalizedString"
+ minOccurs="0" maxOccurs="1" />
+ <element name="country" type="token" minOccurs="0"
+ maxOccurs="1" />
+ </sequence>
+ </complexType>
+ </element>
+ <element name="phone" minOccurs="0" maxOccurs="unbounded" >
+ <complexType>
+ <sequence>
+ <element name="number" type="normalizedString" />
+ <element name="extension" type="normalizedString"
+ minOccurs="0" maxOccurs="unbounded" />
+ <element name="type" type="normalizedString"
+ minOccurs="0" maxOccurs="1" />
+ </sequence>
+ </complexType>
+ </element>
+ <group ref="areg:commonGroup" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="contact" type="areg:contactType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Organization -->
+ <!-- -->
+
+ <complexType name="organizationType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="name" type="normalizedString"
+ minOccurs="0" maxOccurs="1" />
+ <element name="eMail" type="normalizedString" minOccurs="0"
+ maxOccurs="unbounded" />
+ <element name="id" type="token" />
+ <element name="postalAddress" minOccurs="0"
+ maxOccurs="unbounded">
+ <complexType>
+ <sequence>
+
+
+
+Gunduz, et al. Standards Track [Page 28]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <element name="address" type="string" minOccurs="0"
+ maxOccurs="1" />
+ <element name="city" type="string" minOccurs="0"
+ maxOccurs="1" />
+ <element name="region" type="string" minOccurs="0"
+ maxOccurs="1" />
+ <element name="postalCode" type="normalizedString"
+ minOccurs="0" maxOccurs="1" />
+ <element name="country" type="token" minOccurs="0"
+ maxOccurs="1" />
+ </sequence>
+ </complexType>
+ </element>
+ <element name="phone" minOccurs="0" maxOccurs="unbounded" >
+ <complexType>
+ <sequence>
+ <element name="number" type="normalizedString" />
+ <element name="extension" type="normalizedString"
+ minOccurs="0" maxOccurs="unbounded" />
+ <element name="type" type="normalizedString"
+ minOccurs="0" maxOccurs="1" />
+ </sequence>
+ </complexType>
+ </element>
+ <group ref="areg:contactGroup" />
+ <group ref="areg:commonGroup" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element name="organization" type="areg:organizationType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Contact Group -->
+ <!-- -->
+
+ <group name="contactGroup">
+ <sequence>
+ <element name="adminContact" type="iris:entityType"
+ minOccurs="0" maxOccurs="unbounded" />
+ <element name="techContact" type="iris:entityType"
+ minOccurs="0" maxOccurs="unbounded" />
+ <element name="nocContact" type="iris:entityType" minOccurs="0"
+ maxOccurs="unbounded" />
+ <element name="abuseContact" type="iris:entityType"
+ minOccurs="0" maxOccurs="unbounded" />
+
+
+
+Gunduz, et al. Standards Track [Page 29]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ <element name="otherContact" type="iris:entityType"
+ minOccurs="0" maxOccurs="unbounded" />
+ </sequence>
+ </group>
+
+ <!-- -->
+ <!-- Common Group -->
+ <!-- -->
+
+ <group name="commonGroup">
+ <sequence>
+ <element name="numberResourceRegistry" type="iris:entityType"
+ minOccurs="0" maxOccurs="1" />
+ <element name="registrationDate" type="dateTime" minOccurs="0"
+ maxOccurs="1" />
+ <element name="lastUpdatedDate" type="dateTime" minOccurs="0"
+ maxOccurs="1" />
+ <element ref="iris:seeAlso" minOccurs="0" maxOccurs="unbounded"
+ />
+ </sequence>
+ </group>
+ </schema>
+
+ Figure 9
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 30]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+6. BEEP Transport Compliance
+
+ IRIS allows several extensions of the core capabilities. This
+ section outlines those extensions allowable by IRIS-BEEP [3].
+
+6.1. Message Pattern
+
+ This registry type uses the default message pattern as described in
+ IRIS-BEEP [3].
+
+6.2. Server Authentication
+
+ This registry type uses the default server authentication method as
+ described in IRIS-BEEP [3].
+
+7. URI Resolution
+
+7.1. Application Service Label
+
+ See Section 9 for the application service label registration.
+
+7.2. Operational Considerations
+
+ Address registries do not have natural links to DNS. Using reverse
+ DNS tree presents problems for IP address delegation (for example,
+ delegations do not fall into byte boundaries, unlike reverse DNS),
+ and DNS does not currently contain any information regarding
+ autonomous system delegation.
+
+ Therefore, in order for the top-down resolution to operate properly,
+ it is requested that the IAB instruct IANA to insert and maintain a
+ NAPTR DNS resource record for areg.iris.arpa, as described in
+ Section 9.
+
+7.3. Top-Down Resolution
+
+ The top-down alternative resolution method MUST be identified as
+ 'top' in IRIS URIs.
+
+ The process for this condition is as follows:
+
+ 1. The IRIS [2] direct-resolution process is tried against
+ areg.iris.arpa.
+
+ 2. If the direct-resolution process yields no server for which a
+ connection can be made, then a negative response is returned, and
+ no further action is taken.
+
+
+
+
+Gunduz, et al. Standards Track [Page 31]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ It is RECOMMENDED that IRIS clients issuing AREG1 requests use the
+ 'top' resolution method when no resolution method has been explicitly
+ given by a user. IRIS servers accepting AREG1 requests that seek
+ information for which they are not authoritative SHOULD refer clients
+ using the 'top' resolution method.
+
+8. Internationalization Considerations
+
+ This document lays out no new considerations for internationalization
+ beyond those specified in IRIS [2].
+
+9. IANA Considerations
+
+ The following URN has been registered with IANA according to the IANA
+ considerations defined in IRIS [2]:
+
+ urn:ietf:params:xml:ns:areg1
+
+ The following S-NAPTR application service label has been registered
+ with IANA according to the IANA considerations defined in IRIS [2]:
+
+ AREG1
+
+ Under instructions from the IAB, the IANA will create a new second
+ level domain under .arpa called iris (i.e., iris.arpa.). The
+ contents of this new domain are to be under the control of the IAB.
+ Under instructions from the IAB, the IANA will insert and maintain a
+ NAPTR DNS resource record in the iris.arpa. domain for the name
+ areg.iris.arpa. The initial contents for that record is:
+
+ areg.iris.arpa.
+ ;; order pref flags service re replacement
+ IN NAPTR 100 10 "" "AREG1:iris.xpc:iris.lwz" "" areg.nro.net
+
+10. Security Considerations
+
+ This document lays out no new considerations for security precautions
+ beyond those specified in IRIS [2].
+
+
+
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 32]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+11. References
+
+11.1. Normative References
+
+ [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
+ Levels", BCP 14, RFC 2119, March 1997.
+
+ [2] Newton, A. and M. Sanz, "IRIS: The Internet Registry Information
+ Service (IRIS) Core Protocol", RFC 3981, January 2005.
+
+ [3] Newton, A. and M. Sanz, "Using the Internet Registry Information
+ Service (IRIS) over the Blocks Extensible Exchange Protocol
+ (BEEP)", RFC 3983, January 2005.
+
+ [4] Newton, A., "Cross Registry Internet Service Protocol (CRISP)
+ Requirements", RFC 3707, February 2004.
+
+11.2. Informative References
+
+ [5] World Wide Web Consortium, "Extensible Markup Language (XML)
+ 1.0", W3C XML, February 1998,
+ <http://www.w3.org/TR/1998/REC-xml-19980210>.
+
+ [6] World Wide Web Consortium, "Namespaces in XML", W3C XML
+ Namespaces, January 1999,
+ <http://www.w3.org/TR/1999/REC-xml-names-19990114>.
+
+ [7] World Wide Web Consortium, "XML Schema Part 2: Datatypes",
+ W3C XML Schema, October 2000,
+ <http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/>.
+
+ [8] World Wide Web Consortium, "XML Schema Part 1: Structures",
+ W3C XML Schema, October 2000,
+ <http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/>.
+
+ [9] International Organization for Standardization, "Codes for the
+ representation of names of countries, 3rd edition", ISO Standard
+ 3166, August 1988.
+
+
+
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 33]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+Appendix A. Privacy Considerations
+
+ Internet address registries store contact details and other
+ information that may be abused. The XML Schema defined in this
+ document purposefully makes the inclusion of any data in a response
+ an option that is dependent on the needs and policies of the Internet
+ address registry serving the data.
+
+ Combined with the authentication mechanisms of an IRIS transfer
+ protocol, Internet address registries may derive authorization
+ policies to meet their needs without compromising general privacy
+ policies. As an example, the constituents of an Internet address
+ registry may create a policy whereby NOC contact email addresses are
+ only to be available to members of the Internet address registry. To
+ institute this policy, the XML elements for NOC contacts will never
+ appear in a response to a user that has not been authenticated to be
+ a member of the Internet address registry.
+
+Appendix B. Example Requests and Responses
+
+ The examples in this section use the string "C:" to denote data sent
+ by a client to a server and the string "S:" to denote data sent by a
+ server to a client.
+
+B.1. Example 1
+
+ The following is an example of entity lookup for the contact-handle
+ of 'JN560-RIR1'.
+
+ C: <?xml version="1.0"?>
+ C: <request xmlns="urn:ietf:params:xml:ns:iris1"
+ C: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ C: xsi:schemaLocation="urn:ietf:params:xml:ns:iris1 iris.xsd" >
+ C:
+ C: <searchSet>
+ C:
+ C: <lookupEntity
+ C: registryType="urn:ietf:params:xml:ns:areg1"
+ C: entityClass="contact-handle"
+ C: entityName="JN560-RIR1" />
+ C:
+ C: </searchSet>
+ C:
+ C: </request>
+
+ S: <?xml version="1.0"?>
+ S: <iris:response
+ S: xmlns:iris="urn:ietf:params:xml:ns:iris1"
+
+
+
+Gunduz, et al. Standards Track [Page 34]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ S: xmlns="urn:ietf:params:xml:ns:areg1"
+ S: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ S:
+ S: <iris:resultSet>
+ S: <iris:answer>
+ S:
+ S: <contact
+ S: authority="rir.example.net"
+ S: registryType="areg1"
+ S: entityClass="contact-handle"
+ S: entityName="JN560-RIR1">
+ S:
+ S: <contactHandle>JN560-RIR1</contactHandle>
+ S:
+ S: <commonName>Bob Smurd</commonName>
+ S:
+ S: <organization
+ S: iris:referentType="organization"
+ S: authority="rir.example.net"
+ S: registryType="areg1"
+ S: entityClass="organization-id"
+ S: entityName="ORGX">
+ S: <iris:displayName
+ S: language="en">
+ S: Organization X, Inc.
+ S: </iris:displayName>
+ S: </organization>
+ S:
+ S: <phone>
+ S: <number>+1-703-555-5555</number>
+ S: <type>office</type>
+ S: </phone>
+ S:
+ S: </contact>
+ S:
+ S: </iris:answer>
+ S: </iris:resultSet>
+ S:
+ S: </iris:response>
+
+ Figure 11: Example 1
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 35]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+B.2. Example 2
+
+ The following example shows a query to find the IP networks
+ containing a given address.
+
+ C: <?xml version="1.0"?>
+ C: <request xmlns="urn:ietf:params:xml:ns:iris1"
+ C: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ C:
+ C: <searchSet>
+ C: <findNetworksByAddress
+ C: xmlns="urn:ietf:params:xml:ns:areg1">
+ C:
+ C: <ipv4Address>
+ C: <start>192.0.2.134</start>
+ C: </ipv4Address>
+ C:
+ C: <specificity
+ C: allowEquivalences="true"
+ C: >one-level-less-specific</specificity>
+ C:
+ C: </findNetworksByAddress>
+ C: </searchSet>
+ C:
+ C: </request>
+
+ S: <?xml version="1.0"?>
+ S: <iris:response xmlns:iris="urn:ietf:params:xml:ns:iris1"
+ S: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ S:
+ S: <iris:resultSet>
+ S: <iris:answer>
+ S: <areg:ipv4Network
+ S: xmlns="urn:ietf:params:xml:ns:areg1"
+ S: xmlns:areg="urn:ietf:params:xml:ns:areg1"
+ S: xsi:schemaLocation="urn:ietf:params:xml:ns:areg1 areg.xsd"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="ipv4-handle" entityName="NET-192-0-2-128-1" >
+ S: <networkHandle>
+ S: NET-192-0-2-128-1
+ S: </networkHandle>
+ S: <name>
+ S: UU-192-0-2-D6
+ S: </name>
+ S: <startAddress>
+ S: 192.0.2.128
+ S: </startAddress>
+ S: <endAddress>
+
+
+
+Gunduz, et al. Standards Track [Page 36]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ S: 192.0.2.255
+ S: </endAddress>
+ S: <networkType>reassigned</networkType>
+ S: <organization
+ S: iris:referentType="areg:organization"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="organization-id" entityName="ORGX">
+ S: <iris:displayName language="en">
+ S: Organization X, Inc.
+ S: </iris:displayName>
+ S: </organization>
+ S: <parent
+ S: iris:referentType="areg:ipv4Network"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="ipv4-handle" entityName="NET-192-0-2-0-1"/>
+ S: <techContact
+ S: iris:referentType="areg:contact"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="contact-handle" entityName="JN560-RIR1">
+ S: <iris:displayName language="en">
+ S: Smurd, Bob
+ S: </iris:displayName>
+ S: </techContact>
+ S: <registrationDate>
+ S: 2002-11-18T00:00:00-00:00
+ S: </registrationDate>
+ S: <lastUpdatedDate>
+ S: 2002-11-18T00:00:00-00:00
+ S: </lastUpdatedDate>
+ S: <iris:seeAlso
+ S: iris:referentType="ANY"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="local" entityName="portability-notice"/>
+ S: </areg:ipv4Network>
+ S: <areg:ipv4Network
+ S: xmlns="urn:ietf:params:xml:ns:areg1"
+ S: xmlns:areg="urn:ietf:params:xml:ns:areg1"
+ S: xsi:schemaLocation="urn:ietf:params:xml:ns:areg1 areg.xsd"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="ipv4-handle" entityName="NET-192-0-2-0-2" >
+ S: <networkHandle>
+ S: NET-192-0-2-0-2
+ S: </networkHandle>
+ S: <name>
+ S: UU-192-0-2-0-D5
+ S: </name>
+ S: <startAddress>
+ S: 192.0.2.0
+
+
+
+Gunduz, et al. Standards Track [Page 37]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ S: </startAddress>
+ S: <endAddress>
+ S: 192.0.2.255
+ S: </endAddress>
+ S: <networkType>direct allocation</networkType>
+ S: <nameServer>auth03.ns.example.org</nameServer>
+ S: <nameServer>auth00.ns.example.org</nameServer>
+ S: <organization
+ S: iris:referentType="areg:organization"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="organization-id" entityName="ORGY">
+ S: <iris:displayName language="en">
+ S: Organization Y, Inc.
+ S: </iris:displayName>
+ S: </organization>
+ S: <parent
+ S: iris:referentType="areg:ipv4Network"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="ipv4-handle" entityName="NET-192-0-2-0-1"/>
+ S: <techContact
+ S: iris:referentType="areg:contact"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="contact-handle" entityName="OA12-RIR1" />
+ S: <registrationDate>
+ S: 2000-10-27T00:00:00-00:00
+ S: </registrationDate>
+ S: <lastUpdatedDate>
+ S: 2002-02-13T00:00:00-00:00
+ S: </lastUpdatedDate>
+ S: <iris:seeAlso
+ S: iris:referentType="ANY"
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="local" entityName="portability-notice"/>
+ S: </areg:ipv4Network>
+ S: </iris:answer>
+ S: <iris:additional>
+ S: <iris:simpleEntity
+ S: authority="rir.example.net" registryType="areg1"
+ S: entityClass="local" entityName="portability-notice" >
+ S: <iris:property name="portability" language="en">
+ S: Addresses within this block are non-portable.
+ S: </iris:property>
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 38]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ S: </iris:simpleEntity>
+ S: </iris:additional>
+ S: </iris:resultSet>
+ S:
+ S: </iris:response>
+
+ Figure 12: Example 2
+
+Appendix C. Specificity Examples
+
+ This section includes examples to clarify specificity options for
+ network and ASN searches.
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+
+ Contents of the DB
+
+ Figure 13: Specificity Example 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 39]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query|- - - - - - - | 192.0.2.0 - 192.0.2.9
+
+
+ Exact match (1)
+
+ Result: C
+
+ Figure 14: Specificity Example 2
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query|- - - - - - - - | 192.0.2.0 - 192.0.2.12
+
+
+ Exact match (2)
+
+ Result: None
+
+ Figure 15: Specificity Example 3
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 40]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query|- - - - - - - - - | 192.0.2.0 - 192.0.2.15
+
+
+ All more specifics, allowEquivalences = false
+
+ Result: C, F, & G (A is not included; exact match)
+
+ Figure 16: Specificity Example 4
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query|- - - - - - - - - | 192.0.2.0 - 192.0.2.15
+
+
+ All more specifics, allowEquivalences = true
+
+ Result: A, C, F, & G (A is included; exact match)
+
+ Figure 17: Specificity Example 5
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 41]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query|- - - - - - - - - | 192.0.2.0 - 192.0.2.15
+
+
+ One level more specifics, allowEquivalences = false
+
+ Result: C
+
+ Figure 18: Specificity Example 6
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query|- - - - - - - - - | 192.0.2.0 - 192.0.2.15
+
+
+ One level more specifics, allowEquivalences = true
+
+ Result: A
+
+ Figure 19: Specificity Example 7
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 42]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query |- - | 192.0.2.6 - 192.0.2.9
+
+
+ All less specifics, allowEquivalences = true
+
+ Result: A, C, & G (G is included; exact match)
+
+ Figure 20: Specificity Example 8
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query |- - | 192.0.2.6 - 192.0.2.9
+
+
+ All less specifics, allowEquivalences = false
+
+ Result: A & C (G is not included; exact match)
+
+ Figure 21: Specificity Example 9
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 43]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query |- - | 192.0.2.6 - 192.0.2.9
+
+
+ One level less specifics, allowEquivalences = true
+
+ Result: G (the exact match)
+
+ Figure 22: Specificity Example 10
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query |- - | 192.0.2.6 - 192.0.2.9
+
+
+ One level less specifics, allowEquivalences = false
+
+ Result: C
+
+ Figure 23: Specificity Example 11
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 44]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query|- - - - - - | 192.0.2.0 - 192.0.2.8
+
+
+ One level less specifics, allowEquivalences = false or true
+
+ Result: C
+
+ Figure 24: Specificity Example 12
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query = E
+
+
+ Find parent (Query argument is a handle)
+
+ Result: D
+
+ Figure 25: Specificity Example 13
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 45]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+ A |------------------| 192.0.2.0 - 192.0.2.15
+
+ B |------------------| 192.0.2.16 - 192.0.2.31
+
+ C |--------------| 192.0.2.0 - 192.0.2.9
+
+ D |---------------| 192.0.2.16 - 192.0.2.30
+
+ E |---------------| 192.0.2.16 - 192.0.2.30
+
+ F |--------| 192.0.2.0 - 192.0.2.5
+
+ G |----| 192.0.2.6 - 192.0.2.9
+
+ Query = D
+
+
+ Find child (Query argument is a handle)
+
+ Result: E
+
+ Figure 26: Specificity Example 14
+
+Appendix D. Contributors
+
+ David Blacka and Tim Christensen made substantial contributions to
+ this document.
+
+Appendix E. Acknowledgements
+
+ Eric Hall, William Leibzon, April Marine, George Michaelson, Tim
+ Christensen Cathy Murphy, Andrei Robachevsky, Marcos Sanz, Frederico
+ Neves, Ted Hardie, and many others contributed constructively in the
+ mailing list discussions and IETF Meeting sessions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 46]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+Authors' Addresses
+
+ Engin Gunduz
+ RIPE NCC
+ Singel 258
+ Amsterdam 1016AB
+ The Netherlands
+
+ Phone: +31 20 535 4444
+ EMail: e.gunduz@computer.org
+
+
+ Andrew L. Newton
+ VeriSign, Inc.
+ 21345 Ridgetop Circle
+ Sterling, VA 20166
+ USA
+
+ Phone: +1 703 948 3382
+ EMail: andy@hxr.us
+
+
+ Shane W. Kerr
+ RIPE NCC
+ Singel 258
+ Amsterdam 1016AB
+ The Netherlands
+
+ Phone: +31 20 535 4444
+ EMail: shane@time-travellers.org
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 47]
+
+RFC 4698 IRIS Address Registry Type October 2006
+
+
+Full Copyright Statement
+
+ Copyright (C) The Internet Society (2006).
+
+ This document is subject to the rights, licenses and restrictions
+ contained in BCP 78, and except as set forth therein, the authors
+ retain all their rights.
+
+ This document and the information contained herein are provided on an
+ "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
+ OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
+ ENGINEERING TASK FORCE DISCLAIM 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.
+
+Intellectual Property
+
+ The IETF takes no position regarding the validity or scope of any
+ Intellectual Property Rights or other rights that might be claimed to
+ pertain to the implementation or use of the technology described in
+ this document or the extent to which any license under such rights
+ might or might not be available; nor does it represent that it has
+ made any independent effort to identify any such rights. Information
+ on the procedures with respect to rights in RFC documents can be
+ found in BCP 78 and BCP 79.
+
+ Copies of IPR disclosures made to the IETF Secretariat and any
+ assurances of licenses to be made available, or the result of an
+ attempt made to obtain a general license or permission for the use of
+ such proprietary rights by implementers or users of this
+ specification can be obtained from the IETF on-line IPR repository at
+ http://www.ietf.org/ipr.
+
+ The IETF invites any interested party to bring to its attention any
+ copyrights, patents or patent applications, or other proprietary
+ rights that may cover technology that may be required to implement
+ this standard. Please address the information to the IETF at
+ ietf-ipr@ietf.org.
+
+Acknowledgement
+
+ Funding for the RFC Editor function is provided by the IETF
+ Administrative Support Activity (IASA).
+
+
+
+
+
+
+
+Gunduz, et al. Standards Track [Page 48]
+