| < draft-ietf-simple-presence-09.txt | draft-ietf-simple-presence-10.txt > | |||
|---|---|---|---|---|
| Internet Engineering Task Force SIMPLE WG | Internet Engineering Task Force SIMPLE WG | |||
| Internet Draft J. Rosenberg | Internet Draft J. Rosenberg | |||
| dynamicsoft | dynamicsoft | |||
| draft-ietf-simple-presence-09.txt | draft-ietf-simple-presence-10.txt | |||
| December 6, 2002 | January 31, 2003 | |||
| Expires: June 2003 | Expires: July 2003 | |||
| A Presence Event Package for the Session Initiation Protocol (SIP) | A Presence Event Package for the Session Initiation Protocol (SIP) | |||
| STATUS OF THIS MEMO | STATUS OF THIS MEMO | |||
| This document is an Internet-Draft and is in full conformance with | This document is an Internet-Draft and is in full conformance with | |||
| all provisions of Section 10 of RFC2026. | all provisions of Section 10 of RFC2026. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
| skipping to change at page 2, line 12 ¶ | skipping to change at page 2, line 12 ¶ | |||
| notification framework. This protocol is also compliant with the | notification framework. This protocol is also compliant with the | |||
| Common Presence Profile (CPP) framework. | Common Presence Profile (CPP) framework. | |||
| Table of Contents | Table of Contents | |||
| 1 Introduction ........................................ 3 | 1 Introduction ........................................ 3 | |||
| 2 Terminology ......................................... 3 | 2 Terminology ......................................... 3 | |||
| 3 Definitions ......................................... 3 | 3 Definitions ......................................... 3 | |||
| 4 Overview of Operation ............................... 5 | 4 Overview of Operation ............................... 5 | |||
| 5 Usage of Presence URIs .............................. 6 | 5 Usage of Presence URIs .............................. 6 | |||
| 6 Presence Event Package .............................. 7 | 6 Presence Event Package .............................. 8 | |||
| 6.1 Package Name ........................................ 7 | 6.1 Package Name ........................................ 8 | |||
| 6.2 Event Package Parameters ............................ 7 | 6.2 Event Package Parameters ............................ 8 | |||
| 6.3 SUBSCRIBE Bodies .................................... 8 | 6.3 SUBSCRIBE Bodies .................................... 8 | |||
| 6.4 Subscription Duration ............................... 8 | 6.4 Subscription Duration ............................... 9 | |||
| 6.5 NOTIFY Bodies ....................................... 8 | 6.5 NOTIFY Bodies ....................................... 9 | |||
| 6.6 Notifier Processing of SUBSCRIBE Requests ........... 9 | 6.6 Notifier Processing of SUBSCRIBE Requests ........... 10 | |||
| 6.6.1 Authentication ...................................... 9 | 6.6.1 Authentication ...................................... 10 | |||
| 6.6.2 Authorization ....................................... 10 | 6.6.2 Authorization ....................................... 11 | |||
| 6.7 Notifier Generation of NOTIFY Requests .............. 11 | 6.7 Notifier Generation of NOTIFY Requests .............. 12 | |||
| 6.8 Subscriber Processing of NOTIFY Requests ............ 12 | 6.8 Subscriber Processing of NOTIFY Requests ............ 13 | |||
| 6.9 Handling of Forked Requests ......................... 12 | 6.9 Handling of Forked Requests ......................... 13 | |||
| 6.10 Rate of Notifications ............................... 13 | 6.10 Rate of Notifications ............................... 14 | |||
| 6.11 State Agents ........................................ 13 | 6.11 State Agents ........................................ 14 | |||
| 6.11.1 Aggregation, Authentication, and Authorization ...... 13 | 6.11.1 Aggregation, Authentication, and Authorization ...... 14 | |||
| 6.11.2 Migration ........................................... 14 | 6.11.2 Migration ........................................... 15 | |||
| 7 Learning Presence State ............................. 15 | 7 Learning Presence State ............................. 16 | |||
| 7.1 Co-location ......................................... 15 | 7.1 Co-location ......................................... 16 | |||
| 7.2 REGISTER ............................................ 15 | 7.2 REGISTER ............................................ 16 | |||
| 7.3 Uploading Presence Documents ........................ 16 | 7.3 Uploading Presence Documents ........................ 17 | |||
| 8 Example Message Flow ................................ 16 | 8 Example Message Flow ................................ 17 | |||
| 9 Security Considerations ............................. 19 | 9 Security Considerations ............................. 20 | |||
| 9.1 Confidentiality ..................................... 19 | 9.1 Confidentiality ..................................... 20 | |||
| 9.2 Message Integrity and Authenticity .................. 20 | 9.2 Message Integrity and Authenticity .................. 21 | |||
| 9.3 Outbound Authentication ............................. 20 | 9.3 Outbound Authentication ............................. 22 | |||
| 9.4 Replay Prevention ................................... 21 | 9.4 Replay Prevention ................................... 22 | |||
| 9.5 Denial of Service Attacks Against Third Parties ..... 21 | 9.5 Denial of Service Attacks Against Third Parties ..... 22 | |||
| 9.6 Denial Of Service Attacks Against Servers ........... 22 | 9.6 Denial Of Service Attacks Against Servers ........... 23 | |||
| 10 IANA Considerations ................................. 22 | 10 IANA Considerations ................................. 23 | |||
| 11 Contributors ........................................ 22 | 11 Contributors ........................................ 23 | |||
| 12 Acknowledgements .................................... 24 | 12 Acknowledgements .................................... 25 | |||
| 13 Authors Addresses ................................... 24 | 13 Authors Addresses ................................... 25 | |||
| 14 Normative References ................................ 25 | 14 Normative References ................................ 25 | |||
| 15 Informative References .............................. 25 | 15 Informative References .............................. 26 | |||
| 1 Introduction | 1 Introduction | |||
| Presence, also known as presence information, conveys the ability and | Presence, also known as presence information, conveys the ability and | |||
| willingness of a user to communicate across a set of devices. RFC | willingness of a user to communicate across a set of devices. RFC | |||
| 2778 [10] defines a model and terminology for describing systems that | 2778 [10] defines a model and terminology for describing systems that | |||
| provide presence information. In that model, a presence service is a | provide presence information. In that model, a presence service is a | |||
| system that accepts, stores, and distributes presence information to | system that accepts, stores, and distributes presence information to | |||
| interested parties, called watchers. A presence protocol is a | interested parties, called watchers. A presence protocol is a | |||
| protocol for providing a presence service over the Internet or any IP | protocol for providing a presence service over the Internet or any IP | |||
| skipping to change at page 7, line 7 ¶ | skipping to change at page 7, line 7 ¶ | |||
| accomplished by sending a SUBSCRIBE request with an immediate | accomplished by sending a SUBSCRIBE request with an immediate | |||
| expiration. | expiration. | |||
| 5 Usage of Presence URIs | 5 Usage of Presence URIs | |||
| A presentity is identified in the most general way through a presence | A presentity is identified in the most general way through a presence | |||
| URI [3], which is of the form pres:user@domain. These URIs are | URI [3], which is of the form pres:user@domain. These URIs are | |||
| protocol independent. They are resolved to protocol specific URIs, | protocol independent. They are resolved to protocol specific URIs, | |||
| such as a SIP or SIPS URI, through domain-specific mapping policies. | such as a SIP or SIPS URI, through domain-specific mapping policies. | |||
| It is very possible that a user will have both a SIP (and/or SIPS) | ||||
| URI and a pres URI to identify both themself and other users. This | ||||
| leads to questions about how these URI relate and which are to be | ||||
| used. | ||||
| In some instances, a user starts with one URI format, such as the | ||||
| pres URI, and learns a URI in a different format through some | ||||
| protocol means. As an example, a SUBSCRIBE request sent to a pres URI | ||||
| will result in learning a SIP or SIPS URI for the presentity from the | ||||
| Contact header field of the 200 OK to the SUBSCRIBE request. As | ||||
| another example, a DNS mechanism might be defined that would allow | ||||
| lookup of a pres URI to obtain a SIP or SIPS URI. In cases where one | ||||
| URI is learned from another through protocol means, those means will | ||||
| often provide some kind of scoping that limit the lifetime of the | ||||
| learned URI. DNS, for example, provides a TTL which would limit the | ||||
| scope of the URI. These scopes are very useful to avoid stale or | ||||
| conflicting URIs for identifying the same resource. To ensure that a | ||||
| user can always determine whether a learned URI is still valid, it is | ||||
| RECOMMENDED that systems which provide lookup services for presence | ||||
| URIs have some kind of scoping mechanism. | ||||
| If a subscriber is only aware of the protocol-independent pres URI | If a subscriber is only aware of the protocol-independent pres URI | |||
| for a presentity, it follows the procedures defined in [5]. These | for a presentity, it follows the procedures defined in [5]. These | |||
| procedures will result in the placement of the pres URI in the | procedures will result in the placement of the pres URI in the | |||
| Request-URI of the SIP request, followed by the usage of the DNS | Request-URI of the SIP request, followed by the usage of the DNS | |||
| procedures defined in [5] to determine the host to send the SIP | procedures defined in [5] to determine the host to send the SIP | |||
| request to. Of course, a local outbound proxy may alternatively be | request to. Of course, a local outbound proxy may alternatively be | |||
| used, as specified in RFC 3261 [1]. If the subscriber is aware of | used, as specified in RFC 3261 [1]. If the subscriber is aware of | |||
| both the protocol-independent pres URI and the SIP or SIPS URI for | both the protocol-independent pres URI and the SIP or SIPS URI for | |||
| the same presentity, it SHOULD use the SIP or SIPS URI. | the same presentity, and both are valid (as discussed above) it | |||
| SHOULD use the pres URI format. Of course, if the subscriber only | ||||
| knows the SIP URI for the presentity, that URI is used, and standard | ||||
| RFC 3261 processing will occur. | ||||
| SUBSCRIBE messages also contain logical identifiers that define the | SUBSCRIBE messages also contain logical identifiers that define the | |||
| originator and recipient of the subscription (the To and From header | originator and recipient of the subscription (the To and From header | |||
| fields). These SHOULD contain SIP or SIPS URIs whenever possible, but | fields). These headers can take either a pres or SIP URI. When the | |||
| MAY contain a pres URI if a SIP or SIPS URI is not known or | subscriber is aware of both a pres and SIP URI for its own identity, | |||
| available. | it SHOULD use the pres URI in the From header field. Similarly, when | |||
| the subscriber is aware of both a pres and a SIP URI for the desired | ||||
| presentity, it SHOULD use the pres URI in the To header field. | ||||
| The usage of the pres URI instead of the SIP URI within the SIP | ||||
| message supports interoperability through gateways to other CPP- | ||||
| compliant systems. It provides a protocol-independent form of | ||||
| identification which can be passed between systems. Without such an | ||||
| identity, gateways would be forced to map SIP URIs into the | ||||
| addressing format of other protocols. Generally, this is done by | ||||
| converting the SIP URI to the form <foreign-protocol-scheme>:<encoded | ||||
| SIP URI>@<gateway>. This is commonly done in email systems, and has | ||||
| many known problems. The usage of the pres URI is a SHOULD, and not a | ||||
| MUST, to allow for cases where it is known that there are no gateways | ||||
| present, or where the usage of the pres URI will cause | ||||
| interoperability problems with SIP components that do not support the | ||||
| pres URI. | ||||
| The Contact, Record-Route and Route fields do not identify logical | The Contact, Record-Route and Route fields do not identify logical | |||
| entities, but rather concrete ones used for SIP messaging. SIP [1] | entities, but rather concrete ones used for SIP messaging. SIP [1] | |||
| specifies rules for their construction. | specifies rules for their construction. | |||
| 6 Presence Event Package | 6 Presence Event Package | |||
| The SIP event framework [2] defines a SIP extension for subscribing | The SIP event framework [2] defines a SIP extension for subscribing | |||
| to, and receiving notifications of, events. It leaves the definition | to, and receiving notifications of, events. It leaves the definition | |||
| of many aspects of these events to concrete extensions, known as | of many aspects of these events to concrete extensions, known as | |||
| skipping to change at page 8, line 4 ¶ | skipping to change at page 8, line 39 ¶ | |||
| The name of this package is "presence". As specified in RFC 3265 [2], | The name of this package is "presence". As specified in RFC 3265 [2], | |||
| this value appears in the Event header field present in SUBSCRIBE and | this value appears in the Event header field present in SUBSCRIBE and | |||
| NOTIFY requests. | NOTIFY requests. | |||
| Example: | Example: | |||
| Event: presence | Event: presence | |||
| 6.2 Event Package Parameters | 6.2 Event Package Parameters | |||
| The SIP event framework allows event packages to define additional | The SIP event framework allows event packages to define additional | |||
| parameters carried in the Event header field. This package, presence, | parameters carried in the Event header field. This package, presence, | |||
| does not define any additional parameters. | does not define any additional parameters. | |||
| 6.3 SUBSCRIBE Bodies | 6.3 SUBSCRIBE Bodies | |||
| A SUBSCRIBE request MAY contain a body. The purpose of the body | A SUBSCRIBE request MAY contain a body. The purpose of the body | |||
| depends on its type. Subscriptions will normally not contain bodies. | depends on its type. Subscriptions will normally not contain bodies. | |||
| The Request-URI, which identifies the presentity, combined with the | The Request-URI, which identifies the presentity, combined with the | |||
| event package name, is sufficient for presence. | event package name, is sufficient for presence. | |||
| We anticipate that document formats could be defined to act as | One type of body that can be included in a SUBSCRIBE request is a | |||
| filters for subscriptions. These filters would request that only | filter document. These filters request that only certain presence | |||
| certain presence events generate notifications, or would ask for a | events generate notifications, or would ask for a restriction on the | |||
| restriction on the set of data returned in NOTIFY requests. For | set of data returned in NOTIFY requests. For example, a presence | |||
| example, a presence filter might specify that the notifications | filter might specify that the notifications should only be generated | |||
| should only be generated when the status of the user's instant inbox | when the status of the user's instant inbox [10] changes. It might | |||
| [10] changes. It might also say that the content of these | also say that the content of these notifications should only contain | |||
| notifications should only contain the status of the instant inbox. | the status of the instant inbox. Filter documents are not specified | |||
| in this document, and at the time of writing, are expected to be the | ||||
| subject of future standardization activity. | ||||
| Honoring of these filters is at the policy discretion of the PA. | Honoring of these filters is at the policy discretion of the PA. | |||
| If the SUBSCRIBE request does not contain a body, this tells the PA | If the SUBSCRIBE request does not contain a filter, this tells the PA | |||
| that no filter is to be applied. The PA SHOULD send NOTIFY requests | that no filter is to be applied. The PA SHOULD send NOTIFY requests | |||
| at the discretion of its own policy. | at the discretion of its own policy. | |||
| 6.4 Subscription Duration | 6.4 Subscription Duration | |||
| User presence changes as a result of many events. Some examples are: | User presence changes as a result of many events. Some examples are: | |||
| o Turning on and off of a cell phone | o Turning on and off of a cell phone | |||
| o Modifying the registration from a softphone | o Modifying the registration from a softphone | |||
| skipping to change at page 9, line 10 ¶ | skipping to change at page 10, line 4 ¶ | |||
| 6.5 NOTIFY Bodies | 6.5 NOTIFY Bodies | |||
| As described in RFC 3265 [2], the NOTIFY message will contain bodies | As described in RFC 3265 [2], the NOTIFY message will contain bodies | |||
| that describe the state of the subscribed resource. This body is in a | that describe the state of the subscribed resource. This body is in a | |||
| format listed in the Accept header field of the SUBSCRIBE, or a | format listed in the Accept header field of the SUBSCRIBE, or a | |||
| package-specific default if the Accept header field was omitted from | package-specific default if the Accept header field was omitted from | |||
| the SUBSCRIBE. | the SUBSCRIBE. | |||
| In this event package, the body of the notification contains a | In this event package, the body of the notification contains a | |||
| presence document. This document describes the presence of the | presence document. This document describes the presence of the | |||
| presentity that was subscribed to. All subscribers MUST support the | presentity that was subscribed to. All subscribers and notifiers MUST | |||
| "application/cpim-pidf+xml" presence data format described in [6]. | support the "application/cpim-pidf+xml" presence data format | |||
| The subscribe request MAY contain an Accept header field. If no such | described in [6]. The subscribe request MAY contain an Accept header | |||
| header field is present, it has a default value of | field. If no such header field is present, it has a default value of | |||
| "application/cpim-pidf+xml". If the header field is present, it MUST | "application/cpim-pidf+xml". If the header field is present, it MUST | |||
| include "application/cpim-pidf+xml", and MAY include any other types | include "application/cpim-pidf+xml", and MAY include any other types | |||
| capable of representing user presence. | capable of representing user presence. | |||
| 6.6 Notifier Processing of SUBSCRIBE Requests | 6.6 Notifier Processing of SUBSCRIBE Requests | |||
| Based on the proxy routing procedures defined in the SIP | Based on the proxy routing procedures defined in the SIP | |||
| specification, the SUBSCRIBE request will arrive at a presence agent | specification, the SUBSCRIBE request will arrive at a presence agent | |||
| (PA). This subsection defines package-specific processing at the PA | (PA). This subsection defines package-specific processing at the PA | |||
| of a SUBSCRIBE request. General processing rules for requests are | of a SUBSCRIBE request. General processing rules for requests are | |||
| skipping to change at page 9, line 36 ¶ | skipping to change at page 10, line 30 ¶ | |||
| User presence is highly sensitive information. Because the | User presence is highly sensitive information. Because the | |||
| implications of divulging presence information can be severe, strong | implications of divulging presence information can be severe, strong | |||
| requirements are imposed on the PA regarding subscription processing, | requirements are imposed on the PA regarding subscription processing, | |||
| especially related to authentication and authorization. | especially related to authentication and authorization. | |||
| 6.6.1 Authentication | 6.6.1 Authentication | |||
| A presence agent MUST authenticate all subscription requests. This | A presence agent MUST authenticate all subscription requests. This | |||
| authentication can be done using any of the mechanisms defined in RFC | authentication can be done using any of the mechanisms defined in RFC | |||
| 3261 [1]. | 3261 [1]. Note that digest is mandatory to implement, as specified in | |||
| RFC 3261. | ||||
| In single-domain systems, where the subscribers all have shared | In single-domain systems, where the subscribers all have shared | |||
| secrets with the PA, the combination of digest authentication over | secrets with the PA, the combination of digest authentication over | |||
| Transport Layer Security (TLS) [7] provides a secure and workable | Transport Layer Security (TLS) [7] provides a secure and workable | |||
| solution for authentication. This use case is described in Section | solution for authentication. This use case is described in Section | |||
| 26.3.2.1 of RFC 3261 [1]. | 26.3.2.1 of RFC 3261 [1]. | |||
| In inter-domain scenarios, establishing an authenticated identity of | In inter-domain scenarios, establishing an authenticated identity of | |||
| the subscriber is harder. It is anticipated that authentication will | the subscriber is harder. It is anticipated that authentication will | |||
| often be established through transitive trust. SIP mechanisms for | often be established through transitive trust. SIP mechanisms for | |||
| skipping to change at page 20, line 48 ¶ | skipping to change at page 21, line 45 ¶ | |||
| It is important for the message recipient to ensure that the message | It is important for the message recipient to ensure that the message | |||
| contents are actually what was sent by the originator, and that the | contents are actually what was sent by the originator, and that the | |||
| recipient of the message be able to determine who the originator | recipient of the message be able to determine who the originator | |||
| really is. This applies to both requests and responses of SUBSCRIBE | really is. This applies to both requests and responses of SUBSCRIBE | |||
| and NOTIFY. NOTIFY requests are particularly important. Without | and NOTIFY. NOTIFY requests are particularly important. Without | |||
| authentication and integrity, presence documents could be forged or | authentication and integrity, presence documents could be forged or | |||
| modified, fooling the watcher into believing incorrect presence | modified, fooling the watcher into believing incorrect presence | |||
| information. | information. | |||
| To deal with this problem, SIPs authentication and message integrity | RFC 3261 provides many mechanisms to provide these features. In order | |||
| features can be used. SIP provides http digest for authentication, | for the PA to authenticate the watcher, it MAY use HTTP Digest | |||
| and S/MIME for authentication and integrity. | (Section 22 of RFC 3261). As a result, all watchers MUST support HTTP | |||
| Digest. This is a redundant requirement, however, since all SIP user | ||||
| agents are mandated to support it by RFC 3261. To provide | ||||
| authenticity and integrity services, a watcher MAY use the SIPS | ||||
| scheme when subscribing to the presentity. To support this, all PA | ||||
| MUST support TLS and SIPS as if they were a proxy (see Section 26.3.1 | ||||
| of RFC 3261). | ||||
| Furthermore, SMIME MAY be used for integrity and authenticity of | ||||
| SUBSCRIBE and NOTIFY requests. This is described in Section 23 of RFC | ||||
| 3261. | ||||
| 9.3 Outbound Authentication | 9.3 Outbound Authentication | |||
| When local proxies are used for transmission of outbound messages, | When local proxies are used for transmission of outbound messages, | |||
| proxy authentication is RECOMMENDED. This is useful to verify the | proxy authentication is RECOMMENDED. This is useful to verify the | |||
| identity of the originator, and prevent spoofing and spamming at the | identity of the originator, and prevent spoofing and spamming at the | |||
| originating network. | originating network. | |||
| 9.4 Replay Prevention | 9.4 Replay Prevention | |||
| Replay attacks can be used by an attacker to fool a watcher into | Replay attacks can be used by an attacker to fool a watcher into | |||
| believing an outdated presence state for a presentity. For example, a | believing an outdated presence state for a presentity. For example, a | |||
| document describing a presentity as being "offline" can be replayed, | document describing a presentity as being "offline" can be replayed, | |||
| fooling watchers into thinking that the user is never online. This | fooling watchers into thinking that the user is never online. This | |||
| may effectively block communications with the presentity. | may effectively block communications with the presentity. | |||
| SIP S/MIME can provide message integrity and authentication over SIP | SIP S/MIME can provide message integrity and authentication over SIP | |||
| request bodies. This capability can be used to prevent these replay | request bodies. Watchers and PAs MAY implement S/MIME signatures to | |||
| attacks. When it is used for that purpose, the presence document | prevent these replay attacks. When it is used for that purpose, the | |||
| carried in the NOTIFY request MUST contain a timestamp. In the case | presence document carried in the NOTIFY request MUST contain a | |||
| of PIDF, this is accomplished using the timestamp element, as | timestamp. In the case of PIDF, this is accomplished using the | |||
| described in Section 6 of [6]. Tuples whose timestamp is older than | timestamp element, as described in Section 6 of [6]. Tuples whose | |||
| the timestamp of the most recently received presence document SHOULD | timestamp is older than the timestamp of the most recently received | |||
| be considered stale, and discarded. | presence document SHOULD be considered stale, and discarded. | |||
| Finally, HTTP digest authentication MAY be used to prevent replay | Finally, HTTP digest authentication (which MUST be implemented by | |||
| attacks, when there is a shared secret between the PA and the | watchers and PAs) MAY be used to prevent replay attacks, when there | |||
| watcher. In such a case, the watcher can challenge the NOTIFY | is a shared secret between the PA and the watcher. In such a case, | |||
| requests with the auth-int quality of protection. | the watcher can challenge the NOTIFY requests with the auth-int | |||
| quality of protection. | ||||
| 9.5 Denial of Service Attacks Against Third Parties | 9.5 Denial of Service Attacks Against Third Parties | |||
| Denial of Service (DOS) attacks are a critical problem for an open, | Denial of Service (DOS) attacks are a critical problem for an open, | |||
| inter-domain, presence protocol. Unfortunately, presence is a good | inter-domain, presence protocol. Unfortunately, presence is a good | |||
| candidate for Distributed DoS (DDOS) attacks because of its | candidate for Distributed DoS (DDOS) attacks because of its | |||
| amplification properties. A single SUBSCRIBE message could generate a | amplification properties. A single SUBSCRIBE message could generate a | |||
| nearly unending stream of notifications, so long as a suitably | nearly unending stream of notifications, so long as a suitably | |||
| dynamic source of presence data can be found. Thus, a simple way to | dynamic source of presence data can be found. Thus, a simple way to | |||
| launch an attack against a target is to send subscriptions to a large | launch an attack against a target is to send subscriptions to a large | |||
| skipping to change at page 24, line 22 ¶ | skipping to change at page 25, line 31 ¶ | |||
| 13 Authors Addresses | 13 Authors Addresses | |||
| Jonathan Rosenberg | Jonathan Rosenberg | |||
| dynamicsoft | dynamicsoft | |||
| 72 Eagle Rock Avenue | 72 Eagle Rock Avenue | |||
| First Floor | First Floor | |||
| East Hanover, NJ 07936 | East Hanover, NJ 07936 | |||
| email: jdrosen@dynamicsoft.com | email: jdrosen@dynamicsoft.com | |||
| Full Copyright Statement | ||||
| Copyright (c) The Internet Society (2002). All Rights Reserved. | ||||
| This document and translations of it may be copied and furnished to | ||||
| others, and derivative works that comment on or otherwise explain it | ||||
| or assist in its implementation may be prepared, copied, published | ||||
| and distributed, in whole or in part, without restriction of any | ||||
| kind, provided that the above copyright notice and this paragraph are | ||||
| included on all such copies and derivative works. However, this | ||||
| document itself may not be modified in any way, such as by removing | ||||
| the copyright notice or references to the Internet Society or other | ||||
| Internet organizations, except as needed for the purpose of | ||||
| developing Internet standards in which case the procedures for | ||||
| copyrights defined in the Internet Standards process must be | ||||
| followed, or as required to translate it into languages other than | ||||
| English. | ||||
| The limited permissions granted above are perpetual and will not be | ||||
| revoked by the Internet Society or its successors or assigns. | ||||
| This document and the information contained herein is provided on an | ||||
| "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING | ||||
| TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING | ||||
| BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION | ||||
| HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF | ||||
| MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | ||||
| 14 Normative References | 14 Normative References | |||
| [1] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. Johnston, J. | [1] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. R. Johnston, J. | |||
| Peterson, R. Sparks, M. Handley, and E. Schooler, "SIP: session | Peterson, R. Sparks, M. Handley, and E. Schooler, "SIP: session | |||
| initiation protocol," RFC 3261, Internet Engineering Task Force, June | initiation protocol," RFC 3261, Internet Engineering Task Force, June | |||
| 2002. | 2002. | |||
| [2] A. B. Roach, "Session initiation protocol (sip)-specific event | [2] A. B. Roach, "Session initiation protocol (sip)-specific event | |||
| notification," RFC 3265, Internet Engineering Task Force, June 2002. | notification," RFC 3265, Internet Engineering Task Force, June 2002. | |||
| [3] D. Crocker et al. , "Common profile: Presence," Internet Draft, | [3] D. H. Crocker and J. Peterson, "Common profile: Presence," | |||
| Internet Engineering Task Force, Oct. 2002. Work in progress. | internet draft, Internet Engineering Task Force, Dec. 2002. Work in | |||
| progress. | ||||
| [4] S. Bradner, "Key words for use in RFCs to indicate requirement | [4] S. Bradner, "Key words for use in rfcs to indicate requirement | |||
| levels," RFC 2119, Internet Engineering Task Force, Mar. 1997. | levels," RFC 2119, Internet Engineering Task Force, Mar. 1997. | |||
| [5] D. Crocker et al. , "Address resolution for instant messaging | [5] D. H. Crocker and J. Peterson, "Address resolution for instant | |||
| and presence," Internet Draft, Internet Engineering Task Force, Oct. | messaging and presence," internet draft, Internet Engineering Task | |||
| 2002. Work in progress. | Force, Dec. 2002. Work in progress. | |||
| [6] H. Sugano and S. Fujimoto, "Common presence and instant messaging | [6] H. Sugano, S. Fujimoto, et al. , "Common presence and instant | |||
| (CPIM)presence information data format," Internet Draft, Internet | messaging (cpim)presence information data format," internet draft, | |||
| Engineering Task Force, Nov. 2002. Work in progress. | Internet Engineering Task Force, Jan. 2003. Work in progress. | |||
| [7] T. Dierks and C. Allen, "The TLS protocol version 1.0," RFC 2246, | [7] T. Dierks and C. Allen, "The TLS protocol version 1.0," RFC 2246, | |||
| Internet Engineering Task Force, Jan. 1999. | Internet Engineering Task Force, Jan. 1999. | |||
| [8] J. Rosenberg, "A session initiation protocol (SIP)event | [8] J. Rosenberg, "A watcher information event template-package for | |||
| template-package for watcher information," Internet Draft, Internet | the session initiation protocol (SIP)," internet draft, Internet | |||
| Engineering Task Force, May 2002. Work in progress. | Engineering Task Force, Dec. 2002. Work in progress. | |||
| [9] H. Schulzrinne and J. Rosenberg, "Session initiation protocol | [9] H. Schulzrinne and J. Rosenberg, "Session initiation protocol | |||
| (SIP) caller preferences and callee capabilities," Internet Draft, | (SIP) caller preferences and callee capabilities," internet draft, | |||
| Internet Engineering Task Force, Nov. 2002. Work in progress. | Internet Engineering Task Force, Nov. 2002. Work in progress. | |||
| 15 Informative References | 15 Informative References | |||
| [10] M. Day, J. Rosenberg, and H. Sugano, "A model for presence and | [10] M. Day, J. Rosenberg, and H. Sugano, "A model for presence and | |||
| instant messaging," RFC 2778, Internet Engineering Task Force, Feb. | instant messaging," RFC 2778, Internet Engineering Task Force, Feb. | |||
| 2000. | 2000. | |||
| [11] J. Peterson, "Enhancements for authenticated identity management | [11] J. Peterson, "Enhancements for authenticated identity management | |||
| in the session initiation protocol (SIP)," Internet Draft, Internet | in the session initiation protocol (SIP)," internet draft, Internet | |||
| Engineering Task Force, Oct. 2002. Work in progress. | Engineering Task Force, Oct. 2002. Work in progress. | |||
| [12] P. Calhoun et al. , "Diameter base protocol," Internet Draft, | [12] P. Calhoun et al. , "Diameter base protocol," internet draft, | |||
| Internet Engineering Task Force, Oct. 2002. Work in progress. | Internet Engineering Task Force, Jan. 2003. Work in progress. | |||
| [13] M. Day, S. Aggarwal, G. Mohr, and J. Vincent, "Instant messaging | [13] M. Day, S. Aggarwal, G. Mohr, and J. Vincent, "Instant messaging | |||
| / presence protocol requirements," RFC 2779, Internet Engineering | / presence protocol requirements," RFC 2779, Internet Engineering | |||
| Task Force, Feb. 2000. | Task Force, Feb. 2000. | |||
| [14] P. Gutmann, "Password-based encryption for CMS," RFC 3211, | [14] P. Gutmann, "Password-based encryption for CMS," RFC 3211, | |||
| Internet Engineering Task Force, Dec. 2001. | Internet Engineering Task Force, Dec. 2001. | |||
| Intellectual Property Statement | ||||
| The IETF takes no position regarding the validity or scope of any | ||||
| intellectual property or other rights that might be claimed to | ||||
| pertain to the implementation or use of the technology described in | ||||
| this document or the extent to which any license under such rights | ||||
| might or might not be available; neither does it represent that it | ||||
| has made any effort to identify any such rights. Information on the | ||||
| IETF's procedures with respect to rights in standards-track and | ||||
| standards-related documentation can be found in BCP-11. Copies of | ||||
| claims of rights made available for publication and any assurances of | ||||
| licenses to be made available, or the result of an attempt made to | ||||
| obtain a general license or permission for the use of such | ||||
| proprietary rights by implementors or users of this specification can | ||||
| be obtained from the IETF Secretariat. | ||||
| The IETF invites any interested party to bring to its attention any | ||||
| copyrights, patents or patent applications, or other proprietary | ||||
| rights which may cover technology that may be required to practice | ||||
| this standard. Please address the information to the IETF Executive | ||||
| Director. | ||||
| Full Copyright Statement | ||||
| Copyright (c) The Internet Society (2003). All Rights Reserved. | ||||
| This document and translations of it may be copied and furnished to | ||||
| others, and derivative works that comment on or otherwise explain it | ||||
| or assist in its implementation may be prepared, copied, published | ||||
| and distributed, in whole or in part, without restriction of any | ||||
| kind, provided that the above copyright notice and this paragraph are | ||||
| included on all such copies and derivative works. However, this | ||||
| document itself may not be modified in any way, such as by removing | ||||
| the copyright notice or references to the Internet Society or other | ||||
| Internet organizations, except as needed for the purpose of | ||||
| developing Internet standards in which case the procedures for | ||||
| copyrights defined in the Internet Standards process must be | ||||
| followed, or as required to translate it into languages other than | ||||
| English. | ||||
| The limited permissions granted above are perpetual and will not be | ||||
| revoked by the Internet Society or its successors or assigns. | ||||
| This document and the information contained herein is provided on an | ||||
| "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING | ||||
| TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING | ||||
| BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION | ||||
| HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF | ||||
| MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | ||||
| End of changes. 28 change blocks. | ||||
| 112 lines changed or deleted | 142 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/ | ||||