一种基于mptcp的拥塞控制方法及装置的制造方法

文档序号:9846731阅读:607来源:国知局
一种基于mptcp的拥塞控制方法及装置的制造方法
【技术领域】
[0001] 本发明涉及网络数据传输技术领域,尤其涉及一种基于MPTCP的拥塞控制方法及 装置。
【背景技术】
[0002] 如今网络技术在飞速的发展,传统TCP协议开始逐渐暴露出不能适应发展的局限 性。传统TCP协议在网络中流量不断地增加时,将所有的流量限制在单一路径上传输,没能 有效的利用网络资源。单一路径的TCP传输已经不能完全的满足现代高速传输。MPTCP (MultiPath Transport Control Protocol,多路径传输协议)是对传统TCP的一种延伸,在 通信源和目的节点之间通过多条路径高效的传输数据,提供端到端可靠、有序的快速数据 传输。比较于传统的TCP,MPTCP协议有着两个显著的特点:1)改进网络的吞吐量。由于MPTCP 同时采用多条路径传输数据,在量上增加了网络资源,因而传输了更多的数据流量,也就提 高了网络的吞吐量。2)提供更灵活、可靠的服务,且增强了网络鲁棒性。因为在传输层,数据 可以通过多条路径传输,当一条路径上传输过程中连接失败,而该连接的数据仍在其他可 用路径上保持传输,且MPTCP路径管理单元将立即选择一条可用路径来转移链路失败的数 据,这就避免了传输终止。MPTCP协议也可以与现有的TCP协议完全兼容(自动协商的)。
[0003] 目前,MPTCP的拥塞控制就是对TCP的一个扩展,采用的拥塞控制策略是:用于传输 的多条子流都有一个各自的拥塞窗口,每条子流分别根据该条路径上收到的确认数据包, 或者是检测到的丢包相应的增加和减少拥塞窗口,而对于窗口的具体的增加和减少取决于 所有子流路径的拥塞窗口和回路时间。目前,MPTCP利用是否收到ACK作为拥塞判断依据,这 种方法简单但准确度不高,因此,需要一种新型的拥塞控制方法。

【发明内容】

[0004] 有鉴于此,本发明要解决的一个技术问题是提供一种基于MPTCP的拥塞控制方法 及系统,能够解决上述的问题。
[0005] -种基于MPTCP的拥塞控制方法,包括:建立MPTCP连接,并为所述MPTCP连接中的 每条TCP子流分配各自的缓存区;对每条TCP子流的缓存区占用率进行估算;根据所述缓存 区占用率确定所述TCP子流的拥塞等级,并基于所述拥塞等级对所述TCP子流的传输速率进 行调节。
[0006] 根据本发明的一个实施例,进一步的,所述为所述MPTCP连接中的每条TCP子流分 配各自的缓存区包括:为每条TCP子流分配的缓存区为:
[0008] 其中,Buffi为所述MPTCP连接的第i条TCP子流的大小,Buff total为所述MPTCP连接 的总缓存区大小,BWi为第i条TCP子流的带宽,ΣBWi为所述MPTCP连接中的全部TCP子流的 总带宽。
[0009]根据本发明的一个实施例,进一步的,所述对每条TCP子流的缓存区占用率进行估 算包括:采用增加指数加权移动平均EffMA算法对每条TCP子流的缓存区占用长度进行估值, 每条TCP子流的缓存区占用长度满足:
[0011] 其中,邱#7胃为第i条TCP子流在当前时刻的缓存区占用长度,Suif V为第i条TCP 子流在上一时刻的缓存区占用长度,P为缓存区大小计算参数。
[0012] 根据本发明的一个实施例,进一步的,根据所述缓存区占用率确定所述TCP子流的 拥塞等级包括:设置两个拥塞等级,分别为轻度拥塞和严重拥塞等级;当判断

