通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc

上传人:sccc 文档编号:4867439 上传时间:2023-05-20 格式:DOC 页数:50 大小:728.51KB
返回 下载 相关 举报
通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc_第1页
第1页 / 共50页
通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc_第2页
第2页 / 共50页
通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc_第3页
第3页 / 共50页
通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc_第4页
第4页 / 共50页
通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc》由会员分享,可在线阅读,更多相关《通信工程毕业设计论文基SIP系统模型的构建与其信令过程的验证.doc(50页珍藏版)》请在三一办公上搜索。

1、基SIP系统模型的构建与其信令过程的验证作 者 姓 名:指 导 教 师:单 位 名 称:信息科学与工程学院专 业 名 称:通信工程东 北 大 学2006年6月Constructing the SIP system model and making the confirmation of signalling processby Supervisor: Professor Northeastern UniversityJune 200642东北大学毕业设计(论文)摘要毕业设计(论文)任务书毕业设计(论文)题目:SIP系统模型的构建与其信令过程的验证基本内容:在论文中将进行以下内容1 详细了解SI

2、P 协议内容2 理解osip和exosip协议栈的编译方法3 对VC+6.0程序开发环境加以了解4 分析系统框架和功能模块5 设计SIP用户注册程序6 对SIP系统进行测试在设计的过程中,把重点要放在对协议的理解上面来,要对SIP协议的应用进行掌握。通过VC+进行SIP注册的程序设计,来完成SIP系统的软件设计,并将对系统进行测试。毕业设计(论文)专题部分:题目:基本内容:学生接受毕业设计(论文)题目日期第周指导教师签字:年月日SIP系统模型的构建与其信令过程的验证随着Internet的不断发展,它的许多应用都需要建立和管理一个会话,会话在这里的含义是在参与者之间数据的交换。其应用实现往往是很

3、复杂的:参与者可能是在代理间移动,他们可能有多个名字,他们中间的通讯可能是基于不同的媒介(比如文本,多媒体,视频,音频等),有时候是多种媒介一起交互等。人们创造了无数种通讯协议应用于实时的多媒体会话数据比如声音、影像和文本。为了更方便的建立一个会话,本文选择了会话初始协议(SIP,Session Invitation Protocol)来建立通信系统。建立一个完善的SIP系统是一项非常复杂的工作,本文在做了大量的调研工作基础上,选择了一个正确的程序开发工具和SIP协议栈,组建一组SIP服务器和客户端,完成SIP系统中的用户通过IP网络向服务器进行注册的任务。本文通过设计一组SIP服务器和客户端

4、,对它们之间的通信信令进行了采集和分析,通过与实际结果的对照来证明信令传输过程是正确的。本文首先介绍了SIP协议和开发工具的应用方法,在概述了SIP特点之后,提出了本系统的总体设计,然后介绍了系统的具体实现过程,最后分析了验证结果。本分析系统是在Visual C+6.0平台下设计实现的。通过抓包工具对整个通信过程进行检测和分析,从而明确SIP系统通信的原理和信令传输方法。通过对服务器和和客户端的设置来熟悉基本的IP网络特点,以此来观察和分析IP特性在SIP系统中的应用。关键词:会话初始化协议,用户代理,代理服务器,SIP信令,协议栈东北大学毕业设计(论文)ABSTRACTConstructin

5、g the SIP system model and making the confirmation of signalling processAlong with the Internet unceasing development, its many applications all need to establish and to manage a conversation, converses in here meaning is the data exchange between participants. Considered the actual situation of the

6、 participants, these applications realizations are usually very complex: participants possibly move between the proxies, they possibly have many names, their middle communication possibly is based on the different medium (for instance text, multimedia, video frequency, audio frequency and so on), so

7、me times are the many kinds of media hand over together and so on. The people created the innumerable kind of communications protocol to apply to the real-time multimedia conversation data for instance sound, the image and the text.For a more convenient establishment conversation, I chose the Sessio

8、n Invitation Protocol (SIP, Session Invitation Protocol) to establish my own communications system. Establishes a perfect SIP system is an extremely complex work, but my duty is completes in the SIP system the user to carry on the registration through the IP network to the server the duty. In order

