RFC 7840

A Routing Request Extension for the HTTP-Enabled Location Delivery (HELD) Protocol

πŸ“… published May 2016, from ietf

A Routing Request Extension for the HTTP-Enabled Location Delivery (HELD) Protocol πŸ’–

RFC 7840 πŸŽ€

  • Authors: J. Winterbottom (Winterb Consulting Services), H. Tschofenig, and L. Liess (Deutsche Telekom)
  • Category: Standards Track
  • Date: May 2016
  • ISSN: 2070-1721
  • Updates: RFC 5985 and RFC 6881. It doesn't list any RFCs it obsoletes.

Abstract ✨

Okay so, when location servers can reach emergency routing info, they can send it back with the location info, but only if the request asks for it πŸ—ΊοΈ. This doc extends the HELD protocol, and that's what updates RFC 5985 to make it work. Getting location and routing in one request-response exchange also updates RFC 6881, because right now those two things are totally separate operations. Iconic glow-up, honestly 🌸.

Status of This Memo 🧚

This is an Internet Standards Track document. βœ…

It's a product of the Internet Engineering Task Force (IETF), so it reflects the consensus of the IETF community. It went through public review and got approved for publication by the Internet Engineering Steering Group (IESG). If you want more on Internet Standards, check out Section 2 of RFC 5741 πŸ“š.

For the current status, any errata, and how to send feedback, go to http://www.rfc-editor.org/info/rfc7840 πŸ”—.

Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as they stood on the publication date. Please read these carefully, because they spell out your rights and restrictions for this document πŸ“œ. Code Components pulled out of this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they come without warranty as described in the Simplified BSD License 🫢.

Table of Contents πŸ¦‹

1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
3.  Motivation  . . . . . . . . . . . . . . . . . . . . . . . . .   3
  3.1.  LoST Reuse Considerations . . . . . . . . . . . . . . . .   6
4.  Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . .   6
5.  Modification to Phone BCP . . . . . . . . . . . . . . . . . .   7
6.  HELD Schema Extension . . . . . . . . . . . . . . . . . . . .   8
7.  Examples  . . . . . . . . . . . . . . . . . . . . . . . . . .  10
8.  Privacy Considerations  . . . . . . . . . . . . . . . . . . .  12
9.  Security Considerations . . . . . . . . . . . . . . . . . . .  12
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  13
  10.1.  URN Sub-Namespace Registration for
         'urn:ietf:params:xml:ns:geopriv:held:ri' . . . . . . . .  13
  10.2.  XML Schema Registration  . . . . . . . . . . . . . . . .  13
11. References  . . . . . . . . . . . . . . . . . . . . . . . . .  14
  11.1.  Normative References . . . . . . . . . . . . . . . . . .  14
  11.2.  Informative References . . . . . . . . . . . . . . . . .  14
Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .  15
Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  16

1. Introduction ✨

Okay, so the general ECRIT (Emergency Context Resolution with Internet Technology) calling models in [RFC6443] and [RFC6881] need a local Location-to-Service Translation (LoST) server, or a network of forest guides, to figure out the address of the Public Safety Answering Point (PSAP) that's best placed to handle a call πŸ“ž. The forest-guide networks never really showed up 😭. Meanwhile PSAPs are moving onto IP networks, but LoST servers aren't everywhere. Some regions and countries have been hesitant to deploy them, so parts of the current ECRIT architecture are hard to make real πŸ’€.

To meet regulatory requirements like [M493], the evolving architectures in Europe pair location and routing information in the access network, and they use a softswitch-centric approach to emergency call processing πŸ”₯. This document describes an extension to the HELD protocol [RFC5985], so a location information server can hand out emergency routing information even when there's no LoST server or forest-guide network around 🧚.

2. 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 [RFC2119] πŸ“–.

The terms "Location Information Server (LIS)", "Emergency Services Routing Proxy (ESRP)", "Voice Service Provider (VSP)", and "Public Safety Answering Point (PSAP)" are used as defined in [RFC6443] πŸŽ€.

