2 P2P检测技术
2.1常用端口检测原理
P2P应用发展初期使用一些固定端口进行控制和数据的通信,如早期E_donkey采用4661、4662端口,BT采用6881~6890端口等。通过检测端口即可判断P2P数据包。
(1)常用端口检测技术有如下优点:仅通过四层处理即可完成检测,逻辑简单,检测性能高;在P2P应用刚出现时检测效果非常好、方便控制、适合低投资和无投资环境。
(2)常用端口检测存在自身的局限性:基于端口的识别误报和漏报率偏高,无法检测在0~1024端口之间传输P2P应用,不能准确判定在大于1024端口传输P2P应用,检测系统无法处理端口经常变换的情况、端口粒度太粗,控制容易出错。
2.2应用特征检测原理
使用固定特征字来识别各种P2P应用。
(1)应用特征检测存在如下优点:检测非常精准,端口的变化不会影响检测率,能够检测使用最广泛的P2P应用,误报和漏报比基于端口和启发式的流量模式的方式低,适合流量的精确监控。
(2)应用特征检测存在如下缺点:协议分析和特征搜寻需要投入大量人力,特征的选择对检测性能有很大影响,难以获取加密协议的特征,查看应用层的内容涉及隐私的问题。
2.3启发式检测原理
根据各种应用的连接数、单IP地址的连接模式、上下行流量比例关系、数据包发送频率等指标来区分P2P应用类型。
(1)启发式检测存在如下优点:能够发现未知P2P应用,加密协议对检测算法影响较小,避免查看应用层协议内容,适合流量的初步监视。
(2)启发式检测存在如下缺点:检测准确度低,需要建立较为复杂的数学模型,算法效率较低,不易实施旁路控制。
3 P2P控制技术
控制P2P数据包的技术有如下几种:
(1)直路串接流量控制
原理:直路串接通常以透明模式串接到网络设备中使用。
优点:容易实现各种流量的丢包过滤和精确的QoS控制,响应速度快,实现流量平滑控制,不会出现反复波动的情况。可以对总P2P流量、分协议类型P2P流量、以及逐用户P2P流量实施流量控制,可以采用CAR等多种流量控制算法,可以定义基于分时间段的控制策略。