9、to complete this task, I must set up a group of SIP server and the customer end, again is chooses a correct procedure development kit and the SIP agreement stack, I has done the massive investigation and study work for this.This article through designing a group of SIP server and the client, the cor

10、respondence letter command carries on gathering and the analysis to them between, through with the real result comparison proved the letter command transmits the process is correct. This article first introduced the SIP theory knowledge and the development kit application method, after has outlined

11、the SIP characteristic, proposed this system design, then introduced the system concrete realization process, finally has analyzed the confirmation result.This analysis system is designed and realized under the Visual C+6.0 platform. Through grasps a package of tool to carry on the examination and t

12、he analysis to the entire course of communications, thus is clear about the SIP system communication the principle and the letter command transmits the method. Through to the server and with the customer end establishment familiar basic IP network characteristic, observes and analyzes the IP charact

13、eristic by this in the SIP system application.Key words:Session Invitation Protocol, User Agent Register Server, SIP Signalling, protocol stack东北大学毕业设计(论文)目录目录任务书I中文摘要IIAbstractIII第1章 绪论11.1设计背景11.2设计目的21.3 论文概要2第2章 SIP理论基础和开发工具32.1 SIP理论基础32.1.1 SIP介绍32.1.2 SIP基本组成42.1.3 SIP消息格式62.1.4 SIP运作模式102.1.

14、5 SIP未来发展问题112.2程序开发工具122.2.1 Visual C+ 6.0具体特点122.2.2 MFC类库132.2.3 Osip2和EXosip协议栈的分析14第3章 SIP系统的定义和框架分析183.1 系统的定义183.2 可行性分析193.2.1 SIP 服务器实现方案193.2.2 SIP客户端实现方案213.3 系统框架设计和分析223.3.1系统总体结构设计223.3.2程序设计流程233.3.3主界面设计243.3.4协议栈的编译253.3.5 SIP包分析26第4章 局域网SIP用户注册的实现284.1 程序设计介绍284.1.1重要文件介绍284.1.2 关键

15、程序分析284.2实现系统功能配置304.2.1开发工具配置304.2.2程序抓包流程30第5章 系统功能的实现和结果分析335.1工程配置框图335.1.1工程配置原理335.1.2 工程配置方法345.2程序执行界面36结 论40参考文献41致 谢42东北大学毕业设计(论文)第1章 绪论第1章 绪论1.1设计背景随着传统电信网络和计算机网络的逐渐融合,出现了采用分组交换技术替代传统电路交换技术传送话音业务的IP电话,IP电话的出现不可避免地给传统电信市场带来了强大冲击,大多长途电信运营商都开始关注IP电话的发展。IP电话有着诱人的市场前景,美国一家市场调研公司Killen Associat

16、es预测到2003年IP电话业务年收入将达10亿美元,很多传统电信公司、ISP和新一代电信公司都开始提供或试验IP电话业务。中国信息产业部已于1999年4月正式批准了中国电信、联通、吉通三家公司进行IP电话业务运行试验。目前国际上的IP电话标准主要有ITU-T H.323协议和IETF1(Internet Engineering Task Force)MGCP协议和SIP(Session Invitation Protocol)协议。本设计专注SIP协议。会话初始协议的开发目的是用来帮助提供跨越因特网的高级电话业务。因特网电话(IP电话)正在向一种正式的商业电话模式演进,会话初始协议就是用来确

17、保这种演进实现而需要的下一代网络(NGN,Next Generation Network)系列协议中重要的一员。目前业界对SIP 的支持越来越广泛。全球大的运营商都转向支持SIP 方式, 在北美和欧洲, 多数新的方案都选用SIP , 国内的服务商考虑组建新网络的时候, 也开始采用SIP 。SIP 可以提供PC 作为一个软客户,以这样的方式入网,可以通过IP 电话,终端识别器的方式,也可以通过网关的方式。还可以提供多媒体服务IP 电话、呼叫中心等个性化服务。会话初始协议是因特网工程特别工作组(IETF)标准进程的一部分,它是在简单邮件传送协议(SMTP)和超文本传送协议(HTTP)基础之上建立起

