《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > 基于SIP网络电话的分布式合法侦听系统设计

基于SIP网络电话的分布式合法侦听系统设计

2008-11-13
作者:李志超, 孟相如

  摘  要: 介绍了会话启动协议(SIP)系统和合法侦听" title="合法侦听">合法侦听(LI)的原理及要求,在提出分布式合法侦听架构的基础上,设计了SIP系统的分布式侦听模型,该侦听架构符合合法侦听要求,并对SIP系统的分布式侦听模型的丢包率、性能进行了测试比较。 

  关键词: SIP; 合法侦听; 分布式系统 

 

  随着互联网的快速发展,在网络上的业务变得越来越丰富,其中网络电话近几年快速兴起,并得到广泛的应用。会话启动协议SIP(Session Initiation Protocol)沿袭了Internet协议风格,因此非常适合在IP网络中使用。SIP网络电话作为典型的基于IP网络的多媒体应用,提供了传统电信网无法比拟的廉价的语音通信服务。它的应用促进了网络资源的利用,降低了电话资费,在全球得到了迅猛发展。合法侦听LI(Lawful Interception)是网络和信息安全领域重要的课题之一,在协助执法部LEA(Lawful Enforcement Agent)打击网络犯罪活动、保障国家安全、维护国家利益等方面发挥着极为重要的作用。对国家级的电信网而言,研究服务于国家安全的LI技术,是电信业务提供商迫切需要解决的问题。因此,探讨研究SIP网络电话的合法侦听就显得十分重要。 

  本文在广泛调研各标准化组织相关研究成果的基础上,从LI基本原理出发,探讨了如何部署基于SIP的网络电话的分布式LI设备,并对设计模型进行了测试和性能比较。 

1 SIP网络电话系统概述 

  SIP协议是由IETF组织的MMUSIC工作组提出的一个标准,最新版本为RFC3261。SIP作为应用层上的一个控制协议,用来建立、修改及终止有多个参与者参加的多媒体会话进程。 

1.1 SIP系统架构 

  在一个基本的SIP系统架构中主要有二个基本元素:用户代理(UA)和网络服务器。 

  用户代理是客户端" title="客户端">客户端终端系统的应用程序,它代表要加入呼叫的用户,包含两个部分:(1)用户代理客户(UAC)。用来初始化一个呼叫,发起SIP请求,并作为该用户的呼叫代理。(2)用户代理服务器(UAS)。用来接收请求,代表用户发出响应,并作为被叫用户代理。 

  SIP网络服务器有两种:一种是代理服务器,在功能上像HTTP代理,用来接收用户或其他服务器发来的请求,并决定目的服务器的位置,将请求提交出去。在传递请求之前,代理服务器可解释并重写请求包头。对于请求的响应则保证能够按原路返回;另一种是重定向服务器,它在接收到SIP请求后,并不将其转发,而是将包含下一跳服务器地址的响应返回给提出请求的客户,使客户直接请求下一跳服务器。SIP网络电话系统架构如图1所示。 

 

 

  SIP协议的功能实现主要通过其消息机制。SIP消息有两类:从客户端到服务器的请求消息(Request)和从服务器到客户端的应答消息(Response)。 

  SIP的请求消息定义了六种方法:INVITE、ACK、BYE、CANCEL、OPTIONS、REGISTER,用于发出呼叫、响应呼叫、释放呼叫、撤销呼叫、查询用户代理及服务器设置、客户向服务器注册等功能的实现。 

  服务器对请求响应的类型有:1××,表示接收信息;2××,表示请求被成功接收;3××,为完成请求客户需进一步细化请求;4××,表示客户错误;5××,表示服务器错误;6××,表示全局错误。 

  SIP会话中的媒体交换可以使用任何传输协议,但一般都以RTP作为传输协议。SIP消息(或称信令)与会话媒体流有可能通过相同的介质传输,但两者在逻辑上仍然是分离的。信令在传输中可能要经过一个或多个代理服务器或重定向服务器,而会话媒体流则采用直接连接。因此,SIP协议必须与IETF的其他协议(如SDP、RSVP和SAP)协同工作。 

1.2 SIP系统运作原理 

  基本呼叫过程(见图1): 

  (1)用户A向用户B拨号。用户A的SIP电话向代理服务器A发出一个INVITE信号。 

  (2)代理服务器A向重定向服务器转发INVITE信号。 

  (3)重定向服务器响应一个信号包含着代理服务器A向代理服务器B联系消息302。 

  (4)代理服务器A向代理服务器B发出一个INVITE信号。 

  (5)代理服务器B向重定向服务器发起一个INVITE信号。 

  (6)重定向服务器回应一个代理服务器B与用户B的连接信号。 

  (7)代理服务器B发起一个INVITE信号给用户B。 

  (8)用户B的SIP电话响铃,同时回应一个180消息给用户A。 

  (9)拿起电话,一个200(OK)信号发出。 

  (10)用户A的SIP电话回应一个ACK信号。 

  (11)RTP通路建立。 

