您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 基于SIP协议的VOIP网络 (1)
课程设计项目名称:基于SIP协议的VOIP网络设计课程名称:计算机网络课程设计班级:计111计111计111计111姓名:李洋宇葛一波叶博兴李祥东学号:110773110776110768110762教师:张晓明杜天苍赵国庆张世博向胜军信息工程学院计算机系1.SIP协议1.1基本概念会话启动协议SIP(SessionInitiationProtocol)是由IETF提出并主持研究的一个在IP网络上进行多媒体通信的应用层控制协议,它被用来创建、修改、和终结一个或多个参加者参加的会话进程。这些会话包括Internet多媒体会议、Internet电话、远程教育以及远程医疗等。即所有的因特网上交互式两方或多方多媒体通信活动,统称为多媒体会话。参加会话的成员可以通过组播方式、单播联网方式或者两者结合的方式进行通信。SIP协议是一个正在发展和不断研究中的协议。一方面,它借鉴了其他Internet标准和协议的设计思想,在风格上遵循因特网一贯坚持的简练、开放、兼容和可扩展等原则,并充分注意到因特网开放而复杂的网络环境下的安全问题。另一方面,它也充分考虑了对传统公共电话网的各种业务,包括IN业务和ISDN业务的支持。利用带有会话描述的SIP邀请消息来创建会话,以使参加者能够通过SIP交互进行媒体类型协商。它通过代理和重定向请求用户当前位置,以支持用户的移动性。用户也可以登记它们的当前位置。SIP协议独立于其他会议控制协议,它在设计上独立于下面的传输层协议,因此可以灵活方便地扩展其他附加功能。SIP作为一个应用层的多媒体会话信令协议,可以被用来发起一个会话进程、在会话中邀请其他参加者加入会议,会话本身可以通过基于组播协议的会话通告协议(SAP)、电子邮件、网页通告、以及轻量级号薄访问协议(LDAP)等方式预先通告各个可能的参加者。SIP协议支持别名映射、重定向服务、ISDN和IN业务。它支持个人移动(personalmobility),即终端用户能够在任何地方、任何时间请求和获得已订购的任何电信业务。总的来说,会话启动协议能够支持下列五种多媒体通信的信令功能:(1)用户定位:确定参加通信的终端用户的位置;(2)用户通信能力协商:确定通信的媒体类型和参数;(3)用户意愿交互:确定被叫是否乐意参加某个通信;(4)建立呼叫:包括向被叫“振铃”,确定主叫和被叫的呼叫参数;(5)呼叫处理和控制:包括呼叫重定向、呼叫转移、终止呼叫等等。SIP协议可以通过MCU(MultipointControlUnit)、单播联网方式、或组播方式创建多方会话,支持PSTN和因特网电话之间的网关功能。SIP协议可以与其他用于建立呼叫的信令系统或协议结合使用,它在设计上充分考虑了对其他协议的可扩展性。譬如,SIP协议支持的主叫可以识别出H.323协议支持的被叫,通过H.245网关利用H.225.0协议向被叫发起并建立呼叫;另外,一个SIP主叫可以识别出PSTN上的被叫及其电话号码,通过与PSTN相连的网关向被叫发起并建立呼叫。SIP协议不提供发言控制(floorcontrol)、投票等会议控制功能,也不规定如何管理一个会议。但是SIP协议可被用来引发这些会议控制协议。SIP协议本身不具备资源预留功能,但可以向被邀请者们传达这方面的信息。1.2协议栈结构SIP协议是IETF多媒体数据和控制体系结构的一部分,与其它协议相互合作,例如:RSVP(ResourceReServationProtocol)用于预约网络资源,RTP(Real-timeTransmitProtocol)用于传输实时数据并提供服务质量(QoS)反馈,RTSP(Real-TimeStreamProtocol)用于控制实时媒体流的传输,SAP(SessionAnnouncementProtocol)用于通过组播发布多媒体会话,SDP(SessionDescriptionProtocol)用于描述多媒体会话。但是SIP协议的功能和实施并不依赖这些协议。传输层支持:SIP协议承载在IP网,网络层协议为IP,传输层协议可用TCP或UDP,推荐首选UDP。1.3SIP事物处理事务处理主要用于处理消息的交互,它的实现使用了状态机。向上它向事务使用者(TU)提交事务的触发事件(计时器超时和传输层消息),向下把所要发送的Sip消息包传送给传输层代为转发。而在事务中一定有客户端和服务器端,两者没有必然的界限。只要是发起请求的,在该事务中充当的当然是客户端,接受请求的必然是服务器端。所以对于代理服务器来说,相对下面的请求来说它是服务器端,对于上面来说却是代发请求的客户端。2.基于SIP协议的VOIP网络软硬件需求分析2.1需要的软硬件设备(1)SIPServer软件(提供用户的管理、通讯过程的维护、统计等功能,SIPServer2008);(2)SIP终端。利用SIP的软件终端可供选择的较多,不做限制,可采用PC端的X-Lite。在智能手机端,Android系统中在“设置”—“通话设置”—“使用互联网电话”可应用SIP账户,亦可下载适用的SIP程序;在IOS系统中亦有合适SIP终端程序;(3)交换机一台;(4)无线路由器两台,供手机端在WIFI开启的情况下连接网络;(5)VOIP电话两部(支持SIP协议,通过WAN口连接网络);(6)Ethereal抓包软件。2.2按照下面网络拓扑示意图搭建网络并配置PC-2PC-1手机-1Ipad手机-2无线路由器-2无线路由器-1SIP服务器交换机2.3小组成员及项目分工李洋宇:服务端的建立和配置;抓包分析协议的注册、通讯、注销过程;测试分析。葛一波:手机端的软件配置;流程图,图片材料收集及文档编写;参与测试改进。叶博兴:PC端的软件配置;查找关于SIP协议文献资料;参与测试改进。李祥东:查找资料;测试。3.基于SIP协议的服务端SIPServer20083.1SIPServer2008介绍及配置SIPServer2008是一个SIP代理服务器(SIPProxy)和注册服务器(Registrar)和计费服务器.它注册和验证用户,同时路由两个SIP用户终端(SIPUAs)之间的呼叫请求.这个产品自带NAT穿越功能,呼入/呼入域管理和灵活的计费功能、支持多种费率,预扣话费,用户银包预存等功能,支持操作系统MicrosoftWindowsXP/2000/2003.它免费提供给个人用户和学院用户使用。3.2配置SIPServer2008,添加SIP帐号1).登录(默认帐号:admin密码:1234)2).在Server主机上的基本配置3).添加帐号,在[用户管理]-[添加],最大上限为5个4).添加成功的5个帐号5).在线用户列表4.基于SIP协议的终端4.1PC端的X-Lite介绍及使用X-Lite是一种特有VoIP软件电话的免费软件,使用SIP协议。X-Lite由位于温哥华的一家CounterPath软件公司所开发。X-Lite目前主要有两种不同的产品。X-Lite2.0使用于Linux平台,是使用旧式的X-Procodebase,而X-Lite3.0是使用于Windows和MacOSX,使用eyeBeamcodebase.X-Lite2.0只有声音,没有影像。X-Lite3.0则兼具声音和影像。其特点如下:X-Lite使用设置:4.2Android端的Groundwire介绍及使用Groundwire是一款基于SIP技术的专业电话应用,支持呼叫等待、多线电话、电话会议以及企业短信等服务,整合了GoogleVoice。支持3G和wifi下使用,支持VPN及代理,同样支持蓝牙耳机通话。4.3IOS端的Groundwire介绍及使用Groundwire是一款基于SIP技术的专业电话应用,支持呼叫等待、多线电话、电话会议以及企业短信等服务,整合了GoogleVoice。在IOS端需要iOS5.0或更高版本。与iPhone、iPad、iPodtouch兼容。Groundwire安装配置5.基于SIP协议的软件5.1PC端的其他软件Groundwire-BusinessCaliberSIPPhone版本:2.3类别:效率大小:24.2MB开发商:Acrobits固件要求需要iOS5.0或更高版本。与iPhone、iPad、iPodtouch兼容5.2手机端的其他软件6.Wireshark抓包分析6.1注册过程Sip服务器ip:222.31.142.53客户端ip:222.31.142.18客户端登入SIP服务器。设置过滤条件,只catch(ip.addr==222.31.142.53andip.addr==222.31.142.18)发出或接收的数据包。抓包分析:1)首先客户端向SIP服务器(222.31.142.53)发出REGISTER信息REGISTER请求消息:表示终端向IP地址为222.31.142.53的sipserver发起登记。SIP版本号为2.0From字段:指明该REGISTER请求消息由sipserver(IP地址:222.31.142.53)控制的SIPPhone发起的。To字段:指明REGISTER请求接收方的地址。此时REGISTER请求的接收方为IP地址为222.31.142.53的sipsever。Call-ID字段:Call-ID为“geyibo@222.31.142.18”,222.31.142.18为发起REGISTER请求的SIPPhone的IP地址,geyibo为本地标识。Cseq字段:此时用于将REGISTER请求和其触发的响应相关联。Contact字段:在REGISTER请求中的Contact字段指明用户可达位置。表示SIPPhone当前的IP地址为“222.31.142.18”,电话号码为“110776”。该登记生存期:3600s。内容长度:表明此请求消息的长度为空,即此消息不带会话描述。Via字段:“SIP/2.0/UDP”表示发送的协议,协议名为“SIP”,协议版本为2.0,传输层为UDP;“222.31.142.18”表示该请求消息发送方SIP终端IP地址为222.31.142.18。用户终端的信息:X-Literelease1006estamp340252)Sipserver返回401Unauthorized(无权)响应Sipserver返回401Unauthorized(无权)响应,表明Sipserver端要求对用户进行认证,并且通过地址“222.31.142.53”,产生本次认证的nonce,并且通过该响应消息将这些参数返回给终端从而发起对用户的认证过程。3)Sipserver返回200OK响应消息Sipserver收到SIPPhone的注册请求,首先检查NONCE的正确性,如果和在401Unauthorized响应中产生的NONCE相同,则通过。否则,直接返回失败。然后,Sipserver会根据NONCE、用户名、密码(服务器端可以根据本地用户信息获取用户的密码)、URI等采用和终端相同的算法生成RESPONSE,并且对此RESPONSE和请求消息中的RESPONSE进行比较,如果二者一致则用户认证成功,否则认证失败。此时,Sipserver返回200OK响应消息,表明终端认证成功。6.2通讯过程客户端A的ip:222.31.142.39Sip服务器ip:222.31.142.53客户端B的ip:222.31.142.18由用户A(ip:222.31.142.39)向用户B(ip:222.31.142.18)拨打ip电话。设置过滤条件,只catch(ip.addr==222.31.142.53andip.addr==222.31.142.18andip.addr==222.31.142.39)发出或接收的数据包。抓包分析:1)SIP客户端A发INVITE请求到SIPSERVERSIP客户端A(ip:222.31.142.
本文标题:基于SIP协议的VOIP网络 (1)
链接地址:https://www.777doc.com/doc-5055293 .html