18、来的。它用来建立、改变和终止基于IP网络的用户间的呼叫。为了提供电话业务它还需要结合不同的标准和协议:特别是需要确保传输(RTP)与当前电话网络的信令互连,能够确保语音质量(RSVP),能够提供目录(LDAP),能够鉴权用户(RADIUS)等等。会话初始协议被描述为用来生成、修改和终结一个或多个参与者之间的会话。这些会话包括因特网多媒体会议、因特网(或任何IP网络)电话呼叫和多媒体发布。会话中的成员能够通过多播或单播联系的网络来通信。会话初始协议支持会话描述,它允许参与者在一组兼容媒体类型上达成一致。它同时通过代理和重定向请求到用户当前位置来支持用户移动性。会话初始协议不与任何特定的会议控制协

19、议捆绑。SIP软电话是基于因特网开发的电话软件,可以通过呼叫对方IP地址达到语音通信的目的,目前的研究还不算完善。由于SIP是基于纯文本的信令协议,可以管理不同接入网络上的会晤。会晤可以是终端设备之间任何类型的通信,如视频会晤、即时信息处理或协作会晤等。该协议不会定义或限制可使用的业务,传输、服务质量、计费、安全性等问题都由基本核心网络和其它协议处。所以会话初始协议目前倍受青睐,走在了研究领域的前沿。1.2设计目的本设计主要研究用计算机语言简单编程设计SIP服务器和注册流程,以及通过两台联网的计算机对其信令传输过程进行验证。所用的计算机编程语言为Visual C+6.0。该设计是基于SIP信令

20、流程的,与SIP信令有所不同,仅仅实现了SIP通信信令,忽略了语音通信。通过设计SIP软电话了解了SIP电话的设计理念,以及用计算机编程语言实现计算机之间的通信。通过信令流程验证过程了解了计算机之间通过SIP协议进行通信的过程。1.3 论文概要SIP已经发展好几年了,但仍然没有普及应用,一方面由于SIP设备开发利润的限制,另一方面大家对SIP不是很具体的了解。本文主要针对SIP开发者,介绍了SIP的理论知识和Visual C+6.0程序开发工具的具体应用,以及相关软件的配置和应用等,并编写了相关程序。论文分为六章内容:第一章简要介绍课题研究的目的和重要意义;第二章讲述与本文有关的初级知识,理论

21、基础以及程序开发工具;第三章介绍了设计的系统定义和自己对系统的分析;第四章主要讲述了自己在实现局域内SIP注册所做的工作;最后一章介绍的是整个系统实现的过程和系统验证工作。东北大学毕业设计(论文)第2章 SIP理论基础和开发工具第2章 SIP理论基础和开发工具2.1 SIP理论基础SIP(会话初始协议)的开发目的是用来帮助提供跨越因特网的高级电话业务。因特网电话(IP电话)正在向一种正式的商业电话模式演进,SIP就是用来确保这种演进实现而需要的NGN(下一代网络)系列协议中重要的一员。SIP是IETF1标准进程的一部分,它是在SMTP(简单邮件传送协议)和HTTP(超文本传送协议)基础之上建立

22、起来的。它用来建立、改变和终止基于IP网络的用户间的呼叫。为了提供电话业务它还需要结合不同的标准和协议,特别是需要确保传输(RTP),与当前电话网络的信令互连,能够确保语音质量(RSVP)、提供目录(LDAP)、鉴权用户(RADIUS)等等。SIP被描述为用来生成、修改和终结一个或多个参与者之间的会话。这些会话包括因特网多媒体会议、因特网(或任何IP网络)电话呼叫和多媒体发布。会话中的成员能够通过多播或单播联系的网络来通信。SIP支持会话描述,它允许参与者在一组兼容媒体类型上达成一致。它同时通过代理和重定向请求到用户当前位置来支持用户移动性。SIP不与任何特定的会议控制协议捆绑。2.1.1 S