The term "Access Network Provider" is used as defined in [RFC5687]. It covers both the Internet Access Provider (IAP) and the Internet Service Provider (ISP) πŸ’….

The term "forest guide" is used as defined in [RFC5582] 🌲.

3. Motivation πŸ’–

The Internet emergency calling architecture in [RFC6881] describes two main models for emergency call processing πŸ‘‘. The first one is the device-centric model. Here a device gets its location using a location configuration protocol, like HELD [RFC5985], and then works out the address of the next hop closer to the local PSAP using LoST [RFC5222]. Figure 1 shows this model in a simplified form πŸ¦‹.

     +---Location Request---+
     |         (1)          |
 +---+----+             +---V---+
 |        |<--Location--|  LIS  |
 | Caller |    (2)      +-------+             +--------+
 |        |                                   | ESRP/  |
 |        |----Find Service-------+           |  PSAP  |
 +------^-+     (3)               |           +--------+
    |   |                +--------V----+          ^
    |   +-----Service----| LoST Server |          |
    |         (4)        +-------------+      +---+---+
    +-------------Call Initiation------------>|  VSP  |
                     (5)                      +-------+

          Figure 1: Device-Centric Emergency Services Model

The second approach is the softswitch-centric model. A device starts an emergency call, and the serving softswitch notices it's an emergency and goes to get the caller's location from a LIS. It does that using HELD [RFC5985] with identity extensions [RFC6155] [RFC6915], and then it works out the route to the local PSAP using LoST [RFC5222] ✨. Figure 2 shows the high-level protocol interactions 🌸.

                            +---Location Request---+
                            |         (2)          |
                        +---V---+                  |
                        |  LIS  |                  |
                        +----+--+             +----+----+
                             |                |         |
                             +----Location--->|  Soft-  |
 +--------+                          (3)      | switch  |
 | Caller |------Call Initiation------------> |         |
 +--------+          (1)                      +-+-^---+-+
                 +-------------+                | |   |
                 | LoST Server |<-Find Service--+ |   |
                 +------+------+     (4)          |   |
                        |                         |   |
                        +----------Service--------+   |
                                    (5)               |
                          +-----------+               |
                          | ESRP/PSAP |<------Call----+
                          +-----------+       (6)

             Figure 2: Softswitch-Centric Calling Model

In the softswitch-centric model, when a VSP gets an emergency call, it has two jobs 🧁. The first job is figuring out which LIS to ask for location info. It does this with a reverse DNS lookup, described in [RFC7216], to get the serving domain name, and then it uses [RFC5986] to find the LIS URI πŸ”Ž. Once it has the location from the LIS, the VSP finds the LoST server tied to the domain serving the caller and asks it for the right PSAP address πŸ’Œ.

LoST server discovery is domain-based, kind of like LIS discovery 🌐. The difference is that a LIS is bound to a domain, but a LoST server is bound to a geographic area πŸ—ΊοΈ. That means for a domain spanning several geographic regions, the LoST server you find might not be able to route you to the PSAP you actually need 😬. When that happens, the LoST server you reached has to ask other LoST servers for help, and that needs forest guides to be deployed 🌲.

Several countries have said they're reluctant to deploy public LoST servers πŸ™ˆ. In countries that are open to LoST and forest guides, no public forest guides have been deployed. There also seems to be little interest from the public sector in setting up a global forest-guide network. All of this threatens the ability of both the device-centric and the softswitch-centric calling approaches to work everywhere 🚨.

Both the device-centric and softswitch-centric calling models involve a LIS bound to the serving access network 🏠. In lots of cases, the LIS already knows the destination PSAP URI for a given location 🧠. In [RFC6881], for example, the LIS checks civic locations with a location validation procedure based on the LoST protocol [RFC5222]. That LoST validation request looks a lot like a LoST routing request, and it gives the LIS the same PSAP routing information a routing request would πŸ’«. In other cases, the LIS learned the correct PSAP for a location when it was provisioned, or the access network always routes to the same emergency provider πŸ“. No matter how the LIS learns the PSAP URI for a location, in a great many cases it already has that information πŸ™Œ.

