1、前言
当前的IP网络,基于应用的分类管理,应用可视性和网络可管理性的地位比以前更重要,需求也更加迫切。P2P应用的广泛流行,已是桌面应用和网络流量的主流。出于技术与市场的驱动,唯有专业的应用层流量管理产品,才能跟踪并分析网络/用户的流量模式,更加有效的管理网络带宽资源,并加强服务特色化,管控结合,提高网络运行效率,提升用户满意度和忠诚度,具有多方面的益处。
P2P(Peer-to-Peer)应用是不需关照的下载方式,增加网络峰值带宽和峰值持续时间,使用随机端口 (port-hopping) ,流量普遍占到网络总流量的60% — 80%,为了让用户更快的体验和畅通无阻,则极力争抢带宽和逃避监管。由于使用随机端口,传统的基于端口来区分应用的方式就失去了作用。
Panabit是在P2P流行时代,诞生的新一代应用层流量管理产品,支持对IP流量的应用分类,实时控制用户组、应用服务流量。Panabit的解决方案是基于状态和特征的检测,精确识别9大类80余种常用协议,并创新地自主开发“协议特征描述语言”——PSDL(Protocol Signature Description Language),使得维护协议特征库更加方便快捷。
应用分类中对P2P应用的分类是关键,主要是由于P2P的特性所决定,BT等P2P应用由于其独特的设计理念,在客户端软件中加入了大量对抗网络封堵、限制的技术手段;识别P2P,既不能误判也不能漏判,否则就不能达到真正对应用流量的带宽限制或保证。很多非专业产品,通过限制TCP并发连接数的方法控制P2P并不不科学,容易影响其他正常流量的速度。Panabit经过3年的技术积累和实践,以应用特征识别与控制,是一款真正的应用层流量管理产品。
处理应用分类控制,处理P2P识别和控制,不但要求识别准确性,而且要求实时性能,Panabit一般是作为网关类设备部署在网络出口,对时间延迟提出了更高的要求。在识别技术方面,Panabit在基于会话和特征识别的基础上,采用主动探测技术和智能技术,识别特征模糊和被加密的P2P协议,有效提高识别率;在性能保证方面,利用节点技术和硬件处理特性,如定制硬件驱动,充分发挥硬件性能,从而达到整体的高性能。
Panabit从基础软件架构上,就充分考虑应用层处理的特性,专为处理应用层识别与控制设计了PanaOS,Panabit使用Intel x86硬件平台,相比起同等级用ASIC、NP硬件处理的产品,具有成本低、性能高、升级灵活等优势。Panabit的特色是:专业的协议特征库,并有先进的更新维护机制,同级硬件的整体性能高,处于国内领先水平,Intel x86单核性能完全满足千兆线速。
使用Intel架构硬件系统和Panabit软件引擎,满足单台处理2G流量的专业性能,得益于Intel CPU和PCI Express总线技术发展,为发展高端产品带来了良好的硬件平台,硬件不再是瓶颈,关键是软件技术。Panabit高端产品,通过使用多颗多核CPU实现,在成本、性能、产品更新周期方面,具有很强的竞争优势。
2、产品背景
2.1 P2P应用概况
P2P技术,即端到端对等网络技术,是指网络主机在充当客户端获取资源的同时充当服务器向其它对客户端提供服务。
随着计算机网络的广泛应用和多媒体资源的丰富,带宽消耗越来越大。在计算机网络发展史上,恐怕没有任何一种网络应用像P2P(Peer-to-Peer,端到端对等网络)技术这样深刻的影响了宽带网络服务的运营模式。P2P使文件下载共享变得简单,动辄GB级的电影下载,P2P应用拉动的带宽消耗增长,据统计,P2P数据流量占因特网总流量达80%以上,并且在用户总数没有显著增长的情况下,P2P数据流量仍然在快速持续增长,使得宽带运营商的成本增加,收益降低,网络效率和服务质量下降,甚至冲击其他业务收入。
短短几年,P2P技术迅猛发展,以P2P技术为核心的软件产品,雨后春笋般的进入了主流计算机应用,事实已经十分明显。如基于P2P协议的文件下载共享软件,典型的应用软件有BitTorrent、eDonkey、PP点点通、Gnutella、FastTrack、酷狗(Kugoo)、迅雷、DirectConnect、AppleJuice、百宝、百度下吧、百兆等。这是目前被广泛使用,同时也是头号带宽杀手的应用协议。基于P2P的其他应用有:即时信息类,如腾迅QQ、微软MSN、YahooMessger等,网络电话类,如Skype等,网络电视类,如PPStream、PPLive、沸点、Recool、QQLive等。
运营商网络中60%-80%的带宽夜以继日地被这些应用占用。由于传统网络监控设备无法识别P2P应用,处理P2P,必须是针对P2P应用的流量管理系统,才能监测网络并找到正在运行的P2P应用以及谁正在使用这些应用,然后设定策略以保证所有用户的公平性,还可以追踪使用情况以便于记帐和微调网络,处理过多的流量并把昂贵的空闲带宽分配给那些能够创造利润的应用。
2.2 P2P对网络的影响
P2P技术主要提供了分布式交换数据的能力,由于个人用户PC的处理能力和硬盘空间逐步增大,资源分布存储已经变为可能。P2P技术现阶段最大的用途就是提供了在个人用户之间交换数据文件,通过集中资源服务器已经不在是资源存放的唯一途径。P2P技术主要带来了如下一些变化:
(1)Internet上流量模型的变化:现在Internet上60%-80%的流量都是P2P的流量,而传统的HTTP流量已经不是Internet上的主要流量。
(2)个人用户的流量模型的变化:以前个人用户的下行流量(从Internet到个人用户)远远大于上行流量。而由于P2P技术在下载的同时,也需要上传。导致个人用户的下行流量和上行流量都很大。
(3)P2P应用获取带宽的方式可谓完美:使用“永远在线”的技术日以继夜地在进行贪婪的下载和上传服务,P2P流量造成网络的极度拥塞。
2.3 P2P应用技术发展
第1代集中式的P2P应用:
Napster模式,在对等计算机上运行的这类应用通常使用一个固定的TCP端口,这种模式从管理员角度来看,第一代的P2P应用是比较容易处理的,管理员可以简单地使用可根据协议端口监测网络的防火墙或者路由器限制P2P应用的流量。
免费(Free)文件共享理念被保留下来,分布式更易于通信,被用户接受和追捧,在这个模式的驱动下,产生了大量新的、难于控制的P2P应用。
第2代分布式P2P应用:
允许计算机能够在任何时间、任何地点连接到其他计算机,而不需要中心服务器的干涉,所有的对等计算机直接对其他的对等体进修响应和文件共享。
第二代P2P应用采用的方法中还包括一些用于规避网络安全设备的“技巧”:
(1)端口跳跃:通过这种方法,P2P应用将不再使用一个固定的端口号,而是采用随机的或者是用户手工设定的协议端口号。
(2)常用端口号:一些P2P应用使用80端口——官方规定的HTTP协议端口,来避开防火墙的限制,获得对Internet的访问。这是一种很狡猾的做法,因为企业通常只开通特定的、常用的端口(如80端口)访问Internet;类似地,一些运营商还对80端口提供更优化的流量,因为这些流量被认为是来自HTTP访问Web的。
(3)HTTP隧道:在很多企业网络中,Internet的访问是通过HTTP带来完成,对于非HTTP应用或者未经过HTTP的应用将不能访问Internet。于是很多P2P应用将HTTP协议作为自己基本协议,这样就避开了这些限制,使得网管设备的限制实效。
(4)HTTP代理隧道:P2P客户端将要发给Web边缘的对等计算机的流量使用隧道技术进行封装,通过代理(如Socks代理)和一些第三方的隧道应用(如Socks2HTTP),使P2P流量看起来像是标准的代理流量,而这些流量通常是不被限制,从而达到避开限制。
对于这些应用的识别和控制是非常困难的,除非借助应用层可视性检测工具,检查传输协议(如TCP协议)的载荷(Payload)部分,对不同的应用进行更精确的识别。
第3代P2P应用:
第3代P2P应用是一种介于集中式和分布式结构之间的混合折中结构。这一类型的网络使用“超级对等体”(超级节点)来充当中心服务器的角色,一方面维护网络的分布式结构,一方面保证良好的搜索点击率、网络速度和可伸缩性。超级对等体是从众多对等体中随机选择,甚至被选择的对等体自身对此也不会有所察觉。超级对等计算机向为数不多的一组对等计算机提供索引服务,同时超级对等体之间也彼此进行通信,文件传输在对等计算机之间直接传输。通过限制处理搜索的对等计算机的数量,同时也消除了使用固定、专用服务器带来的延迟,该类型的网络在提供很高的搜索性能的同时,也继承了分布式网络的特性。某些第三代P2P应用使用SSL协议(如HTTPS,是用于加密Web流量的协议)对流量进行加密保护。
第4代P2P应用:
P2P应用最新发展的一个趋势,典型代表有Skype、eMule 0.47c和BitComet 0.80。这一代的P2P应用从技术上看,主要有两个特点:
(1) 通过增加无用随机数据和数据进行加密这两个手段使得协议流量特征模糊化 ,如最新版的eMule、BitComet等软件。
(2) 多协议并用(如迅雷,HTTP、FTP、专用协议并存),逃避监管。
日益复杂精巧的设计和开发,P2P新应用不断涌现,功能更强也更易使用,为了使P2P应用运行畅通,新一代P2P软件比上一代越来越智能,其中主要是P2P应用由于其独特的设计理念,在客户端软件中加入了大量对抗网络封堵、限制的技术手段,使得P2P流量管理检测难度水涨船高,同时需要不断升级协议特征库。P2P应用使人们对使用Internet的方式发生着革命性的改变,P2P应用的潮流不可阻挡,只能顺应潮流,采用有效处理策略。
3、处理P2P策略
为了能够控制P2P应用,企业与网络运营商都各自尝试了不同的解决方案:
扩充带宽:
最简单显而易见的解决办法,就是扩带宽。
优点:增加带宽可以在短时间内缓解网络的拥塞状况,当P2P应用觉察到网络中有更多的可用带宽,网络带宽将会再次被P2P应用占据。
缺点:增加带宽和增加带宽的费用将是无底洞,这样做只是给P2P应用提供了更多可攫取的带宽资源。
禁止P2P:
全面禁止P2P应用将会是拥塞的网络恢复正常状态。
优点:企业可以禁止P2P的使用,提高员工的工作效率,而以往员工却花费时间和网络带宽进行娱乐性的网上冲浪。
缺点:ISP将会失去用户,因为很多用户就是为了不受流量限制才租用了运营商的线路。
限制,而不是禁止P2P:
使用能够识别第7层应用的流量管理解决方案,企业和运营商能够准确判别P2P应用并进行限制。
优点:可以通过多种控制策略进行,通过合理调配带宽资源,提高网络运行效率,如发生链路拥塞的情况下,减少分配给P2P应用的带宽或者降低P2P应用的优先级,保证同一服务级别的用户使用网络的公平性,将会大大改善网络响应速度质量。当对P2P应用流量进行限速管理之后,网络中的其他应用将变得很顺畅。
仅对上传进行约束:
对于ISP来说,这种约束能力显得更为关键,因为对于那些非线路租户使用其他租户的线路上传(而并不承担相关费用)的情况尤为关注。运营商显然不会考虑这些非线路租户进行线路的升级,这也就是为什么选择限制上传流量的原因。
优点:对上传流量进行限制并不会影响到下载流量。如某运营商对P2P应用的出向流量进行了限制,而这个方向的流量主要是由非线路租户产生,由于他们自己的线路租户的TCP确认信息并不会受到影响(尽管它们的方向也是向外发送),就可以继续享受无限制的下载服务。通过这项控制,该运营商用户的流量消耗得到了显著减少,成本大幅度下降,又保证了客户的满意度。
由于流量管理产品具有足够的灵活性,可以在不影响下载的前提下限制上传流量,从而使所有人都能获益:线路租户可以根据自己需要随意下载,运营商也得益于需要支付给骨干网络运营商的成本的大幅度下降。
缺点:无。
4、如何检测网络中的P2P流量
为了能从应用中把P2P应用识别出来,网络可视性(Network Visibility)是至关重要。这种检测能力将了解到在当前的网络中运行着哪些P2P应用、哪些P2P应用正在吞噬网络中的宝贵资源、哪些用户占据了过多的网络资源从而造成了网络的拥塞。当检测和分离这些流量之后,就可以对P2P应用进行限制或者阻止、或者为其他的应用或用户分配和保证所需的带宽,或者把P2P应用的流量避开峰值时段,合理调配带宽使用,从而利用现有的带宽资源,最大限度地提高带宽的效率。
深层数据包检测(DPI):识别P2P应用的唯一可靠办法:
对P2P应用进行判定,需要借助复杂的第7层识别技术,使用各种方法来检测这些难以捉摸的应用。由于多数P2P应用软件都使用端口跳动技术或者盗用一些常用服务的协议端口进行通信传输,所以通过对端口对它们进行识别显然是远远不够,传统的流量限速设备无能为力。因此,所有的数据包都必须到应用层面(Application Layer)上进行检查,即对传输协议如TCP协议的载荷(Payload)部分进行检查,以判断它们是否符合代表某种应用代码的样本特征,在很多情况下,对于某一种应用的识别需要检测它是否多个代码样本的特征。
[1] [2] [3] [4]
|