一种改善QUIC协议请求调度效率的方法技术

技术编号:19352606 阅读:26 留言:0更新日期:2018-11-07 17:40
本发明专利技术公开一种改善QUIC协议请求调度效率的方法。该方法通过一种基于Connection ID与一致哈希圆环的映射方式实现了对Connection ID的动态选择和对QUIC协议请求的高效调度。本发明专利技术通过将虚拟服务器节点映射到一致哈希圆环上的方式,动态确定了服务器的有效控制范围,并基于有效控制范围与Connection ID的映射关系,动态确定了Connection ID的选择区间,通过将QUIC请求映射到该圆环上实现了对请求的高效调度。本发明专利技术解决了传统软件负载均衡请求调度方法无法适应QUIC协议请求的特点所导致的集群环境下QUIC连接平滑迁移失效的问题,避免对服务器集群的性能和可伸缩性的负面影响。

【技术实现步骤摘要】
一种改善QUIC协议请求调度效率的方法
本专利技术涉及一种网络请求调度技术,特别是涉及一种改善QUIC协议请求调度效率的方法。
技术介绍
TCP协议是一个使用广泛的传输层协议,为上层应用提供了可靠的传输,TCP的连接通过源IP地址、源端口号、目的IP地址、目的端口号所构成的四元组确定一个连接,当客户端发生网络切换(例如从Wi‐Fi网络切换到4G网络)时该四元组必然会发生变更,这将导致TCP连接的重建,影响了通信的效率。而QUIC协议则是基于UDP的应用层协议,相较于TCP通过四元组确定连接的方式,QUIC协议通过一个64‐bit的无符号整形值ConnectionID来确定一个连接。当客户端发送网络切换时,通过继续保持网络切换之前的ConnectionID,即可避免连接的重新建立,实现连接的平滑迁移,提高了通信的效率。目前移动网络设备使用广泛,网络切换的情况时有发生,连接平滑迁移的特性是极有意义的。但是,由于实际应用中服务端常以服务器集群的形式存在,且服务器集群需要负载均衡设备将客户端请求调度到不同的服务器上,而目前正在被使用的软件地址转换负载均衡程序以IP地址的哈希结果作为调度的标准,使得网络切换前后的客户端请求极可能被调度到不同的服务器上进行处理,由于客户端与服务端的会话信息仅保留在具体处理请求的服务器上,因此该调度过程导致了QUIC协议连接平滑迁移的特性失效,这意味着该策略并不适用于QUIC协议的请求调度。一种解决方案是全局同步并统一分配ConnectionID,但由于ConnectionID是一个需要频繁创建销毁的数据,该方案将造成较大的网络IO开销,影响服务器集群的运行效率。另外,为了确保ConnectionID的唯一性,ConnectionID分配服务器也要缓存所有的已分配ConnectionID,并在分配前进行查找,分配时进行缓存,销毁时进行删除,由于整个服务器集群中ConnectionID数量较多,该过程所消耗的资源也较大。另一种解决方案是给集群中每一台服务器分配一个静态的ConnectionID选择范围,通过保证该静态范围互不重叠来确保ConnectionID不发生冲突,但是由于服务端集群规模会动态变化,因而静态分配ConnectionID的选择范围会导致集群的可伸缩性受到影响。
技术实现思路
本专利技术的目的在于克服现有技术存在的上述不足,提供了改善QUIC协议请求调度效率的方法。本专利技术目的通过如下技术方案实现:一种改善QUIC协议请求调度效率的方法,其方法具体包括如下步骤:1)将范围为[0,232‐1]的整数集合构成一个一致哈希圆环空间,将服务器集群中的服务器以若干虚拟服务器节点的形式映射到该圆环上,每一个虚拟服务器节点的位置对应于圆环所表示范围中的一个整数点;2)通过虚拟服务器节点在圆环的位置关系,确定虚拟服务器节点的动态有效控制范围;3)通过服务器所对应的虚拟服务器的动态有效控制范围确定服务器的动态有效控制范围;4)通过服务器的动态有效控制范围与ConnectionID的映射关系确定ConnectionID的动态选择范围;5)对于任意请求,通过ConnectionID到圆环的逆向映射关系确定请求在圆环上的映射位置,在圆环上顺时针寻找具体处理请求的服务器,将请求调度到该服务器上。进一步地,上述服务器集群具体是:一台以上的服务器主机通过网络通信实现的松散集成体,服务器集群协作完成计算工作,共同向客户端提供服务,以客户端的视角来看,其具体服务效果如同仅有单台主机在提供服务。进一步地,上述范围为[0,232‐1]的整数集合构成一个圆环形状的空间具体是:设定一个圆环形状的空间,将范围为[0,232‐1]整数值在此圆环上按顺时针方向均匀递增分布,对于圆环上任意一点X+1必然为点X在顺时针方向上最临近的一个点,且点X+2与点X+1的距离必然和点X+1与X的距离相等,点232‐1的顺时针方向上最邻近的点为点0,且点232‐1与点0的距离和圆环上任意一点X+1与X的距离相等。进一步地,上述通过虚拟服务器节点在圆环的位置关系,确定虚拟服务器节点的动态有效控制范围具体方法是:在[0,232‐1]的整数集合构成一个圆环形状的空间上,每一个虚拟服务器节点在其中占据一个圆环所表示范围中的一个整数点,对于任意虚拟服务器节点X,设其对应的整数值为NX,以其在圆环上的位置为起点,沿圆环逆时针方向移动,至遇到其他任一虚拟服务器节点Y为止,设其点对应整数值为NY,则该虚拟服务器节点X的动态有效控制范围为(NY,NX]。进一步地,上述通过服务器所对应的虚拟服务器的动态有效控制范围确定服务器的动态有效控制范围具体是:对于任意服务器S,设其在圆环上对应的虚拟服务器节点为S1、S2、……、SX,其中SN虚拟服务器节点的动态有效控制范围为RSN,则服务器S的动态有效控制范围为RS1∪RS2∪……∪RSX。进一步地,上述通过服务器的动态有效控制范围与ConnectionID的映射关系确定ConnectionID的动态选择范围具体是:QUIC的ConnectionID为一个64‐bit长度的无符号整形值,取值范围为[0,264‐1],对于圆环上的任意一点N,其可以映射出的ConnectionID的取值范围为[N×232,(N+1)×232‐1],对于圆环上任意两点A、B且B>A,若服务器S的动态有效范围为[A,B],则其对应的ConnectionID的动态选择范围为[A×232,(B+1)×232‐1]。进一步地,上述通过ConnectionID到圆环的逆向映射关系确定请求在圆环上的映射位置,在圆环上顺时针寻找具体处理请求的服务器具体方法是:对于任意ConnectionID为C的连接而言,其在圆环上的映射点为(C+1)/232向下取整得出的结果,设该结果为N,则沿点N在圆环上的位置顺时针进行查找,遇到的第一个虚拟服务器节点所对应的服务器即为具体处理请求的服务器。上述虚拟服务器节点具体是:服务器在一致哈希圆环上的映射点,一台服务器可以被映射为多个虚拟服务器节点,每一个虚拟服务器节点有且仅有一台服务器与之对应,对于任意服务器S而言,其在一致哈希圆环上映射出的虚拟服务器节点S1、S2、……、Sn均可代表服务器S,也即被调度到某虚拟服务器节点上的请求由该虚拟服务器节点所对应的服务器进行处理。与现有技术相比,本专利技术具有如下优点和技术效果:1)本专利技术以ConnectionID为基准进行请求的调度,在服务端以服务器集群形式存在的情况下,确保了QUIC协议连接可以在客户端发生网络切换时平滑迁移。同时,本专利技术通过ConnectionID与一致哈希圆环范围的映射关系,动态确定了ConnectionID的选择范围,改善了QUIC协议请求调度效率。2)相比于基于IP地址的哈希值进行QUIC请求调度的策略,本专利技术由于使用ConnectionID作为调度的基准,可以在服务端以服务器集群形式存在的情况下避免客户端网络切换时由于负载均衡调度的原因导致的连接平滑迁移失效的问题。3)相比于通过某一台或某几台服务器对集群中所有服务器上的ConnectionID进行全局同步并统一分配的方法,在本专利技术中,ConnectionID仍然由具体处理请求的服务器本文档来自技高网
...