2 合法侦听基本原理及要求 

  合法侦听是为了国家安全的需要,根据国家法律明确规定并且经过授权机构的法律授权,由具有合法侦听权的机构在法律授权范围内对通信内容进行侦听。 

  如果一个合法侦听机构希望使用合法侦听设备,则合法侦听机构必须经过法院或者其他责任实体的法律授权,如侦听授权书等。当合法侦听进行授权后,侦听机构必须向网络侧(包括网络运营商、接入供应商、服务提供商)提供授权书,网络侧将侦听到的侦听相关信息IRI(Intercept Related Information)和通话内容CC(Intercept Contents of Communication)送到合法侦听机构,根据侦听内容的不同赋予侦听机构不同的侦听权限。 

  合法侦听的基本要求是在满足合法侦听的前提下,因特网业务提供商(ISP)要依照侦听传票的要求保证其设备、设施或服务能提供以下功能: 

  (1)迅速地分离通信信息,保证LEA能侦听到运营商业务域内的所有通信(如呼叫内容),同时将侦听到的信息不加修改地传送出去。 

  (2)迅速地分离呼叫识别" title="呼叫识别">呼叫识别信息,保证LEA访问到可用的呼叫识别信息,同时将侦听到的信息不加修改地传送出去。此外,还要将呼叫识别信息和通信内容相关联。 

  (3)因LEA离运营商的距离可能很远,因此向LEA传送侦听的通信内容和呼叫识别信息要及时、准确、完整。 

3 分布式LI系统的体系结构 

  为了满足LI的要求,设计了IP电话网的分布式LI系统。该系统支持不同的IP电话协议和不同的侦听方式。分布式LI系统是分层的控制结构,如图2所示,主要由四种部件组成:顶层设备TLD(Top-Level Device)、中层设备ILD(Intermediate-Level Device)、底层设备BLD(Bottom-Level Device)和存储设备SD(Storage Device)。 

 

 

  TLD是分布式侦听管理控制设备" title="控制设备">控制设备,能够独立运行Windows程序,配置信息(侦听信息列表和下层设备列表)都存储在TLD的本地文件中。侦听信息列表包括被侦听的VoIP终端信息和LI策略信息。分布式LI系统中所有的侦听设备都依靠侦听信息列表来识别需要侦听的通话。因此,与侦听信息列表对应的通话信息作为侦听数据记录下来,而侦听信息列表之外的通话信息将不会被记录下来。侦听数据是指侦听相关信息(IRI)和通话内容(CC),即呼叫开始时间、呼叫结束时间、参与呼叫终端地址、呼叫的通话内容以及其他侦听要求的数据。 

  TLD将侦听信息列表自动传送到下层设备。TLD不参与侦听,在一个分布式侦听系统中只有一个TLD,TLD可以连接很多ILD和BLD设备。 

  ILD能从TLD接收侦听信息列表并传送给下层,还能侦听VoIP呼叫并记录各类侦听数据。一个ILD的下层设备可以是很多ILD和BLD设备,而一个ILD的上层设备只能是另一个ILD或TLD设备。 

  另外,侦听信息对低层设备的侦听很重要,ILD通过获得的侦听数据来扩展和修改从上层接收到的侦听信息,并将修改过的侦听信息传送到下一层。这样,底层侦听设备使用被扩展的侦听消息可以提高侦听系统的运行,同时提高了侦听系统侦听能力。例如:侦听消息列表中VoIP终端用的是用户化名,由于用户的移动,用户化名和IP地址之间没有直接映射关系,如果把ILD设置在MGC上,它能够用侦听消息将化名映射到一个相应的IP地址。接收的侦听消息通过获取的IP地址被扩展,最后,低层设备使用ILD提供的扩展的侦听消息提高了侦听系统的运行能力。 

  BLD位于分布式侦听系统分层控制结构的底层,它的主要功能是侦听VoIP呼叫内容。由于BLD没有下层设备,所以它只从上层设备接收侦听信息,而不再给其他设备传送。在分布式侦听系统里有很多BLD设备,都能支持各种IP电话协议和各种侦听方法。每个BLD有ILD或TLD作为它的上层。 

  SD不是分层控制结构的一部分,它能够提供侦听数据的远程存储。ILD和BLD都能够自动将侦听数据传送给指定的SD设备。然而,侦听系统的管理员也能要求侦听存储在本地侦听设备中的侦听数据。存储在SD中的侦听数据或者在本地进行分析,或者通过安全的网络传送到授权用户。 

  在侦听活动初始化阶段,TLD读取配置信息,并将侦听信息列表传送给下层侦听设备。如果没有任何一个侦听设备则回应,而TLD会重新连接。另外,TLD也会响应下层侦听设备的请求。任何一个下层侦听设备由于维护或系统故障而重启,它也能很容易地从TLD中得到侦听信息列表,而不会影响到分布式侦听系统的其他设备。 

  分布式侦听系统的管理和控制设备用来自动传送控制信息给系统所有的设备。系统的管理和控制设备简单并限制在一个地方。另外,所有记录的侦听数据都将被收集,并在中心域分析。分布式侦听系统提供了适合各种网络结构需要的侦听规模和能力。 

