CN104980352A - 一种多线路机房选路方法和装置 - Google Patents
一种多线路机房选路方法和装置 Download PDFInfo
- Publication number
- CN104980352A CN104980352A CN201410143634.2A CN201410143634A CN104980352A CN 104980352 A CN104980352 A CN 104980352A CN 201410143634 A CN201410143634 A CN 201410143634A CN 104980352 A CN104980352 A CN 104980352A
- Authority
- CN
- China
- Prior art keywords
- message bag
- link
- assembling message
- server
- address information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种多线路机房选路的方法及装置,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的方法包括:在所述客户端侧生成组装消息包;分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧;分别记录所述组装消息包的接收时间,并接收所述服务器侧采用所述IP地址关联的链路发送的所述组装消息包;分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速;采用所述网速最快的IP地址关联的链路与所述服务器进行通信。本发明实施例用以解决在用户不知道自己是哪个运营商时自动选路的问题,提高带宽资源的利用效率,提升用户体验。
Description
技术领域
本发明涉及通讯的技术领域,特别是涉及一种多线路机房选路方法和一种多线路机房选路装置。
背景技术
中国主要有两大运营商电信和网通,为了解决电信和网通互相访问速度过慢的问题,因而出现了双线机房。双线机房分为两种:双线双IP机房和双线单IP机房。
双线单IP机房:采用BGP(Border Gateway Protocol,边界网关协议)来实现双线路互联的双线单IP机房,可以称为BGP机房。使用BGP机房托管的服务器对外只暴露一个IP地址,无论是电信还是网通都可以通过这一个IP地址来访问,并且此方案在速度上可以得到保证。双线单IP机房实现起来要比双线双IP机房复杂,在网络设备上也要投入不小的资金,故而价格相对双线双IP机房要昂贵得多。
双线双IP机房:因此双线双IP机房的服务器会对外暴露两个IP地址,一个网通IP地址和一个电信IP地址,网通或者电信的用户在连接服务器时需要自己来解决选路问题。
网通和电信之间的网络通讯质量差异,当使用双线双IP机房时,在一定情况下访问速度快,但是很多时候应用程序是无法确定设备连接的运营商是网通的还是电信或者第三方的运营商,此外,网通或者电信分配到的带宽通常是固定的,如果电信访问的用户多,而网通访问的用户少,将造成电信宽带拥堵从而导致通讯质量变差的现象,而网通宽带则会有大多带宽未能用到,从而造成资源浪费。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:提出一种多线路机房选路方法及装置,用以解决在用户不知道自己是哪个运营商时自动选路的问题,提高带宽资源的利用效率,提升用户体验。
发明内容
本发明实施例所要解决的技术问题是提供一种多线路机房选路的方法,用以解决在用户不知道自己是哪个运营商时自动选路的问题,提高带宽资源的利用效率,提升用户体验。
相应的,本发明实施例还提供了一种多线路机房选路的装置,用以保证上述方法的实现及应用。
为了解决上述问题,本发明公开了一种多线路机房选路的方法,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的方法包括:
在所述客户端侧生成组装消息包;
分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧;
分别记录所述组装消息包的接收时间,并接收所述服务器侧采用所述IP地址关联的链路发送的所述组装消息包;
分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速;
采用所述网速最快的IP地址关联的链路与所述服务器进行通信。
优选地,所述分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧的步骤包括:
分别记录所述组装消息包的发送时间;
采用预置的键值与所述发送时间生成唯一标识;
将所述唯一标识写入所述组装消息包;
将所述组装消息包采用所述IP地址关联的链路发送至服务器侧。
优选地,所述分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速的步骤包括:
分别计算所述接收时间发送时间之间的时间间隔;
采用所述时间间隔计算所述IP地址关联的链路的网速。
本发明实施例还公开了一种多线路机房线路选择的方法,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的方法包括:
在所述服务器侧分别接收所述客户端侧采用所述IP地址关联的链路发送的生成组装消息包;所述客户端侧用于生成组装消息包,并记录组装消息包的发送时间;所述组装消息包中包括唯一标识;
分别依据所述唯一标识判断所述组装消息包是否合法;
若合法,则将所述组装消息包发送至所述客户端侧;所述客户端侧用于记录所述组装消息包的接收时间,分别依据所述发送时间及接收时间计算所述IP地址关联的链路的网速,并采用所述网速最快的所述IP地址关联的链路与所述服务器侧进行通信。
优选地,所述组装消息包中包括发送时间,所述依据所述唯一标识判定所述组装消息包是否合法的步骤包括:
分别从所述组装消息包中提取所述唯一标识;
采用预置的键值及所述发送时间生成验证标识;
判断所述唯一标识与所述验证标识是否一致;
若是,则判定所述组装消息包合法。
本发明实施例还公开了一种多线路机房选路的装置,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的装置包括:
消息包组装模块,用于在所述客户端侧生成组装消息包;
第一消息包发送模块,用于分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧;
第一消息包接收模块,用于分别记录所述组装消息包的接收时间,并接收所述服务器侧采用所述IP地址关联的链路发送的所述组装消息包;
测速统计模块,用于分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速;
选择模块,用于采用所述网速最快的IP地址关联的链路与所述服务器进行通信。
优选地,所述第一发送模块包括:
记录子模块,用于分别记录所述组装消息包的发送时间;
标识生成子模块,用于采用预置的键值与所述发送时间生成唯一标识;
写入子模块,用于将所述唯一标识写入所述组装消息包;
消息包发送子模块,用于将所述组装消息包采用所述IP地址关联的链路发送至服务器侧。
优选地,所述测速统计模块包括:
差值计算子模块,用于分别计算所述接收时间发送时间之间的时间间隔;
网速计算子模块,用于采用所述时间间隔计算所述IP地址关联的链路的网速。
本发明实施例还公开了一种多线路机房线路选择的装置,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的装置包括:
第二消息包接收模块,用于在所述服务器侧分别接收所述客户端侧采用所述IP地址关联的链路发送的生成组装消息包;所述客户端侧用于生成组装消息包,并记录组装消息包的发送时间;所述组装消息包中包括唯一标识;
判断模块,用于分别依据所述唯一标识判断所述组装消息包是否合法;若合法,则调用发送模块;
第二消息包发送模块,用于将所述组装消息包发送至所述客户端侧;所述客户端侧用于记录所述组装消息包的接收时间,分别依据所述发送时间及接收时间计算所述IP地址关联的链路的网速,并采用所述网速最快的所述IP地址关联的链路与所述服务器侧进行通信。
优选地,所述判断模块包括:
提取子模块,用于分别从所述组装消息包中提取所述唯一标识;
生成子模块,用于采用预置的键值及所述发送时间生成验证标识;
判断子模块,用于判断所述唯一标识与所述验证标识是否一致;若是,则调用判定子模块;
判定子模块,用于判定所述组装消息包合法。
与背景技术相比,本发明实施例包括以下优点:
在本发明实施例中自定义通信协议,客户端按照与服务器约定好的消息包结构分别发送组装消息包到服务器的两个不同IP地址,服务器收到组装消息包后进行验证后再发送回客户端,客户端计算组装消息包从发送时间到接收时间的时间间隔,根据时间间隔计算出不同IP地址的关联链路的网速,并从中选择网速的最快IP地址关联的链路,因此即使用户不知道自己的运营商,也可以选取到通信质量高、网速较快的链路与服务器进行通信,用户体验效果好。由于组装消息包的协议比较简单,占用的网络流量也较少。
在本发明实施例中,在客户端及服务器都采用了非阻塞异步事件驱动的网络处理模型,性能较高,能达到比较好的并发。在网络环境不好时,也不会阻塞线程的执行,充分利用CPU资源、避免处理过程中的阻塞操作、提高线程的利用率,减少操作系统的进程调度。
在本发明实施例中,服务器和客户端的程序可以使用C++编写,既可以单独的作为一个进程存在,也可以寄生于其他语言或C++进程中,由于C++是一种静态语言,编译出来的程序执行效率比较高,而且使用C++编写的程序库还可以供其他语言来调用。
附图说明
图1是本发明的一种多线路机房选路的方法实施例1的步骤流程图;
图2是本发明的一种多线路机房选路的方法实施例2的步骤流程图;
图3是本发明的一种多线路机房选路客户端及服务器的结构示意图;
图4是本发明的一种多线路机房选路的装置实施例1的结构框图;
图5是本发明的一种多线路机房选路的装置实施例2的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例的一个核心构思在于,在客户端侧计算机房中服务器的多条IP地址关联的链路的网速,并从中选取网速最快的链路与服务器进行通信。
参照图1,示出了本发明的一种多线路机房选路方法实施例1的步骤流程图,在所述机房中可以包括服务器,所述服务器可以具有多个IP地址,所述IP地址可以具有关联的链路;
在具体实现中,机房常被称之为数据中心,数据中心是企业的业务系统与数据资源进行集中、集成、共享、分析的场地、工具、流程等的有机组合。
机房中设置有服务器,服务器中设置有多个IP地址供用户访问。例如,服务器分别接入电信和网通网线,并设置一个网通IP地址和一个电信IP地址,那么该服务器上便有了两个IP地址,需要在服务器上添加网通或电信IP地址对应的路由来实现用户分别从不同链路访问。
所述的方法具体可以包括如下步骤:
步骤101,在所述客户端侧生成组装消息包;
在本发明实施例中,由于网络上存在很多不确定因素,对消息包的设计和使用要非常严谨,因此在本发明实施例中自定义的应用层协议,在客户端侧及服务器侧按照约定好的应用层协议对消息包进行设计及使用。
例如,自定义的应用层协议的格式可以为:
协议:[包长度][发送时间戳][key]
其中,包长度为消息包的大小,发送时间戳为消息包的发送时间,key为消息包的唯一标识。在实际应用中,协议长度越小越好,在客户侧及服务器侧所需要占用网络流量较少,出现失误的概率也比较少。
步骤102,分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧;
在本发明的一种优选实施例中,所述步骤102具体可以包括如下子步骤:
子步骤S11,分别记录所述组装消息包的发送时间;
子步骤S12,采用预置的键值与所述发送时间生成唯一标识;
子步骤S13,将所述唯一标识写入所述组装消息包;
子步骤S14,将所述组装消息包采用所述IP地址关联的链路发送至服务器侧。
在具体实现中,为了保证通讯的安全性,在客户端及服务器都按照自定义的应用层协议对组装消息包进行验证,具体地,在客户端在发送给服务器的消息包中写入唯一标识,服务器接收后将对该唯一标识进行验证。
步骤103,分别记录所述组装消息包的接收时间,并接收所述服务器侧采用所述IP地址关联的链路发送的所述组装消息包;
步骤104,分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速;
在本发明的一种优选实施例中,所述步骤104具体可以包括如下子步骤:
子步骤S21,分别计算所述接收时间发送时间之间的时间间隔;
子步骤S22,采用所述时间间隔计算所述IP地址关联的链路的网速。
步骤105,采用所述网速最快的IP地址关联的链路与所述服务器进行通信。
在具体实现中,客户端计算组装消息包的发送时间到接收时间的时间间隔,为了保证数据的准确性,可以进行两次或多次计算,取时间间隔的平均值。
IP地址关联的链路的网速是计算在客户端发送之前和接收到消息的时间间隔,在客户端来完成,而不需要服务器做过多的计算,降低了服务器的压力。
当然,也可以在服务器测试网速,再将测试结果返回给客户端用作选择链路的依据,本发明实施例对此不作限制。
在本发明的一种优选示例中,可以将发送至不同IP地址的组装消息包设置为一样的大小,那么时间间隔较短的IP地址关联的链路的网速较快。在本发明的另一种优选示例中,可以将发送至不同IP地址的组装消息包设置为不一样的大小,那么则需要根据时间间隔的大小及组装消息包的大小计算出IP地址关联的链路的网速。
在本发明实施例中,根据不同IP地址的关联链路的网速,从中选择网速的最快IP地址关联的链路,即使用户不知道自己的运营商,也可以选取到通信质量高、网速较快的链路与服务器进行通信,用户体验效果好。
参照图2,示出了本发明的一种多线路机房选路方法实施例2的步骤流程图,在所述机房中可以包括服务器,所述服务器可以具有多个IP地址,所述IP地址可以具有关联的链路;具体可以包括如下步骤:
步骤201,在所述服务器侧分别接收所述客户端侧采用所述IP地址关联的链路发送的生成组装消息包;所述客户端侧用于生成组装消息包,并记录组装消息包的发送时间;所述组装消息包中包括唯一标识;
在具体实现中,服务器的程序可以采用UDP(User Datagram Protocol,用户数据报协议)或者TCP(Transmission Control Protocol,传输控制协议)。UDP速度更快,占用的CPU资源和网络资源更少,但是不能保证数据的可靠性,也比较容易造成数据在传输过程中的丢失,在开发过程中在应用层需要做很多验证机制,提高了开发的复杂度,容易出问题。TCP是一种可靠的面相连接的协议,比UDP更加安全、可靠,应用层直接使用即可,对传输的数据无需做太多的验证机制。
需要说明的是,在实际应用中可以根据实际情况选择不同的通信协议,本发明实施例对此不作限制。
步骤202,分别依据所述唯一标识判定所述组装消息包是否合法;若合法,则执行步骤203;
在本发明的一种优选实施例中,所述组装消息包中包括发送时间,所述步骤202具体可以包括如下子步骤:
子步骤S31,分别从所述组装消息包中提取所述唯一标识;
子步骤S32,采用预置的键值及所述发送时间生成验证标识;
子步骤S33,判断所述唯一标识与所述验证标识是否一致;若是,则执行子步骤S34;
子步骤S34,判定所述组装消息包合法。
在具体实现中,服务器和客户端可以根据在自定义的应用层协议中事先规定好的键值基于唯一标识对组装消息包进行验证。
在本示例中,键值设置为hello+时间戳。客户端将组装消息包的发送时间记录为发送时间戳,并根据发送时间戳+hello生成唯一标识写入组装消息包中。服务器侧接收到组装消息包后从中提取出唯一标识及发送时间戳,并与键值hello计算出验证标识,若唯一标识与验证标识一致时,认为该组装消息包合法。
优选地,所述唯一标识可以为采用MD5(信息-摘要算法5,Message-Digest Algorithm5)计算出的组装消息包的唯一标识,即唯一标识可以是利用MD5算法根据消息包的二进制信息来计算MD5值。
MD5算法是计算机广泛使用的杂凑算法之一,其将数据运算为另一固定长度值,将信息压缩成一种保密的格式。MD5具有碰撞率低的特点,使用MD5算法计算消息包的唯一标识,能够有效防止消息包的重复和碰撞。
当然,在实际应用中,不限于MD5算法,本领域技术人员还可以以低碰撞率为原则,选择其它适当的算法生成消息包的唯一标识,本发明实施例对此无需加以限制。
步骤203,将所述组装消息包发送至所述客户端侧;所述客户端侧用于记录所述组装消息包的接收时间,分别依据所述发送时间及接收时间计算所述IP地址关联的链路的网速,并采用所述网速最快的所述IP地址关联的链路与所述服务器侧进行通信。
在具体实现中,当服务器给客户端返回组装消息包以后,继续监听网络连接情况,处理其他的客户端的消息包。
需要说明的是,在本发明实施例中,在客户端及服务器都采用了非阻塞异步事件驱动的网络处理模型,性能较高,能达到比较好的并发。在网络环境不好时,也不会阻塞线程的执行,充分利用CPU资源、避免处理过程中的阻塞操作、提高线程的利用率,减少操作系统的进程调度。当然,也可以采用其他的网络处理模型,本发明实施例对此不作限制。
为了使本领域技术人员进一步理解本发明实施例,以下对具体方案进行详细阐述。
参照图3所示的本发明的一种多线路机房选路客户端及服务器的结构示意图,图中左边为服务器,右边是客户端,其中,服务器包括第二消息包接收模块、消息缓存模块、网络事件派发模块、协议处理模块、安全认证模块;客户端包括消息包组装模块、Socket管理模块、第一消息包发送模块、第一消息包接收模块、测速统计模块。服务器及客户端各个模块具体的工作内容如下所示:
消息包组装模块:基于自定义的应用层协议生成组装消息包。
Socket管理模块:创建客户端与服务器的进程通信的端点,设置socket接口状态、协议、本地地址、本地端口。
第一消息包发送模块:记录组装消息包的发送时间,按照自定义的应用层协议,采用预置键值生成唯一标识,并将携带唯一标识的组装消息包通过IP地址关联的链路发送至服务器。
第二消息包接收模块:接收客户端发送的组装消息包。
消息缓存模块:针对每一个socket接口的组装消息包进行缓存。
网络事件派发模块:基于事件机制处理客户端发送过来的组装消息包。其中,所述事件机制包括非阻塞异步事件。
协议处理模块:从组装消息包中提取出唯一标识,用以供安全性验证模块使用。
安全认证模块:验证组装消息包的安全性,根据提取出的唯一标识,与按照事先规定好的键值来计算出验证标识,验证标识和唯一标识一致的时候,判定组装消息包是合法的。
第二消息包发送模块:当判定为合法的组装消息包通过IP地址关联的链路发送至客户端。
第一消息包接收模块:服务器接收客户端发送的组装消息包,并记录组装消息包的接收时间。
测速统计模块:基于接收时间及发送时间计算不同IP地址关联的链路的网速。
在本发明实施例中,在服务器和客户端的程序可以使用C++编写,既可以单独的作为一个进程存在,也可以寄生于其他语言或C++进程中,由于C++是一种静态语言,编译出来的程序执行效率比较高,而且使用C++编写的程序库还可以供其他语言来调用。
当然,也可以选用其他语言编写服务器和客户端的程序,例如,JAVA、PYTHON等,本发明实施例对此不作限制。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明一种多线路机房选路的装置实施例1的结构框图,所述服务器可以具有多个IP地址,所述IP地址可以具有关联的链路;具体可以包括如下模块:
生成模块401,用于在所述客户端侧生成组装消息包;
第一发送模块402,用于分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧;
在本发明的一种优选实施例中,所述第一发送模块402可以包括:
记录子模块,用于分别记录所述组装消息包的发送时间;
标识生成子模块,用于采用预置的键值与所述发送时间生成唯一标识;
写入子模块,用于将所述唯一标识写入所述组装消息包;
消息包发送子模块,用于将所述组装消息包采用所述IP地址关联的链路发送至服务器侧。
第一接收模块403,用于分别记录所述组装消息包的接收时间,并接收所述服务器侧采用所述IP地址关联的链路发送的所述组装消息包;
计算模块404,用于分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速;
在本发明的一种优选实施例中,所述计算模块404可以包括:
差值计算子模块,用于分别计算所述接收时间发送时间之间的时间间隔;
网速计算子模块,用于采用所述组装消息包的大小及所述时间间隔计算所述IP地址关联的链路的网速。
选择模块405,用于采用所述网速最快的IP地址关联的链路与所述服务器进行通信。
参照图5,示出了本发明一种多线路机房选路的装置实施例2的结构框图,所述服务器可以具有多个IP地址,所述IP地址可以具有关联的链路;具体可以包括如下模块:
第二接收模块501,用于在所述服务器侧分别接收所述客户端侧采用所述IP地址关联的链路发送的生成组装消息包;所述客户端侧用于生成组装消息包,并记录组装消息包的发送时间;所述组装消息包中包括唯一标识;
判断模块502,用于分别依据所述唯一标识判断所述组装消息包是否合法;若合法,则调用发送模块;
在本发明的一种优选实施例中,所述判断模块502可以包括:
提取子模块,用于分别从所述组装消息包中提取所述唯一标识;
生成子模块,用于采用预置的键值及所述发送时间生成验证标识;
判断子模块,用于判断所述唯一标识与所述验证标识是否一致;若是,则调用判定子模块;
判定子模块,用于判定所述组装消息包合法。
第二发送模块503,用于将所述组装消息包发送至所述客户端侧;所述客户端侧用于记录所述组装消息包的接收时间,分别依据所述发送时间及接收时间计算所述IP地址关联的链路的网速,并采用所述网速最快的所述IP地址关联的链路与所述服务器侧进行通信。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种多线路机房线路选择的方法和一种多线路机房线路选择的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种多线路机房选路的方法,其特征在于,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的方法包括:
在所述客户端侧生成组装消息包;
分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧;
分别记录所述组装消息包的接收时间,并接收所述服务器侧采用所述IP地址关联的链路发送的所述组装消息包;
分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速;
采用所述网速最快的IP地址关联的链路与所述服务器进行通信。
2.根据权利要求1所述的方法,其特征在于,所述分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧的步骤包括:
分别记录所述组装消息包的发送时间;
采用预置的键值与所述发送时间生成唯一标识;
将所述唯一标识写入所述组装消息包;
将所述组装消息包采用所述IP地址关联的链路发送至服务器侧。
3.根据权利要求1或2所述的方法,其特征在于,所述分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速的步骤包括:
分别计算所述接收时间发送时间之间的时间间隔;
采用所述时间间隔计算所述IP地址关联的链路的网速。
4.一种多线路机房线路选择的方法,其特征在于,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的方法包括:
在所述服务器侧分别接收所述客户端侧采用所述IP地址关联的链路发送的生成组装消息包;所述客户端侧用于生成组装消息包,并记录组装消息包的发送时间;所述组装消息包中包括唯一标识;
分别依据所述唯一标识判断所述组装消息包是否合法;
若合法,则将所述组装消息包发送至所述客户端侧;所述客户端侧用于记录所述组装消息包的接收时间,分别依据所述发送时间及接收时间计算所述IP地址关联的链路的网速,并采用所述网速最快的所述IP地址关联的链路与所述服务器侧进行通信。
5.根据权利要求4所述的方法,其特征在于,所述组装消息包中包括发送时间,所述依据所述唯一标识判定所述组装消息包是否合法的步骤包括:
分别从所述组装消息包中提取所述唯一标识;
采用预置的键值及所述发送时间生成验证标识;
判断所述唯一标识与所述验证标识是否一致;
若是,则判定所述组装消息包合法。
6.一种多线路机房选路的装置,其特征在于,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的装置包括:
消息包组装模块,用于在所述客户端侧生成组装消息包;
第一消息包发送模块,用于分别记录所述组装消息包的发送时间,并将所述组装消息包采用所述IP地址关联的链路发送至服务器侧;
第一消息包接收模块,用于分别记录所述组装消息包的接收时间,并接收所述服务器侧采用所述IP地址关联的链路发送的所述组装消息包;
测速统计模块,用于分别采用所述发送时间及接收时间计算所述IP地址关联的链路的网速;
选择模块,用于采用所述网速最快的IP地址关联的链路与所述服务器进行通信。
7.根据权利要求6所述的装置,其特征在于,所述第一发送模块包括:
记录子模块,用于分别记录所述组装消息包的发送时间;
标识生成子模块,用于采用预置的键值与所述发送时间生成唯一标识;
写入子模块,用于将所述唯一标识写入所述组装消息包;
消息包发送子模块,用于将所述组装消息包采用所述IP地址关联的链路发送至服务器侧。
8.根据权利要求6或7所述的装置,其特征在于,所述测速统计模块包括:
差值计算子模块,用于分别计算所述接收时间发送时间之间的时间间隔;
网速计算子模块,用于采用所述时间间隔计算所述IP地址关联的链路的网速。
9.一种多线路机房线路选择的装置,其特征在于,在所述机房中包括服务器,所述服务器具有多个IP地址,所述IP地址具有关联的链路;所述的装置包括:
第二消息包接收模块,用于在所述服务器侧分别接收所述客户端侧采用所述IP地址关联的链路发送的生成组装消息包;所述客户端侧用于生成组装消息包,并记录组装消息包的发送时间;所述组装消息包中包括唯一标识;
判断模块,用于分别依据所述唯一标识判断所述组装消息包是否合法;若合法,则调用发送模块;
第二消息包发送模块,用于将所述组装消息包发送至所述客户端侧;所述客户端侧用于记录所述组装消息包的接收时间,分别依据所述发送时间及接收时间计算所述IP地址关联的链路的网速,并采用所述网速最快的所述IP地址关联的链路与所述服务器侧进行通信。
10.根据权利要求9所述的装置,其特征在于,所述判断模块包括:
提取子模块,用于分别从所述组装消息包中提取所述唯一标识;
生成子模块,用于采用预置的键值及所述发送时间生成验证标识;
判断子模块,用于判断所述唯一标识与所述验证标识是否一致;若是,则调用判定子模块;
判定子模块,用于判定所述组装消息包合法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410143634.2A CN104980352A (zh) | 2014-04-10 | 2014-04-10 | 一种多线路机房选路方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410143634.2A CN104980352A (zh) | 2014-04-10 | 2014-04-10 | 一种多线路机房选路方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104980352A true CN104980352A (zh) | 2015-10-14 |
Family
ID=54276478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410143634.2A Pending CN104980352A (zh) | 2014-04-10 | 2014-04-10 | 一种多线路机房选路方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104980352A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743701A (zh) * | 2016-01-29 | 2016-07-06 | 广州亦云信息技术有限公司 | 一种公网管理模块多线接入方法 |
CN107846437A (zh) * | 2016-09-20 | 2018-03-27 | 北京京东尚科信息技术有限公司 | 选择流量出口机房的方法、系统和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120093023A1 (en) * | 2009-07-02 | 2012-04-19 | Bull Sas | Methods and devices for evaluating interconnection efficiency of parallel computer networks based upon static routing schemes |
CN102594703A (zh) * | 2012-03-19 | 2012-07-18 | 广州华多网络科技有限公司 | 基于中继节点的互联网通信系统和通信路径选择方法 |
CN103327093A (zh) * | 2013-06-17 | 2013-09-25 | 苏州市职业大学 | 云计算系统的控制方法 |
CN103716357A (zh) * | 2012-09-29 | 2014-04-09 | 中国移动通信集团广东有限公司 | 一种移动信息同步方法、装置及移动通信终端 |
-
2014
- 2014-04-10 CN CN201410143634.2A patent/CN104980352A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120093023A1 (en) * | 2009-07-02 | 2012-04-19 | Bull Sas | Methods and devices for evaluating interconnection efficiency of parallel computer networks based upon static routing schemes |
CN102594703A (zh) * | 2012-03-19 | 2012-07-18 | 广州华多网络科技有限公司 | 基于中继节点的互联网通信系统和通信路径选择方法 |
CN103716357A (zh) * | 2012-09-29 | 2014-04-09 | 中国移动通信集团广东有限公司 | 一种移动信息同步方法、装置及移动通信终端 |
CN103327093A (zh) * | 2013-06-17 | 2013-09-25 | 苏州市职业大学 | 云计算系统的控制方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743701A (zh) * | 2016-01-29 | 2016-07-06 | 广州亦云信息技术有限公司 | 一种公网管理模块多线接入方法 |
CN107846437A (zh) * | 2016-09-20 | 2018-03-27 | 北京京东尚科信息技术有限公司 | 选择流量出口机房的方法、系统和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105554065A (zh) | 处理报文的方法、转换单元和应用单元 | |
CN111083161A (zh) | 数据传输的处理方法及装置、物联网设备 | |
CN108494817A (zh) | 数据传输方法、相关装置及系统 | |
US11831763B2 (en) | Methods, systems, and computer readable media for utilizing predetermined encryption keys in a test simulation environment | |
CN102638407A (zh) | 报文转发方法、装置及网络设备 | |
CN106201794A (zh) | 一种服务器的检测方法和装置 | |
US10764214B1 (en) | Error source identification in cut-through networks | |
CN104852828A (zh) | 一种网络时延检测方法,装置及系统 | |
CN101815028B (zh) | 组播路由跟踪的方法、系统和路由设备 | |
US10904096B2 (en) | Deep network path analysis for identifying network segments affecting application performance | |
CN104767655A (zh) | 一种模拟结果检测方法及装置 | |
CN110381071A (zh) | 一种报文传输方法、装置及发送方设备 | |
CN102647432B (zh) | 一种认证信息传输方法、装置及认证中间件 | |
CN108737204A (zh) | 一种网络性能信息的采集方法及通信终端 | |
CN104639390A (zh) | 系统的测试方法和装置 | |
CN106656615A (zh) | 一种基于tracert命令的报文处理方法及装置 | |
CN105207909A (zh) | 一种发送信息的方法和网络装置 | |
US8966321B2 (en) | Logical port and layer protocol test configuration resource manager | |
US10659338B1 (en) | Isolation of network segments affecting application performance | |
CN104980352A (zh) | 一种多线路机房选路方法和装置 | |
CN109600436A (zh) | 一种分布式iscsi服务实现方法、系统及相关装置 | |
US9912524B2 (en) | System and method for dynamic session maps | |
CN113220481A (zh) | 请求处理及反馈方法、装置、计算机设备及可读存储介质 | |
Iurman et al. | Towards cross-layer telemetry | |
CN111026566A (zh) | 一种客户端业务错误场景立体监控方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151014 |