论文部分内容阅读
随着网络通信技术的高速发展,越来越多的重要数据经由网络传播,因而网络数据传输安全越来越受到人们的关注。大量的网络服务系统,如门户、电子商务、电子政务及各类云服务等迫切需要安全性的保证。传输层安全(TLS)协议目前被广泛用于在网络上的客户端与服务端之间建立安全数据传输通道,能够防止客户端与服务端应用程序通信中的消息窃听、篡改及伪造,为数据通信提供保密性、完整性及认证性服务,已经成为了传输层安全的事实标准。然而,TLS协议中的密码操作的运算量十分巨大,极其消耗CPU资源,使得TLS协议在如今的因特网中的普及程度并不高。目前,在人们日常生活的网络数据中,被加密的所占比例很小,多为携带敏感信息的数据;而绝大部分数据都是以明文形式传输的。要实现TLS协议真正意义上的普及,还有很长的路要走。如何提升其执行速度,是其中的焦点问题。 本文围绕TLS协议的加速执行问题,选取了其中的几项关键技术进行研究,研究工作和创新点具体包括: (1)基于多核网络处理器的TLS协议栈设计 以Cavium OCTEON CN5860多核网络处理器为原型平台,提出一种基于多核网络处理器的TLS协议栈的设计方案。该方案支持OCTEON处理器的安全协处理器与外部加密设备两种高速的密码算法实现,且通过将TCP/IP协议栈、TLS协议栈及上层应用程序运行在全部工作核心上,避免流水线模式的种种弊端,能够充分利用多核网络处理器的并行性以及位于每个核心上的安全协处理器资源,最大限度地提升TLS协议栈的运行性能。随着多核网络处理器在网络应用中的普及,该方案为TLS协议栈在多核网络处理器上的实现提供了参考,具有较高的应用价值。 (2)分布式TLS反向代理请求分发技术研究 针对分布式TLS反向代理的请求分发问题,首先,提出两种分布式TLS反向代理请求分发的系统架构CURPS和CARPS,为具体请求分发策略的研究提供系统层面的支持。随后,针对请求分发器及各TLS反向代理节点的请求缓存队列可视为无限长的假设,提出一种请求分发策略SSLSARD,综合考虑提高TLS会话重用率与负载均衡两个目标,以提升TLS反向代理系统的响应速度与吞吐率;针对请求缓存队列不可视为无限长的假设,提出两种请求分发策略SSLSARD-D及SSLSARD-W,可有效降低请求丢弃的风险。上述请求分发策略均是可分析TLS会话重用意向、TLS请求粒度的,且没有TLS会话或密钥迁移,无需节点间局域网。最后,提出一个基于机器学习方法的TLS反向代理节点负载估计算法家族——LEPL。实验证明使用LEPL算法能够使请求分发器更精确地把握各节点的负载情况,从而作出高质量的请求分发决策。 (3)用于网络内容审计的TLS保密数据明文采集技术研究 提出一种基于合法中间人原理的TLS保密网络数据的明文采集方法,适用于网络内容审计。从原理上分析,与现有的基于代理服务器原理的采集方法相比,提出方法具有延迟较短、TLS吞吐率较大以及占用内存资源较少的优点;与现有的采集器持有服务端私钥的方案相比,提出方法应用范围更广,且不受网络丢包的影响。实验结果表明,本文方法与基于代理服务器原理的采集方法相比,传输时延降低了约27.5%,TLS吞吐率提高了约10.4%;且TLS吞吐率已接近理想情况下的值。