draft-ietf-sipcore-event-rate-control-08.txt   draft-ietf-sipcore-event-rate-control-09.txt 
Network Working Group A. Niemi Network Working Group A. Niemi
Internet-Draft K. Kiss Internet-Draft K. Kiss
Updates: 3265 (if approved) Nokia Updates: 3265 (if approved) Nokia
Intended status: Standards Track S. Loreto Intended status: Standards Track S. Loreto
Expires: January 12, 2012 Ericsson Expires: March 3, 2012 Ericsson
July 11, 2011 August 31, 2011
Session Initiation Protocol (SIP) Event Notification Extension for Session Initiation Protocol (SIP) Event Notification Extension for
Notification Rate Control Notification Rate Control
draft-ietf-sipcore-event-rate-control-08 draft-ietf-sipcore-event-rate-control-09
Abstract Abstract
This document specifies mechanisms for adjusting the rate of Session This document specifies mechanisms for adjusting the rate of Session
Initiation Protocol (SIP) event notifications. These mechanisms can Initiation Protocol (SIP) event notifications. These mechanisms can
be applied in subscriptions to all SIP event packages. This document be applied in subscriptions to all SIP event packages. This document
updates RFC 3265. updates RFC 3265.
Status of this Memo Status of this Memo
skipping to change at page 1, line 36 skipping to change at page 1, line 36
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 January 12, 2012. This Internet-Draft will expire on March 3, 2012.
Copyright Notice Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the Copyright (c) 2011 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
skipping to change at page 9, line 33 skipping to change at page 9, line 33
5.1. Subscriber Behavior 5.1. Subscriber Behavior
A subscriber that wishes to apply a maximum rate to notifications in A subscriber that wishes to apply a maximum rate to notifications in
a subscription MUST construct a SUBSCRIBE request that includes the a subscription MUST construct a SUBSCRIBE request that includes the
"max-rate" Event header field parameter. This parameter specifies "max-rate" Event header field parameter. This parameter specifies
the requested maximum number of notifications per second. The value the requested maximum number of notifications per second. The value
of this parameter is a positive real number given by a finite decimal of this parameter is a positive real number given by a finite decimal
representation. representation.
Note that the witnessed time between two consecutive received Note that the witnessed notification rate may not conform to the
notifications may not conform to the "max-rate" value for a number "max-rate" value for a number of reasons. For example, network
of reasons. For example, network jitter and retransmissions may jitter and retransmissions may result in the subscriber receiving
result in the subscriber receiving the notifications more frequent the notifications more frequent than the "max-rate" value
than the "max-rate" value recommends. recommends.
A subscriber that wishes to update the previously agreed maximum rate A subscriber that wishes to update the previously agreed maximum rate
of notifications MUST include the updated "max-rate" Event header of notifications MUST include the updated "max-rate" Event header
field parameter in a subsequent SUBSCRIBE request or a 2xx response field parameter in a subsequent SUBSCRIBE request or a 2xx response
to the NOTIFY request. to the NOTIFY request.
A subscriber that wishes to remove the maximum rate control from A subscriber that wishes to remove the maximum rate control from
notifications MUST indicate so by not including a "max-rate" Event notifications MUST indicate so by not including a "max-rate" Event
header field parameter in a subsequent SUBSCRIBE request or a 2xx header field parameter in a subsequent SUBSCRIBE request or a 2xx
response to the NOTIFY request. response to the NOTIFY request.
skipping to change at page 10, line 26 skipping to change at page 10, line 26
rate of notifications in a "max-rate" Subscription-State header field rate of notifications in a "max-rate" Subscription-State header field
parameter of the subsequent NOTIFY requests. The indicated "max- parameter of the subsequent NOTIFY requests. The indicated "max-
rate" value is adopted by the notifier, and the notification rate is rate" value is adopted by the notifier, and the notification rate is
adjusted accordingly. adjusted accordingly.
A notifier that does not understand this extension will not reflect A notifier that does not understand this extension will not reflect
the "max-rate" Subscription-State header field parameter in the the "max-rate" Subscription-State header field parameter in the
NOTIFY requests; the absence of this parameter indicates to the NOTIFY requests; the absence of this parameter indicates to the
subscriber that no rate control is supported by the notifier. subscriber that no rate control is supported by the notifier.
A compliant notifier MUST NOT generate notifications more frequently A compliant notifier MUST NOT generate a notification if the interval
than the maximum rate allows for, except when generating the since the most recent notification is less than the reciprocal value
notification either upon receipt of a SUBSCRIBE request (the first of the "max-rate" parameter, except when generating the notification
notification), when the subscription state is changing from "pending" either upon receipt of a SUBSCRIBE request, when the subscription
to "active" state or upon termination of the subscription (the last state is changing from "pending" to "active" state or upon
notification). Such notifications reset the timer for the next termination of the subscription (the last notification).
notification.
When a local policy dictates a maximum rate for notifications, a When a local policy dictates a maximum rate for notifications, a
notifier will not generate notifications more frequently than the notifier will not generate notifications more frequently than the
local policy maximum rate, even if the subscriber is not asking for local policy maximum rate, even if the subscriber is not asking for
maximum rate control. The notifier MAY inform the subscriber about maximum rate control. The notifier MAY inform the subscriber about
such local policy maximum rate using the "max-rate" Subscription- such local policy maximum rate using the "max-rate" Subscription-
State header field parameter included in subsequent NOTIFY requests. State header field parameter included in subsequent NOTIFY requests.
Retransmissions of NOTIFY requests are not affected by the maximum Retransmissions of NOTIFY requests are not affected by the maximum
rate mechanism, i.e., the maximum rate mechanism only applies to the rate mechanism, i.e., the maximum rate mechanism only applies to the
skipping to change at page 19, line 40 skipping to change at page 19, line 40
Applications can subscribe to an event package using all the rate Applications can subscribe to an event package using all the rate
control mechanisms individually, or in combination; in fact there is control mechanisms individually, or in combination; in fact there is
no technical incompatibility among them. However there are some no technical incompatibility among them. However there are some
combinations of the different rate control mechanisms that make combinations of the different rate control mechanisms that make
little sense to be used together. This section lists all the little sense to be used together. This section lists all the
combinations that are possible to insert in a subscription; the combinations that are possible to insert in a subscription; the
utility to use each combination in a subscription is also analyzed. utility to use each combination in a subscription is also analyzed.
maximum rate and minimum rate: This combination allows to reduce the maximum rate and minimum rate: This combination allows to reduce the
notification rate, but at the same time assures the reception of a notification rate, but at the same time assures the reception of
notification every time the most recent notification exceeds a periodic notifications.
specified interval.
A subscriber SHOULD choose a "min-rate" value lower than the "max- A subscriber SHOULD choose a "min-rate" value lower than the "max-
rate" value, otherwise the notifier MUST adjust the subscriber rate" value, otherwise the notifier MUST adjust the subscriber
provided "min-rate" value to a value equal to or lower than the provided "min-rate" value to a value equal to or lower than the
"max-rate" value. "max-rate" value.
maximum rate and adaptive minimum rate: It works in a similar way as maximum rate and adaptive minimum rate: It works in a similar way as
the combination above, but with the difference that the interval the combination above, but with the difference that the interval
at which notifications are assured changes dynamically. at which notifications are assured changes dynamically.
skipping to change at page 21, line 11 skipping to change at page 21, line 11
added to the rule definitions of the Event header field and the added to the rule definitions of the Event header field and the
Subscription-State header field in RFC 3265 [RFC3265] grammar. Usage Subscription-State header field in RFC 3265 [RFC3265] grammar. Usage
of this parameter is described in Section 5, Section 6 and Section 7. of this parameter is described in Section 5, Section 6 and Section 7.
9.2. Grammar 9.2. Grammar
This section describes the Augmented BNF [RFC5234] definitions for This section describes the Augmented BNF [RFC5234] definitions for
the new header field parameters. Note that we derive here from the the new header field parameters. Note that we derive here from the
ruleset present in RFC 3265 [RFC3265], adding additional alternatives ruleset present in RFC 3265 [RFC3265], adding additional alternatives
to the alternative sets of "event-param" and "subexp-params" defined to the alternative sets of "event-param" and "subexp-params" defined
therein. The "delta-seconds" element is defined in RFC 3261 therein.
[RFC3261].
event-param = max-rate-param event-param = max-rate-param
/ min-rate-param / min-rate-param
/ amin-rate-param / amin-rate-param
subexp-params = max-rate-param subexp-params = max-rate-param
/ min-rate-param / min-rate-param
/ amin-rate-param / amin-rate-param
max-rate-param = "max-rate" EQUAL max-rate-param = "max-rate" EQUAL
(1*2DIGIT ["." 1*10DIGIT]) (1*2DIGIT ["." 1*10DIGIT])
min-rate-param = "min-rate" EQUAL min-rate-param = "min-rate" EQUAL
 End of changes. 7 change blocks. 
21 lines changed or deleted 18 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/