List Info

Thread: SIPit 20 survey summary




SIPit 20 survey summary
country flaguser name
United States
2007-04-26 10:34:36
SIPit 20 was hosted by Alcatel-Lucent in Antwerp, Belgium
from April  
16 to April 20, 2007. Many thanks to Alcatel-Lucent, in
particular  
Ben Bonnaerens and Nadine Staelens for a well-planned and
effective  
event in a very nice venue.

There were 145 attendees from 59 companies visiting from 19
countries  
present.
There were 67 teams and around 90 distinct implementations.

A higher than usual percentage of the attendees (my guess is
around  
60%) were attending SIPit for the first time.

The most common thread in interoperability problems centered
on  
interpreting SDP at this event. Most of these were
implementation  
issues, but more people are running into issues as they try
to  
exchange more than the most basic of offers and answers.
These ranged  
from issues with multiple m-lines to trying to specify
different  
packetization times for codecs on the same m-line to
problems with  
the "delayed" offer-answer exchange in
INVITE/200/ACK (where the  
INVITE has no body).
More implementations are supporting TLS, and several
implementations  
had issues  around correctly handling mutual authentications
and  
reusing connections.

There was a lot of (understandable) confusion about what to
do with  
sips:. Most implementations that could handle TLS are not
yet trying  
to handle sips:. The few that did try to do something sane
with sips:  
are watching the discussion on the SIP mailing list. In any
case,  
there was not a set of implementors present who felt sips
was  
sufficiently specified and would be unhappy if the
definition  
changed. I also didn't find anyone who felt an existing
deployment  
would suffer from any change to the definition.

We used a web-based survey tool for collecting
implementation  
statistics for the second time. As noted in the report for
SIPit19,  
this has an impact on the accuracy of the information (since
someone  
will inevitably not understand one or more questions, or
won't know  
the answer). Only 59 of the 67 teams completed the survey.
We plan to  
use a slightly different mechanism at the next event to
improve the  
accuracy and completeness of the results.

With the understanding that there is some sampling error
here is what  
those 59 teams reported:

The roles represented (some implementations act in more than
one role):
   29 endpoints
   19 proxy/registrars
    5 standalone proxies
    5 redirect servers
    7 gateways
    9 automaton UAs (voicemail, conference, etc.)
   17 b2bua/sbcs
    5 UAs with signaling but no media
    4 test/monitoring tools

Implementations using each transport for SIP messages:
   UDP 100%
   TCP  82%
   TLS  46% (server auth only)
   TLS  24% (server or mutual auth)
   SCTP  7%
   DTLS  0%

71% of the implementations claimed they would correctly
reassemble  
fragmented UDP (10% of the remaining were not sure).

At SIPit19, I asked for the size of the largest datagram an 

implementation would accept. The answers indicated that most
folks  
didn't understand the question, so I was not able to produce
a useful  
summary from that event. We repeated the question at SIPit
20, and  
while there's still confusion, there are enough answers to
start  
getting a picture. Remember again that these are
self-reported numbers:
    1500 bytes or less: 18% (the smallest was 1300)
    1500 to 4K        : 10%
    64K               : 24%
    didn't know       : 25%
25% of the implementations present supported SIP over IPv6.

For DNS we had support for:
    Full RFC3263    : 54%
    SRV only        : 14%
    A records only  : 14%
    no DNS support  : 12%
    other           : 6% (includes those that didn't know or
didn't  
reply)

Support for various items:
    31% ENUM
    68% rport
    27% multiplexing SIP/STUN on the same port
    14% SIGCOMP
    15% RFC4320 fixes
    16% Identity

There were no implementations present of any significant
part of the  
session-policy framework.

There were no implementations of the hilt-sipping-*-overload
drafts  
or anything else meeting the requirements in
ietf-sipping-overload-reqs.

There were two server implementations of sip-outbound, but
no clients  
to test against.

There were 4 implementations of GRUU present (at different
draft  
levels). We did have one successful test where a UA obtained
and used  
a GRUU.

The endpoints implemented these methods:
    100% INVITE, CANCEL, ACK, BYE
     94% REGISTER
     92% OPTIONS
     79% SUBSCRIBE <- Notice the difference here...
     96% NOTIFY    <-    unsolicited notifies were
prevalent
     68% PRACK
     58% MESSAGE
     79% INFO
     64% UPDATE
     87% REFER
     38% PUBLISH

The endpoints implemented these extensions:
   77% RFC3891: replaces
   60% RFC4028: session-timer
   21% RFC3327: path
    6% RFC3840: pref
    2% RFC3841: caller-prefs
   30% RFC3323: privacy
    0% RFC4538: target-dialog
    6% RFC4488: norefersub
   68% RFC3262: 100rel
   11% RFC3994: indication of message composition

57% of the endpoints implemented sipping-cc-transfer

When asked about STUN support, the client implementations
replied:
    8% I implement all the client requirements of
draft-ietf-behave- 
rfc3489bis
    6% I implement some, but not all, of the client
requirements of  
draft-ietf-behave-rfc3498bis
    4% I implement all of the client requirements of
RFC3489
   14% I implement some, but not all, of the client
requirements of  
RFC3489
   60% I do not implement STUN as a client
    8% Other

There were several STUN servers and at least two TURN
servers. We had  
more TURN clients this time, and successfully exercised
TURN. Three  
implementations claimed support for ICE, but no
interoperability was  
reported (I suspect there were versioning issues that
couldn't be  
overcome in the time-scale of the event). There was one
ice-tcp  
implementation present.