23、IP介绍会话初始化协议(SIP)的第一个版本即SIPv1是使用会话描述协议(SDP)描述会话,同时使用UDP进行传输,是基于文本的。1996年2月22日,SIPv1和简单会话邀请协议(SCIP,Simple Conference Invitation Protocol)两个协议合并为SIPv2,即现在所说的SIP。SIP提供以下功能: (1)名字翻译和用户定位无论被呼叫方在哪里都确保呼叫达到被叫方。执行任何描述信息到定位信息的映射。确保呼叫(会话)的本质细节被支持。 (2)特征协商它允许与呼叫有关的组(可以是多方呼叫)在支持的特征上达成一致(注意:不是所有方都能够支持相同级别的特征)。例如视频

24、可以或不可以被支持。总之,存在很多需要协商的范围。 (3)呼叫参与者管理呼叫中参与者能够引入其它用户加入呼叫或取消到其它用户的连接。此外,用户可以被转移或置为呼叫保持。(4)呼叫特征改变用户应该能够改变呼叫过程中的呼叫特征。例如,一呼叫可以被设置为“voice-only”,但是在呼叫过程中,用户可以开启视频功能。也就是说一个加入呼叫的第三方为了加入该呼叫可以开启不同的特征。2.1.2 SIP基本组成SIP协议虽然是主要为IP网络设计的,但它并不关心承载网络,可以在ATM、帧中继等承载网中工作,可以运行于TCP、UDP、SMTP等各种传输层协议之上。SIP用户通过类似于e-mail地址的URL标

25、识,例如sip:myname,通过这种方式可以用一个统一名字标识不同的终端和通信方式。SIP主要由于4种元素组成:用户代理、代理服务器、重定向服务器以及注册服务器。(1)用户代理(User Agent)用户代理是用于用户与用户之间交互的SIP实体,它通常有一个与用户连接的接口。可分两个部分:用户客户端(UAC),负责发起呼叫;用户服务端(UAS),负责接受呼叫并做出响应。两者并不是绝对的。例如,Bob想要在他的计算机上通过Internet打电话给Jack,他运行了一个包含SIP用户代理的应用程序,Bob通过接口和UA交互。一旦Bob按了呼叫Jack的接口按钮,UA就触发相应的SIP消息建立呼叫

26、请求。Bob的UA此时扮演的就是UAC。Jack的计算机上也有一个SIP用户代理,当这个代理收到Bob用户代理发来的请求时,可能给出两个按钮给Jack选择:接受请求和拒绝请求。当Jack作出接受请求时按下接受请求按钮,Jack的用户代理根据作出的选择给Bob的用户代理回送消息。Jack的UA此时扮演的就是UAS。用户和SIP之间的所有交互都是通过UA作为中介来完成的。(2)代理服务器(Proxy Server)代理服务器负责接收用户代理发来的请求,根据网络策略将请求发给相应的服务器,并根据收到的应答对用户代理做出响应。可分为保留呼叫状态代理、保留状态代理和不保留状态代理。如表2.1所示。表2.

27、1 代理服务器分类保留呼叫状态代理保留为后述事务发送的SIP消息的详细路径,这些代理存储从会话建立时刻起到会话结束为止所有状态信息。保留状态代理存储与一个给定事务相关的状态信息直到事务结束,它不需要位于那些为后述事务发送的SIP的路径中不保留状态代理收到一个请求时,就发向下一跳,立即删除与之相关的所有状态信息;收到应答时,根据Via标题头分析路径发往下一跳,它并不为之维持状态. 上例中Bob只发出一个呼叫请求,但是可能会有很多Proxy为他建立呼叫请求,设Jack是Hust电信系ITEC的一名研究生,Hust有一个代理服务器,电信系也有一个代理服务器,当Bob的请求:Jack,到达Hust时,

28、Hust的代理服务器将代表Bob的UA自动向Jack发出请求,当请求到达电信系服务器时,电信的代理服务器将自动向ITEC发出Jack请求。(3)重定向服务器(Redirect Server)重定向服务器用于在需要时将用户新的位置返回给呼叫方。呼叫方可根据得到新位置重新呼叫。如上例设Hust有一个重定向服务器,它知道Jack工作时在Jack202.114.5.36,休息时在Jack222.20.74.219它就将这两个地址返回给Bob的UA,UA根据返回的地址同时向这两个地址发送请求。重定向服务器也可以返回知道Jack更多地址的的服务器。(4)注册服务器(Register)注册服务器用于接收和处