【技术保护点】
1.一种改善QUIC协议请求调度效率的方法,其特征在于,包括如下步骤:1)将范围为[0,232‐1]的整数集合构成一个一致哈希圆环空间,将服务器集群中的服务器以若干虚拟服务器节点的形式映射到该圆环上,每一个虚拟服务器节点的位置对应于圆环所表示范围中的一个整数点;2)通过虚拟服务器节点在圆环的位置关系,确定虚拟服务器节点的动态有效控制范围;3)通过服务器所对应的虚拟服务器的动态有效控制范围确定服务器的动态有效控制范围;4)通过服务器的动态有效控制范围与Connection ID的映射关系确定Connection ID的动态选择范围;5)对于任意请求,通过Connection ID到圆环的逆向映射关系确定请求在圆环上的映射位置,在圆环上顺时针寻找具体处理请求的服务器,将请求调度到该服务器上。

【技术特征摘要】
1.一种改善QUIC协议请求调度效率的方法,其特征在于,包括如下步骤:1)将范围为[0,232‐1]的整数集合构成一个一致哈希圆环空间,将服务器集群中的服务器以若干虚拟服务器节点的形式映射到该圆环上,每一个虚拟服务器节点的位置对应于圆环所表示范围中的一个整数点;2)通过虚拟服务器节点在圆环的位置关系,确定虚拟服务器节点的动态有效控制范围;3)通过服务器所对应的虚拟服务器的动态有效控制范围确定服务器的动态有效控制范围;4)通过服务器的动态有效控制范围与ConnectionID的映射关系确定ConnectionID的动态选择范围;5)对于任意请求,通过ConnectionID到圆环的逆向映射关系确定请求在圆环上的映射位置,在圆环上顺时针寻找具体处理请求的服务器,将请求调度到该服务器上。2.根据权利要求1所述的一种改善QUIC协议请求调度效率的方法,其特征在于,所述服务器集群是一台以上的服务器主机通过网络通信实现的松散集成体,服务器集群协作完成计算工作,共同向客户端提供服务,以客户端的视角来看,其具体服务效果如同仅有单台主机在提供服务。3.根据权利要求1所述的一种改善QUIC协议请求调度效率的方法,其特征在于,所述范围为[0,232‐1]的整数集合构成一个圆环形状的空间具体是:设定一个圆环形状的空间,将范围为[0,232‐1]整数值在此圆环上按顺时针方向均匀递增分布,对于圆环上任意一点X+1必然为点X在顺时针方向上最临近的一个点,且点X+2与点X+1的距离必然和点X+1与X的距离相等,点232‐1的顺时针方向上最邻近的点为点0,且点232‐1与点0的距离和圆环上任意一点X+1与X的距离相等。4.根据权利要求1所述的一种改善QUIC协议请求调度效率的方法,其特征在于,所述通过虚拟服务器节点在圆环的位置关系,确定虚拟服务器节点的动态有效控制范围具体方法是:在[0,232‐1]的整数集合构成一个圆环形状的空间上,每一个...

【专利技术属性】
技术研发人员:李拥军李志瑞
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东,44

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

1