单边传输控制协议加速方法及装置的制造方法

文档序号:9914422阅读:744来源:国知局
单边传输控制协议加速方法及装置的制造方法
【技术领域】
[0001] 本发明实施例涉及通信技术,尤其涉及一种单边传输控制协议(英文: Transmission Control Protocol,简称:TCP)加速方法及装置。
【背景技术】
[0002] TCP加速,指的是通过一组优化技术,使TCP在通过互联网传输数据的性能更高、 速度更快、传输更稳定。TCP加速包括双边TCP加速和单边TCP加速。其中,单边TCP加速 的部署更加简单,使用更为广泛。
[0003] 多数的单边TCP加速,是通过改进TCP的拥塞控制算法来进行TCP加速。TCP的 拥塞控制算法有很多种,例如,TCP-newreno算法、TCP-cubic算法、TCP_westwood+算法和 FastTCP算法等等,而每一种拥塞控制算法对网络的适应性是不同的。
[0004] 现有单边TCP加速框架的实现方案是,系统同时加载多个拥塞控制算法模块,通 过全局配置来决定当前使用哪一个拥塞控制算法以及该拥塞控制算法对应的参数。且全局 配置之后,该系统上所有TCP传输都会使用该配置的拥塞控制算法,而不同TCP传输所要求 的拥塞控制算法或其对应的参数可能不同,从而导致至少部分TCP传输性能较低。

【发明内容】

