一种基于序列特征的Skype流量识别方法
2016-11-22王康利李军政
王康利,黄 海,李军政
(国家数字交换系统工程技术研究中心 河南 郑州 450002)
一种基于序列特征的Skype流量识别方法
王康利,黄 海,李军政
(国家数字交换系统工程技术研究中心 河南 郑州 450002)
作为最受欢迎的基于P2P技术的VOIP客户端,Skype采用专有通信协议及多种高强度的加密技术保证通信安全,具有很强的保密性和便捷性。为了准确识别Skype流量,本文在分析Skype电话网络结构和通信协议的基础上,提出了一种基于序列特征的 Skype流量识别方法,并设计和验证了相应的实验系统。实验结果表明,该实验系统具有很高的识别效率。
P2P;Skype;序列特征;流量识别
对等网络(Peer to Peer,P2P)[1],是一种新型通信模式。在P2P网络环境中,所有节点都动态参与到路由、信息处理和带宽增强等工作中,而不是单纯依靠中心服务器来完成这些工作。作为P2P网络演进到混合模式后的典型应用,Skype[2]的出现给用户带了诸多便利。Skype可以提供多项服务,如语音通话、文字传输、语音通话,视频会议等。据TeleGeography[3]研究数据显示,2010年Skype通话时长已占全球国际通话总时长的25%。Skype用户免费通话时长和计费市场累计已经超过了2500亿分钟。目前,Skype已经拥有6.63亿的注册用户,同时在线超过3000万。然而,Skype以P2P技术为基础的特点也带来了占用网络带宽,加重网络负载等众多问题。因此,Skype流量识别对优化网络环境和提供差异化服务等具有重要的意义。
1 相关工作
当前针对Skype网络流量识别研究工作已经有了一定的基础。文献[4]率先对Skype协议进行了较全面的解析,研究了Skype网络拓扑结构并分析了skype在不同网络状况下行为特征。文献[5-7]对skype的研究主要集中在网络架构和身份验证阶段。文献[8]提出了一种识别Skype转播流(经超级节点转发)的方法,但没有考虑识别直播流,识别策略不完善。文献[9]提出了基于UDP传输的Skype报文未被整体加密的重要特征,并结合使用贝叶斯分类器针对Skype具有的VOIP统计特性识别Skype流量,但该方法只对UDP流进行了识别,忽略了基于TCP传输的信令流。文献[10]也忽略了TCP信令流的识别。文献[11]提出了一种识别Skype流的实时算法Skype-Hunter,该算法的设计运用了传统特征字识别法和基于行为特征的识别技术,实验证明此算法性能优于传统统计流量分类器。文献[12-13]分别设计出了单包特征和包序列特征自动生成系统,提出了Skype流新特征。
目前,Skype流量识别研究面临的困难主要有:1)网络拓扑复杂性。Skype是基于P2P技术的由普通节点、超级节点、登录服务器等构成的VOIP网络,Skype采用不同的通信模型进行信息传输,导致了Skype流量的复杂性。2)协议复杂性。Skype属于商业软件,采用各种私用协议通信。Skype没有公开的协议规范。3)加密复杂性。Skype通信过程中广泛采用了加密技术、混淆技术等,为Skype流量识别增加了难度。如Skype采用动态端口进行数据传输,使传统端口识别法不再适用。
2 skype协议分析
本节将简要分析Skype网络体系结构、通信机制及通信时的媒体流特征。
2.1 skype网络体系结构
Skype采用的是混合式P2P模型,结合了集中式结构和分布式拓扑的优点,网络中存在中间服务器,用户节点是分布的。在分布式模式的基础上引入了超级节点(Super Node,SN)和普通节点((User Node,UN)的概念。Skype的体系结构如图1所示[14]。
图1 Skype网络体系结构
注册服务器是Skype惟一的中间服务器,它负责完成客户端的注册,存储并管理用户名和密码信息,当用户登录系统时,对用户进行身份认证。注册服务器还需要检验并保证用户名的全球惟一性;普通节点即普通主机终端,只需要下载了Skype的应用,就具有提供语音呼叫和文本消息传送的能力;超级节点类似于普通节点的网络网关,所有普通必须与超级节点连接,并向 Skype的登录服务器注册以加入Skype网络。超级节点实际是满足某些要求的普通节点,这些要求包括:具有公网地址、具有足够的CPU、存储空间足够大、具有足够的网络带宽。也就是说,任何符合条件的主机终端都可以成为超级节点,当然前提是加载了Skype应用。Skype的网体系结构图是我们后续研究工作的基础框架。
2.2 Skype媒体流特征
Skype的信息传输包括语音通信、视频会议、文件传输等。如果Skype通信双方都位于公众网中,双方SCs之间使用TCP传输信令流,使用 UDP包直接进行数据交换;如果一方位于防火墙之后或私有网络中,那么私有网络一方首先要同公网中的 SN建立 TCP链接,然后由 SN进行数据转发;如果双方都位于防火墙之后或私有网络中,那么双方的数据都需要 SN进行转发[15]。Skype在整个通信过程中采用了专有的通信协议及多种高强度的加密技术保证通信安全。然而,作为一种网络通信服务,提供实时、良好的通信质量也非常重要。为了减少解密过程复杂性,Skype仅仅在传输层以上采用专有协议,且基于UDP的Skype报文没有整体加密,净荷头部具有一定的规律。在本文中,我们将采用文献[8]中包序列特征生成系统 APSC (automated packet-sequence signature construction)发现Skype媒体流特征。
图2 Skype媒体流序列特征状态图
经实验表明,Skype媒体流具有如图2所示的序列特征状态图。图中S0代表初始状态,Sn,n=1,2,3,4表示Skype媒体流的净荷负载的第三字节的值(具体如表1所示),箭头表示两个状态间的序列变换。可以看出基于UDP协议的Skype流负载的第三字节值一般局限于一定范围内 (0x02,0x0d~0x7d,0x0f~0x7f,0x05~0x75),且UDP流的第一个数据包第三字节为0x02,最后一个数据包的第三字节通常在 “0x0d~0x7d”之间。
表1 Skype媒体流序列的第三字节特征值
3 基于序列特征的Skype应用识别系统设计
结合以上对 Skype的研究分析,文中提出了基于综合流序列特征和IP地址匹配的Skype流量识别方法。Skype应用识别一方面要对数据进行采集和预处理;另一方面要对采集到的预处理后的数据运用Skype应用识别策略进行网络流量识别,从而对各种类型的网络流量进行不同的统计分析与处理,两者并行处理。图3为Skype流量识别系统框架。
与此框架图形对应的识别流程图如图4所示。具体的识别原理为:
1)首先对获取的网络数据包进行分流处理;
2)利用图2中所提出的Skype媒体流序列特征与采集到的网络流量进行匹配,可以识别出相应的Skype媒体流量;
3)基于UDP协议的Skype信令流的所有数据包的第三字节必然为02这一特点,可以识别出Skype的UDP信令包;
4)由于Skype的TCP信令包所请求的IP地址大多为UDP包所请求过的IP地址,又根据Skype数据中TCP和UDP对通信双方总有一方使用同一Skype端口这一特点,可以得出数据包中只要源IP+Port和目的IP+Port两者一个在Skype的IP+Po rt库中,就可判定为Skype的TCP包信令包。
4 实验及结果分析
1)实验环境(数据集)
①本实验是在解放军信息工程大学重点实验室进行的,实验数据取自数据采集终端。由于检测速度等原因,本实验采用非实时检测 (在数据采集终端上开启 wireshark抓包软件获取数据,将捕获到的数据包信息存储至数据库中,然后对数据库中的记录进行检测识别)。
图3 Skype流量识别系统框架
图4 Skype流量识别流程图
②为了不失一般性,实验数据应尽可能涵盖多种网络环境(windows,linux),每台PC上运行各种常见的网络应用,主要包括:Web浏览器软件,FTP文本传输客户端,SMTP简单邮件传输,迅雷下载软件,腾讯 QQ聊天软件,Skype软件等,为后续的识别工作准备足够的数据。获取的数据中包括Skype数据包以及一些其他应用的数据包。
2)性能指标
本文使用正确率(precision)和召回率(recall)来衡量识别系统性能:正确率指在Skype流量识别实验中被正确识别的Skype通信数据所占识别为Skype通信量的比率;召回率指在skype流量识别实验中被正确识别的Skype通信量数据占总Skype通信量的比率。
3)实验结果及分析
从表2可以看出,Skype的UDP数据包识别正确率和召回率可达98%以上,TCP包的识别效果略低于UDP包,但也可达97%以上。实验结果证明,本文所提出的识别系统具有很高的准确率,可用于Skype流量识别。
表2 实验结果
5 结束语
文中通过对Skype协议内部结构及其通信机制的研究,提出了基于综合序列特征识别法和IP地址相关识别法的Skype应用识别框架并进行了实验验证。实验结果表明,本文提出的Skype流量识别方法,能够对 Skype流量进行准确识别,指导网络管理和优化网络性能,进而为Skype应用技术的改进提供理论指导。目前,关于Skype协议的研究仍然存在很多问题,如Skype版本的不断更新可能引起的Skype特征及通信机制的变化,纯 TCP的 Skype流量识别等。而且,现在很多关于 Skype协议分析的文章都是基于真实网络数据分析,无法得知协议的全貌。这些问题都有待进一步研究。
[1]鲁刚,张宏莉,叶麟.P2P流量识别[J].软件学报,2011,22(6):1281-1298.
[2]Skype website[EB/OL]Available from:http://www.Skype.com.
[3]TeleGeography website[EB/OL].Available from:http://www.Telegeography.com.
[4]Baset SA,Schulzrinne HG.An analysis of the Skype peerto-peer internet telephony protocol[C]//INFOCOM’06: Proceedings of the 25th IEEE International Conference on Computer Communications 2006.
[5]Alshammari R,Zincir-Heywood A N.Unveiling skype encrypted tunnels using GP[J].IEEE CEC,2010:1-8.
[6]Zhang D,Zheng C,Zhang H,et al.Identification andAnalysis of Skype Peer-to-Peer Traffic[C]//5th International Conference on Internet and Web Applications and Services,2010:200-206.
[7]Branch P A,Heyde A,Armitage G J.Rapid identification of skype traffic flows[J].Proc.of the 18th Int.Work.on Net.and Operating Systems Support for Digital Audio and Video,2009:91-96.
[8]Suh K,Figueiredo DR.,Kurose J,Towsley D.Characterizing and detecting skype-relayed traffic[C]//Proceedings of IEEE INFOCOM,Barcelona,Spain,2006.
[9]Bonfiglio D,mellia M,Meo M,et al.Revealing skype traffic: when randomness plays with you[J].ACM Sigcomm Computer Computer Communacation Review,2007,37(4):37-48.
[10]孙瑞锦,许博,周玉明.一种实时检测基于 UDP的 Skype语音流的算法[J].解放军理工大学学报:自然科学版,2008(10):507-511.
[11]Adami D,Callegari C,Giordano S,et al.Pepe.kypehunter:A real-time system for the detection and classication of skype traffic[J].International Journal of Communication Systems.2012,25(3):386-403.
[12]Ye M,Xu K,Wu J,et al.Autosig-automatically generating signatures for application[C]//in proc.of IEEE CIT,2009.
[13]Yuan Z,Xue Y,Dong Y.Harvesting unique characteristics in packet sequences for effective application classication[C]// in Proc.of IEEE CNS,2013.
[14]王振华,王攀,张顺颐.基于综合统计特征的Skype流量分析与识别[J].南京邮电大学学报,2006,26(1):1-7.
[15]Sándor Molnár and Marcell Perényi.On the identification and analysis of Skype traffic[J].INternational JOurnal of Communication Systems,2011(24):94-117.
Identification method of Skype traffic based on sequence signatures
WANG Kang-li,HUANG Hai,LI Jun-zheng
(China National Digital Switching System Engineering&Technological R&D Center,Zhengzhou 450002,China)
As one of the most popular VOIP client based on P2P technology,Skype uses proprietary communication protocol and a variety of high-strength encryption technology to ensure the safety communication,so it has strong confidentiality and convenience.To identify the skype traffic accurately,on the basis of the analysis of Skype network structure and the foundation of the communication protocol,a identification strategy was proposed via the unique sequence signatures.Then,we design and implement the practical system.The experimental results show that our practical system with high efficiency in identifying Skype flows.
P2P;Skype;sequence signatures;traffic identification
TN912.3
A
1674-6236(2016)15-0013-03
2016-01-14 稿件编号:201601101
国家科技支撑计划(2014BAH30B01);国家自然科学基金(61379151);创新群体项目资助(61521003)
王康利(1993—),女,河南新乡人,硕士研究生。研究方向:智能信息处理、信息安全。