[SIPForum-techwg] SIPConnect 1.1 - Microsoft proposalandadditional requirements- TCP

Peter Dunkley peter at dunkley.me.uk
Wed May 14 21:36:57 EDT 2008


Granted, supporting TCP in RFC 3261 is mandatory - but so is UDP, and so 
is receipt of fragmented UDP.  It is just the sending of fragmented UDP 
that is not permitted.

I take your point that only supporting UDP may (or will) lead to 
problems.  However, exactly the same is true of only supporting TCP.

I stand by my point that RECOMMENDing the use of TCP will actually have 
little practical effect.  If UDP is allowed, and using UDP by default 
(even if that implementation supports the sending and/or receiving of 
TCP as well) suits or simplifies a particular implementation this is 
what people are going to do - whether it is RECOMMENDED in the 
recommendation that they use TCP or not.

It seems entirely valid to me that a UDP only device cannot be 
SIPconnect certified, but this is quite different from preventing such a 
device from connecting to SIPconnect compliant devices or networks - 
which could be a side effect of making UDP optional as described in the 
proposal document.

Surely you MUST support receiving calls over TCP and UDP (including 
fragmented datagrams), even if the SIPconnect recommendation only allows 
you make calls using TCP.

On a purely academic point I have never really understood why fragmented 
UDP datagrams are (in the real world) a problem anyway.  Sure if you 
have fragmented UDP you are more likely to have problems because you 
lose part of a message, but SIP has timers for retransmitting messages 
over unreliable transports.  If your network connection is poor enough 
that you are so consistently losing fragments that things stop working 
you will surely be having significant problems with your RTP media 
streams which are also (usually) transmitted using UDP.  The reduction 
in call quality from lost media packets wouldn't (in a network with 
enough packet loss for fragmentation of SIP to be a problem) be a 
trivial matter, it would cause a lot of call slam-downs, and in a PSTN 
replacement/alternative system would have people running back to the PSTN.

Regards,

Peter

