RFC 3841 Caller Preferences for SIP August 2004 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 4 4. Overview of Operation . . . . . . . . . . . . . . . . . . . . 4 5. UAC Behavior . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.1. Request Handling Preferences . . . . . . . . . . . . . . 6 5.2. Feature Set Preferences . . . . . . . . . . . . . . . . 6 6. UAS Behavior . . . . . . . . . . . . . . . . . . . . . . . . . 8 7. Proxy Behavior . . . . . . . . . . . . . . . . . . . . . . . . 9 7.1. Request-Disposition Processing . . . . . . . . . . . . . 9 7.2. Preference and Capability Matching . . . . . . . . . . . 9 7.2.1. Extracting Explicit Preferences . . . . . . . . . 10 7.2.2. Extracting Implicit Preferences . . . . . . . . . 10 7.2.2.1. Methods. . . . . . . . . . . . . . . . . 10 7.2.2.2. Event Packages . . . . . . . . . . . . . 11 7.2.3. Constructing Contact Predicates . . . . . . . . . 11 7.2.4. Matching. . . . . . . . . . . . . . . . . . . . . 12 7.2.5. Example . . . . . . . . . . . . . . . . . . . . . 16 8. Mapping Feature Parameters to a Predicate. . . . . . . . . . . 17 9. Header Field Definitions . . . . . . . . . . . . . . . . . . . 19 9.1. Request Disposition . . . . . . . . . . . . . . . . . . 20 9.2. Accept-Contact and Reject-Contact Header Fields . . . . 21 10. Augmented BNF . . . . . . . . . . . . . . . . . . . . . . . . 22 11. Security Considerations . . . . . . . . . . . . . . . . . . . 22 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23 13. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 23 14. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24 14.1. Normative References . . . . . . . . . . . . . . . . . . 24 14.2. Informative References . . . . . . . . . . . . . . . . . 24 15. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 25 16. Full Copyright Statements. . . . . . . . . . . . . . . . . . . 26 1. Introduction When a Session Initiation Protocol (SIP) [1] server receives a request, there are a number of decisions it can make regarding the processing of the request. These include: o whether to proxy or redirect the request o which URIs to proxy or redirect to o whether to fork or not o whether to search recursively or not Rosenberg, et al. Standards Track