以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 XML 与 移动嵌入式开发 』   (http://bbs.xml.org.cn/list.asp?boardid=77)
----  [原创]一个简单的SIP协议栈及其嵌入式UA/SERVER的实现  (http://bbs.xml.org.cn/dispbbs.asp?boardid=77&rootid=&id=59259)


--  作者:enyaxp
--  发布时间:1/6/2008 11:19:00 PM

--  [原创]一个简单的SIP协议栈及其嵌入式UA/SERVER的实现
最近看论坛上讨论SIP协议的人多了起来,感觉很高兴,SIP协议是一种很好的技术,在网络音视频通信及电话会议领域中正在逐渐取代H.323成为主流的应用层协议。

为了抛砖引玉,现将本人的本科毕设《SIP协议栈及其嵌入式UA/SERVER的实现》发到论坛中供初学SIP者参考,其中包含了论文、部分代码及答辩PPT。

论文中具体介绍了一个SIP协议栈-zmhSipStack的编写过程,包括最初的系统设计,基本原理以及具体的代码实现,并且介绍了向嵌入式设备的移植过程。代码包括PC端的SipUA/SipProxyServer以及一个能运行在周立功ARM7开发板上的Server(需要ZLG/IP协议栈支持UDP)。希望能为各位SIP爱好者提供一个简单的入门参考。水平有限,望各位专家大牛们多包涵。

ps:当初曾经将相同的东西发到汇思SIP论坛上,只不过论文题目改成了《自己动手写一个简单的SIP协议栈》。一年半过去了,回头看自己当初写的程序真的是太烂了,面向对象、模式等概念统统的没有,仅仅为了实现功能写出来的代码现在看来真的令人无法忍受,需要重新构建一个更好更完备的协议栈,正则表达式是一定要用到的!!

论文和测试结果:

答辩PPT:

源代码:
PC端SipUA(cpp) :


PC端SipProxyServer(cpp):


ARM端SipProxyServer(c):

希望能给大家一点帮助。


[此贴子已经被作者于2008-3-1 14:53:38编辑过]

--  作者:enyaxp
--  发布时间:2/28/2008 10:09:00 PM

--  
现在正在设计java版的SIP协议栈,虽然距离商用还有很大的距离,但是对于一些希望了解SIP协议的朋友们来说还是可以作为入门资料的。
--  作者:yhy214
--  发布时间:2/29/2008 9:57:00 AM

--  

--  作者:lubin59
--  发布时间:3/6/2008 5:26:00 PM

--  
呵呵,原来楼主是这个版的版主啊,恭喜恭喜,
我只是刚刚学习这方面的东西,看了楼主的代码,学到不少,
用JAVA做SIP协议栈是否会在处理能力上有所降低
--  作者:enyaxp
--  发布时间:3/6/2008 8:00:00 PM

--  

您好。

不用C而转而使用JAVA肯定会对协议栈的性能产生很大影响,但是相对性能我现在更关注的是如何能更快捷的实现一个比较完善的协议栈架构,用JAVA可以让我把更多的精力投入到对协议栈功能的完整描述上来,而不用考虑太多细枝末节的东西。性能达不到可以通过后期的代码优化来实现,但是如果架构有缺陷的话那么你基于此做的所有工作都有崩溃的危险,现在这个代码的架构就很差。

做这样一个应用层协议栈,我觉得更重要的是对接口的设计,这包括对传输层的接口、对状态机的接口、对数据库的接口、对用户及应用程序的接口等等。你要尽可能的保证你的工程可以方便的对这些接口进行拓展或修改,因为SIP协议本身也在不断的进化中,所以我现在选择了JAVA做为构建这个协议栈的新工具,仅仅是因为它比较适合做接口设计这种工作。

欢迎您能经常来这个版面。

以下是引用lubin59在2008-3-6 17:26:00的发言:
呵呵,原来楼主是这个版的版主啊,恭喜恭喜,
我只是刚刚学习这方面的东西,看了楼主的代码,学到不少,
用JAVA做SIP协议栈是否会在处理能力上有所降低


--  作者:lubin59
--  发布时间:3/7/2008 10:02:00 AM

--  
非常欣赏楼主的水平,可能因为楼主通过以前的学习和研究,对SIP协议栈有了一个比较深入的了解,考虑的就比较周全了

我才最近几天接触这方面的东西,楼主能否推荐几本入门的书啊,谢谢喽


--  作者:enyaxp
--  发布时间:3/7/2008 10:41:00 AM

--  

入门应该说还是看协议最好,我有个中文版的SIP协议国家标准,找到了我会传到论坛上来。
书我推荐下面两本:

SIP协议及其应用:说实话这本书写的蛮烂的,大部分都是从文档里搬出来的,不过做参考到是还可以,Chinapub上有得卖。

ISBN:712100643X 出版者:电子工业出版社

此主题相关图片如下:
按此在新窗口浏览图片

下一代网络SIP原理与应用:这本书写的还不错而且也好买,推荐!

ISBN:7111189779 出版者:机械工业出版社

此主题相关图片如下:
按此在新窗口浏览图片

以下是引用lubin59在2008-3-7 10:02:00的发言:
非常欣赏楼主的水平,可能因为楼主通过以前的学习和研究,对SIP协议栈有了一个比较深入的了解,考虑的就比较周全了

我才最近几天接触这方面的东西,楼主能否推荐几本入门的书啊,谢谢喽



--  作者:luntanshizhe
--  发布时间:3/7/2008 11:25:00 AM

--  
还有本SIP揭秘,不过可能买不到
--  作者:enyaxp
--  发布时间:3/7/2008 12:05:00 PM

--  

SIP揭秘是经典书籍,不过太老了已经绝版。

我有超星格式的,你如果想要的话也可以发上来。

以下是引用luntanshizhe在2008-3-7 11:25:00的发言:
还有本SIP揭秘,不过可能买不到


--  作者:enyaxp
--  发布时间:3/7/2008 12:09:00 PM

--  
SIP揭密超星格式版,请配合超星阅读器使用。



此主题相关图片如下:
按此在新窗口浏览图片


--  作者:lubin59
--  发布时间:3/7/2008 2:03:00 PM

--  
谢谢楼主,楼主真是热心人啊
--  作者:enyaxp
--  发布时间:3/8/2008 10:37:00 PM

--  

不用客气,经常来这里坐坐吧,需要什么资料我可以提供。

以下是引用lubin59在2008-3-7 14:03:00的发言:
谢谢楼主,楼主真是热心人啊


[此贴子已经被作者于2008-3-11 18:17:31编辑过]

--  作者:baobao_518
--  发布时间:3/14/2008 2:03:00 PM

--  
谢谢楼主喽~~~~~~~~~~~~~~~
--  作者:sea1029916
--  发布时间:4/18/2008 6:00:00 PM

--  
请问楼主你给的编码在哪上运行啊?方便的话加我QQ:413016616
多谢了!
--  作者:enyaxp
--  发布时间:4/21/2008 2:01:00 AM

--  

代码PC端是VC++6.0下开发的,运行需要安装微软的一套音视频编解码器软件包,现在不太好找了;嵌入式端是在周立功的SmartARM2200开发板上,在zlg/ip数据传输层协议栈上构建的一个应用层协议栈,编译时需要和ucos操作系统源码一起编译。

如果有兴趣的话请期待我正在构建的新的SIP协议栈。

以下是引用sea1029916在2008-4-18 18:00:00的发言:
请问楼主你给的编码在哪上运行啊?方便的话加我QQ:413016616
多谢了!


--  作者:neatrain
--  发布时间:4/21/2008 10:27:00 PM

--  
不错的资料,值得学习学习
--  作者:vickxiao
--  发布时间:11/15/2008 5:32:00 AM

--  
这个论坛真不错,气氛也好.我北邮大四,正在做毕业设计,也是SIP方面的,不过是测试vulnerability的
--  作者:snowwindfish
--  发布时间:11/25/2008 10:09:00 AM

--  
非常感谢楼主提供SIP相关的资料

--  作者:yinlin
--  发布时间:4/20/2009 1:51:00 PM

--  
谢谢楼主拉~
--  作者:uculj
--  发布时间:5/8/2009 2:54:00 AM

--  
楼主,你构建的新的SIP协议栈完成了吗?   完成了可以传给我学习一下不?我现在正在做有关SIP协议栈的毕业设计。还有你传的那个源代码怎么我运行无法实现功能呢?我是一个初学者,很多都不懂,先拜谢啦!

--  作者:oewqjdfw
--  发布时间:4/7/2010 9:30:00 AM

--  正在学习SIP的东西,支持一下
正缺入门资料
--  作者:hjx_221
--  发布时间:4/11/2010 6:12:00 PM

--  
thanks a lot!!

W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
125.000ms