This document specifies an extension to the HELD protocol, so emergency routing information can be requested from the LIS at the same time as location information πŸ₯°. This document updates [RFC6881] by requiring devices and softswitches that understand this specification to always request routing information. That way there's no risk of query failure where no LoST server or forest-guide network is deployed πŸ›‘οΈβœ¨.

3.1. LoST Reuse Considerations

okay so the LoST protocol [RFC5222] already has a <mapping> element that describes a service region and its service URLs, and yes, reusing it to deliver the routing URIs was seriously considered πŸ‘€ but it's giving "mismatch" πŸ’€. Several of its required components would have to hold values that are ambiguous or misleading. The "source" attribute is required to contain a LoST application-unique string for the authoritative server, but in the situations this specification covers, there may not be an authoritative LoST server at all, so whatever went in there would be misleading πŸ™ˆ. On top of that, routing information received this way should not be cached by the receiver, so saying when it expires or when it was last updated is irrelevant 🫠. not me reusing a whole element just to put in fake data 😀


4. Mechanism ✨

okay this is the core of it πŸ”₯ The mechanism adds one element to the HELD locationRequest and one element to the locationResponse. Bestie, it's that simple.

The request element says the requestor wants the LIS to provide routing information based on the location of the end device. If the routing request has no attribute, then URIs for urn:service:sos come back πŸ’– If the requestor wants routing information for a specific service, they can include an optional service URN. That service URN MUST exist in the IANA "Service URN Labels" repository created by [RFC5031] 🧚 If a service is specified and the LIS does not understand the requested service, then URIs for urn:service:sos are returned.

If the LIS understands the routing request and has routing information for the location, it puts that information in a routingInformation element inside the locationResponse ✨ How the LIS gets this information is left up to the implementation. Possibilities are described in Section 3.

A LIS that does not understand the routing request element just ignores it and returns the location information the normal way πŸ¦‹

A LIS that does support the routing request element MUST support returning URIs for urn:service:sos and any regionally defined sub-services, while following the URN traversal rules defined in [RFC5031] πŸ‘‘

A LIS that understands the routing request element but can't get any routing information for the end device's location MUST set the defaultRoute attribute to "true" and return a default PSAP or gateway URI along with the determined location information in the locationResponse 🌸 A fallback with main character energy.

A LIS that understands the routing request element but not the specified service URN MUST follow the URN traversal rules defined in [RFC5031] 🧚

A LIS that receives a request for emergency routing information that it understands MUST return the correct emergency routing information if it has, or is able to acquire, the routing information for the location of the target device 🚨

The routing information in the location response is a service element identified by a service name. The service name is a URN, and it might be a general emergency service URN like urn:service:sos or a specific service URN, depending on what was requested and what the LIS is able to provide ✨ A list of one or more service destinations is given for the service name. Each destination is a URI, and each URI scheme should only appear once in this list πŸ“ The routing URIs are meant to be used at the time they are received. To avoid the risk of using stale routing URIs, the values MUST NOT be cached by the receiving entity πŸ™…β€β™€οΈ


5. Modification to Phone BCP πŸ’…

This section describes the normative updates to Phone BCP [RFC6881] and it's lowkey the part everyone should read 🫢

It is important for devices and intermediaries to take every step possible to make sure emergency calls get routed to the correct PSAP πŸš‘ An alternative to providing routing information through global forest guides or local LoST servers is for local networks to configure the PSAP address information in the network location server ✨ This specification updates Phone BCP [RFC6881] to provide this option. The update requires devices and intermediaries using the HELD protocol to always include the HELD routing extension πŸŽ€ If the LIS is configured with the routing information, it can provide it. If it isn't, then the device or intermediary tries LoST to acquire the PSAP URI πŸ’œ

Section 6.5 of [RFC6881] defines "End System Location Configuration" πŸ“– Requirement ED-23/INT-18/SP-14 is updated when HELD is used as the Location Configuration Protocol (LCP), so that "the request MUST include the requestRoutingInformation element." The rest of the requirement stays unchanged 🌈

This document adds a new requirement to Section 7 of [RFC6881]:

"ED-51a : Endpoints MUST support the HELD requestRoutingInformation element and be able to interpret and use any routing information returned in the locationResponse."

This document adds two new requirements to Section 8 of [RFC6881]:

"ED-52a : Endpoints that acquire routing information in a HELD locationResponse SHOULD use this routing information but MAY perform a LoST findService request if they have a location value."
"ED-52b : Endpoints that acquire routing information in a HELD locationResponse with a defaultRoute attribute of "true" MUST perform a LoST findService request if they have a location value. If a route is provided by the LoST server, then this route MUST be used, otherwise the routing information provided in the HELD response SHOULD be used."

This document amends SP-26 from Section 8 of [RFC6881] so that a LoST mapping need not be requested if non-default routing information is provided in the HELD locationResponse πŸ¦‹


6. HELD Schema Extension 🧁

This section describes the schema extension to HELD. Here's the whole thing, no cap πŸ’–

<?xml version="1.0"?>
<xs:schema
  targetNamespace="urn:ietf:params:xml:ns:geopriv:held:ri"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:ri="urn:ietf:params:xml:ns:geopriv:held:ri"
  xmlns:xml="http://www.w3.org/XML/1998/namespace"
  elementFormDefault="qualified" attributeFormDefault="unqualified">

  <xs:element name="requestRoutingInformation">
     <xs:complexType name="empty">
        <xs:attribute name="service" type="xs:anyUri"
            use="optional" default="urn:service:sos"/>
     </xs:complexType>
  </xs:element>

  <xs:complexType name="service">
     <xs:complexContent>
       <xs:restriction base="xs:anyType">

          <xs:sequence>
             <xs:element name="dest" type="xs:anyURI"
                  maxOccurs="unbounded"/>
             <xs:any namespace="##other" processContents="lax"
                    minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
          <xs:attribute name="defaultRoute" type="xs:boolean"
                        use="optional" default="false"/>
          <xs:attribute name="serviceUri" type="xs:anyURI"
                        use="required"/>
          <xs:anyAttribute namespace="##any" processContents="lax"/>
       </xs:restriction>
     </xs:complexContent>
  </xs:complexType>

  <xs:element name="routingInformation" type="ri:riType"/>

  <xs:complexType name="riType">
    <xs:complexContent>
      <xs:restriction base="xs:anyType">
        <xs:sequence>
          <xs:element name="service" type="ri:service"/>
          <xs:any namespace="##other" processContents="lax"
                  minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##any" processContents="lax"/>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>

</xs:schema>

7. Examples 🌟

Figure 3 shows a <locationRequest> example with IP flow information in the request 🧚

<locationRequest xmlns="urn:ietf:params:xml:ns:geopriv:held"
                 responseTime="emergencyRouting">

  <requestRoutingInformation
     xmlns="urn:ietf:params:xml:ns:geopriv:held:ri"/>

  <flow xmlns="urn:ietf:params:xml:ns:geopriv:held:flow"
            layer4="tcp" layer3="ipv4">
    <src>
      <address>192.0.2.12</address>
      <port>1024</port>
    </src>
    <dst>
      <address>192.0.2.195</address>
      <port>80</port>
    </dst>
  </flow>
</locationRequest>

Figure 3: Example Location Request πŸ’…

Figure 4 shows a <locationResponse> message with two location URIs, an HTTPS one and a SIP one 🌈 The response also contains routing information, so it's giving full package 🎁

<locationResponse xmlns="urn:ietf:params:xml:ns:geopriv:held">
  <locationUriSet expires="2006-01-01T13:00:00.0Z">
    <locationURI>
                https://ls.example.com:9768/357yc6s64ceyoiuy5ax3o
        </locationURI>
    <locationURI>
                sip:9769+357yc6s64ceyoiuy5ax3o@ls.example.com
    </locationURI>
  </locationUriSet>

  <routingInformation
      xmlns="urn:ietf:params:xml:ns:geopriv:held:ri">
    <service serviceUri="urn:service:sos">
      <dest>sip:112@example.com</dest>
      <dest>sips:112@example.com</dest>
      <dest>xmpp:112@example.com</dest>
    </service>
  </routingInformation>