Francois Audet wrote:
> Yeah, what I was alluding to is the following:
>
>    *
>       Basically, RFC 3261 says that you should switch to TCP "on the
>       fly" whenever you send a request or a response that is too big.
>       Practically speaking, this is extremelly difficult to implement
>       and I have never heard of any implementation actually doing
>       this. Furthermore, this concept of "upgrading on the fly to TCP
>       from TCP" whenever a packet is too big plainly does not work in
>       many scenarios. For example, it will not work when there is a
>       NAT or firewall because bindings and pinholes are assigned on
>       the 5-tuple not the 3-tuple (i.e., creating a binding or opening
>       a pinhole with UDP does NOT create the corresponding binding or
>       open the corresponding pinhole for TCP).
>    *
>       What I am therefore saying is that if there is any chance that
>       messages MIGHT be bigger than the maximum, then you MUST use TCP
>       for all SIP signalling, as opposed to attempt this "on the fly
>       upgrading" that basically doesn't work.
>
> Another note on "simple devices" that don't send big messages... While 
> this may be true, you never know what the far end will send you. The 
> messages from the far end may be big. And in fact (this is a trunking 
> specification), they often are.
>  
> If you go to a few scenarios in your head, you'll find out that UDP 
> will break in many scenarios.
>  
> Finally, remember supporting TCP is mandatory in RFC 3261...
>
>     ------------------------------------------------------------------------
>     *From:* Peter Dunkley [mailto:peter at dunkley.me.uk]
>     *Sent:* Wednesday, May 14, 2008 16:03
>     *To:* Audet, Francois (SC100:3055)
>     *Cc:* Zweig, Greg; Joanne McMillen; Russell Bennett;
>     techwg at sipforum.org
>     *Subject:* Re: [SIPForum-techwg] SIPConnect 1.1 - Microsoft
>     proposalandadditional requirements- TCP
>
>     I am not sure there is a need to specify that TCP MUST be used
>     when packets will fragment as this is already covered in RFC 3261.
>
>     Section 18.1.1 Sending Requests clearly indicates that if a
>     request is within 200 bytes of the path MTU, or if the request is
>     larger than 1300 bytes and the path MTU is unknown, the request
>     MUST be sent over a congestion controlled transport protocol (in
>     this case TCP).
>
>     I do not favour removing the option of using UDP.  For simple
>     devices that will not generate large messages there is some
>     advantage in allowing UDP to be used and no apparent benefit from
>     using TCP.  From a purely engineering point of view, an operating
>     system and TCP/IP stack is still not guaranteed in a (simple)
>     embedded device, and in the absence of these it is almost trivial
>     to implement (non-fragmenting) UDP/IP, but certainly not so for
>     TCP/IP.  From a practical point of view there are still a number
>     of implementations that only support UDP (though this is getting
>     less common), which can be seen in the SIPit implementation survey
>     results.
>
>     I am not sure that RECOMMENDing TCP in all cases will have an
>     effect.  If UDP is allowed there will be no shortage of
>     implementations that use it in preference if that suits their
>     implementation and usage scenario - regardless of what is recommended.
>
>     The RFC also indicates that while you should not fragment, you
>     must support receipt of fragmented messages.  However, is this
>     something that SIPconnect could help with, by specifically making
>     proof of compliance to section 18.1.1 mandatory.  This would
>     ensure that a SIPconnect compliant device would never use UDP
>     inappropriately (but still cope with devices that do).
>
>     Regards,
>
>     Peter
>
>     Francois Audet wrote:
>>     Right.
>>      
>>     That's why I was thinking that one option is to describe WHEN you
>>     MUST use TCP. Those would include:
>>
>>        *
>>           When you need to secure the signaling chanel with TLS
>>           (obviously)
>>        *
>>           When it is possible that any packets will be so big they
>>           will fragment and cause problems
>>
>>     And also, RECOMMEND to use TCP otherwise.
>>      
>>
>>         ------------------------------------------------------------------------
>>         *From:* Zweig, Greg [mailto:gzweig at sonusnet.com]
>>         *Sent:* Wednesday, May 14, 2008 14:58
>>         *To:* Audet, Francois (SC100:3055); Joanne McMillen; Russell
>>         Bennett; techwg at sipforum.org
>>         *Subject:* RE: [SIPForum-techwg] SIPConnect 1.1 - Microsoft
>>         proposalandadditional requirements- TCP
>>
>>         I would encourage the group to look at the issue beyond the
>>         technical merits.  In my mind SIPConnect is all about
>>         encouraging interoperability; we all benefit from the rapid
>>         adoption of this paradigm.  Based on my experience, I would
>>         suspect that there is a significant installed base of IP-PBXs
>>         that can't support a SIP over TCP solution without a
>>         significant software upgrade and potentially large hardware
>>         investments.  I'm also concerned that some vendors will delay
>>         adoption when they are forced to upgrade portfolio elements
>>         to make their solutions compliant.  Worse, they could burden
>>         solutions with convoluted translation devices.  Making a
>>         change like this can have significant "ripple" effects that
>>         we should not discount.  It would seem that Microsoft has
>>         made a wise strategic decision with their architecture but I
>>         think we have to recognize that this is a new design and we
>>         could be unintentionally burdening businesses that took our
>>         advice and moved to a VoIP solution so they would be "ready"
>>         for the future.  I don't want to stop time but I think we'll
>>         more likely need a dual solution that accommodates either in
>>         some way.  Perhaps It might mean two levels of compliance
>>         (like b and g in wireless)?  I'm not going to suggest how but
>>         I think the goal needs to be considered.
>>
>>         I would also like to understand Microsoft's plans for RT
>>         Codec support?  I'm a big fan of wideband codecs such as
>>         G722.1 and RT so I believe such solutions should be included
>>         but it seems that more common narrowband codecs like G.729
>>         need to be there.  Most of the IP phones older than 14-18
>>         months can't support G.722.1  and most are already licensed
>>         for 729.
>>
>>         Cheers,
>>
>>         Greg Zweig
>>
>>         Sonus Networks. Inc
>>
>>         (978) 614-8027
>>
>>         ------------------------------------------------------------------------
>>
>>         *From:* techwg-bounces at sipforum.org
>>         [mailto:techwg-bounces at sipforum.org] *On Behalf Of *Francois
>>         Audet
>>         *Sent:* Wednesday, May 14, 2008 5:04 PM
>>         *To:* Joanne McMillen; Russell Bennett; techwg at sipforum.org
>>         *Subject:* Re: [SIPForum-techwg] SIPconnect 1.1 - Microsoft
>>         proposalandadditional requirements
>>
>>         Right. We talked about defining draft-ietf-sip-outbound to
>>         work only with TCP, but people didn't want to do this.
>>
>>         I don't expect a formal deprecation of UDP until there is a
>>         SIP 3.0, which there are no plans for today.
>>
>>             ------------------------------------------------------------------------
>>
>>             *From:* Joanne McMillen [mailto:joanne at avaya.com]
>>             *Sent:* Wednesday, May 14, 2008 14:00
>>             *To:* Audet, Francois (SC100:3055); Russell Bennett;
>>             techwg at sipforum.org
>>             *Subject:* Re: [SIPForum-techwg] SIPconnect 1.1 -
>>             Microsoft proposal andadditional requirements
>>
>>             I agree with the proposal as well for mandating TCP in
>>             the Forum  - just wanted to know if anyone had the answer to
>>
>>             the IETF question since we will indeed be "a bit
>>             non-compliant" with 3261 when making the mandate...
>>
>>                 ----- Original Message -----
>>
>>                 *From:* Francois Audet <mailto:audet at nortel.com>
>>
>>                 *To:* Joanne McMillen <mailto:joanne at avaya.com> ;
>>                 Russell Bennett
>>                 <mailto:Russell.Bennett at microsoft.com> ;
>>                 techwg at sipforum.org <mailto:techwg at sipforum.org>
>>
>>                 *Sent:* Wednesday, May 14, 2008 1:47 PM
>>
>>                 *Subject:* RE: [SIPForum-techwg] SIPconnect 1.1 -
>>                 Microsoft proposal andadditional requirements
>>
>>                 I dont' think that it will be deprecated anytime soon.
>>
>>                 That being said, there are things like TLS that
>>                 require TCP, and things like draft-ietf-sip-outbound
>>                 (for high availability and NAT traversal) that work a
>>                 lot better with TCP than with UDP.
>>
>>                 So I'm thinking that a "slow migration" is more likely.
>>
>>                 I don't think it would be out of the question for SIP
>>                 Forum to mandate use of TCP if we wanted to. Or
>>                 recommend it. Or explain that it must be use for
>>                 certain scenarios, etc. We have many options.
>>
>>                     ------------------------------------------------------------------------
>>
>>                     *From:* techwg-bounces at sipforum.org
>>                     [mailto:techwg-bounces at sipforum.org] *On Behalf
>>                     Of *Joanne McMillen
>>                     *Sent:* Wednesday, May 14, 2008 13:36
>>                     *To:* Russell Bennett; techwg at sipforum.org
>>                     *Subject:* Re: [SIPForum-techwg] SIPconnect 1.1 -
>>                     Microsoft proposal andadditional requirements
>>
>>                     One quick question regarding number two:
>>
>>                     Wasn't it the case that IETF was going to
>>                     deprecate UDP in 3261? What happened to that?
>>
>>                     This debate has been going on for years - perhaps
>>                     the Forum could influence getting resolution
>>                     there in IETF?
>>
>>                     --------------------------------------
>>                     Joanne McMillen
>>                     Systems Engineer
>>                     Converged Communications Division
>>                     Avaya Inc.
>>                     Phone/Fax: +1.303.538.4060
>>                     Email: joanne at avaya.com <mailto:joanne at avaya.com>
>>
>>                         ----- Original Message -----
>>
>>                         *From:* Russell Bennett
>>                         <mailto:Russell.Bennett at microsoft.com>
>>
>>                         *To:* techwg at sipforum.org
>>                         <mailto:techwg at sipforum.org>
>>
>>                         *Sent:* Wednesday, May 14, 2008 12:58 PM
>>
>>                         *Subject:* [SIPForum-techwg] SIPconnect 1.1 -
>>                         Microsoft proposal andadditional requirements
>>
>>                         All,
>>
>>                         The list has been very quiet since we
>>                         submitted our proposal, so let me start the
>>                         discussion.
>>
>>                         First of all, here some clarification /
>>                         explanation  of the origin of the document.
>>
>>                         This **is** (as many of you will probably
>>                         suspect) a **largely** neutralized version of
>>                         a spec that we developed for our own
>>                         purposes.  We have been working with Service
>>                         Providers to come up with an interface
>>                         definition that they and we can support for
>>                         SIP Trunking.  We have reviewed that document
>>                         with a number of Service Providers and most
>>                         (but not all) have found no issue with our
>>                         approach.
>>
>>                         I was asked by Rich Shockey and Scott
>>                         Hoffpauir if we would be willing to submit
>>                         that document to the TWG to "prime the pump"
>>                         for SC1.1.  Our initial goal is to ease
>>                         deployment of SIP Trunk solutions for
>>                         everyone -- so we were happy to do this.  
>>                         The sections of the document that are
>>                         Microsoft specific will be altered as a
>>                         natural outcome of this process.
>>
>>                         I have received private feedback internally
>>                         and externally that the document is
>>                         incomplete: of this I have no doubt.  We,
>>                         like everyone else, are limited to a view of
>>                         the world from our own perspective -- this is
>>                         where collaboration among a group of well
>>                         informed peers will rapidly drive a clean and
>>                         easy to deploy standard.  
>>
>>                         I strongly suggest that we don't try to boil
>>                         the ocean with myriad issues and
>>                         requirements, albeit valid, that will go much
>>                         beyond basic "call setup and teardown".   Our
>>                         objective should be to develop a standard
>>                         that makes it easy for vendors and service
>>                         providers to adopt SC1.1.   We can "layer on"
>>                         additional requirements in later versions of
>>                         the standard that can be selectively adopted
>>                         as required.
>>
>>                         That being said, let me comment on particular
>>                         requirements that have been brought to my
>>                         attention:
>>
>>                         1)      Definition of network elements:
>>
>>                         I have anonimized the elements that interface
>>                         between two networks as "Enterprise Proxy"
>>                         and "Service Provider Proxy".   These are
>>                         logical elements that are capable of handling
>>                         signaling and media.   There is no attempt to
>>                         suggest or limit any capabilities of these
>>                         elements beyond establishing voice sessions
>>                         between two networks.  The bundling of
>>                         additional value in these elements, including
>>                         security features, is IMHO outside the scope
>>                         of this effort.  Enterprises, Vendors and
>>                         Service Providers are at liberty to define
>>                         their own features and requirements that go
>>                         beyond the transmission of voice traffic.
>>
>>                         2)      SIP Transport:
>>
>>                         I proposed UDP=MAY, TCP=MUST, TLS=MAY.  While
>>                         this does not align perfectly with 3261,
>>                         there is a strong argument for TCP as the
>>                         base transport based on the fact that SIP
>>                         messages tend to exceed 1500 bytes these
>>                         days.  3261 says that a UA offering UDP must
>>                         also offer TCP, but not vice versa:
>>
>>                         Making TCP mandatory for the UA is a
>>                         substantial change from RFC 2543.  It has
>>                         arisen out of the need to handle larger
>>                         messages, which MUST use TCP, as discussed
>>                         below.  Thus, even if an element never sends
>>                         large messages, it may receive one and needs
>>                         to be able to handle them.
>>
>>                         Many current SPs deviate from this, offering
>>                         only UDP on the grounds that TCP is too
>>                         resource intensive.  I believe that this can
>>                         be resolved with TCP connection reuse.  
>>                         Furthermore, "service provider proxies" in
>>                         deployment today are capable of B2B'ing TCP
>>                         to UDP -- so this issue can be overcome via a
>>                         choice that they are well able to implement.
>>
>>                         IMHO, it is too early to make TLS (or SRTP
>>                         for that matter) a MUST, although this is a
>>                         desirable longer term goal.  There are many
>>                         issues to be worked out with respect to this,
>>                         and we can layer communications security
>>                         requirements onto the standard later.  For
>>                         now, most (all?) SPs offer SIP Trunking on a
>>                         closed data connection with a VPN, so
>>                         resolving that issue is not urgent.
>>
>>                         3)      911/emergency calling, including
>>                         provision of location information
>>
>>                         This is a regulatory requirement in some
>>                         jurisdictions but not others, therefore it
>>                         should be optional and arguably, covered in a
>>                         later spec.  The advent of mobile IP
>>                         communications has made this a difficult
>>                         requirement to resolve 'automagically'.  
>>                         There are vendors who attempt to resolve it
>>                         but there is no clear standard.  At
>>                         Microsoft, we are working on this, but have
>>                         nothing to contribute to a standard at this time.
>>
>>                         4)      FAX
>>
>>                         This is an area that c/should be added to the
>>                         discussion.
>>
>>                         5)      List of codecs to be offered
>>
>>                         Based on discussions with SPs, we understand
>>                         that G.711 is not universally acceptable due
>>                         to bandwidth utilization concerns and that
>>                         G.722.1 (for example) would be a better
>>                         choice.   I suggest that we limit the
>>                         mandatory set of codecs to the minimum set of
>>                         universally acceptable codecs and not mandate
>>                         codecs that have onerous IP/royalty
>>                         conditions attached to them.
>>
>>                         6)      Privacy
>>
>>                         This is a hot topic and various RFCs address
>>                         this.  We take a very strict view of privacy
>>                         that is implemented within our
>>                         infrastructure, regardless of what is sent in
>>                         the SIP message.  However, what is under
>>                         consideration in this initiative is the
>>                         definition of private SIP/RTP connection
>>                         between a SP and an Enterprise (i.e. the
>>                         sessions do not traverse untrusted
>>                         intermediary network elements or public
>>                         networks).  Therefore, I suggest that we
>>                         defer privacy issues to a later version of
>>                         the spec and assume for now that privacy is
>>                         addressed in the trust relationship between
>>                         those two entities.   
>>
>>                         7)      Other features, e.g. Transfer, Call
>>                         History, etc.
>>
>>                         These are 'nice-to-haves' that can be dealt
>>                         with later in order to speed completion of
>>                         this initiative.  I suspect that support of
>>                         these mechanisms is spotty and this will be
>>                         an adoption blocker in the short term.  Per
>>                         above, we should address the uber issue of
>>                         SC1.0 non-adoption by making SC1.1 easy to
>>                         adopt.  For example: it is not clear to me
>>                         that Transfer is mandatory requirement in a
>>                         SIP Trunk: this function should be handled by
>>                         elements behind the Enterprise and Service
>>                         Provider Proxies.   If Alice at x.com
>>                         <mailto:Alice at x.com> is in a call with
>>                         Bob at y.com <mailto:Bob at y.com>, she is unlikely
>>                         to want to transfer Bob to Carol at y.com
>>                         <mailto:Carol at y.com>.
>>
>>                         Russell
>>
>>                         ---------------------------------------------------
>>
>>                         Russell Bennett
>>
>>                         Partner Program Manager
>>
>>                         Office Communications Group
>>
>>                         Microsoft Corporation
>>
>>                         One Microsoft Way
>>
>>                         Redmond, WA 98052-6399
>>
>>                         mailto:  russben at microsoft.com
>>                         <mailto:russben at microsoft.com>
>>
>>                         sip:         russben at microsoft.com
>>                         <mailto:russben at microsoft.com>
>>
>>                         tel:        +1 (425) 706-3622
>>
>>                         http://www.microsoft.com/uc/
>>
>>                         ------------------------------------------------------------------------
>>
>>                         _______________________________________________
>>                         techwg mailing list
>>                         Send mail to: techwg at sipforum.org
>>                         Unsubscribe or edit options at: 
>>                         http://sipforum.org/mailman/listinfo/techwg
>>
>>     ------------------------------------------------------------------------
>>
>>     _______________________________________________
>>     techwg mailing list
>>     Send mail to: techwg at sipforum.org
>>     Unsubscribe or edit options at:  http://sipforum.org/mailman/listinfo/techwg
>>       
>
>     -- 
>     *Peter Dunkley*
>     	
>
>     	*Email:* peter at dunkley.me.uk <mailto:peter at dunkley.me.uk>
>     *http://www.linkedin.com/in/pdunkley*
>     *My Website <http://www.dunkley.me.uk/>* 	
>
>     See who we know in common
>     <http://www.linkedin.com/e/wwk/4086755/> 	Want a signature like
>     this? <http://www.linkedin.com/e/sig/4086755/>
>

