远程服务访问路径控制方法和相关设备与流程

文档序号:12829010阅读:262来源:国知局
远程服务访问路径控制方法和相关设备与流程
本发明涉及网络通信领域,更具体地,涉及一种远程服务访问路径控制方法和相关设备。
背景技术
:大数据量的实时传输需求使得互联网信息传输技术蓬勃发展,尤其是单端至单端间的传输,信息传递的可靠性比较高;但一旦涉及到多端,尤其是需要端与端之间需要多个服务器建立连接时,这种信息传递的可靠性就大打折扣了,究其原因,主要是互联网上的信息传播的可靠性较低,其主要表现为互联网通信的丢包率、延时性能等指标没有保证,尤其是在跨运营商或者在跨省份的互联网上传输数据时,数据传输丢包、延时大的问题尤为严重,在这样的网络上建立远程服务时,用户获得该远程服务(例如使用音频、视频等服务)的主观感受是较差的;而且当用户经客户端通过多个服务进行远程服务访问时,远程服务的服务机群的单方面选路,也都会大大降低客户端和服务器、服务器和服务器之间的数据传输质量,无法真正实现最优选路。综上所述,针对现在的多数据连接的情况,主要问题涉及到运营商传输瓶颈、地域差异、通信质量以及分布式架构的服务机群的选路等,现有技术暂时还无法规避。技术实现要素:鉴于上述问题,本发明提出了一种克服上述问题或者至少部分地解决上述问题的远程服务访问路径控制方法和相关设备。为解决上述技术问题,本发明实施例公开了如下技术方案:第一方面,本发明实施例中提供了一种远程服务访问路径控制方法,包括如下步骤:接收任意终端访问所述远程服务而发送的数据报文;请求节点管理服务器确定作为最优节点用于中转该数据报文的最优网关服务器,该最优网关服务器选自为所述远程服务的服务机群构建的分布式部署架构所配备的多个网关服务器;测试已接入的多个数据连接到达所述最优网关服务器的传输质量,确定具有最优传输质量的最优数据连接;调用所述最优数据连接发送封隧道后的所述数据报文,经所述最优网关服务器中转给与其连接的属于所述服务机群的业务服务器。结合第一方面,在第一方面的第一种实现方式中,所述调用所述最优数据连接发送封隧道后的所述数据报文,经所述最优网关服务器中转给与其连接的属于所述服务机群的业务服务器之后,还包括如下步骤,接收所述业务服务器通过所述最优网关服务器中转,经所述最优数据连接反馈的数据报文;对所述由业务服务器封隧道的数据报文进行解隧道,将解隧道后的数据报文发送给所述的终端。结合第一方面的第一种实现方式,在第一方面的第二种实现方式中,请求节点管理服务器确定作为最优节点用于中转该数据报文的最优网关服务器的过程包括如下步骤:向所述节点管理服务器发送最优节点获取请求,在该请求中提供本设备的地址信息;接收所述节点管理服务器相应反馈的依据所述地址信息确定的所述最优网关服务器作为所述的最优节点以用于中转所述的数据报文。结合第一方面,在第一方面的第三种实现方式中,所述节点管理服务器确定的最优网关服务器相对于所述分布式部署架构所配备的其他网关服务器,或其部署地域更为接近所述终端,和/或其通道传输质量在所有网关服务器中最优,和/或其数据连接与所述最优数据连接属于相同运营商,以符合以上条件确定其为最优节点。结合第一方面的的第三种实现方式,在第一方面的第四种实现方式中,所述通道传输质量依据所述节点管理服务器与网关服务器之间的传输通道的测试数据包往返时延及丢包率所决定的传输质量确定。结合第一方面,在第一方面的第五种实现方式中,测试已接入的多个数据连接到达所述最优网关服务器的传输质量,确定具有最优传输质量的最优数据连接的过程包括如下具体步骤:逐一调用已接入的不同数据连接向所述最优网关服务器发送测试数据包;获取各条数据连接的测试结果数据,提取其中的往返时延及丢包率;将由往返时延与丢包率决定的传输质量最优的数据连接确定为所述的最优数据连接。结合第一方面,在第一方面的第六种实现方式中,每个网关服务器与提供所述远程服务的服务机群的业务服务器相连接,以便封隧道后的所述数据报文通过所述最优网关服务器到达与其连接的业务服务器。结合第一方面的第五种实现方式,在第一方面的第七种实现方式中,所述传输质量的确定方式为:所述往返时延与所述丢包率分别加权后的和值;对于多个所述传输质量的比较中,以所述和值最低者为最优。结合第一方面的第六种实现方式,在第一方面的第八种实现方式中,所述传输质量的确定方式为:所述往返时延与所述丢包率分别加权后的和值;对于多个所述传输质量的比较中,以所述和值最低者为最优。结合第一方面,在第一方面的第九种实现方式中,所述传输质量的确定方式为:所述往返时延与所述丢包率分别加权后的和值;对于多个所述传输质量的比较中,以所述和值最低者为最优。,所述数据报文为符合tcp或udp协议定义的数据报文,所述封隧道和所述解隧道均基于udp协议执行。第二方面,本发明实施例中提供了一种多数据连接接入设备,其包括:接收模块,用于接收任意终端访问所述远程服务而发送的数据报文;节点模块,用于请求节点管理服务器确定作为最优节点用于中转该数据报文的最优网关服务器,该最优网关服务器选自为所述远程服务的服务机群构建的分布式部署架构所配备的多个网关服务器;优选模块,用于测试已接入的多个数据连接到达所述最优网关服务器的传输质量,确定具有最优传输质量的最优数据连接;传输模块,用于调用所述最优数据连接发送封隧道后的所述数据报文,经所述最优网关服务器中转给与其连接的属于所述服务机群的业务服务器。相对于现有技术,本发明具有如下技术效果:第一、本发明通过先向节点管理服务器确定最优网关节点、再在本地的多条数据连接中选取与最优网关节点相匹配的最优线路,使得网络传输质量整体最优,保证了数据传输。第二,在保证传输质量整体最优的基础上,本发明通过对数据报文进行封隧道传输,保证数据传输安全的同时,使得多个数据连接相互之间的数据报文并行不悖。第三,本发明实现了独立的多数据连接接入设备及与之相匹配的于一端实现的远程服务访问路径控制方法,方便用户接入多个不同运营商的数据连接,对接入该接入设备的终端访问所述的远程服务提供了一站式的解决方案。总而言之,本发明的整个技术方案在单端实现,便于为用户提供独立的终端式接入设备,使用户访问特定远程服务的效率和安全性都能够大大提高。本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1示出了本发明一个实施例的远程服务访问路径控制方法的流程图。图2示出了本发明一个实施例中确定最优传输质量的最优数据连接的流程图。图3示出了本发明一个实施例的多数据连接接入设备的结构示意图。图4示出了本发明一个实施例中的优选模块的结构示意图。图5示出了本发明实施例中的数据报文的封隧道和解隧道过程。图6示出了本发明实施例中以命令获取网络传输过程的往返时延及丢包率的示例图。具体实施方式为了使本
技术领域
的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如110、120等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。本领域普通技术人员可以理解,本发明涉及到的名词含义解析如下:分布式部署架构:分布式是以缩短单个任务的执行时间来提升效率的,通常为了提高业务效率,将一个业务分拆为多个子业务,部署在不同地域的一对台或多台处理独立子业务的服务器上,由分布式部署架构的这些分布在不同地域的服务器构成的服务器群,即为本发明所称的服务机群。服务机群:服务机群则是通过提高单位时间内执行的任务数来提升效率,具体是指多台高性能微机通过商用网络交换机相互连接,并拥有各自独立的操作系统、主板、内存、硬盘和其他1/0设备,以构成机群的计算节点。通俗地讲,就是把多台服务器通过快速通信链路连接起来,从外部看来,这些服务器就像一台服务器在工作,而对内来说,外面来的负载通过一定的机制动态地分配到这些节点机中去,例如,服务机群中的一台或多台业务服务器分别用于推送视频流这一远程服务,从而达到超级服务器才有的高性能、高可用。在分布式部署架构中,服务机群可以用于提供由多个子业务相关的服务器构成的大业务。业务服务器:此处可理解为前述分布式部署架构中用于处理独立子业务的服务器,因此,业务服务器(businessserver)是为满足业务的网络需求,而特殊设计的硬件和软件平台,它有助于提高生产线的生产力或效率,以降低计算机的硬件和软件资本开销。业务服务器可允许计算机被安置在网络和共享应用程序、文件和数据存储中。它们还可以被用来改善电脑数据的安全性,让计算机与外界的交流更加的安全。例如,利用业务服务器,远程服务得以稳定、连续的传输至客户端,如视频流,客户端不必等待整个内容传送完毕,就可以观看到即时的连续的内容。网关服务器:简称网关(gateway)又称网间连接器、协议转换器,默认网关在网络层上以上实现网络互连,是比较复杂的网络互连设备,仅用于两个高层协议不同的网络互连,网关的结构也和路由器类似,不同的是互连层,网关既可以用于广域网互连,也可以用于局域网互连,网关是一种充当转换重任的计算机系统或设备。实质上,网关是一个网络通向其他网络的ip地址,例如,有网络a和网络b,网络a的ip地址范围为“192.168.1.1~192.168.1.254”,子网掩码为“255.255.255.0”;网络a的ip地址范围为“192.168.2.1~192.168.2.254”,子网掩码为“255.255.255.0”。在没有路由器的情况下,两个网络之间是不能进行tcp/ip通信的,即使是两个网络连接在同一台交换机或集线器上,tcp/ip协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络a中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络b的网关,网络b的网关再转发给网络b的某个主机,这就是网络a向网络b转发数据包的过程。在本发明的分布式部署架构中,分散各地的业务服务器,均需要配备独立的网关服务器,经过网关服务器接入互联网,实现与外网的互联互通,从而使得业务服务器可以提供远程服务。节点管理服务器:节点管理服务器是相对服务器机群来说的,在多服务器域中,必须唯一指定其中一台服务器为主服务器,其他服务器作为受控服务器,每一个受控服务器在这个域中是作为一个节点(node)存在的,或叫节点服务器,而每个域中的主服务器称为节点管理服务器。通俗的讲,设定节点管理服务器有一个表,记载着服务机群中各业务服务器的网关(ip)服务器、地点、接入运营商、丢包率、往返时延(后两项可以决定通道传输质量)这种对应关系,当收到多路径接入设备提交的ip地址信息时,确定多路径接入设备的地址,以及确定相关策略找出其对应的网关。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参考图1,本发明实施例中提供了一种远程服务访问路径控制方法,包括如下步骤:s110:接收任意终端访问所述远程服务而发送的数据报文;所述任意终端可为手机端、pad、pc端等终端设备,该任意终端为请求建立远程服务而发送数据报文。远程服务为利用通信手段实现不同地域(区域)之间的实时服务方式。在本发明中远程服务是指基于tcp/ip协议的互联网服务,例如网络直播服务、即时通信服务、数据下载服务等等,例如在分布式架构中,服务机群中的一台或多台业务服务器分别用于推送视频流这一远程服务。本领域的人员可知,tcp协议(transmissioncontrolprotocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,面向连接意味着两个使用tcp的应用(通常是一个客户和一个服务器)在彼此交换数据包之前必须先建立一个tcp连接;udp协议(userdatagramprotocol,用户数据报协议),是osi(opensysteminterconnection,开放式系统互联)参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,且udp协议采用端口号为不同的应用保留各自的数据传输通道,来实现对同一时刻内多项应用同时发送和接收数据的支持。数据发送一方(客户端或服务器端)将udp数据报通过源端口发送出去,而数据接收一方则通过目标端口接收数据。不同于tcp协议,由于udp协议无需三次握手四次断开,传输速度相对tcp极快,甚至不需要应答,故其本发明优先使用udp协议进行数据传输。数据报文是网络传输的单位,传输过程中会不断的封装成分组、包、帧来传输,封装的方式就是添加一些信息段,一般就是报文头以一定格式组织起来的数据比如里面有报文类型、报文版本、报文长度、报文实体等等信息;解封装,就是封装的逆过程,拆解协议包,处理包头中的信息,取出原来的数据报文。本发明中,数据报文为符合tcp或udp协议定义的数据报文,例如直播服务所产生的视频流。对于这种源发的数据报文,本发明将对其做进一步的封隧道处理,相应的,也将对已封隧道的数据报文进行解隧道以获取其原始报文,详见后续揭示。本发明的方法适于实现在一台独立的接入设备中,该接入设备能够接入多路数据连接,可以分别属于不同的或相同的运营商,并且提供诸如wifi、双绞线等公知的终端接入方式。且该设备可以处理多台通过不同接口接入的终端的数据。例如,设备为每一个接入的客户端创建一个缓存数据集合,在该缓存数据集合中存储着客户端对远程服务需求的最新数据信息,以使设备根据该缓存数据集合可以快速获取最新数据信息,并根据该最新数据信息对远程服务需求进行及时处理。s120:请求节点管理服务器确定作为最优节点用于中转该数据报文的最优网关服务器,该最优网关服务器选自为所述远程服务的服务机群构建的分布式部署架构所配备的多个网关服务器;远程服务的服务机群构建的分布式部署架构所配备的多个网关服务器是指实现分布在不同地域的执行同一类型业务(远程服务)的多个网关服务器。例如,表1为多个网关服务器的分布地点。表1多个网关服务器的分布地点由表1可知,分布在不同地方的网关可能会使用不同的运营商数据连接,但是,也存在不同地方的网关使用同一个运营商数据连接;通常一个网关使用一个运营商数据连接,但也存在某些地方的网关使用多条不同运营商的数据连接的情况。具体地,请求节点管理服务器确定作为最优节点用于中转该数据报文的最优网关服务器的过程包括如下步骤:向所述节点管理服务器发送最优节点获取请求,在该请求中提供本设备的地址信息;例如,该设备处于长沙,则向节点管理服务器发送最优节点获取请求时,在请求中包括本设备的ip地址,例如空间位置在长沙的ip地址,以ip地址作为设备地址信息。ip地址是ip协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。接收所述节点管理服务器相应反馈的依据所述地址信息确定的所述最优网关服务器作为所述的最优节点以用于中转所述的数据报文。优选地,所述节点管理服务器确定的最优网关服务器相对于所述分布式部署架构所配备的其他网关服务器,或其部署地域更为接近所述终端,和/或其通道传输质量在所有网关服务器中最优,和/或其数据连接与所述最优数据连接属于相同运营商,以符合以上条件确定其为最优节点。例如,前述示例中,当本的接入设备将其自身的ip地址提交给节点管理服务器后,节点管理服务器可以通过该ip地址确定其具体地域所在,如前例所述的长沙。继而,节点管理服务器可以在表1的基础上,参照如下表2所示的条件来确定最优网关服务器:表2最优网关服务器相对于所述分布式部署架构所配备的其他网关服务器满足的条件由ip地址确定设备所在地在长沙时,则确定最优网关服务器地点如表3所示:表3终端运营商为移动、所在地在长沙的最优网关服务器地点最优网关服务器地点运营商满足条件广州移动相同运营商武汉移动、电信相同运营商、地域最近北京网通通道传输质量最优深圳移动相同运营商前述示例中,节点管理服务器是否确定接入设备的数据连接与网关服务器所采用的数据连接属于同一运营商,取决于接入设备发起所述最优节点获取请求时是否向节点管理服务器报告其所采用的数据连接,因此可视为可选项。进一步,节点管理服务器对于所述通道传输质量的计算,本实施例提出两种示例,一是节点管理服务器按照后续步骤s133的方法主动去测试各个网关服务器以获取其各自的丢包率和往返时延,二是各业务服务器采用相似的方法或手段去测试节点管理服务器后获得丢包率和往返时延,并把这些结果提交给节点管理服务器保存。可见,所述通道传输质量依据所述节点管理服务器与网关服务器之间的传输通道的测试数据包往返时延及丢包率所决定的传输质量确定。因此,节点管理服务器可以通过查询各业务服务器相对应的网关服务器的往返时延和丢包率等信息,来确定到达各网关服务器的通道传输质量。需要说明的是,为了传输的需要,业务服务器需向节点管理服务器提前注册的信息,该注册信息中包括网关、ip地址(以确定客户端的地址信息)、接入运营商、丢包率、往返时延等。而其中的通道传输质量的计算,节点管理服务器通过测试各网关服务器的丢包率和往返时延得到的。本领域的技术人员可知:往返时延(rtt,round-triptime),是指在计算机网络中它是一个重要的性能指标,表示从发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认),总共经历的时延。丢包率(losstolerance或packetlossrate)是指测试中所丢失数据包数量占所发送数据组的比率。作为本实施例的一个深入手段,所述传输质量的确定方式为:所述往返时延与所述丢包率分别加权后的和值;对于多个所述传输质量的比较中,以所述和值最低者为最优。权值评分表示在评价过程中,是被评价对象的不同侧面的重要程度的定量分配,对各评价因子在总体评价中的作用进行区别对待。某一指标的权值是指该指标在整体评价中的相对重要程度。确定体系指标之后需要确定各指标在体系结构中所发挥影响的大小,即各指标的权值。当然,往返时延和丢包率的权值不同对传输质量的评估结果的相对重要程度则不同。例如,设定往返时延的权值为x(0<x<1)、丢包率的权值为y(1<y<100)且100x+y=1,如果100x/y的值越接大,则表示评估模型中偏重往返时延对传输质量的影响,否则表示丢包率对传输质量的评估更重要,当然,当100x/y的值接近或者等于1时,则表示评估模型中对丢包率和往返时延的要求都比较高。例如,设备终端地址在长沙,往返时延与丢包率分别加权后的和值等式为x*往返时延+y*丢包率,往返时延与丢包率加权值分别为x=0.2和y=80,加权后的和值如表4所示:表4往返时延与丢包率分别加权后的和值对于上述5个所述传输质量的比较中,偏重于丢包率对通道质量的影响,以武汉加权后的和值最低为最优。例如,设备终端地址在长沙,往返时延与丢包率分别加权后的和值等式为x*往返时延+y*丢包率,往返时延与丢包率加权值分别为x=0.7和y=30,加权后的和值如表5所示:表5往返时延与丢包率分别加权后的和值对于上述5个传输质量的比较中,偏重于往返时延对通道质量的影响,以武汉加权后的和值最低为最优。需要说明的是,上述两个表中往返时延与丢包率分别加权后的和值都是以武汉加权后的和值最低为最优,是因为设定的武汉的往返时延和丢包率相对而言是比较低的,且武汉相对其他适配于长沙的最优网关服务器,其部署地域更为接近长沙,尤其是接入设备的数据连接与网关服务器的数据连接属于相同运营商(移动)。当然,本领域技术人员应该知道,这只是本实施例的一个传输质量的确定计算规则,还有其他类似或变通的计算规则;尤其是在现实需求中,影响传输质量的还有其他因素,应根据具体情况具体分析。s130:测试已接入的多个数据连接到达所述最优网关服务器的传输质量,确定具有最优传输质量的最优数据连接;前述节点管理服务器作为反馈,将向本接入设备反馈最优网关服务器。通常,节点管理服务器仅需返回单独一个最优网关服务器(以ip地址方式返回即可),当然,也可以返回一个最优网关服务器列表,在其中包含多个相对最优的网关服务器,再由本接入设备统一测试选定。无论节点管理服务器返回最优网关服务器的数量及形式如何,均不影响本发明的实施。对于节点管理服务器推荐的每一个最优网关服务器而言,请参阅图2,需要分别测试本接入设备已接入的多个数据连接到达所述最优网关服务器的传输质量,从而确定具有最优传输质量的最优数据连接。其过程包括如下具体步骤:s131:逐一调用已接入的不同数据连接向所述最优网关服务器发送测试数据包;该测试数据包括测试报文,进行测试时,调用相关的通信接口将该测试数据包通过已接入的不同数据连接传输至最优网管服务器,以获得各条数据连接的测试结果,该测试结果中的内容至少包含往返时延、丢包率。例如,当本接入设备接入的数据连接分别为以运营商为移动、电信、联通甚至更多其他运营商建立的数据连接时,分别通过这些数据连接向确定的最优网关服务器发送测试数据包以获取通过数据连接的测试结果,如表6所示:表6通过本接入设备的数据连接向确定的最优网关服务器发送测试数据包如表6所示,已知本接入设备接入的数据连接分别为以运营商为移动、电信、联通建立的数据连接时,则分别通过这3条数据连接一一向确定的最优网关服务器发送测试数据包以获取至少包含往返时延、丢包率等内容的测试结果;当然,本接入设备接入的数据连接可能有多条,不限于表6中列出的三条。需要说明的是,表6中的序号只是为了说明需要,并不是实际中的测试顺序,本领域中的技术人员应当知晓。s132:获取各条数据连接的测试结果数据,提取其中的往返时延及丢包率;本发明提供的传输质量评估模型利用往返时延(rtt)和丢包率(packettolerance)作为评估参数,以确保最优数据连接具有最高的视频流传输质量,以保障数据的传输速率和质量,减少数据重传,降低网络负载,进而提高接入客户端用户的体验效果;在实际网络情况下,使用丢包率和往返时延的双参数评估对传输质量的评估结果比单独使用丢包率或者往返时延的单参数评估得到的评估结果更精确。在实际测试中,通过一条数据连接发送的测试数据包可能不止一个,如此数据记录也就有多个,即存在多个往返时延和丢包率,则提取的往返时延和丢包率的值也有多个,因此选择一个比较合理的值就尤为关键。例如,以ping一个网址(www.yy.com)为例,如图6所示,可知发送的测试数据包有多个,则获取的rtt也就有多个,图中示出了rtt最大值、最小值及均值,当然实际测试中会使用更多的方法获取以更多或更相关的值,这只是个示例。对于图6中的三个不同的rtt,表7给出了分别取这些值得理由:表7取值方法和取值理由比较如表7所示,rtt取最大时表示通道传输质量极差,实际应用中基本不选;rrt取最小值表示通道传输质量极好,最大化的实现了传输机制,是比较符合实验室的期望;取均值表示为实际使用中合理均衡了网络资源,是测试首选。而且在实际使用中,最大值和最小值出现的概率极小,不符合实际需求,而均值能够体现出一种常态,也即接近实际中测量值,能够减小误差。s133:将由往返时延与丢包率决定的传输质量最优的数据连接确定为所述的最优数据连接。例如,沿用步骤s120中对往返时延和丢包率的加权计算规则,设定评价最优数据连接的往返时延与丢包率加权值分别为x=0.5和y=50,测试结果中的往返时延和丢包率取均值后以及加权后的和值如表8所示:表8通过本接入设备的数据连接向确定的最优网关服务器发送测试数据包如表8所示,调用接入设备以运营商为电信的数据连接测得的传输质量最优,调用接入设备以运营商为移动的数据连接测得的传输质量次之,调用接入设备以运营商为联通的数据连接测得的传输质量相对前两者而言最差,因此确定接入设备以运营商为电信的数据连接为接入设备的最优数据连接。需要指出的是,如果节点管理服务器向本接入设备反馈的是一个最优网关服务器列表,在其中包含多个相对最优的网关服务器,那么,亦可沿用上述原理,就列表中的每一台网关服务器调用不同的数据连接进行测试,并且在最终结果中确定最终的唯一一个最优网关服务器和一条与之相应的最优数据连接。本领域技术人员应当知晓此一变通。s140:调用所述最优数据连接发送封隧道后的所述数据报文,经所述最优网关服务器中转给与其连接的属于所述服务机群的业务服务器。数据包利用网络在不同设备或服务器之间传输时,为了可靠和准确地发送到目的地,并且高效地利用传输资源(传输设备和传输线路),事先要对数据包进行拆分和打包;为了保障数据传输的安全性和可靠性,本发明中某一终端的数据报文在传输时,由于本接入设备已经按照上述的步骤确定了最优的数据连接,因此,该最优数据连接可供该终端的数据包传输,为进一步加强数据传输的安全性,故采用封隧道的传输方式传输该数据报文经相应的最优网关服务器中转给相应的业务服务器。如图5所示,由终端发送的数据报文为符合tcp或udp协议定义的数据报文,例如直播服务所产生的视频流,相对需要快速响应、且保证视频数据传输的安全,因此,采用udp协议进行传输,而传输过程中需要对数据报文进行封装,在数据到来后使用udp协议对数据进行传输层的封装并添加udp首部,再将封装过的udp数据传输到的网络层用ip协议进行网络层的封装并添加ip首部;解封装时,则是相反的,在数据从网络层到传输层时,用ip协议进行网络层的解封装并去掉ip首部,然后传输层到终端时,用udp协议对数据进行传输层的解封装并去掉udp首部。当然,上述仅是针对一个终端数据包传输的最优数据连接传输的单隧道,当有其他终端接入时,按照s110至s140针对各个终端确定其最优数据连接并进行一个多隧道的传输。作为本实施例的一个深化手段,每个网关服务器与提供所述远程服务的服务机群的业务服务器相连接,以便封隧道后的所述数据报文通过所述最优网关服务器到达与其连接的业务服务器。例如,由上述步骤或举例可知,确定最优数据连接并进行封隧道后,提供远程服务的服务机群的最优网关服务器在武汉,则该最优网关服务器和确定了最优数据连接的且与最优网关服务器相关的业务服务器相连接,以便有关远程服务请求的数据包在封隧道后经该最优网关服务器到达与该业务服务器。进一步,在步骤s140之后,还包括如下步骤,接收所述业务服务器通过所述最优网关服务器中转,经所述最优数据连接反馈的数据报文;具体而言,所述业务服务器接收到本接入设备封隧道的数据报文后,将进行解隧道,并解析该数据报文,对该数据报文进行响应,而反馈另一由其封隧道的数据报文。业务服务器反馈的封隧道的数据报文,将逆向经其最优网关服务器进行中转,经所述的最优数据连接反馈给本接入设备以便中转给相应的用户终端。继而,本接入设备便可对所述由业务服务器封隧道的数据报文进行解隧道,将解隧道后的数据报文发送给所述的终端。经过步骤s110至s140,终端请求远程服务并经过封隧道处理后的数据报文发送到业务服务器被解隧道处理后,业务服务器返回该数据报文并经封隧道处理,到达该终端时,解隧道处理该数据报文。例如,终端在长沙,最优网关服务器在武汉,当最优数据连接中与最优网关服务器相连的业务服务器接收到了终端封隧道的数据报文(远程服务请求)并进行解隧道处理,待提供了该远程服务后,将该数据报文经最优连接并进行封隧道处理经武汉的最优网关服务器转发给长沙的终端,到达该终端时,解隧道处理该数据报文。通过对以上本发明的一种远程服务访问路径控制方法的揭示可以看出:第一,本发明通过先向节点管理服务器确定最优网关节点、再在本地的多条数据连接中选取与最优网关节点相匹配的最优线路,使得网络传输质量整体最优,保证了数据传输。第二,在保证传输质量整体最优的基础上,本发明通过对数据报文进行封隧道传输,保证数据传输安全的同时,使得多个数据连接相互之间的数据报文并行不悖。请参考图3,本发明实施例中提供了一种多数据连接接入设备,其包括:接收模块310,用于接收任意终端访问所述远程服务而发送的数据报文;所述任意终端可为手机端、pad、pc端等终端设备,该任意终端为请求建立远程服务而发送数据报文。远程服务为利用通信手段实现不同地域(区域)之间的实时服务方式。在本发明中远程服务是指基于tcp/ip协议的互联网服务,例如网络直播服务、即时通信服务、数据下载服务等等,例如在分布式架构中,服务机群中的一台或多台业务服务器分别用于推送视频流这一远程服务。数据报文是网络传输的单位,传输过程中会不断的封装成分组、包、帧来传输,封装的方式就是添加一些信息段,一般就是报文头以一定格式组织起来的数据比如里面有报文类型、报文版本、报文长度、报文实体等等信息;解封装,就是封装的逆过程,拆解协议包,处理包头中的信息,取出原来的数据报文。本发明中,为了保证数据传输使用udp协议进行数据传输,且该数据报文为符合tcp或udp协议定义的数据报文,例如直播服务所产生的视频流。对于这种源发的数据报文,本发明将对其做进一步的封隧道处理,相应的,也将对已封隧道的数据报文进行解隧道以获取其原始报文,详见后续揭示。本发明的设备可为一台独立的接入设备,该接入设备能够接入多路数据连接,可以分别属于不同的或相同的运营商,并且提供诸如wifi、双绞线等公知的终端接入方式。如此,该接入设备可以处理多台通过不同接口连接接入的终端的数据。例如,设备为每一个接入的客户端创建一个缓存数据集合,在该缓存数据集合中存储着客户端对远程服务需求的最新数据信息,以使设备根据该缓存数据集合可以快速获取最新数据信息,并根据该最新数据信息对远程服务需求进行及时处理。节点模块320,用于请求节点管理服务器确定作为最优节点用于中转该数据报文的最优网关服务器,该最优网关服务器选自为所述远程服务的服务机群构建的分布式部署架构所配备的多个网关服务器;远程服务的服务机群构建的分布式部署架构所配备的多个网关服务器是指实现分布在不同地域的执行同一类型业务(远程服务)的多个网关服务器。例如,表1为多个网关服务器的分布地点。由表1可知,分布在不同地方的网关可能会使用不同的运营商数据连接,但是,也存在不同地方的网关使用同一个运营商数据连接;通常一个网关使用一个运营商数据连接,但也存在某些地方的网关使用多条不同运营商的数据连接的情况。具体地,节点模块320请求节点管理服务器确定作为最优节点用于中转该数据报文的最优网关服务器的过程如下:节点模块320向所述节点管理服务器发送最优节点获取请求,在该请求中提供本设备的地址信息;例如,该设备处于长沙,则向节点管理服务器发送最优节点获取请求时,在请求中至少包括本设备ip地址,例如空间位置在长沙的ip地址,以ip地址作为设备地址信息。ip地址是ip协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。节点模块320接收所述节点管理服务器相应反馈的依据所述地址信息确定的所述最优网关服务器作为所述的最优节点以用于中转所述的数据报文。优选地,所述节点管理服务器确定的最优网关服务器相对于所述分布式部署架构所配备的其他网关服务器,或其部署地域更为接近所述终端,和/或其通道传输质量在所有网关服务器中最优,和/或其数据连接与所述最优数据连接属于相同运营商,以符合以上条件确定其为最优节点。例如,前述示例中,当本接入设备将其自身的ip地址提交给节点管理服务器后,节点管理服务器可以通过该ip地址确定其具体地域所在,如前例所述的长沙。继而,节点管理服务器可以在表1的基础上,参照如表2所示的条件来确定最优网关服务器。因此,当由ip地址确定设备所在地在长沙时,则确定最优网关服务器地点如表3所示。前述示例中,节点管理服务器是否确定接入设备的数据连接与网关服务器所采用的数据连接属于同一运营商,取决于接入设备发起所述最优节点获取请求时是否向节点管理服务器报告其所采用的数据连接,因此可视为可选项。进一步,节点管理服务器对于所述通道对于传输质量的计算,本实施例提出两种示例,一是节点管理服务器按照后续测试单元330主动测试各个网关服务器以获取其各自的丢包率和往返时延,二是各业务服务器采用相似的方法或手段去测试节点管理服务器后获得丢包率和往返时延,并把这些结果提交给节点管理服务器保存。可见,所述通道传输质量依据所述节点管理服务器与网关服务器之间的传输通道的测试数据包往返时延及丢包率所决定的传输质量确定。因此,节点管理服务器可以通过查询各业务服务器相对应的网关服务器的往返时延和丢包率等信息,来确定到达各网关服务器的通道传输质量。需要说明的是,为了传输的需要,业务服务器需向节点管理服务器提前注册的信息,该注册信息中包括网关、ip地址(以确定客户端的地址信息)、接入运营商、丢包率、往返时延等。而其中的通道传输质量的计算,节点管理服务器通过测试各网关服务器的丢包率和往返时延得到的。作为本实施例的一个深入手段,所述传输质量的确定方式为:所述往返时延与所述丢包率分别加权后的和值;对于多个所述传输质量的比较中,以所述和值最低者为最优。权值评分表示在评价过程中,是被评价对象的不同侧面的重要程度的定量分配,对各评价因子在总体评价中的作用进行区别对待。某一指标的权值是指该指标在整体评价中的相对重要程度。确定体系指标之后需要确定各指标在体系结构中所发挥影响的大小,即各指标的权值。当然,往返时延和丢包率的权值不同对传输质量的评估结果的相对重要程度则不同。例如,设定往返时延的权值为x(0<x<1)、丢包率的权值为y(1<y<100)且100x+y=1,如果100x/y的值越接大,则表示评估模型中偏重往返时延对传输质量的影响,否则表示丢包率对传输质量的评估更重要,当然,当100x/y的值接近或者等于1时,则表示评估模型中对丢包率和往返时延的要求都比较高。例如,设备终端地址在长沙,往返时延与丢包率分别加权后的和值等式为x*往返时延+y*丢包率,往返时延与丢包率加权值分别为x=0.2和y=80,加权后的和值如表4所示。例如,设备终端地址在长沙,往返时延与丢包率分别加权后的和值等式为x*往返时延+y*丢包率,往返时延与丢包率加权值分别为x=0.7和y=30,加权后的和值如表5所示。对于表4和表5中的5个传输质量的比较中,表4偏重于丢包率对通道质量的影响,以武汉加权后的和值最低为最优;表5偏重于往返时延对通道质量的影响,以武汉加权后的和值最低为最优。需要说明的是,表4和表5中往返时延与丢包率分别加权后的和值都是以武汉加权后的和值最低为最优,是因为设定的武汉的往返时延和丢包率相对而言是比较低的,且武汉相对其他适配于长沙的最优网关服务器,其部署地域更为接近长沙,尤其是接入设备的数据连接与网关服务器的数据连接属于相同运营商(移动)。当然,本领域技术人员应该知道,这只是本实施例的一个传输质量的确定计算规则,还有其他类似或变通的计算规则;尤其是在现实需求中,影响传输质量的还有其他因素,应根据具体情况具体分析。优选模块330,用于测试已接入的多个数据连接到达所述最优网关服务器的传输质量,确定具有最优传输质量的最优数据连接;前述节点管理服务器作为反馈,将向本接入设备反馈最优网关服务器。通常,节点管理服务器仅需返回单独一个最优网关服务器(以ip地址方式返回即可),当然,也可以返回一个最优网关服务器列表,在其中包含多个相对最优的网关服务器,再由本接入设备统一测试选定。无论节点管理服务器返回最优网关服务器的数量及形式如何,均不影响本发明的实施。对于节点管理服务器推荐的每一个最优网关服务器而言,请参阅图4所示,优选模块330需要分别测试本接入设备已接入的多个数据连接到达所述最优网关服务器的传输质量,从而确定具有最优传输质量的最优数据连接。其具体包括如下单元:测试单元331,用于逐一调用已接入的不同数据连接向所述最优网关服务器发送测试数据包;该测试数据包括测试报文,进行测试时,调用相关的通信接口将该测试数据包通过已接入的不同数据连接传输至最优网管服务器,以获得各条数据连接的测试结果,该测试结果中的内容至少包含往返时延、丢包率。例如,当本接入设备接入的数据连接分别为以运营商为移动、电信、联通甚至更多其他运营商建立的数据连接时,分别通过这些数据连接向确定的最优网关服务器发送测试数据包以获取通过数据连接的测试结果,如表6所示。如表6所示,已知本接入设备接入的数据连接分别为以运营商为移动、电信、联通建立的数据连接时,则分别通过这3条数据连接一一向确定的最优网关服务器发送测试数据包以获取至少包含往返时延、丢包率等内容的测试结果;当然,本接入设备接入的数据连接可能有多条,不限于表6中列出的三条。需要说明的是,表6中的序号只是为了说明需要,并不是实际中的测试顺序,本领域中的技术人员应当知晓。提取单元332,用于获取各条数据连接的测试结果数据,提取其中的往返时延及丢包率;本发明提供的传输质量评估模型利用往返时延(rtt)和丢包率(packettolerance)作为评估参数,以确保最优数据连接具有最高的视频流传输质量,以保障数据的传输速率和质量,减少数据重传,降低网络负载,进而提高接入客户端用户的体验效果;在实际网络情况下,使用丢包率和往返时延的双参数评估对传输质量的评估结果比单独使用丢包率或者往返时延的单参数评估得到的评估结果更精确。在实际测试中,通过一条数据连接发送的测试数据包可能不止一个,如此数据记录也就有多个,即存在多个往返时延和丢包率,则提取的往返时延和丢包率的值也有多个,因此选择一个比较合理的值就尤为关键。例如,以ping一个网址(www.yy.com)为例,如图6所示,可知发送的测试数据包有多个,则获取的rtt也就有多个,图中示出了rtt最大值、最小值及均值,当然实际测试中会使用更多的方法获取以更多或更相关的值,这只是个示例。对于图6中的三个不同的rtt,表7给出了分别取这些值得理由。如表7所示,rtt取最大时表示通道传输质量极差,实际应用中基本不选;rrt取最小值表示通道传输质量极好,最大化的实现了传输机制,是比较符合实验室的期望;取均值表示为现实使用中合理均衡了网络资源,是测试首选。而且在实际使用中,最大值和最小值出现的概率极小,不符合实际需求,而均值能够体现出一种常态,也即接近实际中测量值,能够减小误差。筛选单元333,用于将由往返时延与丢包率决定的传输质量最优的数据连接确定为所述的最优数据连接。例如,沿用节点模块320中对往返时延和丢包率的加权计算规则,设定评价最优数据连接的往返时延与丢包率加权值分别为x=0.5和y=50,测试结果中的往返时延和丢包率取均值后以及加权后的和值如表8所示。如表8所示,调用接入设备以运营商为电信的数据连接测得的传输质量最优,调用接入设备以运营商为移动的数据连接测得的传输质量次之,调用接入设备以运营商为联通的数据连接测得的传输质量相对前两者而言最差,因此确定接入设备以运营商为电信的数据连接为接入设备的最优数据连接。传输模块340,用于调用所述最优数据连接发送封隧道后的所述数据报文,经所述最优网关服务器中转给与其连接的属于所述服务机群的业务服务器。数据包利用网络在不同设备或服务器之间传输时,为了可靠和准确地发送到目的地,并且高效地利用传输资源(传输设备和传输线路),事先要对数据包进行拆分和打包;为了保障数据传输的安全性和可靠性,本发明中某一终端的数据报文在传输时,由于本接入设备已经由上述模块或单元确定了最优的数据连接,因此,该最优数据连接可供该终端的数据包传输,为进一步加强数据传输的安全性,故采用封隧道的传输方式传输该数据报文经相应的最优网关服务器中转给相应的业务服务器。如图5所示,由终端发送的数据报文为符合tcp或udp协议定义的数据报文,例如直播服务所产生的视频流,相对需要快速响应、且保证视频数据传输的安全,因此,采用udp协议进行传输,而传输过程中需要对数据报文进行封装,在数据到来后使用udp协议对数据进行传输层的封装并添加udp首部,再将封装过的udp数据传输到的网络层用ip协议进行网络层的封装并添加ip首部;解封装时,则是相反的,在数据从网络层到传输层时,用ip协议进行网络层的解封装并去掉ip首部,然后传输层到终端时,用udp协议对数据进行传输层的解封装并去掉udp首部。当然,上述仅是本接入设备针对一个终端数据包传输的最优数据连接传输的单隧道,当有其他终端接入时,本接入设备中的接收模块310、节点模块320、优选模块330及传输模块340等其他模块或单元将针对各个终端确定其最优数据连接并进行一个多隧道的传输。作为本实施例的一个深化手段,每个网关服务器与提供所述远程服务的服务机群的业务服务器相连接,以便封隧道后的所述数据报文通过所述最优网关服务器到达与其连接的业务服务器。例如,由上述模块或单元的处理和举例可知,传输模块340确定了最优数据连接并进行封隧道后,提供远程服务的服务机群的最优网关服务器在武汉,则该最优网关服务器和传输模块340确定的最优数据连接的且与最优网关服务器相关的业务服务器相连接,以便有关远程服务请求的数据包在封隧道后经该最优网关服务器到达与该业务服务器。传输模块340,还用于接收所述业务服务器通过所述最优网关服务器中转,经所述最优数据连接反馈的数据报文;具体而言,所述业务服务器接收到本接入设备封隧道的数据报文后,将进行解隧道,并解析该数据报文,对该数据报文进行响应,而反馈另一由其封隧道的数据报文。业务服务器反馈的封隧道的数据报文,将逆向经其最优网关服务器进行中转,经所述的最优数据连接反馈给本接入设备以便中转给相应的用户终端。继而,本接入设备便可对所述由业务服务器封隧道的数据报文进行解隧道,将解隧道后的数据报文发送给所述的终端。经过接收模块310至、节点模块320、优选模块330及传输模块340等模块或单元的处理,终端请求远程服务并经过封隧道处理后的数据报文发送到业务服务器被解隧道处理后,业务服务器返回该数据报文并经封隧道处理,到达该终端时,解隧道处理该数据报文。例如,终端在长沙,最优网关服务器在武汉,当最优数据连接中与最优网关服务器相连的业务服务器接收到了终端封隧道的数据报文(远程服务请求)并进行解隧道处理,待提供了该远程服务后,将该数据报文经最优连接并进行封隧道处理经武汉的最优网关服务器转发给长沙的终端,到达该终端时,解隧道处理该数据报文。上述有关多数据连接接入设备的实施例的具体说明,可以参见一种远程服务访问路径控制方法部分的实施例,在此不做赘述。本发明实现了独立的多数据连接接入设备及与之相匹配的于一端实现的远程服务访问路径控制方法,方便用户接入多个不同运营商的数据连接,对接入该接入设备的终端访问所述的远程服务提供了一站式的解决方案。综上所述,本发明的整个技术方案在单端实现,便于为用户提供独立的终端式接入设备,使用户访问特定远程服务的效率和安全性都能够大大提高。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1