DISPATCH | H. Schulzrinne |
Internet-Draft | FCC |
Intended status: Standards Track | December 12, 2016 |
Expires: June 15, 2017 |
SIP Call-Info Parameters for Labeling Calls
draft-schulzrinne-sipcore-callinfo-spam-00
Called parties often wish to decide whether to accept, reject or redirect calls based on the likely nature of the call. For example, they may want to reject unwanted telemarketing or fraudulent calls, but accept emergency alerts from numbers not in their address book. This document describes SIP Call-Info parameters and a feature tag that allow originating, intermediate and terminating SIP entities to label calls as to their type, spam probability and references to additional information.
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."
This Internet-Draft will expire on June 15, 2017.
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) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
In many countries, an increasing number of calls are unwanted [RFC5039], as they might be fraudulent, telemarketing or the receiving party does not want to be disturbed by, say, surveys or solicitation by charities. Currently, called parties have to rely exclusively on the caller's number or, if provided, caller name, but unwanted callers may not provide their true name or use a name that misleads, e.g., "Cardholder Services". On the other hand, many calls from unknown numbers may be important to the called party, whether this is an emergency alert from their emergency management office or a reminder about a doctor's appointment. Since many subscribers now reject all calls from unknown numbers, such calls may also be inadvertently be left unanswered. Users may also install smartphone apps that can benefit from additional information in making decisions as to whether to ring, reject or redirect a call.
To allow called parties to make more informed decisions on how to handle incoming calls from unknown callers, we describe a new set of parameters for the SIP [RFC3261] Call-Info header field for labeling the nature of the call.
Providers may also find the SIP Priority header (Section 20.26) field useful in helping called parties decide how to respond to an incoming call.
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 BCP 14, RFC 2119 [RFC2119].
This document describes a new set of optional parameters and usage for the SIP [RFC3261] Call-Info header field, purpose "info", for labeling the nature of the call. The header field may be inserted by the call originator, an intermediate proxy or B2BUA or the terminating carrier, based on assertions by the caller, number-indexed databases, call analytics or other sources of information. The SIP provider serving the called party MUST remove any parameters enumerated in this specification that it does not trust. The Call-Info header field MAY be signed using a future "ppt" extension to [I-D.ietf-stir-rfc4474bis]. To ensure that an untrusted originating caller does not mislead the called party, a new feature tag, sip.call-info.spam, indicates whether the terminating carrier will remove untrusted information.
SIP entities MUST add a new Call-Info "info" header field instance, rather than add parameters to an existing one. Thus, there MAY be several Call-Info header fields of purpose "info" in one request.
As defined in [RFC3261], the Call-Info header field contains a URI that can provide additional information about the caller or call. For example, many call filtering services provide a web page with crowd-sourced information about the calling number. If the entity inserting the header field does not have information it wants to link to, it MUST use an empty data URL [RFC2397] as a placeholder, as in data:. (The Call-Info header field syntax makes the URI itself mandatory.)
All of the parameters listed below are optional and may appear in any combination and order. Their ABNF is defined in Section 7.
The following initial set of types are defined. The call types are generally based on the caller's telephone number or possibly an assertion by a trusted caller, as the content cannot be not known. Each call is tagged with at most one type label, i.e., the labels are meant to be mutually exclusive. The definitions are meant to be informal and reflect the common understanding of subscribers who are not lawyers. By their very nature, this classification may sometimes be erroneous, e.g., if a number has been re-assigned to another entity or if crowd-sourced information is wrong, and thus should be treated as a hint or estimate. Each entity inserting type information will need to define its own policy as to the level of certainty it requires before it inserts type information.
Other strings may be used; there does not appear to be a need for defining vendor-defined strings as the likelihood of confusion between a service-provider-specific usage and a later extension to the list appears low. Additional labels are registered with IANA.
Call-Info: <http://wwww.example.com/5974c8d942f120351143> ;source=carrier.example.com ;purpose=info ;spam=85 ;type=fraud ;reason="FTC list"
label-info-params = [ci-spam] / [ci-type] / [ci-source] / [ci-reason] ci-spam = "spam" EQUAL 1*3DIGIT ci-type = "type" EQUAL ("business" / "debt-collection" / "emergency-alert" / "fraud" / "government" / "health" / "informational" / "not-for-profit" / "personal" / "political" / "public-service" / "prison" / "spam" / "spoofed" / "survey" / "telemarketing" / "trusted" / iana-token) ci-source = "source" EQUAL host ci-reason = "reason" EQUAL quoted-string
This document defines the 'spam', 'type', 'reason' and 'source' parameters in the Call-Info header in the "Header Field Parameters and Parameter Values" registry defined by [RFC3968].
Header Field | Parameter Name | Predefined Values | Reference |
---|---|---|---|
Call-Info | reason | No | [this RFC] |
Call-Info | source | No | [this RFC] |
Call-Info | spam | No | [this RFC] |
Call-Info | type | Yes | [this RFC] |
This document defines the feature capability sip.call-info.spam in the "Global Feature-Capability Indicator Registration Tree" registry defined in [RFC6809].
This specification establishes the "Call-Info Type" sub-registry under http://www.iana.org/assignments/sip-parameters. Call-Info "type" parameters are used in the "type" parameter in the SIP Call-Info header field. The initial values are listed in Section 5. Additional values are allocated by expert review [RFC5226]; only the token value, using the ABNF iana-token, and a brief description, typically no more than a few sentences, is required. The ABNF for iana-token is defined in [RFC3261]. A specification is not required.
The security considerations in [RFC3261] (Section 20.9) apply. A user agent MUST ignore the parameters defined in this document unless the SIP REGISTER response contained the sip.call-info.spam feature capability. SIP entities MUST remove any parameters defined here that were provided by untrusted third parties.
The protection offered against rogue SIP entities by the feature capability relies on protecting the REGISTER response against man-in-the-middle attacks that maliciously add the capability indicator.
Jim Calme and other members of the Robocall Strikeforce helped draft the initial list of call types. Keith Drage and Paul Kyzivat provided helpful comments on the document.
[RFC2119] | Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997. |
[RFC2397] | Masinter, L., "The "data" URL scheme", RFC 2397, DOI 10.17487/RFC2397, August 1998. |
[RFC3261] | Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, DOI 10.17487/RFC3261, June 2002. |
[RFC3968] | Camarillo, G., "The Internet Assigned Number Authority (IANA) Header Field Parameter Registry for the Session Initiation Protocol (SIP)", BCP 98, RFC 3968, DOI 10.17487/RFC3968, December 2004. |
[RFC5226] | Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 5226, DOI 10.17487/RFC5226, May 2008. |
[RFC6809] | Holmberg, C., Sedlacek, I. and H. Kaplan, "Mechanism to Indicate Support of Features and Capabilities in the Session Initiation Protocol (SIP)", RFC 6809, DOI 10.17487/RFC6809, November 2012. |
[I-D.ietf-stir-rfc4474bis] | Peterson, J., Jennings, C., Rescorla, E. and C. Wendt, "Authenticated Identity Management in the Session Initiation Protocol (SIP)", Internet-Draft draft-ietf-stir-rfc4474bis-15, October 2016. |
[RFC5039] | Rosenberg, J. and C. Jennings, "The Session Initiation Protocol (SIP) and Spam", RFC 5039, DOI 10.17487/RFC5039, January 2008. |