MARF WG | Y. Cai |
Internet-Draft | G. Shanker |
Intended status: Standards Track | S. Singh |
Expires: August 27, 2011 | M. Torabi |
Z. Zeltsan | |
Alcatel-Lucent | |
February 23, 2011 |
Anti-Spam Policy Instruction/Distribution Operation
draft-cai-marf-policy-instruction-operation-00
This document defines an anti-spam policy instruction and distribution operation from Spam Reporting Server or Spam Reporting Client to Spam Reporting Client or Clients.
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 August 27, 2011.
Copyright (c) 2011 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.
As the SMS/MMS spam problem continues to expand and potential solutions evolve, mobile operators are developing their own SMS/MMS anti-spam application on SMSC/MMSC or message gateways. Open Mobile Alliance (OMA) developed OMA Mobile Spam Reporting Technical Specification [OMA TS SpamRep], which addresses the Spam Reporting Server and Clients requirements for SMS/MMS and other spam reporting. This OMA SpamRep specification is to be adopted by IETF MARF group. However, there is no centralized message spam analysis system which receives reports from individual message centers, and in return, instructs the message centers with filtering criteria and policy rules which are developed based on spam reporting as well as spam analysis at the spam reporting server.
This document introduces a new operation of anti-spam policy instruction and distribution between a centralized spam reporting server and distributed spam reporting clients. Optionally, a spam reporting client could also act as an agent to distribute the received anti-spam policy instruction to other spam reporting clients in the network. This document, thus, creates a framework for anti-spam policy instruction and distribution among the distributed spam reporting nodes in the network.
The spam policy instruction operation from the centralized spam reporting server will allow one or multiple spam reporting clients, which actually conduct spam filtering and detection, to:
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC 2119].
Spam Reporting Server - The functionalities of a spam reporting server includes receiving spam reports from spam reporting clients, conducting spam analysis, summarizing anti-spam criteria/policies/rules, and distribution of anti-spam criteria/policies/rules to the distributed spam reporting clients.
Spam Reporting Client - It is message center (SMSC, MMSC, email server, IM server, etc.) The functionalities of a spam reporting client includes detecting spam messages using local spam filtering criteria/rules, reporting spam messages to Spam Reporting Server, receiving the instruction of anti-spam policies/rules from Spam Reporting Server, and optionally receiving/forwarding the anti-spam policies/rules from/to other Spam Reporting Clients.
The procedures support both of unsolicited and solicited models of anti-spam policy instruction/distribution.
In unsolicited model, the spam reporting server shall initiate a request for spam policy instruction/distribution operation to one or more spam reporting clients which conduct spam message filtering and detection in the network. A spam reporting client may initiate a request for spam policy instruction/distribution operation to one or multiple other spam reporting clients in the network.
In solicited or on-demand model, a spam reporting client shall initiate a on-demand request for spam policy instruction/distribution operation to the spam reporting server. The spam reporting client shall indicate what filtering criteria/policy rules it current has, and what new policy rules it may expect and subscription time window. The spam reporting server or spam report client that received the on-demand query request shall respond to the requesting entity with anti-spam policy instruction and/or appropriate result code. Optionally, asynchronous mechanism can be implemented where the anti-spam policy instruction is sent as a separate request after acknowledging the receipt of the query request from the client.
In both solicited and unsolicited models, the spam reporting clients who received the request of spam policy instruction/distribution operation shall respond to the requesting entity with corresponding result codes.
This procedure enables the push model for anti-spam policy instruction/distribution. Related procedures, described in section 3.2, provide control to subscriber/unsubscribe this push mechanism for specific spam reporting client(s) in the network.
The spam reporting server shall initiate a request for spam policy instruction/distribution operation to one or more spam reporting clients which conduct spam message filtering and detection in the network. A spam reporting client shall initiate a request for spam policy instruction/distribution operation to one or multiple other spam reporting clients in the network.
The spam reporting clients who received the request of spam policy instruction/distribution operation shall respond to the requesting entity with corresponding result codes.
+-------------+ +-------------+ | | Request | | | |<----------------| | | Client | Response | Server | | |---------------->| | +-------------+ +-------------+ +-------------+ Request +-------------+ | |<----------------| | | | Response | | | Client |---------------->| Client | | | | | +-------------+ +-------------+
The procedures described below are performed by Spam Reporting Server.
The procedures described below are performed by Spam Reporting Client when receiving a request message for spam policy instruction/distribution operation from Spam Reporting Server or other Spam Reporting Clients.
When there is a need for the spam reporting client to forward the request for spam policy instruction/distribution operation to other spam reporting client(s) in the network, the spam reporting client shall follow the procedure outlined for the server in section 3.1 above.
This procedure enables control to enable/disable the push mechanism, described in section 3.1, selectively by specific spam reporting client(s) in the network.
The spam reporting client(s) may initiate a request to subscribe/unsubscribe receiving spam policy instruction/distribution requests from a spam analysis server or another spam reporting client.
The spam analysis server or spam reporting client that received the request to subscribe/unsubscribe anti-spam policy instruction shall respond to the requesting entity with corresponding result code.
+-------------+ +-------------+ | | Request | | | |---------------->| | | Client | Response | Server | | |<----------------| | +-------------+ +-------------+ +-------------+ Request +-------------+ | |---------------->| | | | Response | | | Client |<----------------| Client | | | | | +-------------+ +-------------+
The procedures described below are performed by a spam reporting client.
When the spam reporting client is also capable of spam policy instruction/distribution to other spam reporting clients, the spam reporting client shall support the server procedure described in section 3.2.2 below.
The procedures described below are performed by the spam reporting server when receiving a request message to subscribe/unsubscribe anti-spam policy instruction/distribution to the client. This procedure is also executed by a spam reporting client if it is capable of spam reporting policy instruction/distribution in which case the spam reporting client is fulfilling the server role for this operation.
+-------------+ +-------------+ | | Request | | | |---------------->| | | Client | Response | Server | | |<----------------| | +-------------+ +-------------+ +-------------+ Request +-------------+ | |---------------->| | | | Response | | | Client |<----------------| Client | | | | | +-------------+ +-------------+
This procedure enables the on-demand pull model for anti-spam policy instruction/distribution.
The spam reporting client(s) may initiate a request to query spam policy instruction/distribution on-demand from a spam reporting server or another spam reporting client.
The spam reporting server or spam report client that received the on-demand query request shall respond to the requesting entity with anti-spam policy instruction and/or appropriate result code. Optionally, asynchronous mechanism can be implemented where the anti-spam policy instruction is sent as a separate request after acknowledging the receipt of the query request from the client.
The flow for the synchronous mechanism is depicted here.
The flow for the asynchronous mechanism includes the flow depicted above, except that the response is an acknowledgement of the query instead of policy instruction, followed by the anti-spam policy instruction/distribution flow depicted in section 3.1 above.
The procedures described below are performed by a spam reporting client.
When the spam reporting client is also capable of spam policy instruction/distribution to other spam reporting clients, the spam reporting client shall support the server procedure described in section 3.3.2 below
The procedures described below are performed by the spam reporting server when receiving a request message for query of anti-spam policy instruction from a client. This procedure is also executed by a spam reporting client if it is capable of spam reporting policy instruction/distribution in which case the spam reporting client is fulfilling the server role for this operation.
This section specifies the format of the request and response messages to support the operation procedures described in section 3 above.
There are two types of messages of anti-spam policy instruction/distribution operation:
The request message of anti-spam policy instruction/distribution operation should contain following message elements:
Request:
* sign indicates the message element should be multiple occurrences.
The response message of anti-spam policy instruction/distribution operation should contain following message elements:
Response:
* sign indicates the message element should be multiple occurrences.
There are two types of messages for operation for the notification to subscribe/unsubscribe anti-spam policy instruction/distribution.
The request message for notification to subscribe/unsubscribe anti-spam policy instruction/distribution operation shall contain following message elements:
Request:
* sign indicates the message element should be multiple occurrences.
The response message for the notification operation to start/stop anti-spam policy instruction/distribution should contain following message elements:
Response:
There are two types of messages for operation to query anti-spam policy instruction/distribution.
In addition when the asynchronous query mechanism is used, the request and response messages specified in section 4.1 shall be used for the asynchronous anti-spam policy instruction/distribution.
The request message for the operation to query of anti-spam policy instruction should contain following message elements:
Request:
* sign indicates the message element should be multiple occurrences.
The response message for the notification operation to start/stop anti-spam policy instruction/distribution should contain following message elements:
Response:
* sign indicates the message element should be multiple occurrences.
Message elements included in the request and response messages of anti-spam policy instruction/distribution operation are described in this sub-section. All message elements are optional except those that are indicated as mandatory.
Request ID is a mandatory element of type string and is the unique identifier for the request message.
Request timestamp is a mandatory element of type Time and holds the time the request message was originated by the originating node.
Request received timestamp is a mandatory element of type Time and holds the time the request was received by the terminating node.
Response timestamp is a mandatory element and of type Time and holds the time the response was sent by the terminating node.
Originating node address is a mandatory element of type String and includes the originator address. It should be the address of Spam Reporting Server or Spam Reporting Client.
Terminating node address is a mandatory element of type String and includes the recipient address. It should be the address of Spam Reporting Server or Spam Reporting Client.
Policy body is a mandatory element of type Group and includes the policy elements. 0 or more policies can be included in the policy body. At least one policy must be present in the anti-spam instruction/distribution request message.
Policy ID is a mandatory element of type Integer and is the unique identifier for this policy.
Network type is of type Enumerated and is the indicator for the network types: GSM, UMTS, LTE, 3GPP, CDMA, other, unknown, etc.
Protocol ID is of type Enumerated and is the indicator for the message protocol applicable for the policy: SMTP, SMPP, 3GPP MAP, 3GPP SIP, 3GPP2 SIP, ANSI SMDPP, etc.
Message type is of type Enumerated and is the indicator for the message types: email, SMS, MMS, IM, etc.
Message attribute is of type Data Structure and contains additional information about message applicable to the policy. The attributes depend on message types. Each message type has its own set of attributes.
Suspicious network domain is of type String. It includes the domain name of the network which is considered suspicious or bad.
Suspicious address is of type String and includes the address which is considered suspicious or bad.
Suspicious address type is of type String and is an indicator of type of suspicious address, IP address, mobile number (MSISDN, IMSI), email address, etc.
Spam type optional field is of type Enumerated and includes the spam types:
Message language indicator is of type Integer and is the indicator of the message language.
Detection information is of type Structure and contains the information on the algorithms or method used to screening/filter the spam messages:
Action information is of type Enumerated and followings:
Privacy shield information is of type Structure and contains privacy shield and sharing instruction.
Affective filtering start timestamp is of type Time and holds the time the policies included in the request should start to affect.
Affective filtering start timestamp is of type Time and holds the time the policies included in the request should stop to affect.
Result Code is a mandatory element of type Integer and holds processing return result from the receiving node (see details in Section 6).
Anti-Spam Policy Instruction Control is of type Grouped. It includes information on the action requested by the client and information on any existing policy IDs that the client already has.
ActionInstruction is of type enumerated and can have any of these values: SubscribeInstruction, UnsubscribeInstruction, ImmediateInstruction.
Existing Policy IDs is list of policy IDs that the client already has. This is useful for SubscriberInstruction and ImmediateInstruction option.
The receiving node shall include appropriate return code in the response message to the sending node for policy instruction/distribution operation. This section provides unexhausted result codes.
The request and response messages specified for the anti-spam policy instruction/distribution framework operations specified in this document shall be communicated via a transaction protocol.
A sending node should initiate each transaction by sending an RFC 2616 [RFC 2616] HTTP POST message to the URI of receiving node. The body of this HTTP request shall contain the request message content specified in section 4.
After receiving and processing the HTTP POST request, the receiving node shall respond with an RFC 2616 [RFC 2616] HTTP response. The body of this HTTP response shall contain the response message content specified in section 4.
The XML schema for the request and response message content is to be specified following agreement on the message elements proposed in this document.
None.
TBD
The authors thank Igor Faynberg for his invaluable help with preparing this document.
[RFC 2119] | Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", RFC 2119, March 1997. |
[RFC 2616] | Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P. and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. |
[RFC 5965] | Shafranovich, Y., Levine, J. and M. Kucherawy, "An Extensible Format for Email Feedback Reports", RFC 5965, August 2010. |
[OMA TS SpamRep] | Mobile Spam Reporting Technical Specification", October 2010. | , "