[0005] 本发明实施例提供一种单边传输控制协议加速方法及装置,以解决所有TCP传输 都使用同一拥塞控制算法所导致的至少部分TCP传输性能较低的问题。
[0006] 第一方面,本发明实施例提供一种单边传输控制协议加速方法,包括:
[0007] 在建立传输控制协议TCP连接之后,获取TCP数据报文,其中,建立所述TCP连接 时,使用全局配置的第一拥塞控制算法及第一参数进行单边TCP加速;
[0008] 识别所述TCP数据报文所属的应用类型;
[0009] 根据所述应用类型和预设关联关系,确定所述应用类型对应的第二拥塞控制算法 及第二参数,所述预关联关系包括应用类型、拥塞控制算法及参数的关联关系;
[0010] 将所述第一拥塞控制算法及第一参数,更新为所述第二拥塞控制算法及第二参 数,进行单边TCP加速。
[0011] 根据第一方面,在第一方面的第一种可能的实现方式中,所述识别所述TCP数据 报文所属的应用类型,包括:
[0012] 采用深度包检测DPI技术深度/动态流检测DFI技术,识别所述TCP数据报文所 属的应用类型。
[0013] 根据第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的 实现方式中,所述获取TCP数据报文,包括:
[0014] 从TCP协议栈中读取所述TCP数据报文。
[0015] 根据第一方面、第一方面的第一种至第二种可能的实现方式中任意一种,在第一 方面的第三种可能的实现方式中,根据所述应用类型,查找所述预设关联关系,若未获取到 所述应用类型对应的拥塞控制算法及其参数,则结束所述单边TCP加速方法。
[0016] 根据第一方面、第一方面的第一种至第三种可能的实现方式中任意一种,在第一 方面的第四种可能的实现方式中,所述预设关联关系是根据以下方式生成的:
[0017] 统计对不同应用类型采用不同拥塞控制算法及参数进行单边TCP加速后的特性 参数;
[0018] 根据所述特性参数,确定所述预设关联关系。
[0019] 根据第一方面、第一方面的第一种至第四种可能的实现方式中任意一种,在第一 方面的第五种可能的实现方式中,所述预设关联关系为通过配置文件或应用程序编程接口 API预先配置的。
[0020] 第二方面,本发明实施例提供一种单边传输控制协议加速装置,包括:
[0021] 获取模块,用于在建立传输控制协议TCP连接之后,获取TCP数据报文,其中,建立 所述TCP连接时,使用全局配置的第一拥塞控制算法及第一参数进行单边TCP加速;
[0022] 识别模块,用于识别所述获取模块获取的所述TCP数据报文所属的应用类型;
[0023] 确定模块,用于根据预设关联关系和所述识别模块确定的所述应用类型,确定所 述应用类型对应的第二拥塞控制算法及第二参数,所述预关联关系包括应用类型、拥塞控 制算法及参数的关联关系;
[0024] 更新模块,用于将所述第一拥塞控制算法及第一参数,更新为所述确定模块确定 的所述第二拥塞控制算法及第二参数,进行单边TCP加速。
[0025] 根据第二方面,在第二方面的第一种可能的实现方式中,所述识别模块具体用 于:
[0026] 采用深度包检测DPI技术深度/动态流检测DFI技术,识别所述TCP数据报文所 属的应用类型。
[0027] 根据第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的 实现方式中,所述获取模块具体用于:从TCP协议栈中读取所述TCP数据报文。
[0028] 根据第二方面、第二方面的第一种至第二种可能的实现方式中任意一种,在第二 方面的第三种可能的实现方式中,所述确定模块还用于:
[0029] 根据所述识别模块确定的所述应用类型,查找所述预设关联关系,若未获取到所 述应用类型对应的拥塞控制算法及其参数,则结束单边TCP加速。
[0030] 根据第二方面、第二方面的第一种至第三种可能的实现方式中任意一种,在第二 方面的第四种可能的实现方式中,所述确定模块还用于根据以下方式生成的所述预设关联 关系:
[0031] 统计对不同应用类型采用不同拥塞控制算法及参数进行单边TCP加速后的特性 参数;
[0032] 根据所述特性参数,确定所述预设关联关系。
[0033] 根据第二方面、第二方面的第一种至第四种可能的实现方式中任意一种,在第二 方面的第五种可能的实现方式中,所述预设关联关系为通过配置文件或应用程序编程接口 API预先配置的。
[0034] 本发明实施例在识别TCP数据报文所属的应用类型的基础上,根据该应用类型, 查找预设关联关系,获取应用类型对应的第二拥塞控制算法及第二参数,为不同应用类型 动态调整更合适的拥塞控制算法及参数,从而避免现有技术中对所有应用类型都采用全局 配置的拥塞控制算法及参数所导致的至少部分TCP传输性能较低的问题,对不同应用类 型,都有明显加速的效果,以实现更优的传输性能,提高了网络整体的可用性。
【附图说明】
[0035] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其他的附图。
[0036] 图1为网络架构示意图;
[0037] 图2为本发明单边TCP加速方法实施例一的流程图;
[0038] 图3为本发明单边TCP加速装置实施例一的结构示意图;
[0039] 图4为本发明单边TCP加速装置实施例二中接收TCP数据报文时IP协议栈、TCP 协议栈与识别模块的信令图;
[0040] 图5为本发明单边TCP加速装置实施例三中发送TCP数据报文时应用层、TCP协 议栈与识别模块的信令图;
[0041] 图6为本发明单边TCP加速装置实施例四中确定模块内部流程示意图;
[0042] 图7为本发明单边TCP加速装置实施例五的应用场景示意图。
【具体实施方式】
[0043] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0044] TCP是目前被广泛使用的一种有序而可靠的传输协议。其中,文件传输协议(英 文:File Transfer Protocol,简称:FTP)、超文本传送协议(英文:Hypertext Transfer Protocol,简称:HTTP)及安全套接层(英文:Secure Sockets Layer,简称:SSL)等当前互 联网上使用的基础协议,都由TCP进行承载。
[0045] TCP通过特定的拥塞控制算法和参数,对传输窗口的大小进行拥塞控制,减少TCP 传输对网络的影响。
[0046] 图1示出了本发明实施例应用的网络架构。如图1所示,多个TCP客户端通过互 联网络从TCP服务端下载数据。
[0047] 其中,客户端设备,包括但不限于浏览器、视频播放器、頂聊天软件和网络游戏等 多种不同应用,通过TCP向TCP服务端请求数据,向用户提供网络浏览、视频播放、通信交流 及娱乐休闲等功能。服务端设备,包括但不限于网络服务器(英文:Web Server)、视频服务 器(英文:Video Server)、即时通信服务器(英文:IM Server)和游戏服务器(英文:Game Server)等,用于响应TCP客户端的请求,向TCP客户端提供网络页面、视频文件、頂交流和 游戏等功能。互联网络:TCP客户端和TCP服务端之间的通信网络,包括接入网络、核心网 络及互联网络等。本发明实施例的实现,部署在TCP服务端的网元上。
[0048] 图2为本发明单边TCP加速方法实施例一的流程图。本发明实施例提供一种单边 传输控
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1