4 SIP分布式侦听系统模型" title="系统模型">系统模型 

4.1 分布式侦听系统模型 

  根据前面提出的分布式侦听系统,建立了SIP分布式侦听系统模型,如图3所示。其组成包括:受侦听网络(SIP客户端、交换机/集线器和呼叫代理服务器/网关,SIP客户端支持SIP协议);侦听管理控制设备TLD(运行Windows程序,配置侦听信息和下层设备列表,并将侦听信息自动传送到下层侦听设备);两个侦听设备(侦听设备ILD和侦听设备BLD),分别在受侦听网络的交换机/集线器和呼叫代理服务器/网关上设置侦听接入点(IAP)进行侦听。 

 

 

  一般情况下,信令使用名称地址,而音频流传输使用IP地址,用户的IP地址可能是动态获取的,所以侦听设备需要维护一个被侦听用户的名称和它的IP地址之间的映射,这个映射关系应该和呼叫服务器保持一致。这个问题可以用设置侦听设备ILD的方法来解决,侦听设备ILD能够映射用户化名到一个IP地址。呼叫相关信息(IRI)可以从RAS(Registration Admission and Status)交换信息时获取,RAS的主要功能是客户注册、得到被叫方的IP地址。RAS在终端与呼叫代理服务器之间进行,所以呼叫代理服务器提供侦听目标的活动事件。当呼叫服务器在处理注册和呼叫信息时,如果被侦听的用户名称和它的IP地址的映射信息发生改变,就发送这个映射信息到侦听设备ILD。对于通话内容(CC),ILD可以把得到的IP地址加到侦听信息中并传送给下层设备BLD(此模型的BLD设成混杂模式)。混杂模式下的侦听设备BLD连接到交换机或者Hub,如果是交换机,则配置交换机使所有端口传输的数据都发送到侦听端口。侦听设备BLD连接到这个侦听端口,并根据上层侦听信息从交换机侦听相应的通话内容,这样可以提高侦听的速度和准确度,而且在这种侦听方式下不会被任何人检测到(包括使用反侦听工具)。 

4.2 模拟环境 

  硬件:CPU为Intel Pentium M1.73GHz,内存为512MB的笔记本电脑。 

  软件:操作系统是Microsoft Windows 2000 Server。 

  侦听设备是ILD和BLD。此外,还有一个呼叫代理服务器、一个媒体传输服务器和三个SIP客户机,这些设备都用个人电脑,对外的带宽是100Mb/s。这里没有设侦听管理控制设备TLD。 

4.3 模型的测试 

  在模拟的网络模型中,测试了在单一的侦听设备的环境下和分布式侦听环境下发生丢包的情况。所有连线传送延迟都为10ms。这里给出了通话数和丢包率的关系,从通话数100开始,一直到通话数1 000,最后的模拟结果如表1所示。分布式侦听的丢包在通话数700时才发生,而且丢包率较低。表2给出了三种连接侦听设备方法的性能评估,从表中可以看出,分布式侦听的性能比较好。 

 

 

 

  本文创新点: 

  (1)在提出分布式侦听系统的基础上,设计了SIP分布式侦听系统模型,并对SIP电话网络中分布式侦听设备的丢包率进行了测试。 

  (2)分布式侦听系统侦听设备通过对侦听信息列表的扩展或修改,提高了侦听的性能。 

  (3)使用分布式的侦听系统可以克服以下问题:NGN的使用者分布在各地,不容易确定侦听    设备的合适位置问题;当所有的数据流传送到侦听设备,带宽和侦听设备所能承担的最大负荷将成为瓶颈的问题;用户的移动性,用户化名与IP地址的映射关系不确定的问题。 

  本文提出一种新的合法侦听模型,并设计了SIP分布式侦听系统模型,最后对设计的模型进行了模拟,测试了单一侦听设备和分布式侦听设备在不同的通话数下的丢包率,并对性能进行了比较。从测试比较结果可以看出,分布式侦听有较低的丢包率和较好的性能。 

参考文献 

[1] 桂海源.IP电话技术与软交换[M].北京:北京邮电大学出版社,2004. 

[2] IETF.SIP:Session initiation protocol [EB/OL].http://www.ietf.org/rfc/rfc3261.txt, 2002. 

[3] ETSI ES 201 158 V1.2.1. Telecommunications security;Lawful Interception (LI);Requirements for network functions[S].2002. 

[4] ETSI TS 101 331 V1.2.1.  Lawful Interception (LI);requirements of law enforcement agencies[S]. 2006. 

[5] ETSI TS 101 671 V2.15.1. Lawful interception (LI);handover interface for the lawful interception of telecommunications traffic[S].2006. 

[6] MILANOVIC A, SRBLJIC S, RAZNJEVIC I, et al.Methods for lawful interception in VoIP networks, Submitted for Publishing at Eurocon[J].2003. 

[7] MILANOVIC A, SRBLJIC S.Distributed system for lawful interception in VoIP networks[J]. EUROCON Ljubljana,Slovenia. 2003.
本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。