(计算机应用技术专业论文)sip协议栈及无线终端的研究与实现.pdf_第1页
(计算机应用技术专业论文)sip协议栈及无线终端的研究与实现.pdf_第2页
(计算机应用技术专业论文)sip协议栈及无线终端的研究与实现.pdf_第3页
(计算机应用技术专业论文)sip协议栈及无线终端的研究与实现.pdf_第4页
(计算机应用技术专业论文)sip协议栈及无线终端的研究与实现.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(计算机应用技术专业论文)sip协议栈及无线终端的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

重庆邮电大学硕士论丈摘要 摘要 随着w l a n ( w i r e l e s s l a n ) 技术的发展和普及,人们渴望通过w l a n 拨打 经济实惠的i p 电话,因此,研究实现w l a ni p 电话终端成为迫切的需求。目 前应用比较普遍的i p 电话协议是h 3 2 3 ,但是h 3 2 3 过于复杂,因此不适合应 用在嵌入式移动终端中。会话发起协议( s e s s i o ni n i t i a t i o np r c , t o c o l ,简称s i p ) 天 然具有对移动性的支持,和其它协议( 比如h 3 2 3 ) 相比,s i p 具有简单、可扩 展性、灵活性、互操作性和可重用性等优点,因此成为嵌入式移动终端首选的 信令协议。这篇文章的目的就是实现高效灵活的s i p 协议栈及具有注册和呼叫 功能的用户代理,最终目标是实现w l a ni p 电话终端。 本文首先介绍了s i p 及其相关协议的知识。s i p 协议栈的实现是本文的核心, 本文分别从传输管理、事务管理、对话管理、认证注册管理和消息编解码这几 个方面详细介绍s i p 协议栈的原理及实现。为了达到简单、灵活、高效的目的, 本文采用模块化设计的思j 息,用c 语言编程实现协议栈。接着本文提出用户代 理设计的总体方案,并:从软件方面重点介绍具有注册和基本呼叫功能的用户代 理的实现。最后通过翁斋写软件用户代理,设计测试方案,搭建测试环境,对协 议栈和用户代理应用作了充分测试。测试结果证明,本文设汁的协议栈及用户 代理应用是可行的。 虽然本文设计的协议栈目前只有注册和呼叫邀请功能,但很容易通过增加 和扩展新的方法实现新的功能,为今后的进一步研究奠定了基础。 关键词:会话发起协议,无线局域网i p 电话终端,协议栈,用户代理 第1 页 重庆邮电大学硕士论文摘要 a b s t r a c t w i t ht h ed e v e l o p m e n ta n dp o p u l a r i z a t i o no fw l a n ( w i r e l e s sl a n ) p e o p l e p r e f e ri pc a l l so v e rw l a n f o ri t se c o n o m y , s oi ti sn e c e s s a r yt or e s e a r c ha n d d e v e l o pw l a ni pp h o n et e r m i n a l h 3 2 3i sw i d e l yu s e di l lr e c e n ty e a r s ,b u ti ti st o o c o m p l i c a t e dt of i te m b e d d e dm o b i l et e r m i n a l s i p ( s e s s i o ni n i t i a t i o np r o t o c 0 1 ) i s c a p a b l eo fs u p p o r t i n gm o b i l i t yn a t u r a l l y c o m p a r e dx , v i t ho t h e rs i g n a l i n gp r o t o c o l ( e g h 3 2 3 ) ,s i pi sc h a r a c t e r i z e db yi t ss i m p l i c i t y , e x t e n d i b i l i t y , f l e x i b i l i t y , m u t u a l o p e r a t i o na n dr e u s a b i l i t y b e c a u s eo ft h e s em e r i t s ,s i ph a sb e - o m et h ep r e f e r a b l e s i g n a l i n gp r o t o c o lo fe m b e d d e dm o b i l et e r m i n a l t h i sa r t i c l ei sa i m e dt oi m p l e m e n t a ne f f i c i e n ta n df l e x i b l es i pp r o t o c o ls t a c ka sw e l la st od e v e l o pu s e ra g e n t a p p l i c a t i o nw i t ht h ef u n c t i o no fr e g i s t e ra n di n v i t a t i o np r o c e s s ,a n du l t i m a t e l yt o r e a l i z ew l a ni pp h o n et e r m i n a l f i r s t l y , s i pa n di t sr e l a t e dp r o t o c o l sa r ep r e s e n t e di nt h i sa r t i c l ei nw h i c hs i p p r o t o c o ls t a c k si m p l e m e n t a t i o nd o m i n a t e st h ec o n t e n t s t h ef u n d a m e n t a lp r i n c i p l e o fs i pp r o t o c o ls t a c kh a sb e e nd e t a i l e df r o mt h ef o l l o w i n ga s p e c t s :t r a n s p o r t m a n a g e m e n t ,t r a n s a c t i o nm a n a g e m e n t ,d i a l o gm a n a g e m e n t , a u t h e n t i c a t i o na n d m e s s a g ep a r s e r t oa c h i e v es i m p l i c i t y , f l e x i b i l i t ya n dh i g he f f i c i e n c y , t h es i p p r o t o c o ls t a c ki sd e s i g n e db yu s i n gm o d u l a r i z a t i o nm o d e la n di m p l e m e n t e db yu s i n g cp r o g r a m m i n gl a n g u a g e t h e n ,t h i sa r t i c l ep r o p o s e sa g e n e r a ld e s i g ns c h e m ea n d e x p o u n d sf r o ms o f t w a r et h ei m p l e m e n t a t i o no fu s e ra g e n t ,x v h i c hi sp r o v i d e dw i t h r e g i s t e ra n df u n d a m e n t a lc a l lf u n c t i o n i nt h ee n di no r d e rt ov e i l f yt h ef e a s i b i l i t yo f s i pp r o t o c o ls t a c ka n du s e ra g e n ta p p l i c a t i o n ,as o 觚v a l eu s e ra g e n ti s p r o g r a m m e da n da t e s ts c h e m ei sd e s i g n e da n da l s oat e s te n v i r o n m e n ti sc o n s t r u c t e d t h et e s t i n gr e s u l tp r o v e st h ef e a s i b i l i t yo fs i pp r o t o c o ls t a c ka n du s e ra g e n t a p p l i c a t i o n a l t h o u g hi nt h i sp r o t o c o ls t a c k ,t h e r ei st h er e g i s t e ra n dc a l lf u n c t i o no n l y , n e w f u n c t i o n sc a nb ee n h a n c e db y a d d i n ga n de x p e n d i n gn e wm e t h o d s t h u sa f o u n d a t i o ni se s t a b l i s h e df o rf u r t h e rr e s e a r c hi nt h i sf i e l di f i tf u t u r e k e y w o r d s :s e s s i o ni n i t i a t i o np r o t o c o l ,w l a ni pp h o n et e r m i n a l ,p r o t o c o ls t a c k , u s e ra g e n t 第1 1 页 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得 的研究成果。据我所知,除了文中特别加以标注和致谢的地:疗外,论文中不包 含其他人已经发表或撰写过的研究成果,也不包含为获得重麽邮电太堂或 其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所 做的任何贡献均已在论文中作了明确的说明并表示谢意。 魏诮、豁榔期:州年觚日 学位论文版权使用授权书 本学位论文作者完全了解重庆邮电态堂有关保留、使用学位论文的 规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文 被查阅和借阅。本人授权 重麽邮电太堂 可以将学位论文的全部或部分内 容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇 编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名: 签字日期: 锰捌 年,6 月- 8 e 3 导师签名:芎请芦 婵昌狮年c ) 月日 第1 i 页 重庆邮电大学硕士论文第一章绪论 1 1研究背景 第一章绪论 1 0 0 多年来,电话业务和电路交换始终是电信业的主流。2 0 世纪后期程控交 换和i s d n ( i n t e g r a t e ds e r v i c e sd i g i t a ln e t w o r k ,简称i s d n ) 的出现及普及标志着 电路交换技术的成熟和传统电信网络发展的高峰。随着计算机和宽带网络技术日 新月异钓发展,以多媒体通信为主体的信息网已成为世界关注的热点。尤其是因 特网( i n t e m e t ) 的巨大成功,已使i p 成为未来信息网络的支柱技术,以l p 为核心 的分组网络和以移动通信为核心的无线网络已成为电信网络演进的主流方向【i i 。 i p 电话泛指在以i p 为网络层协议的计算机网络中进行话音通信的系统,它 采用的技术统称为v o l p ( v o i c eo v e ri p ,简称v o i p ) ,即在i p 上传送话音【1 , 2 1 。i p 电话有许多独特的应用优势,主要表现为价格低廉、灵活的增值业务、有利于企 业建立高效综合服务内部网、有利于运营商开拓新市场、有助于和新技术的融合, 促进网络技术的发展。 v o l p 技术的不断成熟,使i p 电话的应用越来越普及:w l a n ( w i r e l e s sl a n , 简称w l a n ) 技术的兴起和普及,使人们在享受w l a n 快速、方便的数据业务的 同时迫切希望能拨打经济耋实惠的i p 电话,v o w l a n ( v o i c eo v e rw l a n ) 技术孕育 而生。对于公司企业,在w l a n 网络覆盖下,员工可以方便地通过v o w l a n 与 公司同事联系,从而提高企业的服务质量和工作效率,从根本上改变传统的商务 处理进程。因此,研究实现结合v o l p 与w l a n 技术的无线i p 电话终端意义重 大。 w l a n 就是在局部区域内以无线媒体或介质进行通信的无线网络【j j 。目前, 无线局域网领域的两个典型标准是i e e e8 0 2 1 l 系列和h i p e r l a n 系列标准,而 得到广泛应用的技术是8 0 2 1 1 家族,市场上的产品主要支持8 0 2 1 l b a g 技术。 8 0 2 1 l 是i e e e ( i n s t i t u t eo f e l e c t r i c a la n de l e c t r o n i c se n g i n e e r s ,简称i e e e ) 在1 9 9 7 年发表的第一个无线局域网标准,而现在媒体屡屡提到的8 0 2 1 l b 是1 9 9 9 年9 月被批准,它也被称为w i f i ( w i r e l e s sf i d e l i t y ,简称w i f i ) ,可支持1 1 m b p s 的 接入速率:与此相似的是8 0 2 1 1 a 技术,它采用了5 g h z 的频段,其速率高达 5 4 m b p s ,采用o f d m ( 正交频分复用) 技术,但无障碍的接入距离降到3 0 - - 5 0 米【3 】;新出现的标准8 0 2 1l g 其实是一种混合标准,既能适应8 0 2 1 1 b 标准,又 符合8 0 2 1 1 a 标准,它比8 0 2 1 1 b 速率快5 倍,并和8 0 2 1 l b 兼容。8 0 2 1 l 协议家 族1 4 1 的介绍如表1 1 。 第l 页 重庆邮电大学硕士论文 第一章绪论 表1 i8 0 2 1 i 协议家族 i e e e 标准传输速度频率带宽 8 0 2 1 11m b p s 2 m b p s2 4 g h z 8 0 2 1 l a 最高达到5 4 m b p s 5g h z 8 0 2 1 l b 5 5 m b p s l1 m b p s2 4 g h z 8 0 2 i l g最高达到5 4 m b p s2 4 g h z 采用8 0 2 1 1 技术组成的局域网具有通信可靠、低成本、布线灵活、移动方便 和高吞吐量等特点1 3 j ,这些特点决定了8 0 2 1 1 局域网应用前景广泛。w l a n 技 术普遍应用在企业、学校、住宅小区、医院和商业中心等地方。 目前,常用的i p 电话协议有h 3 2 3 和s i p ( s e s s i o ni n i t i a t i o ap r o t o c o l ,简称 s i p ) 1 5 , 6 , 7 1 ,它们优缺点各异,其中,秉承越简单越流行这一设计周、想的s i p 协议 正得到越来越广泛的应用。 s i p 称为会话发起协议,是i e t f ( i n t e m e te n g i n e e r i n gt a s kf o r c e ,简称i e t f ) 组织于1 9 9 9 年提出的一个在基于i p 网络中,特别是i n t e r n e t 这样一种结构的网 络环境中,实现实时通信应用的一种应用层信令协议pj 。作为i e r f 提出的标准, s i p 协议在很大程度上借鉴了其它各种广泛存在的i n t e r n e t 协议,如h t t p ( h y p e r t e x tt r a n s f e rp r o t o c o l ,简称h t t p ) 、s m t p ( s i m p l em a i lt r a m s f e rp r o t o c o l , 简称s m t p ) 等。和这些协议一样,s i p 也采用基于文本的编码方式,这也是s i p 协议同视频通信领域其它现有标准相比最大的特点之一。 下一代网络( n g n ) 的一个重要目标是建立一个可管理、高效率、可不断扩展 的业务平台,s i p 作为应用层信令协议很好地满足了这一系列要求:。s :i p 具有很 强的包容性,它既可以用来建立( 如音频、视频、多方通话等) 各- 种会话,也可 以用来传送即时消息和文件,这使运营商能通过统一的业务平台提供综合业务, 实现网络的融合。s i p 协议天然具有对移动性的支持1 8 , 9 1 。s i p 协议为实现固定和 移动业务的无缝融合创造了条件,3 gr 5 版本已经选择s i p 作为3 g 移动通信多 媒体领域的核心信令,用于实现基于i p 的移动话音和多媒体通信。3 g p p 2 ( t h e 3 r dg e n e r a t i o np a r t n e r s h i pp r o j e c t2 ,简称3 g p p 2 ) 采用s i p 作为无线i n t e r n e t 网络 会话管理的基础。 每一套通信系统都有适合自己的信令系统支撑,例如,移动通信的 g s m g p r s 系统,p s t n 的s s 7 ( 7 号信令系统) 。在i p 电话领域,目前运用比较 广泛的是h 3 2 3 协议。s i p 是应用层上的一个信令协议,与h 3 2 3 相比,其优势 表现在可扩展性、灵活性、互操作性、可重用性等,它是一种轻量级协议,可以 简单易行地被嵌入到廉价的终端设备中,因此是低成本嵌入式应用设备首选的信 令系统。 第2 页 重庆邮电大学硕士论文第一章绪论 s i p 信令系统的核心就是s i p 协议栈,高效、灵活和易移植的s i p 协议栈对 嵌入式设备至关重要,因而,研究实现具有以上优点的s i p 协议栈意义重大。s i p 协议栈比较普遍的实现方法是采用分层设计,编程语言采用c + + 或者j a 、,a ,采 用分层方法和面向对象程序设计语言的优点是易扩展,且实现简单,但资源受限 的嵌入式系统要求低成本、灵活、快捷,因此,本文采用模块化设计思想,c 编 程语言实现。 1 2s ip 研究现状 近几年来,s i p 已成为网络和通信领域研究的一大热点,s i p 正吸引越来越 多的研究开发者。 s i p 协议是由i e t f 工作组制定的,早期的协议版本是1 9 9 9 年提出的 r f c ( r e q u e af o rc o m m e n t ) 2 5 4 3 。经过几年的发展,2 0 0 2 年6 月,i e t f 重新制 定并推出了s i p 协议的r f c3 2 6 1 ,同时也制定了一些与s i p 相关的协议,如r f c 3 2 6 2 、r f c 3 2 6 3 、r f c 3 2 6 4 、r f c3 2 6 5 ,此系列协议对r f c2 5 4 3 进行了废弃, r f c3 2 6 1 也就成为s i p 协议新的标准版本。随后i e t f 工作组又制定了一些s i p 协议相关的协议,如r f c3 3 l l 、r f c3 3 1 2 、r f c 3 3 1 3 、r f c3 3 2 0 、r f c3 3 2 3 、 r f c3 3 2 5 、r f c3 3 2 7 、r f c3 5 1 5 ,h t t p :w w w i e t f o r g r f c 网站详细介绍了以上这 些r f c 文档。目前,i e t f 的多个工作组都在关注s i p 协议的发展 1 ,比如: s i m p l e 、s i p 、s i p p i n g 等。 s i p 协议的研究方向包括s i p 扩展、s i p 在软交换网络中的应用、s i p 在移动 领域的应用等。其中,s i p 扩展内容包括传送i s u p 信令、穿越防火墙、临时应 答的可靠传输、用户偏好扩展、即时消息和存在影响的s i p 扩展( s i m p l e ) 、多方 会议、异步事件扩展、第三方呼叫控制及会话传递、计费、安全、服务质量( q o s ) 、 不同协议的互通性等1 1 ,1 2 13 1 。 目前正在研究的s i p 产品主要有这几类:s i p 防火墙、s i p 网关、s i p 服务器、 s i p 组件、s i p 软件工具和s i p 用户代理等。具有代表性的s i p 产品包括3 c o m 、 s i e m e n s 、c o m g a t e s 、c i s c o 、l u c e n t 、s s 8n e t w o r k s 和微软公司研发的产品,我 国著名通信设备制造公司华为和中兴等在这方面也进行了技术储备,中国网通已 在北京和深圳等地开始测试基于s i p 的i p 电话运营系统。 在用户代理方面,目前在网上比较流行的是s i p 软件电话,虽然其语音延迟 大,且使用者仅限于计算机网络用户,但由于其通过i p 网络传输话音,成本低, 甚至可以实现0 话费,因此受到广大计算机网络用户的欢迎。具有代表性的s i p 软件电话是微软公司的w i n d o w sm e s s e n g e r 和x t e n 网络有限公司的x l i t e , w i n d o w sm e s s e n g e r 还具有即时消息和视频通信等功能。s i p 硬件电话实现采用 第3 页 重庆邮电大学硕士论文 第一章绪论 专门的语音处理芯片,与软件电话相比,s i p 硬件电话时延短,再a n 上采用抖动 缓冲、静音检测、背景噪声生成等技术,且可以脱离电脑单独使用,因此,s i p 硬件电话更符合用户的需求。随着i n t e m e t 的普及,越来越多的公司开始从事s i p 硬件电话的研发,s i p 硬件电话将得到广泛的应用。 1 3 本文主要工作 本文所做的工作是在完成基于w l a n 、i n t e m e t 的移动现场远程监控器( 重 庆市教委项目,编号:0 5 0 3 0 6 ) 课题基础上的进一步延伸,最终目的是研究实现 能通过w l a n 进行语音通话的硬件终端,即u a ( u s e r a g e n t ) 。u a 单片机的系统 控器采用美国u b i c o m ( w w w u b i c o m c o m ) 公司提供的i p 3 0 2 3 ,无线网络适配器 采用支持c f ( c o m p a c tf l a s h ) 接口及8 0 2 1 l b 协议的c f 卡,信令协议采用s i p 协 议标准。 本文研究的重点是分析s i p 协议及协议栈实现原理,通过c 语言实现s i p 协 议栈,在此基础上实现u a 软件的应用模块,并通过编写软件u a 对s i p 协议栈 及u a 应用进行测试,验证该协议栈及u a 应用的可行性。研究的具体工作如下: 阅读分析s i p 、s d p ( s e s s i o nd e s c r i p t i o np r o t o c o l ,简称s d p ) 及其它相 关协议。 分析s i p 协议栈的原理及实现。 - 实现具有注册和基本呼叫功能的s i pu a 。 - 搭建测试环境对u a 及协议栈进行功能测试、协议一致性测试和互操作 性测试,分析测试结果。 音频的采集、传输及播放不是本文的研究重点,但为了配合测试,实现软件 u a 之间的通话功能,本文采用了v o v i d a n e t w o r k s 公司提供的w i n r t p 2 0 0 ,达 到通话的目的。w i n r t p 是一个c o m 组件,它能从麦克风采集声音,把声音封 装成r t p ( r e a l t i m et r a n s p o r tp r o t o c o l ,简称r t p ) b s l 包,并把r t p 包还原成声音 在扬声器播出,w i n r t p 的具体内容在本文不作阐述。 1 4 本文的组织结构 本文共分为6 章,各章的内容介绍如下: 第一章介绍了研究背景、选题依据和国内外研究现状,并简要介绍本文所要 研究的工作。 第二章介绍了s i p 及其相关协议,对s i p 消息格式作了匡点描述,并对s i p 时钟作了归纳。 , 第4 页 重庆邮电大学硕士论文 第一章绪论 第三章分别从传输管理、事务管理、对话管理、认证注册管理和消息编解码 这几个方面详细介绍s i p 协议栈的原理及实现,是本文的重点。 第四章首先提出u a 设计的总体方案,接着阐述u a 软件应用模块的设计实 现。 第五章提出了测试的总体方案,在局域网中搭建测试平台,对u a 进行测试, 通过分析测试数据得出结果,验证协议栈及u a 的可行性。 第六章是本文的结尾,对本文所做的二亡作进行了总结,并对今后的研究工作 作了进一步的安排。 第5 页 重庆邮电大学硕士论文第二章s i p 协议介绍 2 1 s ip 概述 第二章8 1 p 协议介绍 s i p 的起源最早应该追溯到1 9 9 6 年,m a r kh a n d l e y 和e v es c h o o l e r 开发了 会话邀请协议s i p v l ,并递交给1 e t f 。s 1 p v l 协议仅仅处理会话的建立,一旦 用户加入会话,则信令就终止,而且会话也无中间控制。在i e t f 第3 5 次会议 上,s c h u l z r i r m e 提出了s c i p ( s e s s i o n c o n f e f e n c e i n v i t a t i o n p r o t o c o l ,简称s c i p ) , 经过讨论,将s i p v l 和s c i p 进行合并,最终保留了s i p 作为名字,但意义已经 改为“s e s s i o ni n i t i a t i o np r o t o c o l n o 随后,m a r kh a n d l e y 、s c h u l z r i r t n e 和s c l - a 0 0 1 e r 于1 9 9 6 年将s i p v 2 递交给i e t f 第3 7 次会议,这是一个基于h t t p 新的s i p 。 l9 9 9 年3 月,i e t f 的m m u s i c ( m u l t i p a r t ym u l t i m e d i as e s s i o nc o n t r 0 1 ) 工作组提 出了r f c 2 5 4 3 建议,供各厂商和机构讨论。1 9 9 9 年9 月,s i p 工作组从m n a u s i c 中分离出来,成立了s i p 工作组,并于2 0 0 0 年7 月发表了s i p 的草案。2 0 0 2 年6 月,i e t f 的s i p 工作组发表了r f c 3 2 6 1 建议,取代r f c 2 5 4 3 。r f c 3 2 61 修订了r f c 2 5 4 3 中的一些错误,并且对协议的描述更具有层次性。r f c 3 2 61 定义了一些新的头字段( 如a l e r t - i n f o 、e r r o r - l n f o 和m i m e - 色r s i o n 等) 和q 匈应, 新增t l s ( t r a n s p o r tl a y e rs e c u r i t y ,简称t l s ) 和s c t p ( s t r e a mc o n t r o l t r a n s m i s s i o np r o t o c o l ,简称s c t p ,r f c2 9 6 0 ) 作为传输层协议。同时,r f c 3 2 6 1 对r e g i s t e r 、r e i n v i t e 等协议操作的细节作了改进,使得协议操作更趋f 合理。 s i p 被描述用来生成、修改和终结一个或者多个参与者的会话1 5 6 j ,这些会 话包括i n t e m e t 多媒体会议、i n t e m e t ( 或任何i p 网络) 电话呼叫和多媒体发:布, 会话中的成员能通过多播或者单播联系的网络来通信。s i p 支持用户定位、特 征协商、呼叫参与者管理和呼叫特征改变等功能。s i p 不涉及到媒体控制,媒 体类型、编码格式等信息通过s d p 来描述,并作为s i p 消息的消息体( b o d y ) 和其消息头一起传送。s i p 是一个应用层控制协议,因此可以运行在t c p 、u d p 、 s c t p 等各种传输层协议之上;s i p 协议虽然主要为i p 网绍设计的,但它并不 关心承载网络,它可以在a t m 、帧中继等承载网中工作。 2 2s i p 系统基本组成 s i p 采用客户服务器( c s ) 控制方式。按逻辑功能分,s i p 系统由4 币p 元 第6 页 重庆邮电大学硕士论文 第二章s i p 协议介绍 素组成:用户代理( u s e ra g e n t ) 、代理服务器( p r o x ys e r v e r ) 、重定向服务器 ( r e d i r e c t i o ns e r v e r ) 以及注册服务器。根据需要,实际的物理实体可以包含一 个或者多个逻辑元素。定位服务器( l o c a t i o ns e r v e r ) 不是s i p 元素,所以它和 其它的s i p 元素交互可以不用s i p 协议。它们的关系如图2 1 所示。 2 2 1用户代理 图2 1s i p 系统的分布式结构 一个用户代理( u a ) 代表了一个终端系统,是用来和用户交互的s i p 实体。 u a 分为两个部分:用户代理客户端( u a c l i e n t ) 和用户代理服务器( u a s e r v e r ) , 二者组成用户代理存在于用户终端中。一般来说,呼叫控制请求发出方称为 u a c ,而请求接收和处理方称为u a s 。u a c 可以由一些外部驱动来发出请求 和处理应答( 例如,用户按下了一个电话键产生了一个d t m f 信号等) ;u a s 是一个能够接收请求,并且产生应答的终端,它可以根据用户输入、程序执行 结果或者其它机制来产生应答。u a c 和u a s 是根据通信过程中所扮演的角色 不同来区分,在现实中,由于u a 既可能发出呼叫,又可能接收呼叫,因此u a 应该包含一个u a c 程序和一个u a s 程序。u a 在实际应用的过程中可表现为 电脑上的软件电话( 如:x l i t e ,w i n d o w sm e s s e n g e r 等) 、s i pi p 电话机以及其 它采用s i p 作为通信信令的终端。本文要做的工作就是实现可在无线局域网内 打i p 电话的u a 。 2 2 2 代理服务器 代理服务器同时具有服务器和客户机的功能,它不仅接收s i p 消息,还能 把消息转发到下一个s i p 服务器。代理服务器具有履行认证、授权、网络访问 控制和路由等功能,在转发请求消息前,代理服务器可以修改消息的部分内容。 s i p 请求可经过多个代理服务器,每个服务器接收请求后将其转发给下一跳 服务器,下一跳可能是另一个代理服务器,也可能是最终的用户代理服务器。 第7 页 重庆邮电大学硕士论文 第二章s i p 协议介绍 当代理服务器为用户尝试多于一个地址的时候,它就被叫做派生( f o r k ) 邀请p 1 。 派生代理可以按照它们的配置并行或顺序地搜索。并行搜索是同时尝试搜索所 有可能的位置,而顺序搜索;每次只尝试搜索一个位置。图2 2 说明了一个派生 代理接收到一个目的地址妁s i p :b c o m p a n y c o r n 的邀请并且尝试与销售部的所 有人联系,直到它找到个可以提供服务的目标为止。 图2 2 毫芘生代理尝试联系组地址 2 2 3 重定向服务器 重定向服务器提供下一跳i 的地址信息给用户,它映射请求地址到零个或多 个实际地址。重定向服务器刁= :能接受或终止呼叫,不初始化自己的s i p 请求, 也不产生s i p 响应来定位其蓉实咋本。 重定向服务器通过提供可j 氆的位置帮助定位s i p 用户代理。重定向服务器 并非总是返回用户实际所在地的用户代理地址,它也可仅仅简单地返回一个知 道更多目的地址信息的服务器的地址。 重定向服务器并不发起任何用于定位用户的行动,它只是返回用户有可能 出现的那些位置的列表,而由用户代理去进行用户定位的所有尝试。这一点也 就是重定向服务器和代理服务器之间的主要区别。代理服务器代替用户做后续 的尝试而不是向用户发送新的联系信息。 重定向服务器也可以用于实现组地址。为了理解这是如何实现的,举一个 例子进行说明。假设a 公司支持部的公用地址是s i p :s u p p o r t c o m p a n y c o r n ,因 为这个部门必须昼夜不停地提供支持,因此某一时间段总要有人在工作。b o b 从上午8 时工作到下午4 时,p e t e r 从下午4 时工作到午夜,而m a r y 从午夜工 作到第二天上午8 时。在c o m p o n y t o m 域的重定向服务器能够依据一天之中不 第8 页 重庆邮电大学硕士论文簧善二章s i p 协议介绍 同的时间段返回不同的地址,因此如果它在中午收到了一个目的地址为 s i p :s u p p o r t c o m p a n y ! c o m 的呼叫,它就自动地以地址s i p :b o b j o h n s o n c o m p a n y t o m 回复。 2 2 4 注册服务器 注册服务器的功能是接受用户的注册请求及对用户进行认证,它通过定位 服务器维护用户的位置。注册服务器典型地与一个代理服务器或一个定位服务 器位于同一台机器并提供定位服务。 2 2 5 定位服务器 定位服务器i i6 j 不属于s i p 的范畴,它是i n t e m e t 中的公共月殴务器,其查询可 采用其它协议。代理服务器和重定向服务器在确定下一跳服务器时都可能向定 位服务器发出查询。定位服务器可能返回多个位置信息,如果重定向服务器收 到多个位置指示,则将这些位置信息全部返回给客户;如果代理服务器收到多 个位置指示,则可按顺序或并行方式逐一地尝试这些位置,直到呼叫成功或被 用户拒绝为止。 2 3 s i po r s i p 用户采用类似e m a i l 地址形式的u r i 来标识( 例如: s i p :m y n a m e m y c o m p a n y c o m ) ,为网络用户提供充分的灵活性。 s i pu r i 用来指示请求的源地址、想要抵达的目的地址、重定向地址及请 求的当前目的地址,它们分别置于f r o m 、t o 、c o n t a c t 头部字段和起始行的 r e q u e s t - u r i 中。 s i pu r i 的格式为: s i p :用户名:1 2 1 令 主机:端e l :u r i 参数 例如:s i p :b o b c q u p t e d u c n ;m a d d r = 2 3 9 2 5 5 2 5 5 1 ;t t l = 1 5 一用户名和口令统称为用户信息。用户名可以由任意字符= 串组成,一般取 类似于e m a i l 地址中用户名的形式;用户名还允许为一股p s t n 电话 号码。口令可以置入s i p u r i 中,但一般不建议这么做。 主机和端口统称主机信息。主机可为主机域名( 例:c q u p t e d u c n ) 或者 i p 地址( 例:2 0 2 2 0 2 3 2 3 5 ) ;端口指示请求消息送往的辫苦口号,其缺 省值为5 0 6 0 ,即公开的s i p 端口号。 第9 页 重庆邮电大学硕士论文第二章s i p 协议介绍 _ 传送参数、用户参数、方法参数、生存期参数( t t l ) 和地址参数统称为u r i 参数。传送参数指示采用的是t c p 还是u d p 传送,缺省值为u d p , 格式为:t r a n s p o r t = u d pt c p :用户参数指示用户名字段是i p 地址还是 电话号码,格式为:u s e r = p h o n ei p ;方法参数指示所采用的方法,格 式为:m e t h o d = m e t h o d ( i n v i t e 、a c k 等) ;生存期参数指示u d p 多 播数据报文的寿命,仅仅当传送参数为u d p 、地址参数为多播地址时才 使用,格式为:t t l = h o p ( 跳数) ;地址参数指示所要路由的代理服务器的 地址,格式为:m a d d r = h o s t 。 2 4s i p 消息格式 当已决定在分布系统之间交换什么信息之后,下一步就是决定这些信息如 何编码。有两种基本方法:二进制方法,它使用比特字段编码信息;文本方法, 它使用字符串。 s i p 是一个基于文本的协议,使用文本编码的方法。基于文本的协议便于 调试,因为它们可以直接被识别,且文本协议灵活、容易使用新特性来扩展1 1 7 j 。 2 4 1s ip 消息总体描述 s i p 消息有两种:客户机到服务器的请求( r e q u e s t ) 和服务器到客户机的响应 ( r e s p o n s e ) 。 s i p 消息由一个起始行( s t a r t - l i n e ) 、一个或者多个字段( f i e l d ) 组成的消息头、 一个标志消息头结束的空行( c r l f ) 以及作为可选项的消息体( m e s s a g eb o d y ) 组 成,其中,描述消息体的头字段称为实体头( e n t i t yh e a d e r ) 。s i p 消息的格式如下: s i p 消息的一般格式= 起始行 消息头( 1 个或多个) c r l f ( 空行) 【消息体 ( 可选) 起始行分为请求行( r e q u e s t - l i n e ) 和状态行( s t a t u s - l i n e ) 两种,其中请求行是 请求消息的起始行,状态行是响应消息的起始行。 消息头分为通用头( g e n e r a l - h e a d e r ) 、请求头( r e q u e s t h e a d e r ) 、响应头 ( r e s p o n s e h e a d e 0 和实体头4 种。 第1 0 页 重庆邮电大学硕士论文第二章s i p 协议介绍 2 4 2s ip 请求消息格式 s i p 请求潲鼠由一个请求行( r e q u e s t l i n e ) 、几个消息头( h e a d e r ) 、一个空 行和一个消息体组成,消息体是可选的。请求消息的格式如下: s i p 请求消息的一般格式= 请求行 消息头( 1 个或多个) c r l f ( 空行) 【消息体】( 可选) s i p 请求i i 事息的请求行的格式为: r e q u e s t l i l l e 2m e t h o ds pr e q u e s t u r is ps i p - v e r s i o nc b l f 例如:i n y i t es i p :b o b c o m p a n y c o ms i p 2 0 请求行有3 个元素,以方法( m e t h o d ) 标记开始,后面是r e q u e s t u r i 和协 议版本( s i p v e r s i o n ) ,最后以回车键结束,各个元素间用空格字符隔开。方法 决定了请求消息白勺类型和目的;r e q u e s t - u r i 包含了路径中下一跳的地址:协议 版本标明该协议栈使用的s i p 协议版本号,目前是“s i p 2 0 ”。消息头提供了请 求和消息体的信息。 请求或响应匠都可以包含s i p 消息体。消息体就是s i p 消息的负荷,采用s d p 协议来描述。汴享息体的具体内容在2 5 节作了专门的描述。 s i p 定义了以f 几个基本的方法( 方法标识是区分大小写的) : m e t h o d i g , 4 v v i t e ”i “a c k ”| “o p t i o n s ”i b y e ”i “c a n c e l ”i “r e g i s t e r ” i n v i t e i n v i t e 方? 法用于邀请用户或者服务参与一个会话。对于两方呼叫,主 叫方通过i b 4 矿i t e 方法描述它能接收和发送的媒体类型,被叫方在成功的 响应消息的消息体中指明其希望接收及将要发送的媒体类型。如果用户代 理收到了已有呼叫的i n v i t e 请求,并且c s e q 值大于以前收到的 i n v i t e 消息,贝u 应检查消息的头部和会话描述是否有变化,如果有变化则 需要更新相应自勺状态及信息。 用户代理j g 臣务器可以自动地用2 0 0 ( o k ) 响应i n v i t e 请求。 a c k a c k 请求用于客户机向服务器证实它已经收到了对i n v i t e 请求的最 终响应。a c k 请求可能包含消息实体,其中给出s d p 协商的最终的会话 描述。如果在:a c k 中不含消息体,被口q 使用在i n v i t e 请求中的会话描 述。a c k 只和i n v i t e 一起使用,对2 x x 最终响应的证实由u a c 发出,对 其他最终响应! ( 3 4 5 6 x x ) 的证实由收

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论