(通信与信息系统专业论文)nat环境下sip点对点通信研究.pdf_第1页
(通信与信息系统专业论文)nat环境下sip点对点通信研究.pdf_第2页
(通信与信息系统专业论文)nat环境下sip点对点通信研究.pdf_第3页
(通信与信息系统专业论文)nat环境下sip点对点通信研究.pdf_第4页
(通信与信息系统专业论文)nat环境下sip点对点通信研究.pdf_第5页
已阅读5页,还剩94页未读 继续免费阅读

(通信与信息系统专业论文)nat环境下sip点对点通信研究.pdf.pdf 免费下载

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

文档简介

n a t 环境下s i p 点对点通信研究 论文题目:n a t 环境下s i p 点对点通信研究 专业:通信与信息系统 硕士生;罗英华 导师:刘克钧教授 摘要 n g n ( n e x tg e n e r a t i o nn e t w o r k ,下一代网络) 是一个能够提供包括语音、 数据、视频和多媒体业务的、基于分组技术的、综合开发的网络架构。在n g n 网络架构演进过程中,软交换和i m s ( i pm u t i m e d i as u b s y s t e m ,i p 多媒体业务 子系统) 是两大发展方向,但他们都是基于s i p ( s e s s i o n i n t i a t i o n p r o t o c o l ,会话 初始化协议) 协议,因此,s i p 必将成为n g n 的核心扔议,具有很大的发展前 景。 目前,s i p 业务发展所遇到的最大障碍就是如何穿透各种类型的n a t 。虽然 已经有不少方案被应用于解决n a t 环境下s i p 点对点通信的问题,然而现有的 解决方案应用于不同的网络拓扑时都有显著的利弊,以至于我们只能根据不同的 接入方式来采用不同的方案,没能很好的解决n a t 穿透的灵活性和效率问题, 同时还会给系统引入了许多复杂性和脆弱性因素。所以我们需要一种足够灵活的 方法。使之能在各种情况下对n a t 穿透问题提供最优的解决方案,以满足变化 万千的网络环境的需要。 本文提出一种解决n a t 环境下s i p 点到点通信问题的完整方案。该方案通 过整合现有协议,以一种更有效的方式来组织s i p 会话,使之在不增加延时和丢 包率的同时比任何单一协议更有具灵活性。还提出了该新型s i p 通信模型的实现 框架,该框架定义了该模型所该完成的工作和遵循的流程。 在该实现框架下将模型简化,经过初步测试,证明了该新模型是可行的。 最后对新模型所带来的安全问题、地址资源保留问题、优先权排列问题和实 际组网应用方式进行了研究探讨。 关键词:n g ns i pn a t t u r ns t u n n a t 环境下s i p 点对点通信研究 t i t i e :n ep o i n t - t o - p o i n tc o m m u m c a t i o nb a s e do ns 口 i nn a te n v i r o n m e n t m 砌o r c o m m u n i c a t i o na n di n f o r m a t i o ns y s t e m n a m e :l u o y l n g h u a s u p e r v i s o r :p r o f e s s o rl i uk e j u a a b s t r a c t n g n ( n e x tg e n e r a t i o nn e t w o r k ) i saf r a m et h a tc a np r o v i d ea u d i o v l d o e , d a t aa n dm u l t i m e d i as e r v i c e s a l t h o u g hs o f t s w i t e ha n dm s 仰m u l t i m e d i a s u b s y s t e m ) a r et w od i r e c t i o n si nt h ew a yo fn g nd e v e l o p m e n t , t h e y 啪b a s e d o ns 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 ) s 口s u r e t yh a sab r i g h tf u t u r e a tp r e s e n t , w i t h o u ta n ye x t e n s i o n s ,s i ph a sd i m c u ! t yi nn e t w o r k st h a t c o n t a i nn e t w o r ka d d r e s st r a n s l a t o r ( n a t ) n a tt c a v e r s a lf o rs i pi se s p e c i a 啦 p r o b l e m t i cf o r t h em e d i as t r e a m , w h i c hg e n e r a l l yf l o wf r o mu s e ra g e n tt ou s e r a g e n ln u m e r o u ss o l u t i o n sh a v eb e e np r o p o s e df o ra l l o w i n gs 坤p o i n t - t o - p o i n t c o m m u n i c a t i o nt h r o u g hn a t u n f o r t u n a t e l y , t h e s et e c h n i q u e sa l lh a v ep r o sa n d c o n sw h i c hm a k ee a c ho n eo p t i l i s ji ns o m en e t w o r kt o p o j o g l e s , b u tap o o rc h o i c e i no t h e r s t h er e s u l ti st h a ta d m i n i s t r a t o r sa n di m p l e m e n t e r sa r em a l t i n g a s s u m p t i o n sa b o u tt h et o p o l o g i e so ft h en e t w o r k si nw h i c ht h e i rs o l u t i o n sw i l lb e d e p l o y e d t h l si n t r o d u c e sal o to fc o m p l e x i t ya n db r i t t i e s si n t ot h es y s t e m w h 砒 i sn e e d e di sas i n g l es o l u t i o nw h i c hi sf l e x i b l ee n o u g ht ow o r kw e l li na l l 硝t u a t i o n s o n em a j o rp a r to ft h i st h e s i si sa ne n t i r e l ys u c c e s s f u is o l u t i o no f p o i n t t o - p o i n tc o m m u n i c a t i o nb a s e do ns i pi nn a te n v i r o n m e n t t h 缸s o l u t i o n m a k e su s eo fs o m ee x i s t i n gp r o t o c o l s ,b u tu s e st h e mi nas p e d f i cm e t h o d o l o g y w h i c ha v o i d sm a n yo f p i t f a l l so f u s i n ga n yo n ea l o n e a n o t h e rp o i n ti nt h i st h e s i si st h ei m p l e m e n tf r a m eo ft h i sn e ws 口 c o m m u n i c a t i o nm o d e l i nt h i sf r a m e ,w ed e f i n e t h ec r i t e r i o na n df l o wo f n a t 环境下s i p 点对点通信研究 i m p l e m e n t i n gt h i sm o d e l w es i m p h 匆t h i sm o d e la n di m p l e m e n ti tb a s e do rl i n u x a f t e rt e s t s , i ti s p r o v e da ne f f e c t i v ea n df l e x i b l es o l u t i o nt op o i n t - t o - p o i n ts i pc o m m u n i c a t i o n b a s e d o n s m k e y w o r d s :n g n ;s i p ;n a t ;, t u r n ;s t u n i h n a t 环境下s i p 点对点通信研究 1 。1 论文选题意义 第1 章绪论 n g n ( n e x tg e n e r a t i o nn e t w o r k ,下一代网络) 是一个能够提供包括语音、 数据、视频和多媒体业务的、基于分组技术的、综合开发的网络架构。在n g n 网络架构演进过程中,软交换和i m s ( i pm u t h n e d i as u b s y s t e m ,i p 多媒体业务 子系统) 是两大发展方向,但他们都是基于s i p ( s e s s i o n i n t i a t i o n p r o t o c o l ,会话 初始化协议) 【1 】协议,因此,s i p 协议必将成为n g n 的核心协议,具有很大的 发展前景。 但s i p 业务的发展也带来一个值得关注的问题:由于口地址资源短缺以及 安全方面的需要,现在i n t e r a c t 上大量的企业网和驻地网基本都采用私有i p 地址 通过出口n a t 设备转换的方式而接入公网。而根据s i p 协议的规定,s i p 终端会 把地址信息放在数据包的负载中,负载中的信息经过n a t 时是不能被修改的, 因此,应答端以数据包负载中的私网i p 地址为目的地址发送的媒体流将会被 i n t e r n e t 上的路由器丢弃,发起终端永远也不能收到媒体流,在n a t 环境下s i p 点对点通信不能正常进行。这样一来,n a t 问题就成为开展s i p 业务的最大障 碍,问题迫切需要解决。 现在已经有不少方案被应用于解决n a t 环境下s i p 点对点通信的问题,然 而现有的解决方案应用于不同的网络拓扑时都有显著的利弊,以至于我们只能根 据不同的接入方式来采用不同的方案,没能很好地解决n a t 穿透的灵活性和效 率问题,同时还会给系统引入了许多复杂性和脆弱性因素。所以我们需要一种足 够灵活的方法,使之能在各种情况下对n a t 穿透问题提供最优的解决方案,以 满足变化万千的网络环境的需要。 1 2 论文主要工作 本文是围绕s i p 协议、n a t 技术及n a t 环境下s i p 点对点通信问题而展开 的。主要工作包括: n a t 环境下s i p 点对点通信研究 ( 1 ) 研究n g n ,尤其是s i p 在n g n 演进中的地位,描述了在n a t 环境下s i p 点到点通信所遇到的问题; ( 2 ) 对现有的各种n a t 环境下s i p 点到点通信解决方案的性能和局限性作了详 细分析; ( 3 ) 提出能同时兼顾灵活性和效率的解决n a t 环境下s i p 点到点通信问题的完 整方案,还提出了该新型s i p 通信模型的实现框架,并定义了该模型所该完成的 工作和遵循的流程。 该方案是通过一定的方法将现有的用于n a t 穿透的s t u n 和t u r n 整合起 来并将主机本地地址、s t u n 获得地址和t u r n 获得地址( 辅助n a t 穿透的地 址) 按一定的优先权排列起来交给对端,对端在通过连通性测试之后,选择其中 优先级最高的地址作为目的地址发送媒体流,从而灵活解决各种n a t 环境下s i p 点到点通信的问题,能同时兼顾效率和灵活性; ( 4 ) 对新型s i p 点对点通信模型在各种不同的n a t 环境下进行信令流分析和性 能分析,证明新型s i p 通信模型比单一使用任何一种现有方法更灵活和高效: ( 5 ) 将模型简化之后在l i n u x 环境下用程序实现,并利用l i n u x 主机和c i s c o 路由器搭建不同的n a t 环境进行实验测试,测试结果与理论推导一致,进一步 证明新模型的可行性; ( 6 ) 对新模型所带来的安全问题、地址资源保留问题、优先权排列问题和实际 组网应用方式进行了研究探讨。 1 3 论文内容安捧 本文分为7 章。 第1 章为绪论,阐述本论文的选题背景、主要工作和内容安排。 第2 章对n g n 相关知识背景进行了简单介绍。 第3 章详细介绍了s i p 协议和n a t 技术,并详细描述了在n a t 环境下s i p 点对点通信所遇到的问题。 第4 章详细分析了现有各种n a t 环境下s i p 点对点通信解决方案的性能和 局限性,归纳出到目前为止还没有一种方案能同时兼顾灵活性和效率。 第5 章针对n a t 环境下s i p 点对点通信所遇到的问题,提出一种新型的解 2 n a t 环境下s i p 点对点通信研究 决方案,并通过详细的信令分析和性能分析证明该方案能灵活地穿透各种不同类 型的n a t ,实现s i p 点到点通信。 第6 章在l i n u x 平台下利用c i s c o 路由器模拟各种网络环境进行实验测试, 并对结果进行研究探讨。 第7 章对全文内容进行总结,并对日后的工作做了进一步的安排。 n a t 环境下s i p 点对点通信研究 2 1n g n 概述 第2 章n g n 概述 近年来,随着科学技术的突破以及i n t e r n e t 业务的飞速发展,人们对通信业 务的需求逐渐由语音变为对数据、图像和语音的综合需求,传统的通信网络已经 越来越不能满足人们日益增长的通信需求,需要新的的网络来提供丰富的语音、 数据、图像以及多媒体业务,人们由此提出了“n g n ( n e x t g e n e r a t i o n n e t w o r k , 下一代网络) p ,4 ,5 l ”的概念,并不断改进和完善。 那究竟什么是n g n 呢? 按照n u _ t 的定义,n g n 是基于分组的网络,能 够提供包括电信业务在内的所有业务;能够利用多种宽带且有q o s 保证的传送 技术:其业务相关功能与其传送技术相独立;n g n 使用户可以自由接入到不同 的业务提供商;n g n 支持通用移动性,允许为用户提供始终如一的,普遍存在 的业务。 n g n 具有以下六个特征: 第一,弹性、开放的网络架构。 n g n 是一个有机整体,将传统交换机的功能模块分离为独立网络部件,各 部件按相应功能进行划分,独立发展,实现开放分布式网络结构。 第二,各功能部件之间采用标准协议。 n g n 采用开放式协议和接口,可以灵活、快速地提供业务,使运营商可以 根据业务需要自由组合各部分功能产品来组建网络。 第三,业务与控制和接入与承载分离。 n g n 采用的分层体系使业务与呼叫控制,呼叫控制与承载分离,分离的目 的是使业务真正独立于网络,能够有效地对媒体层及接入和传输层形成屏蔽,便 于向业务层提供开放接口,支持灵活的第三方业务开发和加载。 第四,统一采用i p 协议。 包交换技术的发展,使得各种以包交换为基础的业务都能在不同的网上实现 互通,同时支持语音、数据和视频等多媒体业务。 4 n a t 环境下s i p 点对点通信研究 第五,多种媒体接入方式,同时提供语音、数据、多媒体业务。 普通用户可以使用职能分组话音终端、多媒体终端,通过接入媒体网关、综 合接入设备( t a d ) 来满足用户的语音、数据和视频业务的麸存需求。 第六,合适的性能价格比。 与目前的p s t n 网络相比,n g n 大幅度降低网络建设成本和运营成本,从 而大大降低通信费用。 n g n 采用了综合、开放的架构,将业务接入、媒体处理、呼叫控制和业务 处理分离,并在他们之间采用标准协议进行互连。根据这种思想,可以将n g n 分为四层:接入层,承载层,控制层和业务层。 图2 - 1 n g n 网络分层结构 接入层包括各种接入网关、中继网关、媒体网关、智能终端以及综合接入设 备( i a d ) 。各类网关和智能终端主要实现媒体流格式的转换和传送,从而实现语 音分组在分组网的承载和传输。网络互通和网络设备网关化,通过接入网关、中 继网关等网关,可实现与p s t n ,p l m n ,i n t e m c t 等网络的互通,有效地继承原 有网络的业务。 承载层包括提供i p 包转发的各种承载网功能实体。n g n 采用高速分组化核 心承载,不论话音、数据还是视频,一律数字化,采用高速包交换分组网络,同 时支持语音、数据、视频等业务。目前,n g n 网络传送层技术发展包含两个层 面,即以m p l s 与i p v 6 为重点的下一代i p 网以及自动交换光传送网 ( a s t n a s o n ) 。在i p v 6 网络暂时无法部署的前提下,基于私有地址的n a t 穿越 是在n g n 网络中有效开展语音和视频业务的主要技术。 控制层是n g n 网络的核心,主要包括软交换设备。软交换设备是呼叫控制 的核心,完成呼叫连接的建立和释放,以及媒体网关接入功能、媒体网关资源管 理、带宽管理、选路、信令互通和安全管理等功能。控制层向业务层提供开放的 n a t 环境下s i p 点对点通信研究 a p i 接口,使业务提供者可自由结合承载业务与控制协议,从而快速、灵活、有 效地开发新业务。 业务层主要包括s c f 、应用服务器、j 锚a 服务器等功能。业务层通过开放 的业务层接口向用户提供丰富多彩的下一代业务。 由以上分析可以知道,以软交换为核心技术的n g n 是业务与控制、接入与 承载彼此分离的网络,是一个开放、可扩展性强的网络。 2 2 n g n 演进 在过去的两年,软交换在各个电信运营商的实验网上大行其道,更有中国移 动将跨地域的软交换汇接网投入了实际商用中。软交换似乎已经成为衡量n g n 发展程度的一个标尺:软交换网络铺得越广,离n g n 的目标就越接近。但是 i m s b a s e dn g n 的出现向这一观念提出了挑战。中国电信北京研究院院长赵慧 玲认为:“软交换并不是n g n 的最终状态,考虑到多媒体业务的实现,以及移 动和固定网络的融合,i m s b a s e dn g n 代替软交换成为n g n 的控制核心将成为 一种趋势。” i m s 和软交换的实现基础都是s i p 协议,所以他们在结构和功能上是基本相 同的。i m s b a s e dn g n 的控制系统包括s c s c f 和a g c f 。软交换也有相应的功 能,其中控制基于h 2 4 8 和m g c p i a d 、接入网关的双绞线用户,对应i m s 中的 a g c f ;控制基于s i p 的多媒体用户,对应i m s 中的s c s c f 。区别只是i m s 的 控制系统只处理用户的呼叫,用户的业务由数据和应用系统提供,而软交换不仅 要处理呼叫还要负责提供用户的业务。但是,随着多媒体业务比例的增大和对网 络可靠性、服务质量要求的提高,一些功能模块必须从软交换网中分离出来;而 且,由于软交换不支持移动接入方式,注定无法成为固网和移动网融合的平台。 而出身于移动网络的i m s 却恰恰克服了这些缺陷,成为3 g p p 、e t s i 和i t u u 等机构下一步研究的重点。l m s 已经悄然成为一个公认的发展方向。 由此可见,s i p 协议也必然伴随着n g n 的发展而成为n g n 的核心控制协议。 6 n a t 环境下s i p 点对点通信研究 第3 章s ip 协议和n a t 技术分析 3 1s 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 ,会话初始化协议) i t 】是i e t f ( i n t e r n e t e n g i n e e r i n gt a s kf o r c e ,i n t c r n e t 工程任务组) 提出的i p 网络多媒体业务方案, 它包括基础协议s i p 协议和用于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 i p 用于建立、调整和终止会话。基于文本的s d p 媒体 描述作为消息体嵌入在s i p 数据包中,为媒体流的建立提供地址信息和媒体参 数,使得呼叫建立的同时完成媒体信道的建立。 3 1 1s i p 协议概述 s i p 是n g n 软交换应用中的重要信令协议,它用来建立、调整和终止一个 或多个参与者参加的多媒体会话或呼叫。这些多媒体会话包括多媒体会议、远程 教育、i n t e m e t 电话,及所有i n t e r n e t 上两方或多方的交互式多媒体通信活动。参 加会话的成员可以通过单播、组播等方式来进行通信。 s i p 独立于它处理的多媒体会话类型和描述会话所使用的机制,因此对于视 频会议、语音呼叫、共享自板和游戏会话同样适用需要传送音频和视频的r t p 流的会话通常使用s d p 协议描述,其他类型的会话参数可以使用其他的描述协 议来说明。 s i p 作为一个应用层的多媒体会话信令协议,可以用来发起一个会话进程、 在会话中邀请其他参加者加入会议,会话本身可以通过基于组播协议的会话通告 协议( s a p ) 、争m a i l 、网页通告以及轻量级号薄访问协议( u ) a p ) 等方式预先 通告各个可能的参加者。s i p 协议支持别名映射、重定向服务、i s d n 和i n 业务。 它支持个人移动( p e r s o n a l m o b i l i t y ) ,即终端用户可以在任何地方、任何时间请 求和获得已订购的任何电信业务。总的说来,s i p 能够支持以下几个功能: 用户定位:确定在通信中使用的终端系统。 用户能力判断:确定在通信中所使用的媒体参数,s i p 采用s d p 协议描述媒 7 n a t 环境下s i p 点对点通信研究 体。 用户可用性判断:确定被呼叫方是否愿意加入通信,s i p 定义了非常明确的 应答编码来提供用户当前可用性的详细信息。 呼叫建立:通过直接的终端信令或代理,可以建立简单呼叫和点到点、点到 多点的会议。 呼叫管理:使用s i p 及其扩展可支持k i n 主要电话功能,以及新增功能( 如 用户移动) 。 3 1 2 s i p 消息 s i p 消息是s i p 客户机和服务器之间通信的基本单元。s i p 消息有两种:客 户机到服务器的请求( r e q u e s t ) ,服务器到客户机的应答( r e s p o n s e ) 。即: s i p - m e s s a g e = r e q u e s tir e s p o n s e s i p 消息,不管是请求消息还是应答消息,其格式都遵循i n t e r n e t 文本消息 格式标准。通用格式定义如下: g e n e r i c - m e s s a g e = s t a r t l i n e + m e s s a g e - h e a d e r c r l f 【m e s s a g e b o d y 】 s i p 消息由一个起始行( s t a r t - l i n e ) 、一个或多个字段( f i e l d ) 组成的消息头 ( m e s s a g e - h e a d e r ) 、一个标志消息头结束的空行( c r l f ) 以及作为可选项的消 息体( m e s s a g e b o d y ) 组成,其中描述消息体的头称为实体头( e n t i t y - h e a d e r ) 。 对s t a r t - l i n e 和m e s s a g e h e a d e r 进一步限定就形成了下面s i p 消息的通用格式: s t a r t - l i n e = r e q u e s t l i n eis t a t u s - l i n e m e s s a g e h e a d e r 。吖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 ir e s p o n s e - h e a d e r ie n t i t y - h e a d e r ) 可以看出,通过s t a r t - l i n e 区分请求消息和应答消息:如果s t a r t 1 i n e = r e q u e s t l i n e ,则该消息为请求消息:如果s t a r t 1 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 q u e s t - h e a d e r ) 和实体头( e n t i t y - h e a d e r ) 四种。 3 1 2 1s i p 请求消息 8 n a t 环境下s i p 点对点通信研究 请求消息的格式如下: r e q u e s t = r e q u e s t l i n e + ( g e n e r a b h e a d e r f r e q u e s t - h e a d c r e n t i t y - h e a d e r ) c r l f 【m e s s a g e b o d y 】 r e q u e s t l i n e = m e t h o d s p r e q u e s t - u r i s ps i p - v e r s i o nc r l f 请求行( r e q u e s t - l i n e ) 以方法( 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 ) ,最后以回车键结束,各元素间用空格键字符间隔。 s i p 用术语“m e t h o d ”对说明部分加以描述,m e t h o d 标识区分大小写。s i p 定义了以下几种方法( m e t h o d ) : m e t h o d = “i n v i t e ”| a c i c l “o p t i o n s ”i b y e ” | c a n c e l i “r e g i s t e r i i n f o ” ( 1 ) i n v i t e i n v i t e 方法用于邀请用户或服务参加一个会话。在i n v i t e 请求的消息体 中可对被叫方被邀请参加的会话加以描述,如主叫方能接收的媒体类型、发出的 媒体类型及其一些参数:对i n v i t e 请求的成功响应必须在响应的消息体中说明 被叫方愿意接收哪种媒体,或者说明被叫方发出的媒体。 服务器可以自动的用2 0 0 ( o k ) 响应会议邀请。 ( 2 ) a c k a c k 请求用于客户机向服务器证实它已经收到了对i n v i t e 请求的最终响 应。a c k 只和i n v i t e 请求一起使用。对2 x x 最终响应的确认由客户机用户代 理发出,对其他最终响应的确认由收到响应的第一个代理和第一个客户机用户代 理发出。a c k 请求的t o 、f r o m 、c a l l i d 和c s c q 字段的值由对应的i n v i t e 请 求的响应字段的值复制而来。 ( 3 ) o p t i o n s o p t i o n s 用于向服务器查询其能力。如果服务器认为它能与用户联系,则 可用一个能力集响应o p t i o n s 请求;对于代理和重定向服务器只要转发此请求, 不用显示其能力、o p t i o n s 的f r o m 、t o 分别包含主被叫的地址信息,对 o p t i o n s 请求的响应中的f r o m 、t o ( 可能加上t a g 参数) 、c a l i - i d 字段的值由 o p t i o n s 请求中响应的字段的值复制而来。 9 n a t 环境下s i p 点对点通信研究 ( 4 ) b y e 用户代理用b y e 请求向服务器表明要释放呼叫。 b y e 请求可以像i n v i t e 请求那样被转发,可由主叫方发出也可由被叫方发 出。呼叫的一方在释放( 挂断) 呼叫前必须发出b y e 请求,收到b y e 请求的这 方必须停止发送媒体流给发出b y e 请求的这方。 ( 5 ) c a n c e l c a n c e l 请求用于取消一个c a l l i d 、t o 、c s e q 字段值相同的正在进行的请 求,但取消不了已经完成的请求( 如果服务器返回一个最终状态响应,则认为请 求己完成) 。 c a n c e l 请求中的t o 、f r o m 、c a l m d 和c s e q 与原请求的对应字段值相同, 从而使c a n c e l 请求与它要取消的请求匹配。 ( 6 ) r e g i s t e r r e g i s t e r 方法用于客户机向s i p 服务器注册列在t o 字段中的地址信息。 r e g i s t e r 请求信息头中各个字段的含义如下: t 0 :含要创建或更新的注册的地址记录。 f r o m :含提出注册的用户的地址信息。 r e q u e s t - u r i :注册请求的目的地址,地址的域部分的值即为主管注册者所在的 域,而主机部分必须为空。一般,r e q u e s t u r i 中的地址的域部分的值和t o 中的 地址的域部分的值相同。 c a l l i d :用于标识特定客户机的注册请求。来自同一个客户机的注册请求至少在 相同重启周期内c a l l - i d 字段值应该相同;用户可用不同的c a l m d 值注册不同的 地址,后面的注册请求将替换前面的所有请求。 c s e q :c a l b i d 字段值相同的注册请求的c s e q 字段值必须是递增的,但次序无 关,服务器并不拒绝无序请求。 c o n t a c t :此字段是可选项。用于把以后发送到t o 字段中的u r i 的非注册请求转 到c o n t a c t 字段给出的位置那里。如果请求中没有c o n t a c t 字段,那么注册保持 不变。 e x p i r e s :表示注册的截止期。 ( 7 ) i n f 0 1 0 n a t 环境下s 口点对点通信研究 i n f o 方法是对s i p 协议的扩展,用于传递会话中产生的与会话相关的控制 信息,如i s u p 和i s d n 信令消息,有关此方法的使用还有待标准化【3 。 s i p 请求消息的s t a r t 1 i n e 中的r e q u e s t u r i 部分是一个s i pu r l ,它表示这 个请求消息发送的用户或服务的当前目的地址。当请求经代理服务器转发时,它 可能被代理服务器改写,因此也可以认为r e q u e s t u r i 类似于网络层的“下一跳 地址( n e x t h o p ) ”,而真正的被叫地址包含在t o 头域中。v i a 地址列表记录了 一个请求消息的路由( 被代理) 信息,v i a 列表中的第一项是发起请求的主叫地 址。f r o m 头域包含的是逻辑主叫的地址。 3 1 2 2s i p 应答消息 当服务器收到一个s i p 请求消息并对其分析理解后,服务器根据具体请求要 返回一个或多个s i p 应答消息。应答消息格式定义如下: r e s p o n s e = s t a t u s l i n e 。( g e n e r a l - h e a d e r lr e q u e s t h e a d e r ie n t i t y - h e a d e r ) c r l f 【m e s s a g e - b o d y 】 s t a t u s - l i n e = s i p - v e r s i o ns ps t a t u s - c o d es pr e a s o n - p h r a s ec r l f 状态行( s t a t u s l i n e ) 以协议版本开始,接下来是用数字表示的状态码 ( s t a t u s - c o d e ) 及相关的文本说明,最后以回车键结束,各个元素间用空格字符 ( s p ) 间隔,除了在最后的c r l f 序列中,这一行别的地方不许使用回车或换行 字符。 s i p 协议中用3 位整数的状态码( s t a t u s c o d e ) 和原因值( r e a s o nc o d e ) 来 表示对请求作出的回答,状态码用于机器识别操作,原因短语( r e a s o n p h r a s e ) 是对状态码的简单文字描述,用于人工识别操作。 s t a t u s c o d e = l x x ( p r o v i s i o h a l ) l2 殛( s u c c e s s ) l3 x x ( r e d i r e c t i o n ) l4 x x ( c l i e n te r r o r ) i5 x x ( s e r v e r e r r o r ) l6 x x ( g l o b a lf a i l u r e ) le x t e n s i o n - c o d e 状态码的第一个数字定义响应的类别,在s i p ,2 0 中第一个数字有6 个值, n a t 环境下s i p 点对点通信研究 定义如下: l x x :p r o v i s i o n a l 请求已经收到、继续处理请求。 2 x x :s u c c e s s 动作已经成功地收到、理解和接受。 3 x x :r e d i r e c t i o n 为完成呼叫请求,还需采取进一步的动作。 4 x x :c l i e n te r r o r 请求有语法错误或不能被服务器执行。客户机需修改请 求,然后再重发请求。 5 x x :s e r v e re r r o r 服务器出错,不能执行合法请求。 6 x x :g l o b a lf a i l u r e 任何服务器都不能执行请求。 3 1 3s d 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 ,会话描述协议) p o 作为s i p 的消息体, 是s i p 消息中的一个重要内容。s d p 消息体用来联系会话双方,进行会话有关参 数的协商。s d p 的格式定义如下: s e s s i o nd e s c r i p t i o n v 一- - - ( p r o t o c o lv e r s i o l n 0 5 - - - ( o w n e r c r e a t o ra n ds e s s i o ni d e n t i f i e r ) s = ( s e s s i o nn a m e ) i ;+ ( s e s s i o ni n f o r m a t i o n ) u = + ( u r io fd e s c r i p t i o n ) e 一- - - + ( e m a a d d r e s s ) p = + ( p h o n en u m b e r ) c 5 ( c o n n e c t i o ni n f o r m a t i o n n o tr e q u i r e di fi n c l u d e di na nm e d i a ) b ;+ ( b a n d w i d t hi n f o r m a t i o m o n eo rm o r et i m ed e s c r i p t i o n s ( s e eb e l o w ) z 5 ( t i m ez o n ea d j u s t m e n t s ) k = ( e n c r y p t i o nk e y ) a = + ( z e r oo rm o r es e s s i o na t t r i b u t e 曲e s ) z e r oo rm o r em e d i ad e s c r i p t i o n s ( s e eb e l o w ) t i m ed e s c r i p t i o n t = ( t i m et h es e s s i o ni sa c t i v e ) r = + ( z e r oo rm o r er e p e a tt i m e s ) m e d i ad e s c r i p t i o n m 2 ( m e d i af l a m ea n dt r a n s p o r ta d d r e s s ) i = + ( m e d i at i t l e ) c ;+ ( c o n n e c t i o ni n f o r m a t i o n o p t i o n a li fi n c l u d e da ts e s s i o n - l e v e l ) b = + ( b a n d w i d t hi n f o r m a t i o 曲 k = + ( e n c r y p t i o nk e y ) a = 亿e i oo rm o r em e d i aa t t r i b u t el i n e s ) n a t 环境下s i p 点对点通信研究 一个s d p 消息体,通常包括三个部分的内容,即会话描述、时间描述、媒 体描述和其他项目。完成一个i p 电话会话,需要s d p 先完成三个方面的工作。 首先,发起方需要通知对方自己希望接收的媒体类型,是声音、图像还是二者兼 有的混合媒体;其次,需要知道媒体的编码以及压缩方式;第三,发送方还需要 通知接受方自己想要接受媒体流的i p 地址和端口。 需要注意的是,在s d p 消息体中,和媒体流连接地址相关的几个消息头是: c = ,我们需要注意这里的i p 地址,它说明 了本地主机在哪个i p 上可以收到媒体流。 m = c 媒体协议 ,这里需要注意的是端口 号,它说明了本地主机在哪个端口能够收到媒体流。 3 1 4 s i p 服务器和s 坤操作 s i p 中有客户机( c l i e n t ) 和服务器( s e r v e r ) 之分。客户机是指为了向服务 器发送请求而与服务器建立连接的应用程序。用户代理( u s e ra g e n t ) 和代理 fp r o x y ) 中含有客户机。服务器是用于向客户机发来的请求提供服务并回送应答 的应用程序。共有5 类基本服务器: 用户代理服务器( u a s ,u s e r a g e n ts e r v e r ) :用户代理( u a ,u s e r a g e n t ) 是一个用于和用户交互的s i p 实体,它通常有一个与用户连接的接口。比方说如 果要用某台计算机打i p 电话,就要运行一个包含s i p 用户代理的相应程序。用 户通过接口和用户代理交互,用户代理就触发相应的s i p 消息来建立这个呼叫。 u a 包括用户代理客户机( u a c ,u s e r a g e n tc l i e n t ) 和用户代理服务器( u a s , u s e r a g e n ts e r v e r ) ,这其实是s i p 同一实体的两个不同功能表现,当u a 要代表 用户发送s i p 请求信息时,u a 就表现为u a c ;当u a 接到s i p 请求联系用户, 并代表用户返回响应时,则表现为u a s 。 代理服务器( p r o x ys e r v e r ) :代表其他客户机发起请求,既充当服务器又充 当客户机的媒介程序。它在转发请求之前可以编辑一个s i p 消息包并重写包头, 因此可以独立完成转发功能,代理服务器在网络中为s i p 消息提供路由功能。 重定向服务器( r e d i r e c ts e r v e r ) :接收s i p 请求,把请求中的原地址映射成 零个或多个新地址,返回绘客户机。重定向服务器本身并不处理任何请求消息。 n a t 环境下s i p 点对点通信研究 需要注意的是,重定向服务器并不发起任何用于定位用户的行动,它只是返回用 户有可能出现的那些位置的列表,而由用户代理去进行用户定位的所有尝试。 注册服务器( r e g i s t e rs e r v e r ) :接收客户机的注册请求,完成用户地址的注 册。该服务器可以与代理服务器等集成在一起。 位置服务器( l o c a t i o ns e r v e r ) :位置服务器不是s i p 实体,但是它们是任何 使用s i p 协议的体系结构中非常重要的一部分。位置服务器存储并向用户返回可 能的位置信息。它可以利用从注册服务器或者从其它数据库得来的信息。大部分 注册服

温馨提示

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

评论

0/150

提交评论