Difference between revisions of "ReSIProcate Current Features"

From reSIProcate
Jump to navigation Jump to search
(deleted references to drafts that have become RFCs and have been included in the Support RFC list)
(Deleted from the 'Supported IETF Drafts' list drafts that aren't fully supported)
Line 65: Line 65:
 
* RFC 4474: Enhancements for Authenticated Identity Management in the Session Initiation Protocol (SIP)
 
* RFC 4474: Enhancements for Authenticated Identity Management in the Session Initiation Protocol (SIP)
 
* RFC 4566: SDP: Session Description Protocol
 
* RFC 4566: SDP: Session Description Protocol
 
==Supported IETF Drafts (Partial List)==
 
* draft-impp-srv
 
* draft-simple-presence
 
* draft-sip-connect-reuse
 
* draft-sip-join
 
* draft-sip-gruu
 
* draft-sipping-mwi
 

Revision as of 16:44, 12 April 2007

  • Uses the Vovida Software License v1.0 (Vovida) (BSD like)
  • UDP, TCP, TLS transports (DTLS almost complete)
  • Easy to plug in new transport protocols
  • A full implementation of the 3261 transaction state machine
  • A lazy parser - only parse headers when the application requests them
  • The parser is compliant with the current RFCs
  • A strongly typed interface
  • An Object-Oriented SDP parser and encoder
  • Support for SipFrag
  • Support for 'rport'
  • Object Oriented C++ interface to the messages
  • Asynchronous DNS library (ares from MIT)
  • Full asynchronous DNS support in Windows
  • Full NAPTR and SRV support (support RFCs: 3261, 3263, 2915, 2782)
  • Fast performance: > ~500 transactions per second on an Intelâ„¢ P4
  • Ability to add new header fields and parameters without rebuilding the stack
  • MIME and multipart-MIME contents
  • S/MIME
  • Single-threaded or multi-threaded (thread-safe stack)
  • One library with only two external dependencies
    • ares - DNS Resolver
    • openssl - Security (for TLS)
  • ENUM support
  • STUN Server Support
  • Multiple SIP stacks in the same application
  • Support for shutting down a SIP stack without exiting the application
  • IPv6 support in the parser and DNS
  • Support for multi-homed hosts
  • Builds and runs on Windows and most Unixes. ReSIProcate has been built and tested on:
    • GNU/Linux 2.4, 2.5
    • Mac OS/X 10.2 (Jaguar) and 10.3 (Panther)
    • Solaris 8 and 9
    • Windows XP and 2003 Server
    • (most things with modern C++ compilers)
  • Dialog Usage Manager (DUM) layer for UAs


Supported IETF RFCs

  • RFC 2617: HTTP Authentication: Basic and Digest Access Authentication
  • RFC 2782: A DNS RR for specifying the location of services (DNS SRV)
  • RFC 2915: The Naming Authority Pointer (NAPTR) DNS Resource Record
  • RFC 2976: The SIP INFO Method
  • RFC 3261: SIP: Session Initiation Protocol
  • RFC 3263: Session Initiation Protocol (SIP): Locating SIP Servers
  • RFC 3264: An Offer/Answer Model with the Session Description Protocol (SDP) (This is only partially supported, since many of the responsibilities are up to the app)
  • RFC 3265: Session Initiation Protocol (SIP)-Specific Event Notification
  • RFC 3311: The SIP UPDATE Method
  • RFC 3325: Private Extensions to the Session Initiation Protocol (SIP) for Asserted Identity within Trusted Networks
  • RFC 3326: The Reason Header Field for the Session Initiation Protocol (SIP)
  • RFC 3388: Grouping of Media Lines in the Session Description Protocol (SDP) (trivial support; apps have access to group attributes, but groups are not handled for the app)
  • RFC 3420: Internet Media Type message/sipfrag
  • RFC 3428: Session Initiation Protocol (SIP) Extension for Instant Messaging
  • RFC 3486: Compressing the Session Initiation Protocol (SIP)
  • RFC 3515: The Session Initiation Protocol (SIP) Refer Method
  • RFC 3581: An Extension to the Session Initiation Protocol (SIP) for Symmetric Response Routing
  • RFC 3605: Real Time Control Protocol (RTCP) attribute in Session Description Protocol (SDP) (trivial support)
  • RFC 3761: The E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System (DDDS) Application (ENUM)
  • RFC 3824: Using E.164 numbers with the Session Initiation Protocol (SIP)
  • RFC 3891: The Session Initiation Protocol (SIP) "Replaces" Header
  • RFC 3892: The Session Initiation Protocol (SIP) Referred-By Mechanism
  • RFC 3903: Session Initiation Protocol (SIP) Extension for Event State Publication
  • RFC 4028: Session Timers
  • RFC 4320: Actions Addressing Identified Issues with the Session Initiation Protocol's (SIP) Non-INVITE Transaction
  • RFC 4474: Enhancements for Authenticated Identity Management in the Session Initiation Protocol (SIP)
  • RFC 4566: SDP: Session Description Protocol