This is how the endpoints characterized their handling of
S/MIME:
    6% I break if someone sends me S/MIME
   34% I pretend S/MIME doesn't exist if it shows up
   38% I don't pay attention to S/MIME, but will proxy it or
hand it  
to my application
    4% I pay attention to S/MIME I receive, but don't send
any
    0% I don't pay attention to S/MIME I receive, but I do
send some
    6% I try to do something useful with S/MIME I receive
and send
   12% Other

This is how they answered for multipart/mime:
    2% I break if someone sends me multipart/mime
   24% I pretend multipart/mime doesn't exist if someone
sends it to me
   24% I ignore multipart/mime but will proxy it or hand it
to my  
application if it shows up
   10% I try to do something useful with multipart/mime I
receive,  
but I never send it
    4% I ignore multipart/mime that I receive, but I try to
do  
something useful with multipart/mime I send
   24% I try to do something useful with multipart/mime I
send and  
receive
   12% Other

Here is how the endpoints claimed to handle receiving 200
OKs from  
more than one branch of a forked INVITE:
   36% I send BYEs to all but one branch
   10% I use all of them (perhaps mixing the different media
streams  
locally)
   42% I don't handle this case gracefully
   12% Other

27% of the endpoints did not use symmetric RTP

This is how the endpoints (that actually handled media)
described  
their use of RTCP:
   33% I fully implement RTCP and use the RTCP from my
peers
   27% I send some RTCP, and open a port to receive RTCP,
but I  
ignore any packets I receive
    6% I never send RTCP, but I do open a port for receiving
(and  
ignoring) it
   34% I don't even open a port for RTCP

There were 9 SRTP endpoints (down from 12 at the last
event). Only 4  
of those used sdes.
Interoperability after key exchange was lower than at SIPit
19.
There was only one RTP over DTLS implementation present.

One endpoint claimed support for comedia (but 10 claimed
they would  
send media over TCP).

For hold, the endpoints claimed:
   8%  I don't support hold
   4%  I set the m-line port to 0
10%  I set the c-line to 0.0.0.0
27%  I use the sendonly/recvonly/sendrecv attributes
15%  I use the s/r/sr attributes, but only if I see them in
SDP from  
the other party first, otherwise I set the m-line port to
zero
17%  I use the s/r/sr attributes AND set the m-line port to
0
19%  I don't do any of those things

25% of the endpoints would offer SDP with more than one
m-line.
57% would only play one audio stream if they received
multiple.

Most proxies are now doing either 3261 or fork-loop-fix loop
detection.

Only 30% of the proxies claimed they would forward a request
with an  
unknown RURI scheme when there was a Route header field
whose first  
value is a SIP URI.

25% of the proxies actively participate in session timer.

5 of the 19 proxies present would upgrade from sip: to sips:
while  
forwarding. 6 would downgrade.

6 of the registrars would allow non-sip or sips schemes in
contacts.
6 of the registrars claimed to accept an S/MIME signed or
encrypted  
REGISTER request.

Less than half of the b2bua/sbc-like elements could be
configured to  
forward unknown methods.
Most could be configured to forward unknown SDP lines.

There were 46 SIP-Events implementations

These were the supported event packages:
30 refer
20 message-summary
14 presence
14 dialog
   9 reg
   6 conference
   2 ua-profile
   2 gruu-reg-event
   2 kpml

5 supported winfo

4 supported event-list

15 would issue an unsolicited NOTIFY.
27 would respond to an unsolicited NOTIFY with a 200-OK

There were 2 partial-publish/partial-notify implementations

4 implementations supported presence-rules

I repeated the question about which P-headers each
implementation  
actively supported:
   34 P-Asserted-Identity
   21 P-Preferred-Identity
   12 P-Associated-URI
   12 P-Called-Party-ID
   10 P-Access-Network-Info
    8 P-Charging-Vector
    7 P-Visited-Network-ID
    7 P-Charging-Function-Address
    5 P-Media-Authorization
    4 P-User-Database
    4 P-DCS-* (andy of the P-DCS headers)
    1 P-Answer-State

Let me know if there are other questions you'd like to see
asked next  
time.

RjS
_______________________________________________
Sip-implementors mailing list
Sip-implementorscs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinf
o/sip-implementors

Re: SIPit 20 survey summary
country flaguser name
United States
2007-04-27 13:48:15
I'd like to point out one thing about this:

> This is how they answered for multipart/mime:
>     2% I break if someone sends me multipart/mime
>    24% I pretend multipart/mime doesn't exist if
someone sends it to me
>    24% I ignore multipart/mime but will proxy it or
hand it to my
> application if it shows up
>    10% I try to do something useful with multipart/mime
I receive,
> but I never send it
>     4% I ignore multipart/mime that I receive, but I
try to do
> something useful with multipart/mime I send
>    24% I try to do something useful with multipart/mime
I send and
> receive
>    12% Other

Moving forward, SIP UAs and proxies will be required to
support
location-conveyance (currently
draft-ietf-sip-location-conveyance-07) in
order to support location for emergency calls (citizen to
authority, like
1-1-2 or
9-1-1).  -conveyance requires multipart support.  

The consequences of not supporting emergency call location
will be serious.
I believe it is likely that there will eventually be
regulatory requirements
to support emergency calls in some jurisdictions.  Upgrades
to several
components of today's infrastructure will be needed before
this all works,
but stack vendors and UA developers should put multipart
(and
location-conveyance) on their development plans for next
year at the latest.

Brian


_______________________________________________
Sip-implementors mailing list
Sip-implementorscs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinf
o/sip-implementors

[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )