| < draft-ietf-ecrit-data-only-ea-10.txt | draft-ietf-ecrit-data-only-ea-11.txt > | |||
|---|---|---|---|---|
| ECRIT B. Rosen | ECRIT B. Rosen | |||
| Internet-Draft NeuStar, Inc. | Internet-Draft NeuStar, Inc. | |||
| Intended status: Standards Track H. Schulzrinne | Intended status: Standards Track H. Schulzrinne | |||
| Expires: February 12, 2016 Columbia U. | Expires: September 2, 2016 Columbia U. | |||
| H. Tschofenig | H. Tschofenig | |||
| August 11, 2015 | ARM Limited | |||
| R. Gellens | ||||
| March 1, 2016 | ||||
| Data-Only Emergency Calls | Data-Only Emergency Calls | |||
| draft-ietf-ecrit-data-only-ea-10.txt | draft-ietf-ecrit-data-only-ea-11.txt | |||
| Abstract | Abstract | |||
| RFC 6443 'Framework for Emergency Calling Using Internet Multimedia' | RFC 6443 'Framework for Emergency Calling Using Internet Multimedia' | |||
| describes how devices use the Internet to place emergency calls and | describes how devices use the Internet to place emergency calls and | |||
| how Public Safety Answering Points (PSAPs) can handle Internet | how Public Safety Answering Points (PSAPs) handle Internet multimedia | |||
| multimedia emergency calls natively. The exchange of multimedia | emergency calls natively. The exchange of multimedia traffic for | |||
| traffic typically involves a SIP session establishment starting with | emergency services involves a SIP session establishment starting with | |||
| a SIP INVITE that negotiates various parameters for that session. | a SIP INVITE that negotiates various parameters for that session. | |||
| In some cases, however, the transmission of application data is | In some cases, however, the transmission of application data is all | |||
| everything that is needed. Examples of such environments include a | that is needed. Examples of such environments include alerts issued | |||
| temperature sensors issuing alerts, or vehicles sending crash data. | by a temperature sensor, burglar alarm, or chemical spill sensor. | |||
| Often these alerts are conveyed as one-shot data transmissions. | Often these alerts are conveyed as one-shot data transmissions. | |||
| These type of interactions are called 'data-only emergency calls'. | These type of interactions are called 'data-only emergency calls'. | |||
| This document describes a container for the data based on the Common | This document describes a container for the data based on the Common | |||
| Alerting Protocol (CAP) and its transmission using the SIP MESSAGE | Alerting Protocol (CAP) and its transmission using the SIP MESSAGE | |||
| transaction. | transaction. | |||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| skipping to change at page 1, line 46 ¶ | skipping to change at page 1, line 48 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on February 12, 2016. | This Internet-Draft will expire on September 2, 2016. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2015 IETF Trust and the persons identified as the | Copyright (c) 2016 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| skipping to change at page 2, line 40 ¶ | skipping to change at page 2, line 40 ¶ | |||
| 5.1. 425 (Bad Alert Message) Response Code . . . . . . . . . . 9 | 5.1. 425 (Bad Alert Message) Response Code . . . . . . . . . . 9 | |||
| 5.2. The AlertMsg-Error Header Field . . . . . . . . . . . . . 9 | 5.2. The AlertMsg-Error Header Field . . . . . . . . . . . . . 9 | |||
| 6. Updates to the CAP Message . . . . . . . . . . . . . . . . . 11 | 6. Updates to the CAP Message . . . . . . . . . . . . . . . . . 11 | |||
| 7. Call Backs . . . . . . . . . . . . . . . . . . . . . . . . . 11 | 7. Call Backs . . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 8. Handling Large Amounts of Data . . . . . . . . . . . . . . . 11 | 8. Handling Large Amounts of Data . . . . . . . . . . . . . . . 11 | |||
| 9. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 | 9. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 10. Security Considerations . . . . . . . . . . . . . . . . . . . 15 | 10. Security Considerations . . . . . . . . . . . . . . . . . . . 15 | |||
| 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 | 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 | |||
| 11.1. Registration of the 'application/emergencyCall.cap+xml' | 11.1. Registration of the 'application/emergencyCall.cap+xml' | |||
| MIME type . . . . . . . . . . . . . . . . . . . . . . . 17 | MIME type . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
| 11.2. IANA Registration of Additional Data Block . . . . . . . 18 | 11.2. IANA Registration of 'cap' Additional Data Block . . . . 18 | |||
| 11.3. IANA Registration for 425 Response Code . . . . . . . . 18 | 11.3. IANA Registration for 425 Response Code . . . . . . . . 18 | |||
| 11.4. IANA Registration of New AlertMsg-Error Header Field . . 19 | 11.4. IANA Registration of New AlertMsg-Error Header Field . . 19 | |||
| 11.5. IANA Registration for the SIP AlertMsg-Error Codes . . . 19 | 11.5. IANA Registration for the SIP AlertMsg-Error Codes . . . 19 | |||
| 12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 20 | 12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
| 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 | 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
| 13.1. Normative References . . . . . . . . . . . . . . . . . . 20 | 13.1. Normative References . . . . . . . . . . . . . . . . . . 20 | |||
| 13.2. Informative References . . . . . . . . . . . . . . . . . 21 | 13.2. Informative References . . . . . . . . . . . . . . . . . 21 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 | |||
| 1. Introduction | 1. Introduction | |||
| RFC 6443 [RFC6443] describes how devices use the Internet to place | RFC 6443 [RFC6443] describes how devices use the Internet to place | |||
| emergency calls and how Public Safety Answering Points (PSAPs) can | emergency calls and how Public Safety Answering Points (PSAPs) handle | |||
| handle Internet multimedia emergency calls natively. The exchange of | Internet multimedia emergency calls natively. The exchange of | |||
| multimedia traffic typically involves a SIP session establishment | multimedia traffic for emergency services involves a SIP session | |||
| starting with a SIP INVITE that negotiates various parameters for | establishment starting with a SIP INVITE that negotiates various | |||
| that session. | parameters for that session. | |||
| In some cases, however, there is only application data to be conveyed | In some cases, however, there is only application data to be conveyed | |||
| from the end devices to a PSAP or some other intermediary. Examples | from the end devices to a PSAP or an intermediary. Examples of such | |||
| of such environments includes sensors issuing alerts, or vehicles | environments includes sensors issuing alerts, or vehicles sending | |||
| sending crash data. These messages may be one-shot alerts to | crash data. These messages may be one-shot alerts to emergency | |||
| emergency authorities and do not require establishment of a session. | authorities and do not require establishment of a session. These | |||
| These type of interactions are called 'data-only emergency calls'. | type of interactions are called 'data-only emergency calls'. In this | |||
| In this document, we use the term "call" so that similarities between | document, we use the term "call" so that similarities between data- | |||
| full sessions with interactive media can be exploited. | only (non-interactive) alerts and sessions with interactive media are | |||
| more obvious. | ||||
| Data-only emergency calls are similar to regular emergency calls in | Data-only emergency calls are similar to regular emergency calls in | |||
| the sense that they require the emergency indications, emergency call | the sense that they require the emergency indications, emergency call | |||
| routing functionality and may even have the same location | routing functionality and may even have the same location | |||
| requirements. However, the communication interaction will not lead | requirements. However, the communication interaction will not lead | |||
| to the exchange of interactive media, that is, Real-Time Protocol | to the exchange of interactive media, that is, Real-Time Protocol | |||
| packets, such as voice, video data or real-time text. | packets, such as voice, video data or real-time text. | |||
| The Common Alerting Protocol (CAP) [cap] is a document format for | The Common Alerting Protocol (CAP) [cap] is a document format for | |||
| exchanging emergency alerts and public warnings. CAP is mainly used | exchanging emergency alerts and public warnings. CAP is mainly used | |||
| for conveying alerts and warnings between authorities and from | for conveying alerts and warnings between authorities and from | |||
| authorities to citizen/individuals. This document is concerned with | authorities to citizen/individuals. This document is concerned with | |||
| citizen to authority "alerts", where the alert is sent without any | citizen to authority "alerts", where the alert is a call without any | |||
| interactive media. | interactive media. | |||
| This document describes a method of including a CAP message in a SIP | This document describes a method of including a CAP message in a SIP | |||
| transaction, either by value (CAP message is in the body of the | transaction, either by value (the CAP message is in the body of the | |||
| message, using a CID) or by reference (A URI is included in the | message, using a CID) or by reference (a URI is included in the | |||
| message, which when dereferenced returns the CAP message) by defining | message, which when dereferenced returns the CAP message) by defining | |||
| it as a block of "additional data" as defined in | it as a block of "additional data" as defined in | |||
| [I-D.ietf-ecrit-additional-data]. The additional data mechanism is | [I-D.ietf-ecrit-additional-data]. The additional data mechanism is | |||
| also used to send alert specific data beyond that available in the | also used to send alert specific data beyond that available in the | |||
| CAP message. This document also describes how a SIP MESSAGE | CAP message. This document also describes how a SIP MESSAGE | |||
| [RFC3428] transaction can be used to send a data-only call. | [RFC3428] transaction can be used to send a data-only call. | |||
| 2. Terminology | 2. Terminology | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| document are to be interpreted as described in RFC 2119 [RFC2119]. | document are to be interpreted as described in RFC 2119 [RFC2119]. | |||
| 3. Architectural Overview | 3. Architectural Overview | |||
| This section illustrates two envisioned usage modes; targeted and | This section illustrates two envisioned usage modes: targeted and | |||
| location-based emergency alert routing. | location-based emergency alert routing. | |||
| 1. Emergency alerts containing only data are targeted to a | 1. Emergency alerts containing only data are targeted to an | |||
| intermediary recipient responsible for evaluating the next steps. | intermediary recipient responsible for evaluating the next steps. | |||
| These steps could include: | These steps could include: | |||
| 1. Sending a call containing only data toward a Public Safety | 1. Sending a non-interactive call containing only data toward a | |||
| Answering Point (PSAP); | Public Safety Answering Point (PSAP); | |||
| 2. Establishing a third-party initiated emergency call towards a | 2. Establishing a third-party initiated emergency call towards a | |||
| PSAP that could include audio, video, and data. | PSAP that could include audio, video, and data. | |||
| 2. Emergency alerts may be targeted to a Service URN used for IP- | 2. Emergency alerts may be targeted to a Service URN used for IP- | |||
| based emergency calls where the recipient is not known to the | based emergency calls where the recipient is not known to the | |||
| originator. In this scenario, the alert may contain only data | originator. In this scenario, the alert may contain only data | |||
| (e.g., a CAP, Geolocation header and one or more Call-Info | (e.g., a CAP, Geolocation header field and one or more Call-Info | |||
| headers containing Additional Data | header fields containing Additional Data | |||
| [I-D.ietf-ecrit-additional-data] in a SIP MESSAGE). | [I-D.ietf-ecrit-additional-data] in a SIP MESSAGE). | |||
| Figure 1 shows a deployment variant where a sensor, is pre-configured | Figure 1 shows a deployment variant where a sensor is pre-configured | |||
| (using techniques outside the scope of this document) to issue an | (using techniques outside the scope of this document) to issue an | |||
| alert to an aggregator that processes these messages and performs | alert to an aggregator that processes these messages and performs | |||
| whatever steps are necessary to appropriately react on the alert. | whatever steps are necessary to appropriately react to the alert. | |||
| For example, a security firm may use different sensor inputs to | For example, a security firm may use different sensor inputs to | |||
| dispatch their security staff to a building they protect or to | dispatch their security staff to a building they protect or to | |||
| initiate a third-party emergency call. | initiate a third-party emergency call. | |||
| +------------+ +------------+ | +------------+ +------------+ | |||
| | Sensor | | Aggregator | | | Sensor | | Aggregator | | |||
| | | | | | | | | | | |||
| +---+--------+ +------+-----+ | +---+--------+ +------+-----+ | |||
| | | | | | | |||
| Sensors | | Sensors | | |||
| skipping to change at page 5, line 29 ¶ | skipping to change at page 5, line 29 ¶ | |||
| | emergency | | emergency | |||
| | alert | | alert | |||
| | 200 (OK) | | | 200 (OK) | | |||
| |<-----------------------------| | |<-----------------------------| | |||
| | | | | | | |||
| | | | | | | |||
| Figure 1: Targeted Emergency Alert Routing | Figure 1: Targeted Emergency Alert Routing | |||
| In Figure 2 a scenario is shown whereby the alert is routed using | In Figure 2 a scenario is shown whereby the alert is routed using | |||
| location information and the Service URN. An emergency services | location information and a Service URN. An emergency services | |||
| routing proxy (ESRP) may use LoST to determine the next hop proxy to | routing proxy (ESRP) may use LoST to determine the next hop proxy to | |||
| route the alert message to. A possible receiver is a PSAP and the | route the alert message to. A possible receiver is a PSAP and the | |||
| recipient of the alert may be call taker. In the generic case, there | recipient of the alert may be a call taker. In the generic case, | |||
| is very likely no prior relationship between the originator and the | there is very likely no prior relationship between the originator and | |||
| receiver, e.g. PSAP. A PSAP, for example, is likely to receive and | the receiver, e.g., a PSAP. A PSAP, for example, is likely to | |||
| accept alerts from entities it cannot authorize. This scenario | receive and accept alerts from entities it cannot authorize. This | |||
| corresponds more to the classical emergency services use case and the | scenario corresponds to the classic emergency services use case and | |||
| description in [RFC6881] is applicable. In this use case, the only | the description in [RFC6881] is applicable. In this use case, the | |||
| difference between an emergency call, and an emergency data-only call | only difference between an emergency call and an emergency data-only | |||
| is that the former uses INVITE, creates a session and negotiates one | call is that the former uses INVITE, creates a session, and | |||
| or more media streams, while the latter uses MESSAGE, does not create | negotiates one or more media streams, while the latter uses MESSAGE, | |||
| a session and does not have media. | does not create a session, and does not have media. | |||
| +-----------+ +----------+ | +-----------+ +----------+ | |||
| +--------+ | ESRP | | PSAP | | +--------+ | ESRP | | PSAP | | |||
| | Sensor | | | | | | | Sensor | | | | | | |||
| +---+----+ +---+-------+ +---+------+ | +---+----+ +---+-------+ +---+------+ | |||
| | | | | | | | | |||
| Sensors | | | Sensors | | | |||
| trigger | | | trigger | | | |||
| emergency | | | emergency | | | |||
| alert | | | alert | | | |||
| skipping to change at page 6, line 46 ¶ | skipping to change at page 6, line 46 ¶ | |||
| |<-------------------| | | |<-------------------| | | |||
| | | | | | | | | |||
| | | | | | | | | |||
| Figure 2: Location-Based Emergency Alert Routing | Figure 2: Location-Based Emergency Alert Routing | |||
| 4. Protocol Specification | 4. Protocol Specification | |||
| 4.1. CAP Transport | 4.1. CAP Transport | |||
| A CAP message may be sent on the initial message of any SIP | A CAP message may be sent in the initial message of any SIP | |||
| transaction. However, this document only describes specific behavior | transaction. However, this document only addresses sending a CAP | |||
| when used with a SIP INVITE that would accompany a normal emergency | message in a SIP INVITE that initiates an emergency call, or in a SIP | |||
| call and a SIP MESSAGE transaction for a one-shot, data-only | MESSAGE transaction for a one-shot, data-only emergency call. | |||
| emergency call. Behavior with other transactions is not defined. | Behavior with other transactions is not defined. | |||
| The CAP message included in a SIP message as an additional-data block | The CAP message is included in a SIP message as an additional-data | |||
| [I-D.ietf-ecrit-additional-data]. Accordingly, it is introduced to | block [I-D.ietf-ecrit-additional-data]. Accordingly, it is | |||
| the SIP message with a Call-Info header with a purpose of | introduced to the SIP message with a Call-Info header field with a | |||
| "emergencyCall.cap". The header may contain a URI that is used by | purpose of "emergencyCall.cap". The header field may contain a URI | |||
| the recipient (or in some cases, an intermediary) to obtain the CAP | that is used by the recipient (or in some cases, an intermediary) to | |||
| message. Alternative, the Call-Info header may contain a Content | obtain the CAP message. Alternative, the Call-Info header field may | |||
| Indirect url [RFC2392] and the CAP message included in the body of | contain a Content Indirect url [RFC2392] and the CAP message included | |||
| the message. In either case, the CAP message is located in a MIME | in the body of the message. In either case, the CAP message is | |||
| block. The MIME type is set to 'application/emergencyCall.cap+xml'. | located in a MIME block of the type 'application/ | |||
| emergencyCall.cap+xml'. | ||||
| If the server does not support the functionality required to fulfill | If the SIP server does not support the functionality required to | |||
| the request then a 501 Not Implemented MUST be returned as specified | fulfill the request then a 501 Not Implemented MUST be returned as | |||
| in RFC 3261 [RFC3261]. This is the appropriate response when a UAS | specified in RFC 3261 [RFC3261]. This is the appropriate response | |||
| does not recognize the request method and is not capable of | when a UAS does not recognize the request method and is not capable | |||
| supporting it for any user. | of supporting it for any user. | |||
| The 415 Unsupported Media Type error MUST be returned as specified in | The 415 Unsupported Media Type error MUST be returned as specified in | |||
| RFC 3261 [RFC3261] if the server is refusing to service the request | RFC 3261 [RFC3261] if the SIP server is refusing to service the | |||
| because the message body of the request is in a format not supported | request because the message body of the request is in a format not | |||
| by the server for the requested method. The server MUST return a | supported by the server for the requested method. The server MUST | |||
| list of acceptable formats using the Accept, Accept-Encoding, or | return a list of acceptable formats using the Accept, Accept- | |||
| Accept-Language header field, depending on the specific problem with | Encoding, or Accept-Language header fields, depending on the specific | |||
| the content. | problem with the content. | |||
| 4.2. Profiling of the CAP Document Content | 4.2. Profiling of the CAP Document Content | |||
| The usage of CAP MUST conform to the specification provided with | The usage of CAP MUST conform to the specification provided with | |||
| [cap]. For the usage with SIP the following additional requirements | [cap]. For usage with SIP the following additional requirements are | |||
| are imposed: | imposed: | |||
| sender: A few sub-categories for putting a value in the <sender> | sender: The following restrictions and conditions apply to setting | |||
| element have to be considered: | the value of the <sender> element: | |||
| Originator is a SIP entity, Author indication irrelevant: When | Originator is a SIP entity, Author indication irrelevant: When | |||
| the alert was created by a SIP-based originator and it is not | the alert was created by a SIP-based originator and it is not | |||
| useful to be explicit about the author of the alert then the | useful to be explicit about the author of the alert, then the | |||
| <sender> element MUST be populated with the SIP URI of the user | <sender> element MUST be populated with the SIP URI of the user | |||
| agent. | agent. | |||
| Originator is a non-SIP entity, Author indication irrelevant: In | Originator is a non-SIP entity, Author indication irrelevant: | |||
| case that the alert was created by a non-SIP based entity and | When the alert was created by a non-SIP based entity and the | |||
| the identity of this original sender wants to be preserved then | identity of this original sender is to be preserved, then this | |||
| this identity MUST be placed into the <sender> element. In | identity MUST be placed into the <sender> element. In this | |||
| this category the it is not useful to be explicit about the | situation it is not useful to be explicit about the author of the | |||
| author of the alert. The specific type of identity being used | alert. The specific type of identity being used will depend on | |||
| will depends on the technology being used by the original | the technology used by the original originator. | |||
| originator. | ||||
| Author indication relevant: In case the author is different from | Author indication relevant: When the author is different from the | |||
| the actual originator of the message and this distinction | actual originator of the message and this distinction should be | |||
| should be preserved then the <sender> element MUST NOT contain | preserved, then the <sender> element MUST NOT contain the SIP URI | |||
| the SIP URI of the user agent. | of the user agent. | |||
| incidents: The <incidents> element MUST be present. This incident | incidents: The <incidents> element MUST be present. This incident | |||
| identifier MUST be chosen in such a way that it is unique for a | identifier MUST be chosen in such a way that it is unique for a | |||
| given <sender, expires, incidents> combination. Note that the | given <sender, expires, incidents> combination. Note that the | |||
| <expires> element is optional and may not be present. | <expires> element is optional and may not be present. | |||
| scope: The value of the <scope> element MAY be set to "Private" if | scope: The value of the <scope> element MAY be set to "Private" if | |||
| the alert is not meant for public consumption. The <addresses> | the alert is not meant for public consumption. The <addresses> | |||
| element is, however, not used by this specification since the | element is, however, not used by this specification since the | |||
| message routing is performed by SIP and the respective address | message routing is performed by SIP and the respective address | |||
| information is already available in other SIP headers. Populating | information is already available in other SIP header fields. | |||
| information twice into different parts of the message may lead to | Populating information twice into different parts of the message | |||
| inconsistency. | may lead to inconsistency. | |||
| parameter: The <parameter> element MAY contain additional | parameter: The <parameter> element MAY contain additional | |||
| information specific to the sendor. | information specific to the sendor. | |||
| area: It is RECOMMENDED to omit this element when constructing a | area: It is RECOMMENDED to omit this element when constructing a | |||
| message. In case that the CAP message already contained an <area> | message. If the CAP message already contains an <area> element, | |||
| element then the specified location information SHOULD be copied | then the specified location information SHOULD be copied into the | |||
| into the PIDF-LO structure of the 'geolocation' header. | PIDF-LO structure of the 'geolocation' header field. | |||
| 4.3. Sending a Data-Only Emergency Call | 4.3. Sending a Data-Only Emergency Call | |||
| A data-only emergency call is sent using a SIP MESSAGE transaction | A data-only emergency call is sent using a SIP MESSAGE transaction | |||
| with a CAP URI or body as described above in a manner similar to how | with a CAP URI or body as described above in a manner similar to how | |||
| an emergency call with interactive media is sent, as described in | an emergency call with interactive media is sent, as described in | |||
| [RFC6881]. The MESSAGE transaction does not create a session or send | [RFC6881]. The MESSAGE transaction does not create a session nor | |||
| media, but otherwise, the header content of the transaction, routing, | send media, but otherwise, the header content of the transaction, | |||
| and processing of data-only calls are the same as those of other | routing, and processing of data-only calls are the same as those of | |||
| emergency calls. | other emergency calls. | |||
| 5. Error Handling | 5. Error Handling | |||
| This section defines a new error response code and a header field for | This section defines a new error response code and a header field for | |||
| additional information. | additional information. | |||
| 5.1. 425 (Bad Alert Message) Response Code | 5.1. 425 (Bad Alert Message) Response Code | |||
| This SIP extension creates a new location-specific response code, | This SIP extension creates a new location-specific response code, | |||
| defined as follows, | defined as follows: | |||
| 425 (Bad Alert Message) | 425 (Bad Alert Message) | |||
| The 425 response code is a rejection of the request due to its | The 425 response code is a rejection of the request due to its | |||
| included alert content, indicating that it was malformed or not | included alert content, indicating that it was malformed or not | |||
| satisfactory for the recipient's purpose. | satisfactory for the recipient's purpose. | |||
| A SIP intermediary can also reject an alert it receives from a UA | A SIP intermediary can also reject an alert it receives from a UA | |||
| when it understands that the provided alert is malformed. | when it understands that the provided alert is malformed. | |||
| Section 5.2 describes an AlertMsg-Error header field with more | Section 5.2 describes an AlertMsg-Error header field with more | |||
| details about what was wrong with the alert message in the request. | details about what was wrong with the alert message in the request. | |||
| This header field MUST be included in the 425 response. | This header field MUST be included in the 425 response. | |||
| It is only appropriate to generate a 425 response when the responding | It is only appropriate to generate a 425 response when the responding | |||
| entity has no other information in the request that are usable by the | entity has no other information in the request that is usable by the | |||
| responder. | responder. | |||
| A 425 response code MUST NOT be sent in response to a request that | A 425 response code MUST NOT be sent in response to a request that | |||
| lacks an alert message entirely, as the user agent in that case may | lacks an alert message, as the user agent in that case may not | |||
| not support this extension at all. | support this extension. | |||
| A 425 response is a final response within a transaction, and MUST NOT | A 425 response is a final response within a transaction, and MUST NOT | |||
| terminate an existing dialog. | terminate an existing dialog. | |||
| 5.2. The AlertMsg-Error Header Field | 5.2. The AlertMsg-Error Header Field | |||
| The AlertMsg-Error header provides additional information about what | The AlertMsg-Error header field provides additional information about | |||
| was wrong with the original request. In some cases the provided | what was wrong with the original request. In some cases the provided | |||
| information will be used for debugging purposes. | information will be used for debugging purposes. | |||
| The AlertMsg-Error header field has the following ABNF [RFC5234]: | The AlertMsg-Error header field has the following ABNF [RFC5234]: | |||
| message-header /= AlertMsg-Error | message-header /= AlertMsg-Error | |||
| ; (message-header from 3261) | ; (message-header from 3261) | |||
| AlertMsg-Error = "AlertMsg-Error" HCOLON | AlertMsg-Error = "AlertMsg-Error" HCOLON | |||
| ErrorValue | ErrorValue | |||
| ErrorValue = error-code | ErrorValue = error-code | |||
| *(SEMI error-params) | *(SEMI error-params) | |||
| error-code = 1*3DIGIT | error-code = 1*3DIGIT | |||
| error-params = error-code-text | error-params = error-code-text | |||
| / generic-param ; from RFC3261 | / generic-param ; from RFC3261 | |||
| error-code-text = "code" EQUAL quoted-string ; from RFC3261 | error-code-text = "code" EQUAL quoted-string ; from RFC3261 | |||
| HCOLON, SEMI, and EQUAL are defined in RFC3261 [RFC3261]. DIGIT is | HCOLON, SEMI, and EQUAL are defined in RFC3261 [RFC3261]. DIGIT is | |||
| defined in RFC5234 [RFC5234]. | defined in RFC5234 [RFC5234]. | |||
| The AlertMsg-Error header field MUST contain only one ErrorValue to | The AlertMsg-Error header field MUST contain only one ErrorValue to | |||
| indicate what was wrong with the alert payload the recipient | indicate what was wrong with the alert payload the recipient | |||
| determined was bad. | determined was bad. | |||
| The ErrorValue contains a 3-digit error code indicating what was | The ErrorValue contains a 3-digit error code indicating what was | |||
| wrong with the alert in the request. This error code has a | wrong with the alert in the request. This error code has a | |||
| corresponding quoted error text string that is human understandable. | corresponding quoted error text string that is human understandable. | |||
| The text string are OPTIONAL, but RECOMMENDED for human readability, | The text string are OPTIONAL, but RECOMMENDED for human readability, | |||
| similar to the string phrase used for SIP response codes. That said, | similar to the string phrase used for SIP response codes. That said, | |||
| the strings are complete enough for rendering to the user, if so | the strings are complete enough for rendering to the user, if so | |||
| desired. The strings in this document are recommendations, and are | desired. The strings in this document are recommendations, and are | |||
| not standardized - meaning an operator can change the strings - but | not standardized -- meaning an operator can change the strings -- but | |||
| MUST NOT change the meaning of the error code. Similar to how RFC | MUST NOT change the meaning of the error code. Similar to how RFC | |||
| 3261 specifies, there MUST NOT be more than one string per error | 3261 specifies, there MUST NOT be more than one string per error | |||
| code. | code. | |||
| The AlertMsg-Error header field MAY be included in any response as an | The AlertMsg-Error header field MAY be included in any response if an | |||
| alert message was in the request part of the same transaction. For | alert message was in the request part of the same transaction. For | |||
| example, a UA includes an alert in an MESSAGE to a PSAP. The PSAP | example, a UA includes an alert in an MESSAGE to a PSAP. The PSAP | |||
| can accept this MESSAGE, thus creating a dialog, even though his UA | can accept this MESSAGE, thus creating a dialog, even though its UA | |||
| determined the alert message contained in the MESSAGE was bad. The | determined that the alert message contained in the MESSAGE was bad. | |||
| PSAP merely includes an AlertMsg-Error header value in the 200 OK to | The PSAP merely includes an AlertMsg-Error header field value in the | |||
| the MESSAGE informing the UA that the MESSAGE was accepted but the | 200 OK to the MESSAGE, thus informing the UA that the MESSAGE was | |||
| alert provided was bad. | accepted but the alert provided was bad. | |||
| If, on the other hand, the PSAP cannot accept the transaction without | If, on the other hand, the PSAP cannot accept the transaction without | |||
| a suitable alert message, a 425 response is sent. | a suitable alert message, a 425 response is sent. | |||
| A SIP intermediary that requires the UA's alert message in order to | A SIP intermediary that requires the UA's alert message in order to | |||
| properly process the transaction may also sends a 425 with a | properly process the transaction may also sends a 425 with an | |||
| AlertMsg-Error code. | AlertMsg-Error code. | |||
| This document defines an initial list of error code ranges for any | This document defines an initial list of AlertMsg-Error values for | |||
| SIP response, including provisional responses (other than 100 Trying) | any SIP response, including provisional responses (other than 100 | |||
| and the new 425 response. There MUST be no more than one AlertMsg- | Trying) and the new 425 response. There MUST be no more than one | |||
| Error code in a SIP response. | AlertMsg-Error code in a SIP response. | |||
| AlertMsg-Error: 100 ; code="Cannot Process the Alert Payload" | AlertMsg-Error: 100 ; code="Cannot Process the Alert Payload" | |||
| AlertMsg-Error: 101 ; code="Alert Payload was not present or could | AlertMsg-Error: 101 ; code="Alert Payload was not present or could | |||
| not be found" | not be found" | |||
| AlertMsg-Error: 102 ; code="Not enough information to determine the | AlertMsg-Error: 102 ; code="Not enough information to determine the | |||
| purpose of the alert" | purpose of the alert" | |||
| AlertMsg-Error: 103 ; code="Alert Payload was corrupted" | AlertMsg-Error: 103 ; code="Alert Payload was corrupted" | |||
| Additionally, if an entity cannot or chooses not to process the alert | Additionally, if an entity cannot or chooses not to process the alert | |||
| message from a SIP request, a 500 (Server Internal Error) SHOULD be | message from a SIP request, a 500 (Server Internal Error) SHOULD be | |||
| used with or without a configurable Retry-After header field. | used with or without a configurable Retry-After header field. | |||
| 6. Updates to the CAP Message | 6. Updates to the CAP Message | |||
| If the sender anticipates that the content of the CAP message may | If the sender anticipates that the content of the CAP message may | |||
| need to be updated during the lifecycle of the event referred to in | need to be updated during the lifecycle of the event referred to in | |||
| the message, it may include an update block as defined in | the message, it may include an update block as defined in | |||
| [I-D.rosen-ecrit-addldata-subnot]. | [I-D.rosen-ecrit-addldata-subnot].If the sender includes an update | |||
| block and does not have a globally reachable URI, then the UA must | ||||
| register it's contact with a Registrar, and include a GRUU in in the | ||||
| update block | ||||
| 7. Call Backs | 7. Call Backs | |||
| This document does not describe any method for the recipient to call | This document does not describe any method for the recipient to call | |||
| back the sender of the data-only call. Usually, these alerts are | back the sender of a data-only call. Usually, these alerts are sent | |||
| sent by automata, and do not have any mechanism to receive calls of | by automata, which do not have a mechanism to receive calls of any | |||
| any kind. The identifier in the From header may be useful to obtain | kind. The identifier in the 'From' header field may be useful to | |||
| more information, but any such mechanism is not defined in this | obtain more information, but any such mechanism is not defined in | |||
| document. The CAP message may contain related contact information | this document. The CAP message may contain related contact | |||
| for the sender. | information for the sender. | |||
| 8. Handling Large Amounts of Data | 8. Handling Large Amounts of Data | |||
| It is not atypical for sensor to have large quantities of data that | It is not atypical for sensors to have large quantities of data that | |||
| they may wish to send. Including large amounts of data in a MESSAGE | they may wish to send. Including large amounts of data in a MESSAGE | |||
| is not advisable, because SIP entities are usually not equipped to | is not advisable, because SIP entities are usually not equipped to | |||
| handle very large messages. In such cases, the sender SHOULD make | handle very large messages. In such cases, the sender SHOULD make | |||
| use of the by-reference mechanisms defined for Additional Data which | use of the by-reference mechanisms defined in | |||
| involve sending a URI in the Call-Info header and using HTTPS to | [I-D.ietf-ecrit-additional-data], which involves making the data | |||
| retrieve the data. The CAP message itself can be sent by-reference | available via HTTPS (either at the originator or at another entity), | |||
| using this mechanism as well as any or all of the Additional Data | placing a URI to the data in the 'Call-Info' header field, and the | |||
| blocks that may contain sensor-specific data. | recipient using HTTPS to retrieve the data. The CAP message itself | |||
| can be sent by-reference using this mechanism, as well as any or all | ||||
| of the Additional Data blocks that may contain sensor-specific data. | ||||
| 9. Example | 9. Example | |||
| Figure 3 shows a CAP document indicating a BURGLARY alert issued by a | Figure 3 shows a CAP document indicating a BURGLARY alert issued by a | |||
| sensor called 'sensor1@domain.com'. The location of the sensor can | sensor called 'sensor1@domain.com'. The location of the sensor can | |||
| be obtained from the attached location information provided via the | be obtained from the attached location information provided via the | |||
| 'geolocation' header contained in the SIP MESSAGE structure. | 'geolocation' header field contained in the SIP MESSAGE structure. | |||
| Additionally, the sensor provided some data long with the alert | Additionally, the sensor provided some data along with the alert | |||
| message using proprietary information elements only to be processed | message, using proprietary information elements intended only to be | |||
| by the receiver, a SIP entity acting as an aggregator. This example | processed by the receiver, a SIP entity acting as an aggregator. | |||
| reflects the description in Figure 1. | This example reflects the description in Figure 1. | |||
| MESSAGE sip:aggregator@domain.com SIP/2.0 | MESSAGE sip:aggregator@domain.com SIP/2.0 | |||
| Via: SIP/2.0/TCP sensor1.domain.com;branch=z9hG4bK776sgdkse | Via: SIP/2.0/TCP sensor1.domain.com;branch=z9hG4bK776sgdkse | |||
| Max-Forwards: 70 | Max-Forwards: 70 | |||
| From: sip:sensor1@domain.com;tag=49583 | From: sip:sensor1@domain.com;tag=49583 | |||
| To: sip:aggregator@domain.com | To: sip:aggregator@domain.com | |||
| Call-ID: asd88asd77a@1.2.3.4 | Call-ID: asd88asd77a@1.2.3.4 | |||
| Geolocation: <cid:abcdef@domain.com> | Geolocation: <cid:abcdef@domain.com> | |||
| ;routing-allowed=yes | ;routing-allowed=yes | |||
| Supported: geolocation | Supported: geolocation | |||
| Accept: application/pidf+xml, application/emergencyCall.cap+xml | Accept: application/pidf+xml, application/emergencyCall.cap+xml | |||
| CSeq: 1 MESSAGE | CSeq: 1 MESSAGE | |||
| Call-Info: cid:abcdef2@domain.com;purpose=emergencyCall.cap | Call-Info: cid:abcdef2@domain.com;purpose=emergencyCall.cap | |||
| Content-Type: multipart/mixed; boundary=boundary1 | Content-Type: multipart/mixed; boundary=boundary1 | |||
| Content-Length: ... | Content-Length: ... | |||
| --boundary1 | --boundary1 | |||
| Content-Type: application/emergencyCall.cap | Content-Type: application/emergencyCall.cap+xml | |||
| Content-ID: <abcdef2@domain.com> | Content-ID: <abcdef2@domain.com> | |||
| Content-Disposition: by-reference;handling=optional | Content-Disposition: by-reference;handling=optional | |||
| <?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | |||
| <alert xmlns="urn:oasis:names:tc:emergency:cap:1.1"> | <alert xmlns="urn:oasis:names:tc:emergency:cap:1.1"> | |||
| <identifier>S-1</identifier> | <identifier>S-1</identifier> | |||
| <sender>sip:sensor1@domain.com</sender> | <sender>sip:sensor1@domain.com</sender> | |||
| <sent>2008-11-19T14:57:00-07:00</sent> | <sent>2008-11-19T14:57:00-07:00</sent> | |||
| <status>Actual</status> | <status>Actual</status> | |||
| <msgType>Alert</msgType> | <msgType>Alert</msgType> | |||
| skipping to change at page 15, line 42 ¶ | skipping to change at page 15, line 47 ¶ | |||
| Figure 4: Example Message conveying an Alert to a PSAP | Figure 4: Example Message conveying an Alert to a PSAP | |||
| 10. Security Considerations | 10. Security Considerations | |||
| This section discusses security considerations when SIP user agents | This section discusses security considerations when SIP user agents | |||
| issue emergency alerts utilizing MESSAGE and CAP. Location specific | issue emergency alerts utilizing MESSAGE and CAP. Location specific | |||
| threats are not unique to this document and are discussed in | threats are not unique to this document and are discussed in | |||
| [RFC7378] and [RFC6442]. | [RFC7378] and [RFC6442]. | |||
| The ECRIT emergency services architecture [RFC6443] considers | The ECRIT emergency services architecture [RFC6443] considers classic | |||
| classical individual-to-authority emergency calling and the identity | individual-to-authority emergency calling where the identity of the | |||
| of the emergency caller does not play a role at the time of the call | emergency caller does not play a role at the time of the call | |||
| establishment itself, i.e., a response to the emergency call will not | establishment itself, i.e., a response to the emergency call does not | |||
| depend on the identity of the caller. In case of emergency alerts | depend on the identity of the caller. In the case of emergency | |||
| generated by devices, like sensors, the processing may be different | alerts generated by devices such as sensors, the processing may be | |||
| in order to reduce the number of falsely generated emergency alerts. | different in order to reduce the number of falsely generated | |||
| Alerts may get triggered based on certain sensor input that may have | emergency alerts. Alerts may get triggered based on certain sensor | |||
| been caused by other factors than the actual occurrence of an alert | input that may have been caused by factors other than the actual | |||
| relevant event. For example, a sensor may simply be malfunctioning. | occurrence of an alert relevant event. For example, a sensor may | |||
| simply be malfunctioning. For this reason, not all alert messages | ||||
| For this purpose not all alert messages are directly sent to a PSAP | are directly sent to a PSAP, but rather may be pre-processed by a | |||
| but rather may be pre-processed by a separate entity, potentially | separate entity, potentially under supervision by a human, to filter | |||
| under supervision by a human, to filter alerts and potentially | alerts and potentially correlate received alerts with others to | |||
| correlate received alerts with others to obtain a larger picture of | obtain a larger picture of the ongoing situation. | |||
| the ongoing situation. | ||||
| In any case, for alerts that are initiated by sensors the identity | In any case, for alerts initiated by sensors, the identity may play | |||
| may play an important role in deciding whether to accept or ignore an | an important role in deciding whether to accept or ignore an incoming | |||
| incoming alert message. With the scenario shown in Figure 1 it is | alert message. With the scenario shown in Figure 1 it is very likely | |||
| very likely that only authorized sensor input will be processed. For | that only authorized sensor input will be processed. For this | |||
| this purpose it needs to be ensured that no alert messages from an | reason, it needs to be possible to refuse to accept alert messages | |||
| unknown origin are accepted. Two types of information elements can | from an unknown origin. Two types of information elements can be | |||
| be used for this purpose: | used for this purpose: | |||
| 1. SIP itself provides security mechanisms that allow the | 1. SIP itself provides security mechanisms that allow the | |||
| verification of the originator's identity. These mechanisms can | verification of the originator's identity. These mechanisms can | |||
| be re-used, such as P-Asserted-Identity [RFC3325] or SIP Identity | be re-used, such as P-Asserted-Identity [RFC3325] or SIP Identity | |||
| [RFC4474]. The latter provides a cryptographic assurance while | [RFC4474]. The latter provides a cryptographic assurance while | |||
| the former relies on a chain of trust model. | the former relies on a chain of trust model. | |||
| 2. CAP provides additional security mechanisms and the ability to | 2. CAP provides additional security mechanisms and the ability to | |||
| carry additional information about the sender's identity. | carry further information about the sender's identity. | |||
| Section 3.3.2.1 of [cap] specifies the signing algorithms of CAP | Section 3.3.2.1 of [cap] specifies the signing algorithms of CAP | |||
| documents. | documents. | |||
| In addition to the desire to perform identity-based access control | In addition to the desire to perform identity-based access control, | |||
| the classical communication security threats need to be considered, | the classic communication security threats need to be considered, | |||
| including integrity protection to prevent forgery and replay of alert | including integrity protection to prevent forgery or replay of alert | |||
| messages in transit. To deal with replay of alerts a CAP document | messages in transit. To deal with replay of alerts, a CAP document | |||
| contains the mandatory <identifier>, <sender>, <sent> elements and an | contains the mandatory <identifier>, <sender>, <sent> elements and an | |||
| optional <expire> element. These attributes make the CAP document | optional <expire> element. Together, these elements make the CAP | |||
| unique for a specific sender and provide time restrictions. An | document unique for a specific sender and provide time restrictions. | |||
| entity that has received a CAP message already within the indicated | An entity that has already received a CAP message within the | |||
| timeframe is able to detect a replayed message and, if the content of | indicated timeframe is able to detect a replayed message and, if the | |||
| that message is unchanged, then no additional security vulnerability | content of that message is unchanged, then no additional security | |||
| is created. Additionally, it is RECOMMENDED to make use of SIP | vulnerability is created. Additionally, it is RECOMMENDED to make | |||
| security mechanisms, such as SIP Identity [RFC4474], to tie the CAP | use of SIP security mechanisms, such as SIP Identity [RFC4474], to | |||
| message to the SIP message. To provide protection of the entire SIP | tie the CAP message to the SIP message. To provide protection of the | |||
| message exchange between neighboring SIP entities the usage of TLS is | entire SIP message exchange between neighboring SIP entities, the | |||
| mandatory. | usage of TLS is MANDATORY. | |||
| Note that none of the security mechanism in this document protect | Note that none of the security mechanism in this document protect | |||
| against a compromised sensor sending crafted alerts. | against a compromised sensor sending crafted alerts. | |||
| 11. IANA Considerations | 11. IANA Considerations | |||
| 11.1. Registration of the 'application/emergencyCall.cap+xml' MIME type | 11.1. Registration of the 'application/emergencyCall.cap+xml' MIME type | |||
| To: ietf-types@iana.org | To: ietf-types@iana.org | |||
| skipping to change at page 17, line 28 ¶ | skipping to change at page 17, line 28 ¶ | |||
| Required parameters: (none) | Required parameters: (none) | |||
| Optional parameters: charset; Indicates the character encoding of | Optional parameters: charset; Indicates the character encoding of | |||
| enclosed XML. Default is UTF-8 [RFC3629]. | enclosed XML. Default is UTF-8 [RFC3629]. | |||
| Encoding considerations: Uses XML, which can employ 8-bit | Encoding considerations: Uses XML, which can employ 8-bit | |||
| characters, depending on the character encoding used. See RFC | characters, depending on the character encoding used. See RFC | |||
| 3023 [RFC3023], Section 3.2. | 3023 [RFC3023], Section 3.2. | |||
| Security considerations: This content type is designed to carry | Security considerations: This content type is designed to carry | |||
| payloads of the Common Alerting Protocol (CAP). | payloads of the Common Alerting Protocol (CAP). RFC XXX [Replace | |||
| by the RFC number of this specification] discusses security | ||||
| considerations for this. | ||||
| Interoperability considerations: This content type provides a way to | Interoperability considerations: This content type provides a way to | |||
| convey CAP payloads. | convey CAP payloads. | |||
| Published specification: RFC XXX [Replace by the RFC number of this | Published specification: RFC XXX [Replace by the RFC number of this | |||
| specification]. | specification]. | |||
| Applications which use this media type: Applications that convey | Applications which use this media type: Applications that convey | |||
| alerts and warnings according to the CAP standard. | alerts and warnings according to the CAP standard. | |||
| Additional information: OASIS has published the Common Alerting | Additional information: OASIS has published the Common Alerting | |||
| Protocol at http://www.oasis-open.org/committees/ | Protocol at http://www.oasis-open.org/committees/ | |||
| documents.php&wg_abbrev=emergency | documents.php&wg_abbrev=emergency | |||
| Person and email address to contact for further information: Hannes | Person and email address to contact for further information: Hannes | |||
| Tschofenig, Hannes.Tschofenig@nsn.com | Tschofenig, hannes.tschofenig@gmx.net | |||
| Intended usage: Limited use | Intended usage: Limited use | |||
| Author/Change controller: IETF ECRIT working group | Author/Change controller: IETF ECRIT working group | |||
| Other information: This media type is a specialization of | Other information: This media type is a specialization of | |||
| application/xml RFC 3023 [RFC3023], and many of the considerations | application/xml RFC 3023 [RFC3023], and many of the considerations | |||
| described there also apply to application/cap+xml. | described there also apply to application/cap+xml. | |||
| 11.2. IANA Registration of Additional Data Block | 11.2. IANA Registration of 'cap' Additional Data Block | |||
| This document registers a new block type in the sub-registry called | This document registers a new block type in the sub-registry called | |||
| 'Additional Data Blocks' defined in [I-D.ietf-ecrit-additional-data]. | 'Additional Data Blocks' defined in [I-D.ietf-ecrit-additional-data]. | |||
| The token is "cap" and the reference is this document. | The token is "cap" and the reference is this document. | |||
| 11.3. IANA Registration for 425 Response Code | 11.3. IANA Registration for 425 Response Code | |||
| In the SIP Response Codes registry, the following is added | In the SIP Response Codes registry, the following is added | |||
| Reference: RFC-XXXX (i.e., this document) | Reference: RFC-XXXX (i.e., this document) | |||
| skipping to change at page 19, line 8 ¶ | skipping to change at page 19, line 8 ¶ | |||
| Response Code Reference | Response Code Reference | |||
| ------------------------------------------ --------- | ------------------------------------------ --------- | |||
| Request Failure 4xx | Request Failure 4xx | |||
| 425 Bad Alert Message [this doc] | 425 Bad Alert Message [this doc] | |||
| This SIP Response code is defined in Section 5. | This SIP Response code is defined in Section 5. | |||
| 11.4. IANA Registration of New AlertMsg-Error Header Field | 11.4. IANA Registration of New AlertMsg-Error Header Field | |||
| The SIP AlertMsg-error header field is created by this document, with | The SIP AlertMsg-error header field is created by this document, with | |||
| its definition and rules in Section 5, to be added to the IANA sip- | its definition and rules in Section 5, to be added to the IANA | |||
| parameters registry with two actions: | Session Initiation Protocol (SIP) Parameters registry with two | |||
| actions: | ||||
| 1. Update the Header Fields registry with | 1. Update the Header Fields registry with | |||
| Registry: | Registry: | |||
| Header Name compact Reference | Header Name compact Reference | |||
| ----------------- ------- --------- | ----------------- ------- --------- | |||
| AlertMsg-Error [this doc] | AlertMsg-Error [this doc] | |||
| 2. In the portion titled "Header Field Parameters and Parameter | 2. In the portion titled "Header Field Parameters and Parameter | |||
| Values", add | Values", add | |||
| Predefined | Predefined | |||
| Header Field Parameter Name Values Reference | Header Field Parameter Name Values Reference | |||
| ----------------- ------------------- ---------- --------- | ----------------- ------------------- ---------- --------- | |||
| AlertMsg-Error code yes [this doc] | AlertMsg-Error code yes [this doc] | |||
| 11.5. IANA Registration for the SIP AlertMsg-Error Codes | 11.5. IANA Registration for the SIP AlertMsg-Error Codes | |||
| This document creates a new registry for SIP, called "AlertMsg-Error | This document creates a new registry for SIP, called "AlertMsg-Error | |||
| Codes". AlertMsg-Error codes provide reason for the error discovered | Codes". AlertMsg-Error codes provide reasons for an error discovered | |||
| by recipients, categorized by action to be taken by error recipient. | by a recipient, categorized by the action to be taken by the error | |||
| The initial values for this registry are shown below. | recipient. The initial values for this registry are shown below. | |||
| Registry Name: AlertMsg-Error Codes | Registry Name: AlertMsg-Error Codes | |||
| Reference: [this doc] | Reference: [this doc] | |||
| Registration Procedures: Specification Required | Registration Procedures: Specification Required | |||
| Code Default Reason Phrase Reference | Code Default Reason Phrase Reference | |||
| ---- --------------------------------------------------- --------- | ---- --------------------------------------------------- --------- | |||
| 100 "Cannot Process the Alert Payload" [this doc] | 100 "Cannot Process the Alert Payload" [this doc] | |||
| skipping to change at page 21, line 7 ¶ | skipping to change at page 21, line 7 ¶ | |||
| <http://www.rfc-editor.org/info/rfc2392>. | <http://www.rfc-editor.org/info/rfc2392>. | |||
| [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, | [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, | |||
| A., Peterson, J., Sparks, R., Handley, M., and E. | A., Peterson, J., Sparks, R., Handley, M., and E. | |||
| Schooler, "SIP: Session Initiation Protocol", RFC 3261, | Schooler, "SIP: Session Initiation Protocol", RFC 3261, | |||
| DOI 10.17487/RFC3261, June 2002, | DOI 10.17487/RFC3261, June 2002, | |||
| <http://www.rfc-editor.org/info/rfc3261>. | <http://www.rfc-editor.org/info/rfc3261>. | |||
| [RFC3428] Campbell, B., Ed., Rosenberg, J., Schulzrinne, H., | [RFC3428] Campbell, B., Ed., Rosenberg, J., Schulzrinne, H., | |||
| Huitema, C., and D. Gurle, "Session Initiation Protocol | Huitema, C., and D. Gurle, "Session Initiation Protocol | |||
| (SIP) Extension for Instant Messaging", RFC 3428, DOI | (SIP) Extension for Instant Messaging", RFC 3428, | |||
| 10.17487/RFC3428, December 2002, | DOI 10.17487/RFC3428, December 2002, | |||
| <http://www.rfc-editor.org/info/rfc3428>. | <http://www.rfc-editor.org/info/rfc3428>. | |||
| [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax | [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax | |||
| Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/ | Specifications: ABNF", STD 68, RFC 5234, | |||
| RFC5234, January 2008, | DOI 10.17487/RFC5234, January 2008, | |||
| <http://www.rfc-editor.org/info/rfc5234>. | <http://www.rfc-editor.org/info/rfc5234>. | |||
| [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media | [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media | |||
| Types", RFC 3023, DOI 10.17487/RFC3023, January 2001, | Types", RFC 3023, DOI 10.17487/RFC3023, January 2001, | |||
| <http://www.rfc-editor.org/info/rfc3023>. | <http://www.rfc-editor.org/info/rfc3023>. | |||
| [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO | [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO | |||
| 10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November | 10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November | |||
| 2003, <http://www.rfc-editor.org/info/rfc3629>. | 2003, <http://www.rfc-editor.org/info/rfc3629>. | |||
| [RFC6442] Polk, J., Rosen, B., and J. Peterson, "Location Conveyance | [RFC6442] Polk, J., Rosen, B., and J. Peterson, "Location Conveyance | |||
| for the Session Initiation Protocol", RFC 6442, DOI | for the Session Initiation Protocol", RFC 6442, | |||
| 10.17487/RFC6442, December 2011, | DOI 10.17487/RFC6442, December 2011, | |||
| <http://www.rfc-editor.org/info/rfc6442>. | <http://www.rfc-editor.org/info/rfc6442>. | |||
| [RFC6881] Rosen, B. and J. Polk, "Best Current Practice for | [RFC6881] Rosen, B. and J. Polk, "Best Current Practice for | |||
| Communications Services in Support of Emergency Calling", | Communications Services in Support of Emergency Calling", | |||
| BCP 181, RFC 6881, DOI 10.17487/RFC6881, March 2013, | BCP 181, RFC 6881, DOI 10.17487/RFC6881, March 2013, | |||
| <http://www.rfc-editor.org/info/rfc6881>. | <http://www.rfc-editor.org/info/rfc6881>. | |||
| [I-D.ietf-ecrit-additional-data] | [I-D.ietf-ecrit-additional-data] | |||
| Gellens, R., Rosen, B., Tschofenig, H., Marshall, R., and | Gellens, R., Rosen, B., Tschofenig, H., Marshall, R., and | |||
| J. Winterbottom, "Additional Data Related to an Emergency | J. Winterbottom, "Additional Data Related to an Emergency | |||
| Call", draft-ietf-ecrit-additional-data-33 (work in | Call", draft-ietf-ecrit-additional-data-37 (work in | |||
| progress), July 2015. | progress), October 2015. | |||
| [I-D.rosen-ecrit-addldata-subnot] | [I-D.rosen-ecrit-addldata-subnot] | |||
| Rosen, B., "Updating Additional Data related to an | Rosen, B., "Updating Additional Data related to an | |||
| Emergency Call using Subscribe/ Notify", draft-rosen- | Emergency Call using Subscribe/ Notify", draft-rosen- | |||
| ecrit-addldata-subnot-01 (work in progress), November | ecrit-addldata-subnot-01 (work in progress), November | |||
| 2013. | 2013. | |||
| 13.2. Informative References | 13.2. Informative References | |||
| [RFC7378] Tschofenig, H., Schulzrinne, H., and B. Aboba, Ed., | [RFC7378] Tschofenig, H., Schulzrinne, H., and B. Aboba, Ed., | |||
| "Trustworthy Location", RFC 7378, DOI 10.17487/RFC7378, | "Trustworthy Location", RFC 7378, DOI 10.17487/RFC7378, | |||
| December 2014, <http://www.rfc-editor.org/info/rfc7378>. | December 2014, <http://www.rfc-editor.org/info/rfc7378>. | |||
| [RFC4474] Peterson, J. and C. Jennings, "Enhancements for | [RFC4474] Peterson, J. and C. Jennings, "Enhancements for | |||
| Authenticated Identity Management in the Session | Authenticated Identity Management in the Session | |||
| Initiation Protocol (SIP)", RFC 4474, DOI 10.17487/ | Initiation Protocol (SIP)", RFC 4474, | |||
| RFC4474, August 2006, | DOI 10.17487/RFC4474, August 2006, | |||
| <http://www.rfc-editor.org/info/rfc4474>. | <http://www.rfc-editor.org/info/rfc4474>. | |||
| [RFC3325] Jennings, C., Peterson, J., and M. Watson, "Private | [RFC3325] Jennings, C., Peterson, J., and M. Watson, "Private | |||
| Extensions to the Session Initiation Protocol (SIP) for | Extensions to the Session Initiation Protocol (SIP) for | |||
| Asserted Identity within Trusted Networks", RFC 3325, DOI | Asserted Identity within Trusted Networks", RFC 3325, | |||
| 10.17487/RFC3325, November 2002, | DOI 10.17487/RFC3325, November 2002, | |||
| <http://www.rfc-editor.org/info/rfc3325>. | <http://www.rfc-editor.org/info/rfc3325>. | |||
| [RFC6443] Rosen, B., Schulzrinne, H., Polk, J., and A. Newton, | [RFC6443] Rosen, B., Schulzrinne, H., Polk, J., and A. Newton, | |||
| "Framework for Emergency Calling Using Internet | "Framework for Emergency Calling Using Internet | |||
| Multimedia", RFC 6443, DOI 10.17487/RFC6443, December | Multimedia", RFC 6443, DOI 10.17487/RFC6443, December | |||
| 2011, <http://www.rfc-editor.org/info/rfc6443>. | 2011, <http://www.rfc-editor.org/info/rfc6443>. | |||
| Authors' Addresses | Authors' Addresses | |||
| Brian Rosen | Brian Rosen | |||
| skipping to change at page 22, line 44 ¶ | skipping to change at page 22, line 44 ¶ | |||
| Department of Computer Science | Department of Computer Science | |||
| 450 Computer Science Building | 450 Computer Science Building | |||
| New York, NY 10027 | New York, NY 10027 | |||
| US | US | |||
| Phone: +1 212 939 7004 | Phone: +1 212 939 7004 | |||
| Email: hgs+ecrit@cs.columbia.edu | Email: hgs+ecrit@cs.columbia.edu | |||
| URI: http://www.cs.columbia.edu | URI: http://www.cs.columbia.edu | |||
| Hannes Tschofenig | Hannes Tschofenig | |||
| Hall in Tirol 6060 | ARM Limited | |||
| Austria | Austria | |||
| Email: Hannes.tschofenig@gmx.net | Email: Hannes.Tschofenig@gmx.net | |||
| URI: http://www.tschofenig.priv.at | URI: http://www.tschofenig.priv.at | |||
| Randall Gellens | ||||
| Email: rg+ietf@randy.pensive.org | ||||
| End of changes. 68 change blocks. | ||||
| 204 lines changed or deleted | 214 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||