为何选择SIP的TLS

时间:2011-11-18 07:12:04

标签: voip sip ssl ipsec

为什么TLS是SIP选择的链接加密?

paper开始,似乎TLS无法处理UDP,而SIP不需要任何人单独使用TCP!那么TLS如何确保互操作性呢?

如果使用IPSec会出现什么问题呢?

6 个答案:

答案 0 :(得分:4)

  

从一篇论文来看,似乎TLS无法处理UDP,而SIP不需要任何人单独使用TCP!

TLS正在处理TCP级别,因此TLS需要使用SIP over TCP。

SIP是在HTTP的影响下创建的。 TLS针对HTTP(以及SIP)进行了优化。

IPSec的一个主要缺点是添加到原始数据包的额外大小。 TLS比IPSec需要更少的开销。

Some comparison between TLS and IPsec

  

如果使用IPSec会出现什么问题呢?

根据RFC 2119,RECOMMENDED与SHOULD具有相同的优势。

  

“3。应该这个词,或形容词”推荐“,意思是那里     在特定情况下可能存在有效理由忽略a     特殊项目,但必须理解全部含义     在选择不同的课程之前仔细权衡。“

Discussion

答案 1 :(得分:4)

  

从一篇论文来看,似乎TLS无法处理UDP,而SIP则无法处理   要求任何人单独使用TCP!那么互操作性如何呢?   由TLS确保!

使用是真的。 DTLS为基于数据报的协议(如UDP

)提供TLS

答案 2 :(得分:1)

您还有其他UDP方法,例如标头加密。

23.4.3 rfc 3261中的隧道加密

答案 3 :(得分:1)

您可以使用SIP over IPSec。 3GPP IMS SIP甚至更喜欢这样。但IPsec有一些严重的缺点。 要配置IPSec,您必须拥有计算机的管理员权限。

  • IPSec有许多用户必须配置的配置选项,除非SIP提供商就单个配置文件达成一致。
  • 在通用操作系统上配置IPsec是一个非常糟糕的问题,SIP客户端供应商往往会避免这种情况。
  • 通过NAT路由器获取IPSec非常棘手。

与此相比,TLS更易于部署。

答案 4 :(得分:0)

在最好的情况下,基线UDP性能大约是 使用TLS(代理链模式)的三倍;在里面 最糟糕的情况是,UDP的性能是TLS的17倍 (具有TLS和相互身份验证的本地代理)。该 绩效结果主要取决于是否以及如何 从那时起,执行频繁的TLS连接建立 TLS会话协商会产生昂贵的RSA公钥 操作

http://www.cs.columbia.edu/~hgs/papers/Shen1008_TLS.pdf

答案 5 :(得分:0)

目前,SIP的TLS仅保护部分呼叫流程(邀请和注册)。 SIP over TCP的TLS对注册很有意义,因为UAC将传输凭据。其他SIP命令和媒体(音频/视频)仍将通过UDP发送,未加密。这是最常用的TLS over SIP,被大多数流行的基于SIP的VoIP电话(即Skype,WhatsApp)所采用。

或者,可以通过TCP使用TLS进行SIP并设置"内联" RTCP流,其中所有TLS,SIP和媒体(音频/视频/ DTMF)通过相同的加密TCP流发送;然而,我不确定流行的基于SIP的VoIP电话(即Skype,WhatsApp)是否可以支持这一点,尽管可以部署这种技术。相反,所有RTSP客户端(Windows Media,Apple QuickTime)都可以通过单个流支持内联RTCP(指出这一点,因为RTSP和SIP几乎相同,减去动词)。