</locationResponse>

Figure 4: Example Location Response πŸ¦‹

Figure 5 shows a <locationResponse> message with default routing information and an HTTPS location URI πŸ’œ

<locationResponse xmlns="urn:ietf:params:xml:ns:geopriv:held">
   <locationUriSet expires="2016-01-01T13:00:00.0Z">
      <locationURI>
             https://ls.example.com:9768/357yc6s64ceyoiuy5ax3o
          </locationURI>
   </locationUriSet>

   <routingInformation
          xmlns="urn:ietf:params:xml:ns:geopriv:held:ri">
      <service defaultRoute="true" serviceUri="urn:service:sos">
         <dest>sip:112@example.com</dest>
         <dest>sips:112@example.com</dest>
         <dest>xmpp:112@example.com</dest>
      </service>
   </routingInformation>

</locationResponse>

Figure 5: Example Location Response with Default Routing Information πŸ“


8. Privacy Considerations πŸ”’

This document makes no changes that require privacy considerations beyond those already described in [RFC5985]. It does, however, extend those described in [RFC6155] 🫣

[RFC5985] describes the privacy considerations around the HELD location configuration protocol, and this document makes no specific changes to them ✨

[RFC6155] extends HELD beyond a simple LCP by enabling authorized third parties to acquire location information, and it describes the issues in Section 4. The HELD routing extension supports returning URIs that represent specific services operating in the Target's vicinity. That's additional information about the Target, so as a consequence, it is recommended that this option only be used when the LIS returns a location URI, not a location value πŸ‘€


9. Security Considerations 🚨

This document imposes no additional security considerations beyond those already described in [RFC5985] and [RFC6155] πŸ”


10. IANA Considerations 🧚

okay bestie, we're in the home stretch!! πŸŽ€ this part is all about the registrations and the reference lists, so let's get into it πŸ’…

10.1. URN Sub-Namespace Registration for 'urn:ietf:params:xml:ns:geopriv:held:ri'

so IANA registered a brand new XML namespace here, and it follows the guidelines in [RFC3688]. ✨

URI:  urn:ietf:params:xml:ns:geopriv:held:ri

Registrant Contact:  IETF ECRIT working group (ecrit@ietf.org),
   James Winterbottom (a.james.winterbottom@gmail.com).

XML:

BEGIN
 <?xml version="1.0"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
  <head>
    <title>HELD Routing Information Extensions</title>
  </head>
  <body>
   <h1>Additional Element for HELD Routing Information</h1>
   <h2>urn:ietf:params:xml:ns:geopriv:held:ri</h2>
   <p>See <a href="http://www.rfc-editor.org/rfc/rfc7840.txt">
      RFC 7840</a>.</p>
  </body>
</html>
END

10.2. XML Schema Registration

this section registers an XML schema too, again following the procedures in [RFC3688]. πŸ¦‹

URI:  urn:ietf:params:xml:schema:geopriv:held:ri

Registrant Contact:  IETF ECRIT working group (ecrit@ietf.org),
   James Winterbottom (a.james.winterbottom@gmail.com).

XML:  The XML for this schema can be found as the entirety of
   Section 6 of this document.

11. References

11.1. Normative References

[RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
           Requirement Levels", BCP 14, RFC 2119,
           DOI 10.17487/RFC2119, March 1997,
           <http://www.rfc-editor.org/info/rfc2119>.

[RFC5985]  Barnes, M., Ed., "HTTP-Enabled Location Delivery (HELD)",
           RFC 5985, DOI 10.17487/RFC5985, September 2010,
           <http://www.rfc-editor.org/info/rfc5985>.

[RFC6881]  Rosen, B. and J. Polk, "Best Current Practice for
           Communications Services in Support of Emergency Calling",
           BCP 181, RFC 6881, DOI 10.17487/RFC6881, March 2013,
           <http://www.rfc-editor.org/info/rfc6881>.

11.2. Informative References

[M493]     European Telecommunications Standards Institute,
           "Functional architecture to support European requirements
           on emergency caller location determination and transport",
           ES 203 178,  V1.1.1, February 2015.

[RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
           DOI 10.17487/RFC3688, January 2004,
           <http://www.rfc-editor.org/info/rfc3688>.

[RFC5031]  Schulzrinne, H., "A Uniform Resource Name (URN) for
           Emergency and Other Well-Known Services", RFC 5031,
           DOI 10.17487/RFC5031, January 2008,
           <http://www.rfc-editor.org/info/rfc5031>.

[RFC5222]  Hardie, T., Newton, A., Schulzrinne, H., and H.
           Tschofenig, "LoST: A Location-to-Service Translation
           Protocol", RFC 5222, DOI 10.17487/RFC5222, August 2008,
           <http://www.rfc-editor.org/info/rfc5222>.

[RFC5582]  Schulzrinne, H., "Location-to-URL Mapping Architecture and
           Framework", RFC 5582, DOI 10.17487/RFC5582, September
           2009, <http://www.rfc-editor.org/info/rfc5582>.

[RFC5687]  Tschofenig, H. and H. Schulzrinne, "GEOPRIV Layer 7
           Location Configuration Protocol: Problem Statement and
           Requirements", RFC 5687, DOI 10.17487/RFC5687, March 2010,
           <http://www.rfc-editor.org/info/rfc5687>.

[RFC5986]  Thomson, M. and J. Winterbottom, "Discovering the Local
           Location Information Server (LIS)", RFC 5986,
           DOI 10.17487/RFC5986, September 2010,
           <http://www.rfc-editor.org/info/rfc5986>.

[RFC6155]  Winterbottom, J., Thomson, M., Tschofenig, H., and R.
           Barnes, "Use of Device Identity in HTTP-Enabled Location
           Delivery (HELD)", RFC 6155, DOI 10.17487/RFC6155, March
           2011, <http://www.rfc-editor.org/info/rfc6155>.

[RFC6443]  Rosen, B., Schulzrinne, H., Polk, J., and A. Newton,
           "Framework for Emergency Calling Using Internet
           Multimedia", RFC 6443, DOI 10.17487/RFC6443, December
           2011, <http://www.rfc-editor.org/info/rfc6443>.

[RFC6915]  Bellis, R., "Flow Identity Extension for HTTP-Enabled
           Location Delivery (HELD)", RFC 6915, DOI 10.17487/RFC6915,
           April 2013, <http://www.rfc-editor.org/info/rfc6915>.

[RFC7216]  Thomson, M. and R. Bellis, "Location Information Server
           (LIS) Discovery Using IP Addresses and Reverse DNS",
           RFC 7216, DOI 10.17487/RFC7216, April 2014,
           <http://www.rfc-editor.org/info/rfc7216>.

Acknowledgements

big thank you moment 🌈🫢 we would like to thank Wilfried Lange for sharing his views with us. πŸ’– we would also like to thank Bruno Chatras for his early review comments and Keith Drage for his more detailed review. ✨ thanks to Roger Marshall and Randy Gellens for their helpful suggestions. πŸ“

Authors' Addresses

James Winterbottom
Winterb Consulting Services
Gwynneville, NSW  2500
Australia

Phone: +61 448 266004
Email: a.james.winterbottom@gmail.com


Hannes Tschofenig
Hall in Tirol  6060
Austria

Email: Hannes.Tschofenig@gmx.net
URI:   http://www.tschofenig.priv.at


Laura Liess
Deutsche Telekom Networks
Deutsche Telekom Allee 7
Darmstadt, Hessen  64295
Germany

Email: L.Liess@telekom.de
URI:   http://www.telekom.de

and that's a wrap on RFC 7840!! πŸ‘‘ the whole spec, from the intro to the authors, is all here. periodt. πŸ’…πŸ¦‹

πŸ“¦ where this page comes from