29、理用户端的注册请求,完成用户地址的注册。SIP提供了一个搜索机制,如果一个用户期望建立和其它用户会话,SIP必须查找能够找到对方用户正在使用的当前主机。如Jack想要别人能够找到他就必须向服务注册可以找到他的一个或几个地址。2.1.3 SIP消息格式SIP消息采用的是文本格式编码,虽然在传输时占用的带宽比二进制更宽,但是采用文本更容易让人阅读,所以便于调试,而且采用文本协议更灵活更易于以后新功能的扩展。(1)SIP消息SIP消息有两种:请求消息和响应消息一个SIP消息由一个起始行、一个或几个字段组成的消息头、一个空行以及可选的消息体组成。起始行分为请求行和状态行两种,分别对应请求消息和响应消息

30、的起始行。(2)常用标题头标题头提供了有关于请求或应答的信息和关于这些消息所包含的消息体的信息。呼叫标识(Call-ID)代表了一种在两个或多个用户之间共享SIP信令的关系,它标识了一个特定的邀请和这个邀请相关的所有后续事务。一个多媒体会议可产生多个Call-ID不同的呼叫。下面简要说明一下From、To、Contact和Cseq这四个标题头含义。.From:表示了请求的来源地。这个可能和对话的来源不同,被叫方到呼叫方的请求会在From头域中使用被叫方的地址。.To:定义了逻辑上的请求的接受者。它通常还包含目的方的公用地址,在整个会话过程中,To头域不能被更改。.联系(Contact):提供了

31、一个URI,这个URI的含义取决玩是在请求还是在应答中。根据Contact标题头可以直接找到用户的URL,它们在路由第一个INVITE请求后就不再需要存放在信令中,这个特性非常重要。如Bob知道了Jack在222.20.74.219工作,他在ACK中就不需要再经过了。.命令序列标题头(Cseq):包含一个数字序列号和请求的方法。数字部分用于在同一会话中对不同的请求进行排序。如Bob发送一个INVITE消息给Jack:Cseq: 1 INVIITE如果他想重新发一个,可以写成如下:Cseq: 2 INVITE。在ACK和CANCEL请求中应该有与对应的INVITE同样的Cseq。.Max-For

32、wards: 必须在任何一个SIP请求中使用,来限制中间转发请求到下一个节点的proxy or gateway的个数。每当服务器转发一次这个数字就减一。路由(Route):用于强制一个请求经过一个proxy路由列表。Via:用来描述请求当前经历的路径的,并且标志了应答所应当经过的路径。(3)对SDP的要求 详细介绍见表2.2所示。表2.2 SDP描述内容1.协议版本v = 02.会话源o = 3 连接数据c = 4.时间描述t = 5.媒体级描述m = 6.属性a = :(4)请求应答包括请求和应答两个部分,下面先介绍一下请求方法。SIP核心规范了6种请求方法,分别是:INVITE、 ACK

33、、BYE、 CANCEL、 REGISTER 、OPTIONS。.请求(INVITE)用于邀请用户或服务参加一个会话。在INVITE请求的消息体中可对被叫方被邀请参加的会话加以描述,如主叫方能支持的媒体类型、发出的媒体及与其相应的一些参数;对INVITE请求的成功响应必须有在响应的消息体中说明被叫方愿意接收哪种媒体或者说明被叫方发出的媒体。假如Bob的用户代理用SDP描述会话如下:v = 0o = Bob 12345678 84571644 IN IPv4 222.20.45.123s = I miss you I want to talk to youc = IN IPv4 222.20.4

