当前位置: 首页 > 专利查询>清华大学专利>正文

基于FAST TCP的传输控制方法技术

技术编号:12622879 阅读:83 留言:0更新日期:2015-12-30 20:58
本发明专利技术公开了一种基于FAST TCP的传输控制方法,包括:数据控制模块、窗口控制模块和估计模块,估计模块用于计算拥塞避免阈值;所述方法包括以下步骤:S1:获取所述拥塞避免阈值和所述客户端当前数据包的传输数量;S2:将所述客户端所述当前数据包的传输数量和所述拥塞避免阈值进行比较,如果所述客户端当前数据包的传输数量不小于所述拥塞避免阈值,所述估计模块向所述窗口控制模块发送拥塞反馈信息,所述窗口控制模块根据所述拥塞反馈信息减少数据包的传输数量以避免丢包。本发明专利技术具有如下优点:可以通过监控网络传输规模,针对不同的规模进行参数调整,达到在不同规模下的自适应,始终保证高吞吐量和稳定的传输性能。

【技术实现步骤摘要】

本技术属于云计算及网络传输
,具体涉及一种基于FAST TCP的传输控制 方法。
技术介绍
数据中心的拓扑结构经过多年的探索,有了很大的变化。图1示出了常规的数据 中心网络的拓扑结构。在这种拓扑结构中,架顶式的范围(ToR)交换机接入层为安装在机 架上的服务器提供连接。在每个聚集层(有时也被称为分布层)的聚集交换(Aggregation Switch)将从多个接入层(TOR)发来的流量转发到核心层。每一个ToR交换机连接到多个 聚集交换机的冗余。核心层将交换机通过核心路由Core Routers)连接到互联网。一个特 例是平坦的两层拓扑,仅使用两层交换机。 Clos拓扑是基于多级交换机的一种拓扑结构,每个交换机层次都和下一个交换机 层次的所有交换机相连,这样大大增加了路径的多样性。图2展示了一种典型的三层Clos 拓扑 胖树是一种特殊的Clos拓扑结构。它是一种类树结构,如图3所示,这种拓扑结 构由k个端口的交换机组成,他们有k个连接点,每个连接点处有两层(聚合层和边缘层) k/2个交换机,而每(k/2)2个核心交换机有1个端口和这k个连接点链接。核心层交换机 和聚合层交换机连接,而边缘曾交换机与Tor交换机连接。这一策略折衷了复杂度和路由 多样性。 近年来兴起了虚拟数据中心网络,虚拟数据中心网络是在若干虚拟资源(虚拟 机,虚拟交换机,虚拟路由器等)之间构成的虚拟连接,如所示,一个物理数据中心上可以 假设多个虚拟数据中心。虽然引入了虚拟化概念,资源利用可以更灵活有图4架设在物理 数据中心上的虚拟数据中心及数据中心网络效,用户也可以屏蔽物理层的事宜,但是数据 中心网络问题仍然客观存在,必须加以解决。 TCP协议给数据中心带来的问题之一就是TCP Incast现象,这里我们首先要对数 据中心网络环境进行定义。数据中心网络环境一般满足如下条件: a)服务器具有高性能CPU和较大的内存; b)具备高性能网卡,以及适当的操作系统; c)千兆以太网(或10Gb/sec),由一台交换机或者其他拓扑结构构成数据中心网 路,更多交换机可能会带来好处,但是定义上没有特别的限制。 d)存在大量一对一,多对一及一对多通信模式。此类传输模式存在于集群存储以 及Hadoop等其他许多数据密集型分布式应用中。 在简单的带宽环境下,比如使用scp将五台机器上的数据复制到一个目的主机, 每个源机器能够输出900Mbps以上。如果每个发送者都以900Mbps的速度向接收端发送数 据,IG以太网交换机不久将只能丢弃部分数据包。 但这种情形很容易理解:所有的机器不能同时发送900Mbps以上的数据,因为接 收端有带宽上限,交换机必将丢弃一些数据包,然后每个TCP连接将降低发包速率。最终, 每个发送者将达到大约发送200Mbps的稳态从而填满瓶颈链接。 事实上我们会遇到更困难的带宽问题,如果有较大的群集,会出现大量服务器同 时向一个服务器传输数据的情况,则可能有发送到单个集群成员的流量"微爆"。交换机不 能缓冲所有的"微爆帧",故有部分帧会被丢掉,下面的数据展示了"微爆"所导致的短时隙 内的吞吐量崩溃。然后,TCP的拥塞控制机制开始干预,处理丢包和超时事件,减缓窗口增 长甚至减少窗口。 "Incast"是一种通信模式,在数据中心网络环境下,它主要由TCP协议的拥塞控 制算法的特点引起。图5所示为典型的TCP Incast传输模式场景。在这种模式中,客户端 通过一交换机连接到数据中心的多台服务器。客户端发出请求,数据从一个或多个服务器 通过交换机以many-to-one的方式通过瓶颈链路传输到客户端。客户端以较大的逻辑块 (如1MB)请求数据,而实际的数据块则以较小的数据块(如32KB)形式存储在多服务器中, 称为服务器的请求单元(SRU)。每一轮传输中,客户端向所有存储有被请求数据的服务器发 送数据请求,当所有服务器的数据均成功接收(即被请求数据块成功传输)时,才进行下一 次数据块请求。 严格地定义Incast现象需要满足如下三个条件: 1.网络环境:高带宽(千兆网)低延迟及较小的交换机缓存 2.同步块传输模式,即每轮传输一个数据块,所有数据块收到后才进入下一轮传 输 3.较小的数据块;(最大256K,一块数据在千兆网环境下在2毫内秒可传输完毕) 随着并发发送者数量的增加,数据传输量可能超出交换机缓存大小,导致数据包 丢失,以及随之而来的的超时重传。从而可能导致吞吐量崩溃(急剧降低),如图6所示,我 们称之为TCP Incast现象。 TCP Incast问题可能出现在许多典型的数据中心应用当中。例如,在集群存储系 统中,在存储节点对数据的请求作出回应时;在网络搜索过程中,许多工作机几乎同时响应 搜索查询;或在MapReduce批量处理作业的过程中,"shuffle"阶段多个Mapper将中间数 据传输给Reducer时。由于存在范围广泛,对网络效能影响恶劣,TCP Incast问题已经引 起了许多研究人员的注意。研究人员在多层面提出了各种可能的解决方案,主要包括链路 层,传输层和应用层解决方案。这些方案中,部分具有较高的效率,但成本亦高,部分方案代 价低,但收效甚微。
技术实现思路
本专利技术旨在至少解决上述技术问题之一。 为此,本专利技术的一个目的在于提出一种基于FAST TCP的传输控制方法。 为了实现上述目的,本专利技术的第一方面的实施例公开了一种基于FAST TCP的传输 控制方法,包括:数据控制模块,所述数据控制模块用于控制传输数据包;窗口控制模块, 所述窗口控制模块用于控制发送端的数据包的传输数量;以及估计模块,所述估计模块用 于根据发送端的数据包发送频率、传输链路的带宽、交换机的缓存容量、所述交换机的延时 队列中数据包的平均延时计算拥塞避免阈值;所述方法包括以下步骤:Sl :获取所述拥塞 避免阈值和所述客户端当前数据包的传输数量;S2 :将所述客户端所述当前数据包的传输 数量和所述拥塞避免阈值进行比较,如果所述客户端当前数据包的传输数量不小于所述 拥塞避免阈值,所述估计模块向所述窗口控制模块发送拥塞反馈信息,所述窗口控制模块 根据所述拥塞反馈信息减少数据包的传输数量以避免丢包。 根据本专利技术实施例的基于FAST TCP的传输控制方法,可以通过监控网络传输规 模,针对不同的规模进行参数调整,达到在不同规模下的自适应,始终保证高吞吐量和稳定 的传输性能。 另外,根据本专利技术上述实施例的基于FAST TCP的传输控制方法,还可以具有如下 附加的技术特征: 进一步地,所述拥塞避免阈值的计算公式如下: 其中,w为所述发送端的所述当前数据包的传输数量,γ e (〇, 1],baseRTT为所 述交换机延时队列中数据包的最小RTT,qdelay是点对点的平均队列延迟,α为修正系数,9 其中,q为队列延时,α。、α η q#均为常数。 本专利技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变 得明显,或通过本专利技术的实践了解到。【附图说明】 本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变 得明显和容易理解,其中: 图1是现有技术中交换机拓扑结构示意图; 图2是现有技术中的Clos拓扑结构示本文档来自技高网
...

【技术保护点】
一种基于FAST TCP的传输控制方法,其特征在于,包括:数据控制模块,所述数据控制模块用于控制传输数据包;窗口控制模块,所述窗口控制模块用于控制发送端的数据包的传输数量;以及估计模块,所述估计模块用于根据发送端的数据包发送频率、传输链路的带宽、交换机的缓存容量、所述交换机的延时队列中数据包的平均延时计算拥塞避免阈值;所述方法包括以下步骤:S1:获取所述拥塞避免阈值和所述客户端当前数据包的传输数量;S2:将所述客户端所述当前数据包的传输数量和所述拥塞避免阈值进行比较,如果所述客户端当前数据包的传输数量不小于所述拥塞避免阈值,所述估计模块向所述窗口控制模块发送拥塞反馈信息,所述窗口控制模块根据所述拥塞反馈信息减少数据包的传输数量以避免丢包。

【技术特征摘要】

【专利技术属性】
技术研发人员:黄永峰郑枫
申请(专利权)人:清华大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1