,则确定此T C P子流为轻度拥塞等级;当判断 ,则确定此TCP子流为严重拥塞等级;其中,α、β都为参数,且0 < α < β < I ,Buffi为第i条TCP子流缓存区的长度。
[0013] 根据本发明的一个实施例,进一步的,所述基于所述拥塞等级对所述TCP子流的传 输速率进行调节包括:如果确定TCP子流为轻度拥塞等级,则调节此TCP子流发送窗口大小 并满足Wi=Wi- γ *wi;如果确定TCP子流为严重拥塞等级,则调节此TCP子流发送窗口大小并 满足
;如果确定TCP子流不为轻度拥塞等级和严重拥塞等级,则调节此TCP 子流发送窗口大小并满足:
[0015]其中,Wi是第i条TCP子流的发送窗口大小,r和δ为速率控制参数,并且,〇〈 γ〈〇. 5, δ = η2,η为所述MPTCP连接中的TCP子流的个数。
[0016] 一种基于MPTCP的拥塞控制装置,包括:缓存分配单元,用于建立MPTCP连接,并为 所述MPTCP连接中的每条TCP子流分配各自的缓存区;缓存使用估算单元,用于对每条TCP子 流的缓存区占用率进行估算;传输速率调节单元,用于根据所述缓存区占用率确定所述TCP 子流的拥塞等级,并基于所述拥塞等级对所述TCP子流的传输速率进行调节。
[0017]根据本发明的一个实施例,进一步的,所述缓存分配单元为每条TCP子流分配的缓 存区为:
[0019]其中,Buffi为第i条TCP子流的大小,Buff total为所述MPTCP连接的总缓存区大小, BWi为第i条TCP子流的带宽,Σ BWi为所述MPTCP连接中的全部TCP子流的总带宽。
[0020]根据本发明的一个实施例,进一步的,所述缓存使用估算单元,还用于采用增加指 数加权移动平均EffMA算法对每条TCP子流的缓存区占用长度进行估值,每条TCP子流的缓存 区占用长度满足:
[0022] 其中,邱C为第i条TCP子流在当前时刻的缓存区占用长度,JuJfsi为第^TCP 子流在上一时刻的缓存区占用长度,P为缓存区大小计算参数。
[0023] 根据本发明的一个实施例,进一步的,所述传输速率调节单元,还用于设置两个拥 塞等级,分别为轻度拥塞和严重拥塞等级;当判断
则确定此 TCP子流为轻度拥塞等级;当判断
时,则确定此TCP子流为严重拥塞等级; 其中,α、β都为参数,且O < α < β < I,Buffi为第i条TCP子流缓存区的长度。
[0024]根据本发明的一个实施例,进一步的,所述传输速率调节单元,还用于如果确定 TCP子流为轻度拥塞等级,则调节此TCP子流发送窗口大小并满足Wi=Wi- γ *wi;如果确定 TCP子流为严重拥塞等级,则调节此TCP子流发送窗口大小并满足
:如果确 定TCP子流不为轻度拥塞等级和严重拥塞等级,则调节此TCP子流发送窗口大小并满足:
[0026]其中,Wi是第i条TCP子流的发送窗口大小,r和δ为速率控制参数,并且,〇〈 γ〈〇. 5, δ = η2,η为所述MPTCP连接中的TCP子流的个数。
[0027]本发明的基于MPTCP的拥塞控制方法及装置,为每条子流分割缓存区,然后根据每 条子流缓存区使用比例精确的检测出是否存在拥塞,并根据拥塞程度分级进行流量调控, 同时兼顾MPTCP传输的公平性,使网络吞吐量变化更平滑,提高了MPTCP的链路利用率、吞吐 量和健壮性。
【附图说明】
[0028] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施 例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获 得其他的附图。
[0029] 图1为根据本发明的基于MPTCP的拥塞控制方法的一个实施例的流程示意图;
[0030] 图2为MPTCP拥塞控制场景的示意图;
[0031 ]图3为拥塞控制与吞吐量的关系示意图;
[0032] 图4为根据本发明的基于MPTCP的拥塞控制方法的另一个实施例的流程示意图;
[0033] 图5为根据本发明的基于MPTCP的拥塞控制方法的一个应用场景示意图;
[0034]图6为MPTCP拥塞控制场景的另一示意图;
[0035]图7为根据本发明的基于MPTCP的拥塞控制装置的一个实施例的示意图。
【具体实施方式】
[0036]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0037]图1为根据本发明的基于MPTCP的拥塞控制方法的一个实施例的流程示意图,如图 1所示:
[0038] 步骤101,建立MPTCP连接,并为MPTCP连接中的每条TCP子流分配各自的缓存区。
[0039] 步骤102,对每条TCP子流的缓存区占用率进行估算。
[0040] 步骤103,根据缓存区占用率确定TCP子流的拥塞等级,并基于拥塞等级对TCP子流 的传输速率进行调节。
[0041] 在一个实施例中,为每条TCP子流分配的缓存区为:
[0043] Buffi为MPTCP连接的第i条TCP子流的大小,Buff tcltai为MPTCP连接的总缓存区大 小,BWi为第i条TCP子流的带宽,Σ BWi为MPTCP连接中的全部TCP子流的总带宽。
[0044]对每条TCP子流的缓存区占用率进行估算可以采用多种方法,例如采用增加指数 加权移动平均EWM算法对每条TCP子流的缓存区占用长度进行估值,每条TCP子流的缓存区 占用长度满足:
[0046] 为第i条TCP子流在当前时刻的缓存区占用长度,为第i条TCP子流 在上一时刻的缓存区占用长度,P为缓存区大小计算参数。
[0047]缓存区的使用率情况能直接反映出该条线路的拥塞情况,但是MPTCP是多条子流 共用一个缓存区,所以要对单条子流进行精确的拥
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1