34、5.123t = 0 0 m = audio 12345 RTP/AVP 0 Jack的用户代理收到Bob 的INVITE邀请加入会话.根据会话描述,UA知道这是由Bob发起的,他想要在IP是222.20.45.123 ,UDP端口12345接受Jack声音的实时传输协议(RTP)的数据包,并且知道它可以接收PCM编码声音。UA通知Jack并发出“180振铃”给Bob的UA。当Jack决定接听时,UA发送个最终应答“200OK” 给Bob。.确认(ACK)ACK请求用于客户机向服务器证实它已经收到了对INVITE请求的最终响应。当客户机没有收到临时应答和最终应答时就不断重发INVITE请求(或

35、者放弃INVITE请求),因为他不能确定Jack是否收到请求或者消息在途中丢失了。只有请求客户端才有权利发送ACK。.再见(BYE)用户代理客户机用BYE请求向服务器表明它想释放呼叫。可以由主叫方发出也可以由被叫方发出。呼叫的一方在释放呼叫前必须发出BYE请求,收到BYE请求的这方必须停止发送媒体流给发出BYE请求的一方。.取消(CANCEL)用于取消一个Call-ID,To,From,和Cseq字段相同的下在进行的请求,但是取消不了已经完成的请求。如果电话很长时间没有人接听,Bob决定取消请求,他就会发一个Cancel请求。Jack 的UA收到请求后停止振铃,会话没有建立成功,发送一个ACK

36、请求给Bob的UA。同样也要三次握手:请求-取消事务-ACK。.注册(REGISTER)用于客户机向SIP服务器注册列在To字段中的地址信息。用户发送一个REGISTER请求给服务器通知他们当前所在地。如Jack可以向Hust服务器的注册员指示所有进入到Hust的请求都可以在Sip:jack,或者重定为jack。这样所有找Jack的请方便到一些可能的地方找到他。.选项(OPTIONS)用于向服务器查询其能力。如果服务器认为它能与用户联系,则可用一个能力集响应OPTIONS请求;对于代理和重定向服务器只要转发此请求,不用显示其能力。应答当服务器收到请求时就会作出一个应答6,每个应答都有一个代表事

37、务状态的编码。状态码大小是100699,其中1XX是临时应答,其他的都是最终应答。详细介绍见表2.3。表2.3 应答编码及对应状态1XX(Informational)请求已经收到、继续处理请求2XX(Uccess)行动已经成功地收到,理解和接受3XX(Redirection)为完成呼叫请求,还须采取进一步的动作4XX(Client Error)请求有语法错误或不能被服务器执行,客户机需修改请求5XX(Server Error)服务器出错,不能执行合法请求6XX(Global Failure)任务服务器都不能执行请求(5)事务. INVITE事务INVITE请求包含了一个三方的握手:客户端事务发

38、送一个INVITE,服务端事务返回一个应答,客户端事务发送一个ACK。采用逐跳的机制,保证每一个信令被成功向下一跳传送。当然不保存状态机不能完成此任务。在传输中可以采用的不是同一个协议,服务器与服务器之间可能有点是UDP有的是TCP。在用户端和Proxy中都要设立定时器,以备重发。发送一个INVITE请求发送一个请求必须保证TU是用INVITE请求来初始化一个新的客户端事务。客户端事务必须把请求发送到通讯层来进行发送。SIP采用一种机制保证每一个INVITE请求成功的发往下一跳,路径上Proxy有义务把INVITE向下一个Proxy或终端UA发送。在可靠的传输协议上Proxy不需要做其它的事了

39、;如果在不可靠的协议中,Proxy在收不到应答时将每隔T重发请求,重发的时间间隔加倍。在无状态的Proxy中不能完成此任务。当Proxy收到请求时,总会产生一个“100trying”应答,防止请求端不断重发请求。而请求的用户代理可能产生任何的临时响应,如“ 180ringing”。 应答INVITE请求SIP不能保证临时应答都能够到达呼叫者的UA,即使丢失了也不重传。但对于最终应答,不论是成功还是非成功应答,SIP都是采用逐跳传送,在不可靠的传输UDP上传输时,要不断重传请求,直到收到ACK。当然在可靠的传输协议中也需要ACK应答,因为SIP是三次握手协议。.非INVITE请求非INVITE事

40、务并不使用ACK。他们只是简单的请求应答的交互。对于非可靠的传输来说,请求是间隔T1倍增地传输。如果只收到了一个临时应答,到达到T2时如果没有收到最终应答,重传继续。这与INVITE事务不同,这样做的目的是确保收到一个最终应答。2.1.4 SIP运作模式SIP 的呼叫建立如图2.18所示,开始的时候caller 会送出SIPINVITE的讯息给callee,callee收到之后,会马上响应一个100 Ringing的讯息通知caller,说明目前callee 已经收到INVITE 讯息且正在处理中,如果callee 愿意与caller 通话,便会送出200 OK的response,最后call

