有人了解SIP协议吗?请不吝赐教,多谢!

yaotang 2004-07-07 01:30:06
如有相关源码供学习,更感激不尽!
很长时间没来了,希望得到大家的指教,谢谢!
...全文
406 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaotang 2004-07-23
  • 打赏
  • 举报
回复
不知是否有人测试过X-Lite客户端,我的配置好象有问题,不能听到回来的语音,不知何故
yaotang 2004-07-23
  • 打赏
  • 举报
回复
哎,俺们的环境刚好是对称的NAT,目前能连出去,可是不能听到对方的回音;哪位兄台能指点一下
yaotang 2004-07-23
  • 打赏
  • 举报
回复
Full Cone NAT: 完全圆锥体.一个完全圆锥体的NAT,就是将从同一内部IP地址和端口来的所有请求,都映射到相同的外部IP地址和端口.而且,任何外部主机都可以发送报文到内部主机,通过发送报文到映射的外部地址.

Restricted Cone NAT: 受限制的圆锥体. 受限制的圆锥体的NAT,也是将从相同的内部IP地址和端口的所有请求,映射到相同的外部IP地址和端口. 但是不同于完全的圆锥体NAT,一个外部的主机(设有IP地址X),只能在一种情况下,能够发送报文到内部的主机.也就是这个内部的主机前面已经发送过报文到IP地址X.

Port Restricted Cone NAT: 端口受限制的圆锥体NAT.类似于受限制的圆锥体,但是限制还更多了,包括了端口的数量.也就是一个外部的主机,要能够用外部IP地址X和端口P,发送报文到内部的主机,只有这个内部主机前面已经发送过一个报文到这个IP地址X及端口P.

Symmetric NAT: 对称的NAT. 一个对称NAT是这样映射请求的.从相同的内部IP地址和端口,并且到相同的目的地址和端口的所有请求,都映射到同一个外部IP地址和端口,如果同一个内部主机,用相同的内部IP地址和端口,发送了一个报文到另一个目的主机,则会使用不同的映射.而且外部的主机,只有在接收到了一个报文,才能发送一个UDP报文回来到内部的主机.

前面三种NAT, 映射与目的地址无关, 只要源地址相同,映射就相同. 而对称的NAT,映射还与目的地址有关.

对于SIP协议来说,前面三种NAT,都可以借用STUN协议来穿过NAT。也就是说,用X-Lite,在默认的情况下,前面三种NAT,X-Lite都可以直接打SIP电话,不需要多加配置。

而对称的NAT,用STUN协议还是不能够穿过的。需要SIP服务器的帮助,才能工作。所以,用户的SIP电话是在对称的NAT后面,那总归是麻烦一些的。需要有Outbound Proxy的帮助,SIP电话才能用。不过即使这样,话音/性能还是不如另三种NAT。因为数据包要先到Outbound Proxy 服务器中转一下,并修改数据包头的地址参数。而不是像其它三种NAt,数据都是直接到通话的另一方。
yaotang 2004-07-21
  • 打赏
  • 举报
回复
非常感谢GoldKey(),谢谢!
yaotang 2004-07-21
  • 打赏
  • 举报
回复
个人感觉SIP相关产品技术还是很有前景,我已经测过几个国外的相关产品(大家推荐的东东,其实我都看过了:-),国内相关资料还太少,由于电信垄断的原因,也限制它的发展;不过我发现国内的这个网站www.sinosip.net有一定的意义;谢谢大家
Fly1980 2004-07-21
  • 打赏
  • 举报
回复
关注
yaotang 2004-07-21
  • 打赏
  • 举报
回复
感谢虫虫,呵呵,今天收获不小;有必要加分感谢大家
ttapi 2004-07-21
  • 打赏
  • 举报
回复
我也在用 sip 来做项目。

对于各位老兄们提到的几个 opensource 的项目,我都有过涉猎并做了一些项目。
关于 vovida 和 osip 的几点看法:
vovida stack: 大而全,代码结构适合用于理解 sip 协议。 但是实现的版本比较老,并不是 rfc3261 兼容。代码臃肿,footprint 巨大,不适合嵌入式应用。
我从 1.2 到 1.4 都有看过,也许 1.5 有所改善?
很久以前做了一些 usb phone 基于该 stack。从个人的感觉来看,不适合用于商业应用。

osip 比较小,适合做嵌入式应用,但是 fsm 实现的比较杂乱。(呵呵,可能是我的理解能力低下 :-)它的 callback 机制用的很多,应当比较容易扩充。 我有一个项目就是基于这个stack. 但是感觉他的 fsm 机制不适合维护(因为看不懂,哈哈)就自己写了一个fsm 马马虎虎将就着用。如果对 sip 协议理解比较透彻的话, osip 可以实现很完整的 sip 应用。
个人认为值得深入研究。


现在的sip 协议还没有完善,还处于在发展之中,虽然还有 bug ,
但是不失为一个充满弹性的协议,前途还是比较光明的。有必要认真学习。
yaotang 2004-07-21
  • 打赏
  • 举报
回复
呵呵,太让我高兴了,这个帖子对于俺来说远远超出了解答疑问的意义,有幸结识一位
"技德双馨"的侠兄,不亦快哉:-)
liuqingyan0425 2004-07-20
  • 打赏
  • 举报
回复
建议到soureceforge.net 上去看看,很好的opensource
GoldKey 2004-07-19
  • 打赏
  • 举报
回复
osip 应该也可以看看,我也正在搞这个。可以联系。
yaotang 2004-07-17
  • 打赏
  • 举报
回复
非常感谢楼上二位,特别是楼上的,呵呵
Richelx 2004-07-15
  • 打赏
  • 举报
回复
vovida的SIPStack 本身非常大,要看完必须要有很大的耐心啊:),建议参考其SIPUA部分的源代码,自己实现一个简单的基于客户端的SIP协议栈。
主要考虑的就是SIP消息的结构以及基于该结构的SIP消息的解析与构造。最终能实现与标准SIP应用程序(如SJPHONE)的互联就可以了。
blueboynjupt 2004-07-14
  • 打赏
  • 举报
回复
最著名的open source应该是vovida的SIPStack
seiya_13 2004-07-13
  • 打赏
  • 举报
回复
关注中!
yaotang 2004-07-10
  • 打赏
  • 举报
回复
谢谢大家,虽然大家给的东东我都看过了:-)
impossible 2004-07-09
  • 打赏
  • 举报
回复
old version rfc 2543
new version rfc 3261

extension rfc 3428 for MESSAGE method
rfc 3265 for SUBSCRIBE/NOTIFY method
jiutian 2004-07-08
  • 打赏
  • 举报
回复
建议先把RFC阅读一遍
HuangRG 2004-07-08
  • 打赏
  • 举报
回复
gz
netsys2 2004-07-08
  • 打赏
  • 举报
回复

VoIP基本概念(6):SIP协议概述
http://www.net130.com/2004/5-13/222411.html

SIP简介
http://www.watertek.com/chanpin/shuzhi/SIP.htm

SIP 协议概述
http://www.chinatelecom.com.cn/20021227/00004971.html

4,354

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