-- 
*Peter Dunkley*
	

	*Email:* peter at dunkley.me.uk <mailto:peter at dunkley.me.uk>
*http://www.linkedin.com/in/pdunkley*
*My Website <http://www.dunkley.me.uk/>* 	

See who we know in common <http://www.linkedin.com/e/wwk/4086755/> 	Want 
a signature like this? <http://www.linkedin.com/e/sig/4086755/>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://sipforum.org/pipermail/techwg/attachments/20080515/2e54f8ab/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 1395 bytes
Desc: not available
Url : http://sipforum.org/pipermail/techwg/attachments/20080515/2e54f8ab/attachment-0001.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/gif
Size: 146 bytes
Desc: not available
Url : http://sipforum.org/pipermail/techwg/attachments/20080515/2e54f8ab/attachment-0002.gif 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bg_slate_385x42.jpg
Type: image/jpeg
Size: 1395 bytes
Desc: not available
Url : http://sipforum.org/pipermail/techwg/attachments/20080515/2e54f8ab/attachment-0001.jpg 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: icon_in_blue_14x14.gif
Type: image/gif
Size: 146 bytes
Desc: not available
Url : http://sipforum.org/pipermail/techwg/attachments/20080515/2e54f8ab/attachment-0003.gif 


More information about the techwg mailing list