41、er 再送出ACK,此时便可以开始进行会议。当其中一方想结束通讯时,便会送出BYE 的讯息来通知对方,对方响应200 OK 便可以结束目前进行会议。 Client (Caller/UA) Server(Callee/UAS)INVITE100:Trying180:Ringing200:OKACKBye200:OKRTP图2.1 SIP 呼叫流程2.1.5 SIP未来发展问题目前来看,SIP协议并没有在电信领域大规模应用的先例,很多问题影响了SIP的未来发展方向。通过学习SIP协议和H323协议,我发现SIP还有很多问题急需解决,主要包括以下几点:(1)SIP终端的智能性过强,可能会给网络带来很

42、多的安全问题。(2)用户终端可以绕开运营商的管理直接向被叫用户发起呼叫。(3)SIP网络结构采用平面化形式,运营商不便进行管理和收费。(4)与H323想比,SIP不具备点到点的会话控制能力,如控制一方成为主席或点名一方发言等。(5)SIP规范还不是很健全,很多信令规范存在安全隐患,一旦用户不按规定进行操作,或恶意对会议进行破坏的话,系统不能采取相对有效的措施等。以上几点是我自己总结出来的,有问题就要解决问题。整体来看,SIP的发展前景还是很好的,而且,SIP协议的规范和应用也在不断的进行发展,以后SIP还可能应用到其他领域,让我们拭目以待吧。2.2程序开发工具Microsoft Visual

43、C+是运行于Windows平台上的交互式可视化继承开发环境。它是Microsoft Visual Studio家族的成员之一。Visual C+之所以称为集成开发环境,是因为它集程序的代码编辑、编译、连接和调试等功能于一体,给编程人员提供了一个完整而方便的开发环境,并提供许多有效的协助开发工具,如SourceSafe等。Visual C+的AppWizard可以为大部分类型的应用程序提供框架代码,用户无需书写代码,只需要简单的单击几个按钮就可以生成简单的可以运行的程序框架。与其他的可视化开发环境比较,除了共同的优点之外,Visual C+还具有许多优势。虽然使用Visual C+设计一些非常简

44、单的程序时,可能体现不出其优势,甚至还很麻烦,需要书写很多的代码,但当用户需要完成更灵活的、特定的界面时,使用Visual C+则更加方便,它可以让用户“随心所欲”。由于Visual C+基于C+语言,并且来自Windows操作系统本身的开发者Microsoft公司,因此,在众多的可视化集成开发环境中,它是开发Windows应用程序的最佳选择。Osip2是一个开放源代码的sip协议栈,是开源代码中不多使用C语言写的协议栈之一,它具有短小简洁的特点,专注于sip底层解析使得它的效率比较高。eXosip是Osip2的一个扩展协议集,它部分封装了Osip2协议栈,使得它更容易被使用。2.2.1 Vi

45、sual C+ 6.0具体特点15Visual C+ 6.0是微软公司在多年使用、不断改进的基础上推出的用于支持Win95以上的平台应用程序(Applications)、服务(Service)和控件(Control)的开放环境。Visual C+ 6.0是一个典型的集成开发环境IDE(Integrated Develop Enviroment),它集编辑、编译、链接和调试等功能于一体,是一系列开发工具的组合。具有以下特点:开放环境Visual Studio由一套继承工具组成,用于开发WVIN 32(in95/98或Windows NT)环境下运行的应用程序。提供功能强大的向导工具(MFC AppWizard、Class Wizard)。Developer Studio 的项目工作区的形式组织元件、项目及项目等配置。MFC类库支持多线程应用程序开发。具有Windows Socket和Mapi支持,可以与网络及Email连接。最快的继承数据库访问,允许用户适应强有力的数据库应用程序。具有强有力的Internet支持,对OLE提供强有力支持。2.2.2 MFC类库对于任何一种操作系统,如果想在其上进行应用程序开发,那么就必须了解它所提供的API(Application Program Interface,应用程序接口)。如果说以前的标准Windows API函数库是用于编写Wi

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号