基于多路径传输协议mptcp的路径管理方法及装置的制造方法
【技术领域】
[0001] 本发明设及网络数据传输技术领域,尤其设及一种基于多路径传输协议MPTCP的 路径管理方法及装置。
【背景技术】
[0002] 目前,并行多路传输因其在聚合带宽、平衡负载和提高网络健壮性上的独特优势 而受到学术界和工业界的广泛关注。CMT技术的研究集中在应用层、传输层和网络层。然而, 作为拥有端到端路径信息的最底层,传输层是最适合部署CMT的一层,在传输层,终端系统 可依据和个路径的状态信息:带宽、拥塞状态、延迟等,运些信息可W被用于将数据流从拥 塞的路径转移至非拥塞路径。随着多种接入技术的发展,近年来智能移动终端越来越普及, 它们往往都拥有多个网络接口。运种具有多个网络接口的多宿主特性使设备具有了更好的 可移动性、快速恢复能力、安全性和负载共享功能。负载共享是其中一个很重要的特性,它 能够聚合不同链路的带宽,使得设备能获得更大的网络吞吐量。目前,已经有多种用于多路 径或并行多路的协议,例如,A化B、PATT肥L、R-MTP、cTCP、CMT-SCTP等,但几乎每一种协议都 有其固有的弱点,导致并未大规模应用,因此,需要一种新的路径管理方法。
【发明内容】
[0003] 有鉴于此,本发明要解决的一个技术问题是提供一种基于多路径传输协议MPTCP 的路径管理方法及装置,能够解决上述的问题。
[0004] -种基于多路径传输协议MPTCP的路径管理方法,包括:获取MPTCP连接中的每条 TCP子路径的传输状态信息;基于传输状态信息计算出MPTCP连接中各条TCP子路径的Q0S 值;根据所述Q0S值确定出传输质量发生恶化的TCP子路径,并则将此TCP子路径设置为备用 状态。
[0005] 根据本发明的一个实施例,进一步的,所述传输状态信息包括:带宽、丢包率和传 输时延。
[0006] 根据本发明的一个实施例,进一步的,所述基于所述传输状态信息计算出所述 MPTCP连接中各条TCP子路径的Q0S值包括:根据TCP子路径的带宽、丢包率和传输时延计算 出此TCP子路径的的Q0S值;其中,QoSsc〇re = Ql*Th;T〇ughputsc〇re+Q2*LossRatesc〇re+Q3* RTTscore ; QoSscore为TCP子路径的QOS值,Q1,Q2,Q3为系统参数,Throu曲putscore是TCP子路径 的带宽,LoSsRatesenre是TCP子路径的丢包率,RTTsenre是TCP子路径的传输时延。
[0007] 根据本发明的一个实施例,进一步的,所述根据所述Q0S值确定出传输质量发生恶 化的TCP子路径包括:设置一个检测时间窗的长度;假设网络中有N条TCP传输的路径,在所 述检测时间窗内,所述MPTCP连接中的每条TCP子路径传输L个TCP报文段;根据所述TCP报文 段的ACK消息获取当前TCP子路径的传输状态信息,包括带宽,丢包率W及传输时延;计算出 每条TCP子路径在所述检测时间窗内的多个Q0S值,并由所述每条TCP子路径在所述检测时 间窗内的多个Q0S值生成与其对应的通信质量序列;基于所述通信质量序列判断所述MPTCP 连接中通信质量下降的TCP子路径。
[000引根据本发明的一个实施例,进一步的,还包括:所述通信质量序列可W表示为一个 QoS矩阵,即QoS={QoS[l],…9〇5[?>··905阳]},QoS[i]表示第i条TCP路径的QoS序列,表示 为 9〇5[1] = {9〇5[。[1>.',905[。。'],...9〇5[。比]},其中9〇5[。。']是一个数,表示第1条 TCP路径在j次传输时的通信质量;随机构建所述MPTCP连接的抗体种群,并采用人工免疫算 法训练抗体;使用训练好的抗体对所述MPTCP连接中的每条TCP子路径的性能检测,将检测 结果为异常的TCP子路径设置为备用状态。
[0009]根据本发明的一个实施例,进一步的,所述随机构建MPTCP连接的抗体种群、并采 用人工免疫算法训练抗体包括:随机初始化种群中抗体编码序列,随机初始化种群即根据 所述的QoS矩阵序列的最大值maxVal与最小值min化1,然后从minVal与maxVal中间选取均 匀分布的随机数,赋值给种群中的抗体,直到生成Να个抗体为止;种群的个体数量为Να,其中 每个个体都是一个序列,然后从Να个个体中随机选出化个容限条件,Ντ?Να ;计算化个容限条 件群体的适应度fitness,其中,Ντ个容限条件的适应度fi化ess为:
[OOU]其中,Ντ代表容限条件序列的数量,0徒示第j个正常序列(ly。31),即在相应 时间窗口中取得的通信质量序列Q〇S[i],Ti表示第i个容限条件序列(1<1<化),即种群中 抗体的编码序列;function(Ti,Tj)是一个非参数检验的函数,能够比较Ti和Tj之间是否有 显著差异,所述function包括:signrank、ranksum、anoval函数;重复计算Ντ个容限条件群 体的适应度fitness W及每个个体的适应度fk,直到fitness取最大值;通过人工免疫算法 中的交叉,选择和变异操作,使种群中的抗体性能达到最优。
[0014] -种基于多路径传输协议MPTCP的路径管理装置,包括:状态获取单元,用于获取 MPTCP连接中的每条TCP子路径的传输状态信息;Q0S值计算单元,用于基于所述传输状态信 息计算出所述MPTCP连接中各条TCP子路径的Q0S值;健康检测单元,用于根据所述Q0S值确 定出传输质量发生恶化的TCP子路径,并则将此TCP子路径设置为备用状态。
[0015] 根据本发明的一个实施例,进一步的,所述传输状态信息包括:带宽、丢包率和传 输时延。
[0016] 根据本发明的一个实施例,进一步的,所述Q0S值计算单元,还用于根据TCP子路径 的带宽、丢包率和传输时延计算出此TCP子路径的的Q0S值;其中,Q〇SscDre = Ql* HirOUghpUtscore+QS 礼 OSsRatesG〇re+Q3*RTTscore;
[0017] QoSscore为TCP子路径的QOS值,Q1,Q2,Q3为系统参数,Throu組putscore是TCP子路径 的带宽,LoSsRatesenre是TCP子路径的丢包率,RTTsenre是TCP子路径的传输时延。
[0018] 根据本发明的一个实施例,进一步的,所述健康检测单元设置一个检测时间窗的 长度;假设网络中有N条TCP传输的路径,在所述检测时间窗内,所述MPTCP连接中的每条TCP 子路径传输L个TCP报文段;所述状态获取单元根据所述TCP报文段的ACK消息获取当前TCP 子路径的传输状态信息,包括带宽,丢包率W及传输时延;所述QOS值计算单元计算出每条 TCP子路径在所述检测时间窗内的多个Q0S值;所述健康检测单元由所述每条TCP子路径在 所述检测时间窗内的多个Q0S值生成与其对应的通信质量序列,基于所述通信质量序列判 断所述MPTCP连接中通信质量下降的TCP子路径。
[0019] 根据本发明的一个实施例,进一步的,所述健康检测单元生成的通信质量序列表 示为一个QoS矩阵,QoS={QoS[l],…9〇5[?>··905阳]},QoS[i]表示第i条TCP路径的QoS序 列,9〇5[。= {905[。[1>..,905[。。'],...9〇5[。化]},其中9〇5[。。']是一个数,表示第1 条TCP路径在j次传输时的通信质量;所述健康检测单元随机构建所述MPTCP连接的抗体种 群,并采用人工免疫算法训练抗体,使用训练好的抗体对所述MPTCP连接中的每条TCP子路 径的性能检测,将检测结果为异常的TCP子路径设置为备用状态。
[0020] 根据本发明的一个实施例,进一步的,所述健康检测单元随机初始化种群中抗体 编码序列,随机初始化种群即根据所述的QoS矩阵序列的最大值maxVal与最小值min化1,然 后从minVal与maxVal中间选取均匀分布的随机数,赋值给种群中的抗体,直到生成Να个抗 体为止;种群个体的数量为Να,其中每个个体都是一个序列,然后从Να个个体中随机选出Ντ 个容限条件,Ντ?Να;计算Ντ个容限条件群体的适应度fitness,其中,Ντ个容限条件的适应 度 fitness 为:
[0024] 其中,化代表容限条件序列的数量,oj表示第j个正常序列(1 y y si),,即在相应 时间窗口中取得的通信质量序列Q〇S[i],Ti表示第i个容限条件序列(1<1<化),即种群中 抗体的编码序列;function!; Ti,Tj)是一个非参数检验的函数,能够比较Ti和Tj之间是否有 显著差异,所述function包括:31旨11拘]14^日证311111、日]1〇¥日1函数;所述健康检测单元重复计 算化个容限条件群体的适应度fitnessW及每个个体的适应度fk,直到fitness取最大值;通 过人工免疫算法中的交叉,选择和变异操作,使种群中的抗体性能达到最优。
[0025] 本发明的基于多路径传输协议MPTCP的路径管理方法及装置,能够根据每条路径 的性能比较,根据子路径中带宽,丢包率和传输时延Ξ个参数进行了综合考虑,将每条路径 的通信质量量化为QoS,通过QoS的值,检测出在通信过程中通信质量出现变化的路径,可W 实现在线的动态检测,实时分析每条MPTCP的路径参数,并且根据参数设计最优的检测算 法,确保网络中使用的传输路径能实现最大的吞吐量和带宽利用率,使网络吞吐量变化更 平滑,提高了 MPTCP的链路利用率、吞吐量和健壮性。
【附图说明】
[0026] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施 例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可W根据运些附图获 得其他的附图。
[0027]图1为根据本发明的基于多路径传输协议M
PTCP的路径管理方法的一个实施例的 流程示意图;
[00%]图2为本发明的基于多路径传输协议MPTCP的路径管理方法的一个实施例中采用 人工免疫算法对MPTCP连接中TCP子路径的检测流程示意图;
[0029] 图3为根据本发明的基于多路径传输协议MPTCP的路径管理装置的一个实施例的 示意图。
【具体实施方式】
[0030] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0031] MPTCP(MultiPath Transpod Control Protocol,多路径传输协议)是对传统TCP 的一种延伸,在通信源和目的节点之间通过多条路径高效的传输数据,提供端到端可靠、有 序的快速数据传输。比较于传统的TCP,MPTCP协议有着两个显著的特点:1)改进网络的吞吐 量。由于MPTCP同时采用多条路径传输数据,在量上增加了网络资源,因而传输了更多的数 据流量,也就提高了网络的吞吐量。2)提供更灵活、可靠的服务,且增强了网络鲁棒性。
[0032] 图1为根据本发明的基于多路径传输协议MPTCP的路径管理方法的一个实施例的 流程示意图,如图1所示:
[0033] 步骤101,获取MPTCP连接中的每条TCP子路径的传输状态信息。
[0034] 步骤102,基于传输状态信息计算出MPTCP连接中各条TCP子路径的Q0S值。
[0035] 步骤103,根据Q0S值确定出传输质量发生恶化的TCP子路径,并则将此TCP子路径 设置为备用状态。
[0036] MPTCP的特点在于可W利用主机的多个可用地址实现在端到端之间建立多条传输 路径同时传输数据,但是由于不同的传输路径之间的性能存在差异,如果使用性能差的路 径传输数据,就会降低MPTCP连接的吞吐量和带宽利用率。在子流性能非常差的情况下,甚 至使用多路径传输的吞吐量不如使用单路径传输的吞吐量。
[0037] 本发明的基于多路径传输协议MPTCP的路径管理方法,检测出MPTCP中性能变差的 路径,将运些路径设置为备用状态,并且启用备用路径中性能较好的路径。
[0038] 本发明的基于多路径传输协议MPTCP的路径管理方法,是针对MPTCP的路径管理中 存在的问题进行动态的优化,对于MPTCP路径中存在的不断变换的故障,提出一个动态的解 决方案,使得路径检测及管理优化方法的参数不断的随着故障的变化而变化。
[0039] 在MPTCP连接中,包乱序是故障路径可能导致的一个关键问题。包乱序会降低连接 的吞吐量,也会导致错误重传。在每个MPTCP连接中,每个数据报文段都具有两层序列 号一一连接级序列号和子流级序列号。
[0040] 当报文段到达接收端之后,并不是立即向上提交给应用层,而是暂时存放在接收 缓存,等待一定量的数据到达后再提交给应用层。如果数值较大的序列号的报文段先到达 接收端,数值比他小的序列号还未到达接收端时,无论接收端缓存已经存放多少数据,都不 会向上提交给应用层,除非未到达的小的序列号的指定报文段到达接收端。运时就称MPTCP 发生了包乱序。
[0041] 当传输层不同的报文段走的是不同延时的路径的时候,报文段到达接收端可能发 生乱序,当包乱序发生后,接收端发出多个重复确认的ACK,发送端会认为是丢包引起的重 复确认,并重新发送该确认序列号指定的数据包,从而引起不必要的重传,包乱序会造成接 收端阻塞,从而降低MPTCP的吞吐量。
[0042] MPTCP中不同子流的性能差异除了会导致包乱序的问题W外,另一方面,也影响 MPTCP缓存的设定。在标准的TCP中,每个ACK包中都包含了窗口字段,它的含义是接收端允 许接收的最大数据量。接收端口用于拥塞控制,接收窗口越小代表接收端能够接受的报文 段数量越少,发送端可W根据接收窗口与拥塞窗口来调节报文段的发送速率,标准的TCP中 接受缓存的大小rbuf根据带宽和RTT来决定,即rbuf = 2地DP,其中抓P = BW*RTT,BW为TCP连 接的带宽,RTT为往返时间。
[0043] 在MPTCP中所有子流共享相同的接收端和发送端缓存,每个子流上的传输的报文 段在接收端缓存中统一重组,接收窗口的大小代表了接收端缓存可W容纳的报文数量,如 果子流之间性能差异过大,接收端的缓存就必须保存所有在发生超时或是丢包的报文段到 达接收端之前到达的其他报文段。
[0044] 在一个实施例中,传输状态信息包括:带宽、丢包率和传输时延。根据TCP子路径的 带宽、丢包率和传输时延计算出此TCP子路径的的Q0S值,综合使用带宽、丢包率和传输时延 评估一条路径的性自良,其中,Q〇Sscore = Ql*Th;TO^hpUtscore+Q^L〇SsRatescore+Q3*RTTscore; QoSscore为TCP子路径的QOS值,Q1,Q2,Q3为系统参数,Throu曲putscore是TCP子路径的带宽, LossRatescore是TCP子路径的丢包率,RTTscore是TCP子路径的传输时延。
[0045] 在MPTCP的标准文档中定义的路径管理策略只是处理了子流的添加和删除,没有 明确指明添加和删除的时间。当子流使用不恰当的时候,MPTCP的吞吐量和带宽利用率降 低,动态监测MPTCP的路径性能,当其中某条路径的性能恶化之后,需要及时检测出运条路 径,并且将运条路径设为备用。
[0046] 由于信道的状况容易受到多种因素的影响,MPTCP的路径健康状况随着时间变化, 通信质量差的信道会对MPTCP连接的质量产生恶劣的影响。使用时间窗的分析方法,固定一 个时间窗的长度,假设网络中有N条TCP传输的路径,在时间窗内,每条路径都能传输L个TCP 报文段,根据每个报文段的ACK可W获取当前路径的QoS,因此在时间窗内可W获取每条路 径的QoS序列,根据序列的特性,可W判断哪条路径的通信质量下降。
[0047] 在一个实施例中,设置一个检测时间窗的长度。在检测时间窗内,MPTCP连接中的 每条TCP子路径传输若干个TCP报文段。根据TCP报文段的ACK消息获取当前TCP子路径的传 输状态信息,包括带宽,丢包率W及传输时延。计算出每条TCP子路径在检测时间窗内的多 个Q0S值,并由每条TCP子路径在检测时间窗内的多个Q0S值生成与其对应的通信质量序列。 [00 4引运个通信质量序列可W表示为一个QoS矩阵,即QoS={QoS[l],…9〇5[1>..908 [^},905[。表示第1条1^?路径的恥5序列,表示为905[。= {905[。[1>',905[。。·],··· 9〇5[。化]},其中恥5[。。']是一个数,表示每次传输时的通信质量,后面的人工免疫算法 将对每个QoS[i]通信质量序列进行检测;基于通信质量序列判断MPTCP连接中通信质量下 降的TCP子路径。
[0049]非参数检验和参数检验都是统计学中统计推断的基本内容,参数检验是在事先能 够知晓系统的总体分布的情况下,对总体分布的均值方差进行推断的方法。但是在对实际 情况分析的时候,往往很难事先知道数据的分布情况,运样就无法使用参数检验的方法。
[0050] 方差分析是非参数检验的算法之一,方差分析是研究一些因子与某个指标的相关 关系,研究因子对指标的影响的显著性程度的统计方法。单因素方差分析是指一项试验中, 只有一个因子变化,其他的因子保持不变,判断运个因子对实验结果是否产生了显著影响。 利用方差分析或是其他的非参数检验的方法可W判断两个序列之间是否有显著性差异,因 此可W用于判断QoS序列之间是否有显著差异。
[0051] 方差分析的结果p = anoval(x)(运里的X是待判断的序列组成的矩阵),如果P为零 假设存在的概率,如果P小于0.05,则认为结果有显著性差异。
[0052] 假设在一个MPTCP连接中有N条路径,在连接初始化的时候,运N条路径的QoS基本 一致,连接能达到正常的吞吐量和带宽利用率。但是随着时间的推移和外界环境的影响,可 能其中的某一条路径性能恶化,影响连接的吞吐量。
[0053] 生物免疫系统是一个自适应的高度并行的分布式系统,具有很强的识别,学习,记 忆和特征提取的能力,具有耐受性,多样性和天然鲁棒性的优点,根据Burnet的克隆选择学 说,Jerne的免疫网络学说和反向选择机制构造了免疫算法(IA,immune algorithm),运种 算法把要解决的问题当做是抗原把问题的解当做是抗体,通过免疫操作使抗体在解空间中 不断捜索进化,按照亲和度对抗体与抗原之间的匹配程度W及抗体之间的相似程度进行评 价,直至产生最优解。免疫算法在解决大空间非线性,全局寻优等复杂问题时具有的、独特 的优越性,已经应用于信息安全,模式识别,优化设计,故障诊断,机器学习和控制领域。
[0054] 人工免疫算法是模拟生物免疫系统智能行为而提出的仿生算法,它是一种确定性 和随机性选择相结合并具有勘测与开采能量的启发式随机捜索算法。人工免疫算法将优化 问题中待优化的问题对应于免疫应答中的抗原,可行解对应于抗体,可行解的质量对应于 免疫细胞与抗原的亲和度,如此可见优化问题的寻优过程与生物免疫系统识别抗原并实现 抗体进化的过程对应起来,将生物免疫应答中的进化链(抗体群-免疫选择-细胞克隆-变 异-克隆抑制-产生新抗体)抽象为数学上的寻优过程,形成智能优化算法。
[0055] 因为MPTCP连接中的多条路径性能都随时都可能受到外界因素的影响,本研究中 的算法能够根据MPTCP连接中路径性能的改变,动态的调整算法的参数,保证算法在每一时 刻的性能,利用免疫算法的动态优化性能,实现算法参数的实时优化。
[0056] 图2为本发明的基于多路径传输协议MPTCP的路径管理方法的一个实施例中采用 人工免疫算法对MPTCP连接中T
CP子路径的检测流程示意图,如图2所示:
[0057] 步骤201,随机初始化种群中抗体编码序列,随机初始化种群即根据上述的QoS矩 阵序列的最大值maxVal与最小值min化1,然后从minVal与max化1中间选取均匀分布的随机 数,赋值给种群中的抗体,直到生成Να个抗体为止;种群的个体数量为Να,其中每个个体都是 一个序列,然后从运Να个个体中随机选出化个容限条件,化<<Να。
[0化引步骤202,计算则Ντ个容限条件群体的适应度fitness。运化个容限条件的适应度 fitness的计算方法如式(1)所示:
[0化9]
[0060]种群中每个个体的适应度fk计算方法如式(2)所示:
[0061]
[0062] 其中:化代表容限条件序列的数量
[0063] oj表示第j个正常序列(1 < j < Isl),即在相应时间窗口中取得的通信质量序列 QoS 山;
[0064] τι表示第i个容限条件序列(1 < i <化),即种群中抗体的编码序列;
[0065] function(Ti,Tj)在运里是一个非参数检验的函数,能够比较τι和τ么间是否有显 著差异,典型的 function有:si邑nr曰nk,r曰nksum,曰nov曰1,kstest,ttest,runtest 等等,运几 个函数的特点在于函数返回值的取值范围都是0到1,如果τι和Tj之间差异较小,则函数的返 回值接近于1,如果τι和Tj之间差异较大,则函数的返回值接近于0。从适应度函数的定义来 看,如果个体ind[ i ]与MPTCP中所有路径的QoS[ i ]序列都很接近的话,则适应度值较高,并 且表明该个体的MPTCP路径质量检测能力越强。适应度函数的右半部分用于约束种群中个 体的多样性,种群中个体的差异程度越大的话则有利于种群往适应度最优的方向进化。
[0066] 如果两个序列之间有显著性差异的话,那么将会得到一个接近0的数(一般是小于 0.05),如果两个序列之间没有显著性的差异,那么将会返回一个接近1的数。fitness的值 越大表示当前的容限条件序列集合与正常序列之间没有显著性的差异,能够区分出正常的 序列和非正常的序列。并且fitness的值考虑了当前容限条件集合序列的多样性,提高算法 的准确性。
[0067] 计算适应度值fitness的式子(1)包含两个部分,第一个部分是因为我们不希望容 限条件与正常的序列匹配,所W运里让容限条件序列和正常序列的非参数检验的值最大, 非参数检验的值越大,表示两个序列之间的差异越大,通过运种阴性选择,提高了容限条件 集合对故障路径检测的正确率,并且减少容限条件对正常路径的误判。式子的第二部分取 最大值的目标在于使容限条件之间的差异性最大,目的在于保证抗体的种群多样性,运样 才能检测出更多种的异常序列。式(2)是计算每个容限条件序列个体的fitness值,式子的 第一部分代表每个个体的性能,式子的第二部分代表每个容限条件的协作性能。
[0068] 步骤203,重复步骤1和步骤2多次直到每个容限条件都能够达到一定的性能(假设 执行Nr次,直到fihess取最大值)。
[0069] 步骤204、205、206,通过免疫算法中的交叉,选择和变异操作,使种群中的抗体性 能达到最优。
[0070] 步骤205,使用训练好的抗体进行MPTCP的路径性能检测,将检测结果为异常的路 径设置为备用状态,保证MPTCP连接的最优性能。
[0071] 免疫算法的主要过程如下所示下加粗的变量都表示一个向量,没加粗的表示 一个数):
[0072] (1)首先构建种群化pulation,种群中个体的个数为Να,种群可W表示为:
[0073] 化pulation = Und[l], ind[2], ...ind[i]..., ind[NA]}
[0074] 其中ind[i]为种群中的个体,表示一个L维的向量,运里的L即时间窗口内部TCP报 文段的个数,每个个体表示为:
[0075] ind[i] = {ind[i][l] ,...ind[i][ j] ,...ind[i][L]}
[0076] (2)然后是依据式(2)计算种群中每个个体的适应度,适应度函数的意义在于评价 种群中的个体的通信质量检测能力;
[0077] (3)然后是执行免疫算法中的选择算子,即从种群中选择适应度最高的Na*Ps个个 体,运里的Ps表示选择概率;
[0078] (4)执行免疫算法中的交叉算子:即选择种群中的两个个体,然后执行W下操作生 成相应的子代个体,下式中的parent[i]向量即种群中的个体ind[i],运里写为parent[i] 表示父代:
[00巧]offsp;ring[l][ j]=Aparent[l][ j] + (l-A)parent[2][ j] 1 < j < L [0080] offspring[2][ j] = Aparent[2][ j] + (l-A)parent[l][ j] 1 < j < 1^;
[0081 ]其中λ是在(0,1)区间内部的均匀分布的一个随机数,of f spring [ 1 ][ j ]表示第一 个子代在第j位的基因,offspring。]!; j]表示第二个子代在第j位的基因,parent[l][ j]表 示第一个父代在第j位的基因,parent[2][j]表示第二个父代在第j位的基因。依次对种群 中所有的父代个体执行交叉操作,生成相应的子代个体。
[0082] (5)执行免疫算法中的变异操作,随机变异即在种群个体ind[i]的编码长度中随 机选择一位基因 ind[i][j],然后在种群的最大值MaxVal与最小值MinVal之间取一个均匀 分布的随机数作为变异之后的个体的对应位的基因。
[0083] (6)循环执行第(2)步到第(5)步,直到种群的进化代数达到预先设置的genMax值 为止,通常进化genMax代之后,种群中的个体已经优化到一定程度,能够对MPTCP中N条路径 的通信质量进行检测。
[0084] 如图3所示,本发明提供一种基于多路径传输协议MPTCP的路径管理装置31。状态 获取单元311获取MPTCP连接中的每条TCP子路径的传输状态信息。Q0S值计算单元312基于 传输状态信息计算出MPTCP连接中各条TCP子路径的Q0S值。健康检测单元313根据Q0S值确 定出传输质量发生恶化的TCP子路径,并则将此TCP子路径设置为备用状态。传输状态信息 包括:带宽、丢包率和传输时延等。
[0085] 在一个实施例中,Q0S值计算单元312根据TCP子路径的带宽、丢包率和传输时延计 算出此TCP子路径的的Q0S值。其中,Q〇Sscore = Ql*Th;r〇U曲putsc〇re+Q2礼ossRatesc〇re+Q3* RTTscore ; QoSscore为TCP子路径的QOS值,Q1,Q2,Q3为系统参数,Throu曲putscore是TCP子路径 的带宽,LossRateseore是TCP子路径的丢包率,RTTswre是TCP子路径的传输时延。
[0086] 在一个实施例中,健康检测单元313设置一个检测时间窗的长度;在检测时间窗 内,MPTCP连接中的每条TCP子路径传输若干个TCP报文段;状态获取单元311根据TCP报文段 的ACK消息获取当前TCP子路径的传输状态信息,包括带宽,丢包率W及传输时延。Q0S值计 算单元312计算出每条TCP子路径在检测时间窗内的多个Q0S值。健康检测单元313由每条 TCP子路径在检测时间窗内的多个Q0S值生成与其对应的通信质量序列,基于通信质量序列 判断MPTCP连接中通信质量下降的TCP子路径。
[0087] 在一个实施例中,健康检测单元313生成的通信质量序列表示为一个QoS矩阵,QoS ={9〇5[1]^''9〇5[冲''905肌},905山表示第1条批?路径的908序列,905山={905山 [1>',005[。。'],-'9〇5[。化]},其中9〇5[。。']是一个数,表示第1条^?路径在^'次传输 时的通信质量;健康检测单元313随机构建MPTCP连接的抗体种群,并采用人工免疫算法训 练抗体,使用训练好的抗体对MPTCP连接中的每条TCP子路径的性能检测,将检测结果为异 常的TCP子路径设置为备用状态。
[0088]健康检测单元313随机初始化种群中抗体编码序列,随机初始化种群即根据所述 的QoS矩阵序列的最大值maxVal与最小值minVal,然后从minVal与maxVal中间选取均匀分 布的随机数,赋值给种群中的抗体,直到生成Να个抗体为止;种群的个体数量为Να,其中每个 个体都是一个序列,然后从Να个个体中随机选出化个容限条件,Ντ?Να;计算Ντ个容限条件群 体的适应度fitness,其中,Ντ个容限条件的适应度fi化ess为:
[0092] 其中,Ντ代表容限条件序列的数量,口徒示第j个正常序列(lyUsl),即在相应 时间窗口中取得的通信质量序列Q〇S[i];Ti表示第i个容限条件序列(1<1<化),即种群中 抗体的编码序列;function!; Ti,Tj)是一个非参数检验的函数,能够比较Ti和Tj之间是否有 显著差异,functi on包括:S i邑nr曰nk、r曰nksum、曰no V曰1等函数。
[0093] 健康检测单元313重复计算Ντ个容限条件群体的适应度fitnessW及每个个体的 适应度fk,直到fitness取最大值;通过人工免疫算法中的交叉,选择和变异操作,使种群中 的抗体性能达到最优。
[0094] 上述实施例中的基于多路径传输协议MPTCP的路径管理方法及装置,能够根据每 条路径的性能比较,根据子路径中带宽,丢包率和传输时延Ξ个参数进行了综合考虑,将每 条路径的通信质量量化为QoS,通过QoS的值,检测出在通信过程中通信质量出现变化的路
径,可W实现在线的动态检测,实时分析每条MPTCP的路径参数,并且根据参数设计最优的 检测算法,在保证算法实时性的同时保证算法的最佳性能,确保网络中使用的传输路径能 实现最大的吞吐量和带宽利用率。
[00M]可能W许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者 软件、硬件、固件的任何组合来实现本发明的方法和系统。用于方法的步骤的上述顺序仅是 为了进行说明,本发明的方法的步骤不限于W上具体描述的顺序,除非W其它方式特别说 明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,运些程序包括 用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发 明的方法的程序的记录介质。
[0096]本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明 限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描 述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理 解本发明从而设计适于特定用途的带有各种修改的各种实施例。
【主权项】
1. 一种基于多路径传输协议MPTCP的路径管理方法,其特征在于,包括: 获取MPTCP连接中的每条TCP子路径的传输状态信息; 基于所述传输状态信息计算出所述MPTCP连接中各条TCP子路径的QOS值; 根据所述QOS值确定出传输质量发生恶化的TCP子路径,并则将此TCP子路径设置为备 用状态。2. 如权利要求1所述的方法,其特征在于,包括: 所述传输状态信息包括:带宽、丢包率和传输时延。3. 如权利要求2所述的方法,其特征在于,所述基于所述传输状态信息计算出所述 MPTCP连接中各条TCP子路径的QOS值包括: 根据TCP子路径的带宽、丢包率和传输时延计算出此TCP子路径的的QOS值; 其中,QoSs core Ql氺Throughputs core +Q2*LossRates core +Q3*RTT score ; QoSsccire为TCP子路径的QOS值,Q1,Q2,Q3为系统参数,Thr〇ughput sc〇re是TCP子路径的带 宽,LossRate score 是TCP子路径的丢包率,RTTsccire是TCP子路径的传输时延。4. 如权利要求3所述的方法,其特征在于,所述根据所述QOS值确定出传输质量发生恶 化的TCP子路径包括: 设置一个检测时间窗的长度; 假设网络中有N条TCP传输的路径,在所述检测时间窗内,所述MPTCP连接中的每条TCP 子路径传输L个TCP报文段; 根据所述TCP报文段的ACK消息获取当前TCP子路径的传输状态信息,包括带宽,丢包 率以及传输时延; 计算出每条TCP子路径在所述检测时间窗内的多个QOS值,并由所述每条TCP子路径在 所述检测时间窗内的多个QOS值生成与其对应的通信质量序列; 基于所述通信质量序列判断所述MPTCP连接中通信质量下降的TCP子路径。5. 如权利要求4所述的方法,其特征在于,还包括: 所述通信质量序列表示为一个QoS矩阵,Q〇S={Q〇S[l],…QoS[i>_Q 〇S[N]},QoS[i]表 示第 i 条 TCP 路径的 QoS 序列,0〇3[?] = {0〇3[?][1>··,0〇3[?]υ],··4〇3[?]α]},其中 QoS [i ][ j ]是一个数,表示第i条TCP路径在j次传输时的通信质量; 随机构建所述MPTCP连接的抗体种群,并采用人工免疫算法训练抗体; 使用训练好的抗体对所述MPTCP连接中的每条TCP子路径的性能检测,将检测结果为异 常的TCP子路径设置为备用状态。6. 如权利要求5所述的方法,其特征在于,所述随机构建MPTCP连接的抗体种群、并采用 人工免疫算法训练抗体包括: 随机初始化种群中抗体编码序列,随机初始化种群即根据上述的QoS矩阵序列的最大 值maxVal与最小值minVal,然后从minVal与maxVal中间选取均勾分布的随机数,赋值给种 群中的抗体,直到生成Na个抗体为止; 种群的个体数量为Na,其中每个个体都是一个序列,然后从Na个个体中随机选出Nt个容 限条件,Nt〈〈NA; 计算Nt个容限条件群体的适应度fitness,其中,Nt个容限条件的适应度fitness为:种群中每个个体的适应度fk为:其中,Nt代表容限条件序列的数量,A表示第j个正常序列(I < j < Isl),即在相应时间 窗口中取得的通信质量序列Q〇S[i],Ti表示第i个容限条件序列(1 < i <Ντ),即种群中抗体 的编码序列;function(Ti,Tj)是一个非参数检验的函数,能够比较T i和Tj之间是否有显著 差异,所述 function 包括:s ignrank、ranksum、anoval 函数; 重复计算Nt个容限条件群体的适应度fitness以及每个个体的适应度fk,直到fitness 取最大值; 通过人工免疫算法中的交叉,选择和变异操作,使种群中的抗体性能达到最优。7. -种基于多路径传输协议MPTCP的路径管理装置,其特征在于,包括: 状态获取单元,用于获取MPTCP连接中的每条TCP子路径的传输状态信息; QOS值计算单元,用于基于所述传输状态信息计算出所述MPTCP连接中各条TCP子路径 的QOS值; 健康检测单元,用于根据所述QOS值确定出传输质量发生恶化的TCP子路径,并则将此 TCP子路径设置为备用状态。8. 如权利要求7所述的装置,其特征在于,包括: 所述传输状态信息包括:带宽、丢包率和传输时延。9. 如权利要求8所述的装置,其特征在于: 所述QOS值计算单元,还用于根据TCP子路径的带宽、丢包率和传输时延计算出此TCP子 路径的的QOS值; 其中,QoSs core Ql氺Throughputs core +Q2*LossRates core +Q3*RTT score ; QoSsccire为TCP子路径的QOS值,Q1,Q2,Q3为系统参数,Thr〇ughput sc〇re是TCP子路径的带 宽,LossRate score 是TCP子路径的丢包率,RTTsccire是TCP子路径的传输时延。10. 如权利要求9所述的装置,其特征在于: 所述健康检测单元设置一个检测时间窗的长度;假设网络中有N条TCP传输的路径,在 所述检测时间窗内,所述MPTCP连接中的每条TCP子路径传输L个TCP报文段; 所述状态获取单元根据所述TCP报文段的ACK消息获取当前TCP子路径的传输状态信 息,包括带宽,丢包率以及传输时延; 所述QOS值计算单元计算出每条TCP子路径在所述检测时间窗内的多个QOS值; 所述健康检测单元由所述每条TCP子路径在所述检测时间窗内的多个QOS值生成与其 对应的通信质量序列,基于所述通信质量序列判断所述MPTCP连接中通信质量下降的TCP子 路径。11. 如权利要求10所述的装置,其特征在于: 所述健康检测单元生成的通信质量序列表示为一个QoS矩阵,QoS= {QoS[l ],…QoS [i]…QoS[N]},QoS[i]表示第i条TCP路径的QoS序列,0〇3[η = {0〇3[?][1>··,0〇3[?] [j],一OoSt i] [L]},其中Q〇S[ i] [ j]是一个数,表示第i条TCP路径在j次传输时的通信质量; 所述健康检测单元随机构建所述MPTCP连接的抗体种群,并采用人工免疫算法训练抗 体,使用训练好的抗体对所述MPTCP连接中的每条TCP子路径的性能检测,将检测结果为异 常的TCP子路径设置为备用状态。12.如权利要求12所述的装置,其特征在于: 所述健康检测单元随机初始化种群中抗体编码序列,随机初始化种群即根据所述的 QoS矩阵序列的最大值maxVal与最小值minVal,然后从minVal与maxVal中间选取均勾分布 的随机数,赋值给种群中的抗体,直到生成Na个抗体为止;种群的个体数量为Na,其中每个个 体都是一个序列,然后从Na个个体中随机选出Nt个容限条件,Nt〈〈Na;计算Nt个容限条件群 体的适应度fitness,其中,Nt个容限条件的适应度fitness为:种群中每个个体的适应度fk为:其中,Nt代表容限条件序列的数量,A表示第j个正常序列(I < j < Isl),即在相应时间 窗口中取得的通信质量序列Q〇S[i],Ti表示第i个容限条件序列(1 < i <NT),即种群中抗体 的编码序列;function(Ti,τ」)是一个非参数检验的函数,能够比较T i和τ」之间是否有显著 差异,所述 function 包括:s ignrank、ranksum、anoval 函数; 所述健康检测单元重复计算Nt个容限条件群体的适应度fitness以及每个个体的适应 度fk,直到fitness取最大值;通过人工免疫算法中的交叉,选择和变异操作,使种群中的抗 体性能达到最优。
【专利摘要】本发明公开了一种基于多路径传输协议MPTCP的路径管理方法及装置,其中的方法包括:获取MPTCP连接中的每条TCP子路径的传输状态信息;基于传输状态信息计算出MPTCP连接中各条TCP子路径的QOS值;根据QOS值确定出传输质量发生恶化的TCP子路径,并则将此TCP子路径设置为备用状态。本发明的方法及装置,能够根据每条路径的性能比较,将每条路径的通信质量量化为QoS,通过QoS的值,检测出在通信过程中通信质量出现变化的路径,可以实时分析每条MPTCP的路径参数,确保网络中使用的传输路径能实现最大的吞吐量和带宽利用率,使网络吞吐量变化更平滑,提高了MPTCP的链路利用率、吞吐量和健壮性。
【IPC分类】H04L12/725, H04L29/06, H04L12/707
【公开号】CN105490933
【申请号】CN201511003678
【发明人】周旭, 张士强, 张洪光, 范华涛, 梁毅, 酒乐, 张华亮
【申请人】中国电子科技集团公司第五十四研究所, 北京邮电大学
【公开日】2016年4月13日
【申请日】2015年12月28日