本发明属于计算机网络服务,具体为基于rtt值选择中转服务器的方法。
背景技术:
1、在远程控制计算机的过程中,会在主控计算机和被控计算机之间建立起一条控制通道,用于传输图像、声音、命令等数据,但是二者常常因不在一个网段中,从而无法建立起直接的tcp或udp通信连接,此时就需要一个中转服务器辅助建立起这条通道。一般的远程控制系统(比如:anyviewer)都在全球各地部署有中转服务器,怎样从众多的中转服务器中选择一个最优服务器,或者说为主控计算机和被控计算机选择一条最快路由是个挑战,为了解决这个问题,本申请提出了最小往返时间(rtt)方法。
技术实现思路
1、本发明的目的在于提供基于rtt值选择中转服务器的方法,以解决背景技术中提出的现有技术中,需要在主控计算机和被控计算机之间通过中转服务器建立传输网络,就存在需要从众多的中转服务器之间选择最优服务器的问题。
2、为解决上述技术问题,本发明所采用的技术方案是:
3、基于rtt值选择中转服务器的方法,包括以下步骤:
4、步骤s1,获取中转服务器链表,计算中转服务器与控制服务器的往返时间rtt;
5、步骤s2,根据计算得到的往返时间rtt,选择中转服务器;
6、步骤s201,按加入中转服务器链表的先后顺序遍历中转服务器;
7、步骤s202,根据中转服务器往返时间rtt计算优先级得分;具体为:如果往返时间rtt小于或者等于10.0毫秒,优先级得分为9.0;如果往返时间rtt大于或者等于310.0毫秒,优先级得分为0.0;往返时间rtt大于10.0毫秒且小于310毫秒的优先级得分根据线性关系公式:9.0-(rtt-10.0)*0.03计算得到;其中,9.0和0.03为实际网络经验系数,10.0为优先级得分为9.0的往返时间rtt;
8、步骤s203,与当前选择的中转服务器优先级得分比较;如果遍历中转服务器链表时获取的中转服务器优先级得分大于当前选择中转服务器的优先级得分,则进入步骤s204;如果小于或等于当前中转服务器的优先级得分,则跳转到步骤s205;
9、步骤s204,更新当前的最优中转服务器为当前遍历到的中转服务器;
10、步骤s205,判断遍历是否结束;如果遍历结束,则中转服务器选择结束,当前的中转服务器为最优服务器;如果遍历没有结束,则返回步骤s201,继续下一轮选择,直到得到优先级得分最高的中转服务器。
11、根据上述技术方案,步骤s1中,计算往返时间rtt包括以下步骤:
12、步骤s101,解析从中转服务器的控制服务器中传入的参数;从传入的参数中提取需要ping的中转服务器链表信息;
13、步骤s102,创建一个udp客户端对象,用于与中转服务器进行通信;
14、步骤s103,初始化udp客户端并与中转服务器建立连接;
15、步骤s104,遍历步骤s101获取的中转服务器链表信息;
16、步骤s105,udp客户端向当前遍历到的中转服务器发送ping请求,请求报文中携带有开始时间戳;
17、步骤s106,中转服务器收到udp客户端发送来ping请求后,发送一个应答报文,应答报文中携带了步骤s105请求报文的开始时间戳;
18、步骤s107,计算单次往返时间rtt,往返时间rtt等于收到ping应答报文时间减去请求报文的开始时间,以毫秒为单位;
19、步骤s108,判断udp客户端是否ping完所有的中转服务器,如果是,则进行下一步,如果不是,则返回步骤s104;
20、步骤s109,结束。
21、根据上述技术方案,步骤s105中,发送ping请求具体为:遍历中转服务器链表,对每个中转服务器连续发送三次ping请求。
22、根据上述技术方案,步骤s107中获取的是单次往返时间rtt,需要采用动态平均计算方式来计算最终的往返时间rtt:
23、基本的动态平均计算公式可以表示为:
24、dynamic average rtt=(1-α)×previous average rtt+α×current rtt
25、其中:α是平均值更新的权重,取值为0≤α≤1,表示新数据的权重比例,值越大对网络变化越敏感;dynamic average rtt是最新往返时间rtt动态平均值,previousaverage rtt是前一次的平均往返时间rtt;current rtt是当前的往返时间。
26、根据上述技术方案,步骤s203中,往返时间rtt值越小,则中转服务器的优先级越大,cpu和内存空闲程度越大,中转服务器的优先级越大。
27、根据上述技术方案,步骤s204中,如果计算得到的中转服务器优先级大于当前中转服务器最大优先级,更新最大优先级,并将当前中转服务器设为最优的服务器。
28、与现有技术相比,本发明具有以下有益效果:
29、通过本发明中的方法,能够有效的优化网络性能。通过选择往返时间rtt值较低的中转服务器,可以减少数据传输的往返时间,从而优化网络性能,提高数据传输的效率和速度。选择往返时间rtt值较低的中转服务器可以减少数据传输的延迟,从而提升用户在使用网络服务时的体验,减少卡顿和等待时间。选择合适的中转服务器可以减少网络拥塞和传输错误的可能性,提高系统的稳定性和可靠性。通过选择合适的中转服务器,可以减少网络传输所需的资源消耗,从而节约成本并提高整体的网络效率。该方法通过自动计算往返时间rtt值并选择最优中转服务器,实现了网络中转服务器的自动优化,减少了人工干预的需要,提高了网络管理的效率和精度。
1.基于rtt值选择中转服务器的方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的基于rtt值选择中转服务器的方法,其特征在于:步骤s1中,计算往返时间rtt包括以下步骤:
3.根据权利要求2所述的基于rtt值选择中转服务器的方法,其特征在于:步骤s105中,发送ping请求具体为:遍历中转服务器链表,对每个中转服务器连续发送三次ping请求。
4.根据权利要求2所述的基于rtt值选择中转服务器的方法,其特征在于:步骤s107中获取的是单次往返时间rtt,需要采用动态平均计算方式来计算最终的往返时间rtt:
5.根据权利要求1所述的基于rtt值选择中转服务器的方法,其特征在于:步骤s203中,往返时间rtt值越小,则中转服务器的优先级越大,cpu和内存空闲程度越大,中转服务器的优先级越大。
6.根据权利要求1所述的基于rtt值选择中转服务器的方法,其特征在于:步骤s204中,如果计算得到的中转服务器优先级大于当前中转服务器最大优先级,更新最大优先级,并将当前中转服务器设为最优的服务器。