SIPit18 Summary

From GlobalSIPit
Jump to: navigation, search
160 people from 16 countries attended SIPit 18 with 73 different SIP implementations.

A short summary of some of the capabilities of those implementations follows:

UDP 					73
TCP 					53
TLS 					30
SCTP 					6
SRTP 					10 (7 use sdes)
rport 					36
GRUU 					5
outbound 				2
connect-reuse 				6
IPv6 					19
Full 3263 				25
3263 no naptr (SRV on) 			13
A only 					22
IP only (no DNS) 			9
Session timer 				38
Prack 					32 (9 non-trivial users)
Update 					25
NIT fixes (4320) 			7
Out of Dialog Refer 			3
Dialog package 				8
Turn 					3
XCAP 					4 (2 servers)

Generally, the level of interoperability was very high.

Very few of the attendees were aware of GRUU, but there were some implementations to test
(and they interoperated). The big surprise was the number of SIP over SCTP implementations
testing at this event.

There was significant testing of TLS and SRTP. TLS interoperability is solidifying.
SRTP interoperability was poor (key exchange is not working)

There were several common implementation errors and questions. Below are
rough descriptions of each (in no particular order). I'll send more detailed messages
when I'm back online in a couple of weeks.

- Several UAs were doing 3263 lookups but ignoring the port from the SRV record,
  always sending to 5060

- Many UAs are gratuitously putting ports in URIs when the appropriate thing to do
  would be to only place a domain name. This particularly caused error when the
  port retrieved from SRV was placed explicitly in the RURI of the message sent

- There was non-trivial testing of RPID at this event. There was disagreement around
  where <activities> was legal or had meaning.

- More than one implementation still has ACK-200 vs ACK-non200 confused. In particular,
  more than one implementation used the branch parameter from an INVITE in the ACK-200.
  There was also some confusion leading to reusing the INVITE branch parameter in PRACKs

- Those testing IPv6 made different assumptions about enclosing literal v6 addresses in Vias
   in []. By the end of the event, most implementations were accepting either. Its about 50/50
   on what gets sent.

- The SIP over SCTP implementers point out a need for clarification around using the 1 to many
   vs 1 to 1 mode.

- Several implementations (including a few mature ones) are still having case-insensitivity related
  interop problems. I saw arguments over "Digest" vs "DIGEST", and case sensitivity around
  mime-types.

- There were many questions about record-routing when changing transports, and where the
   double-record-routing technique we've been suggesting people use is documented.

- Implementers are looking for better guidance for solving the issue we identified with discarding
  transactions state on an ACK-200. We need to get more guidance into current bugzilla report
  and/or issue a draft on this soon.

- There were a few XCAP tests at this event. Interoperability was mixed. Very little "just worked",
   but after agreements were made about URI paths and versions of schemas most tests were
   successful.

- Several UAs still miss that request-merging and handling multiple-200s (or multiple 183s) is even
  a concern.