MSS的修改方法、装置及系统与流程

文档序号:13335465阅读:422来源:国知局
本发明涉及通信领域,具体而言,涉及一种mss的修改方法、装置及系统。
背景技术
::目前一般的传输控制协议(transfercontrolprotocol,简称为tcp)连接中最大分段大小(maximumsegmentsize,简称为mss)值的协商是依赖于建立连接的服务器和客户端的。双方通过tcp的三次握手过程,来实现mss值的协商,这个协商取双方值较小的一方,但是目前各个运营商对于mss值有不同的定义,如果不进行任何修改,服务器发送的数据包在通过运营商网络传输时,会进行分片,合并等操作,由此导致数据速率的明显下降,用户对设备的体验度大大降低。针对相关技术中,由于运营商对mss值有不同的定义,那么服务器在发送数据包时经常会需要对数据包进行分片等操作,这样容易导致服务器发送数据包的传输速率低以及用户体验度差的问题,尚未提出有效的解决方案。技术实现要素:本发明实施例提供了一种mss的修改方法、装置及系统,以至少解决相关技术中由于运营商对mss值有不同的定义,那么服务器在发送数据包时经常会需要对数据包进行分片等操作,这样容易导致服务器发送数据包的传输速率低以及用户体验度差的问题。根据本发明的一个方面,提供了一种mss的修改方法,包括:获取具有无线保真wifi功能的数据设备接收到的用于进行网络连接的第一mss值;将所述第一mss值修改为第二mss值,其中,所述第二mss值是指所述数据设备根据该数据设备所在的网络获取的mss值。可选地,至少通过以下方式确定所述第二mss值:获取所述数据设备所在网络中的部分或全部网络节点;向所述部分或全部网络节点发送传输控制协议tcp连接,并接收所述部分或全部网络节点反馈的tcp握手数据包;从所述tcp握手数据包中解析出部分或全部网络节点对应的mss值,从所述mss值中选取最小的mss值作为所述第二mss值。可选地,向所述部分或全部网络节点发送传输控制协议tcp连接之前,所述方法还包括:获取所述部分或全部网络节点的ip地址,其中,根据所述ip地址向所述部分或全部网络节点发送tcp连接。可选地,将所述第一mss值修改为所述数据设备中预先保存的第二mss值,包括:通过构造的执行规则将所述第一mss值修改为所述第二mss值。根据本发明的另一个方面,还提供了一种最大分段大小mss的修改装置,包括:第一获取模块,用于获取具有无线保真wifi功能的数据设备接收到的用于进行网络连接的第一mss值;修改模块,用于将所述第一mss值修改为第二mss值,其中,所述第二mss值是指所述数据设备根据该数据设备所在的网络获取的mss值。可选地,所述装置还包括:第二获取模块,用于获取所述数据设备所在网络中的部分或全部网络节点;发送模块,用于向所述部分或全部网络节点发送传输控制协议tcp连接;接收模块,用于接收所述部分或全部网络节点反馈的tcp握手数据包;解析模块,用于从所述tcp握手数据包中解析出部分或全部网络节点对应的所有mss值,从所述所有mss值中选取最小的mss值作为所述第二mss值。可选地,所述装置还包括:第三获取模块,用于获取所述部分或全部网络节点的ip地址,其中,根据所述ip地址向所述部分或全部网络节点发送tcp连接。可选地,所述修改模块,用于通过构造的执行规则将所述第一mss值修改为所述第二mss值。根据本发明的另一个方面,还提供了一种最大分段大小mss的修改系统,包括:具有无线保真wifi功能的数据设备,其中,所述数据设备,用于具有无线保真wifi功能的数据设备接收到的用于进行网络连接的第一mss值;并将所述第一mss值修改为第二mss值,其中,所述第二mss值是指所述数据设备根据该数据设备所在的网络获取的mss值。可选地,所述数据设备,还用于获取所述数据设备所在网络中的部分或全部网络节点;向所述部分或全部网络节点发送传输控制协议tcp连接,并接收所述部分或全部网络节点反馈的tcp握手数据包;并从所述tcp握手数据包中解析出部分或全部网络节点对应的mss值,从所述mss值中选取最小的mss值作为所述第二mss值。通过本发明,将通过所述数据设备进行的网络连接中的第一mss值统一修改为数据设备中保存的第二mss值,采用上述技术方案,解决了相关技术中,由于运营商对mss值有不同的定义,那么服务器在发送数据包时经常会需要对数据包进行分片等操作,这样容易导致服务器发送数据包的传输速率低以及用户体验度差的问题,进而能够将通过所述数据设备进行的网络连接中的第二mss值和数据设备中保存的第一mss值保持一致,保证服务器的数据传输速率,给用户带来了良好的用户体验。附图说明此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:图1是根据本发明实施例的mss的修改方法的流程图;图2是根据本发明实施例的mss的修改装置的结构框图;图3是根据本发明实施例的mss的修改装置的另一结构框图;图4为根据本发明示例的mss的修改系统的结构框图;图5为根据本发明示例的mss的修改方法的流程图。具体实施方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。发明人在进行试验测试时,尝试修改了笔记本上的最大传输单元(maximumtransmissionunit,简称为mtu)值后,发现速率确实和比样机相差不多,但是后期发现如果修改mtu值,测试机器在使用一些应用(例如ps游戏机)连接时,会出现无法使用的情况,因此修改方案,仅仅修改mss值来改变tcp连接,结果速率正常,同时不影响应用的使用。因此,在本实施例中提供了一种mss的修改方法,图1是根据本发明实施例的mss的修改方法的流程图,如图1所示,该流程包括如下步骤:步骤s102,获取具有wifi功能的数据设备接收到的用于进行网络连接的第一mss值;步骤s104,将所述第一mss值修改为第二mss值,其中,第二mss值是指数据设备根据该数据设备所在的网络获取的mss值。通过上述各个步骤,将通过数据设备进行的网络连接中的第一mss值统一修改为数据设备中保存的第二mss值,采用上述技术方案,解决了相关技术中,由于运营商对mss值由不同的定义,那么服务器在发送数据包时经常会需要对数据包进行分片等操作,这样容易导致服务器发送数据包的传输速率低以及用户体验度差的问题,进而能够将将通过所述数据设备进行的网络连接中的第二mss值和数据设备中保存的第一mss值保持一致,保证服务器的数据传输速率, 给用户带来了良好的用户体验。换而言之,本发明实施例的上述技术方案通过智能的调整mss值,保证速率达标的情况下,并且保证mtu值不变,防止出现一些应用无法使用的这种严重影响用户体验的情况。可选地,至少通过以下方式确定第二mss值:获取数据设备所在网络中部分或全部网络节点;向部分或全部网络节点发送传输控制协议tcp连接,并接收部分或全部网络节点反馈的tcp握手数据包;从tcp握手数据包中解析出部分或全部网络节点对应的所有mss值,从所有mss值中选取最小的作为第一mss值,即将终端和服务器之间部分或全部网络节点作为对象,解析出部分或全部网络节点对应的所有mss值,从所有mss值中选取最小的作为第一mss值。当然,在本发明实施例中的向部分或全部网络节点发送传输控制协议tcp连接之前,上述方法还可以执行以下步骤:获取部分或全部网络节点的ip地址,其中,根据ip地址向部分或全部网络节点发送tcp连接。在一个可选示例中,在执行步骤s104之前,还可以执行以下技术方案:构造执行规则,其中,该执行规则用于将所述第二mss值修改为所述第一mss值,即具体是根据构造的上述规则实现将第二mss值修改为第一mss值的,需要说明的是,本发明实施例中的具有wifi功能的数据设备可以是mifi(便携式宽带无线装置,可以理解为是mobilewifi的简称),也可以是ufi设备,还可以是其他具有wifi功能的数据设备,本发明实施例对此不作限定。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等) 执行本发明各个实施例的方法。实施例2在本实施例中还提供了一种mss的修改装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图2是根据本发明实施例的mss的修改装置的结构框图,如图2所示,该装置包括:第一获取模块20,用于获取具有wifi功能的数据设备接收到的用于进行网络连接的第一mss值;修改模块22,用于将所述第一mss值修改为第二mss值,其中,第二mss值是指数据设备根据该数据设备所在的网络获取的mss值。通过上述各个模块的综合作用,将通过数据设备进行的网络连接中的第一mss值统一修改为数据设备中保存的第二mss值,采用上述技术方案,解决了相关技术中,由于运营商对mss值由不同的定义,那么服务器在发送数据包时经常会需要对数据包进行分片等操作,这样容易导致服务器发送数据包的传输速率低以及用户体验度差的问题,进而能够将将通过所述数据设备进行的网络连接中的第二mss值和数据设备中保存的第一mss值保持一致,保证服务器的数据传输速率,给用户带来了良好的用户体验。图3是根据本发明实施例的mss的修改装置的另一结构框图,如图3所示,上述装置还包括:第二获取模块24,用于数据设备所在网络中的部分或全部网络节点;发送模块26,用于向部分或全部网络节点发送传输控制协议tcp连接;接收模块28,用于接收部分或全部网络节点反馈的tcp握手数据包;解析模块30,用于从tcp握手数据包中解析出部分或全部网络节点对应的所有mss值,从所 有mss值中选取最小的mss值作为第二mss值。可选地,上述装置还包括:第三获取模块32,用于获取部分或全部网络节点的ip地址,其中,根据ip地址向部分或全部网络节点发送tcp连接,修改模块22,还用于通过构造的执行规则将第一mss值修改为第二mss值。在本发明实施例中,还提供了一种mss的修改系统,包括:具有无线保真wifi功能的数据设备,其中,数据设备,用于获取具有wifi功能的数据设备接收到的用于进行网络连接的第一mss值;并将所述第一mss值修改为第二mss值,其中,第二mss值是指数据设备根据该数据设备所在的网络获取的mss值。通过本发明提供的mss的修改系统,将通过所述数据设备进行的网络连接中的第一mss值统一修改为数据设备中保存的第二mss值,采用上述技术方案,解决了相关技术中,由于运营商对mss值由不同的定义,那么服务器在发送数据包时经常会需要对数据包进行分片等操作,这样容易导致服务器发送数据包的传输速率低以及用户体验度差的问题,进而能够将将通过所述数据设备进行的网络连接中的第二mss值和数据设备中保存的第一mss值保持一致,保证服务器的数据传输速率,给用户带来了良好的用户体验。可选地,上述数据设备,还用于获取数据设备所在网络中的部分或全部网络节点;向部分或全部网络节点发送传输控制协议tcp连接,并接收部分或全部网络节点反馈的tcp握手数据包;并从tcp握手数据包中解析出部分或全部网络节点对应的mss值,从mss值中选取最小的mss值作为所述第二mss值。以下结合一示例对上述技术方案进行解释说明,但不用于限定本发明实施例。本发明示例通过中间设备(即上述具有无线保真wifi功能的数据设备),来达到在用户终端不对mtu进行修改的情况下,可以智能的调整mss值,使其适配于运营商的网络,由此可以达到在下载 数据时的较高的性能,给用户带来很好的体验,同时不修改mtu值,防止出现无法分段的故障问题。本发明示例的技术方案还可以从以下角度考虑:图4为根据本发明示例的mss的修改系统的结构框图,如图4所示,主要包括:检测网络状态模块40,获取网络节点模块42,智能解析模块44,设置安装模块46。其中检测网络状态模块40等待设备联网成功后,首先在板侧发送一系列的ping包数据,并记录可以正常通信的地址。接着,获取网络节点模块42通过上一步中获取的地址,然后通过路由跟踪的方式,获取到每一个节点上的ip地址,并保存记录这些地址。智能解析模块44,将根据上一步获取的所有ip地址,并通过以此向每一个节点发送tcp连接,并截取节点返回的tcp握手数据包,从中解析出mss值的大小,最后选择最小的mss值。设置安装模块46将最优的mss值设置到上述数据设备中,由此所有通过上述数据设备将自动修改mss值,从而保持与运营商的网络值一致,在下载数据时,数据速率将比不进行任何修改的速率得到较大提升,同时不修改mtu值,由此用户对于设备的性能和评价将非常高。图5为根据本发明示例的mss的修改方法的流程图,以下用详细的流程图说明上述模块之间如何实现智能调整mss值的过程。步骤s502,终端设备正常的联网,在联网成功后,调用检测网络状态模块40,此模块会采用ping,域名服务(domainnameserver,简称为dns)解析等方式,判断网络是否可以正常访问internet网络,并选取好知名的ip地址,下文以8.8.8.8地址为例。当网络不正常时,持续调用检测网络状态模块40,直到网络正常。步骤s504,当网络状态正常后,调用获取网络节点模块42,然后利用traceroute工具,获取终端与服务器8.8.8.8之间的部分或全部网络节点,这些网络节点有些可能是运营商网络中的,有些可能不是运营商网络中,由于无法区别是否属于运营商网络节点,因此记录所 有的网络节点。步骤s506,当成功获取到网络节点后,调用智能解析模块44,模块会通过构造一个socket,依次与记录的网络节点进行tcp连接,并利用hook函数截获返回的tcp握手数据包,并从数据包中获取到每一个网络节点所返回的mss值,比较所有的mss值,选取最小的mss值。步骤s508,智能解析模块44完成后,调用设置安装模块46,并利用iptables工具在数据设备中,构造一条规则,例如如下所示规则,iptables-tmangle-ipostrouting-ptcp--tcp-flagssyn,rstsyn-jtcpmss--set-mss$min_mss这条规则将对所有经过数据设备的tcp握手连接修改其mss值为min_mss,以此保证设备可以更好的适应运营商的网络。需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。本发明示例还提供了一种智能识别mss值的设置方法,请参考图1,图1为本实例提供的方法流程示意图,主要包括四个模块,并设置于无线路由器中,通过上述技术方案所提供的处理过程,最终将最优的mss值安装到无线路由模块中。由于现在很多运营商网络中的mtu值,mss值都不相同,直接修改mtu值会有一些影响用户体验的问题,因此修改mss值可以保证用户体验更好。同时修改mss值,可以在面向市场的上述数据设备(具体可以包括ufi设备或mifi设备)中,对于不通运营商的网络,可以进行智能调整mss值,保证在每个运营商的网络下,ufi设备都可以达到很好的速率效果,以此带给用户优质的体验,提高产品的竞争力。综上所述,本发明实施例达到了以下技术效果:解决了相关技术 中,由于运营商对mss值由不同的定义,那么服务器在发送数据包时经常会需要对数据包进行分片等操作,这样容易导致服务器发送数据包的传输速率低以及用户体验度差的问题,进而能够将将通过数据设备进行的网络连接中的第二mss值和数据设备中保存的第一mss值保持一致,保证服务器的数据传输速率,给用户带来了良好的用户体验。本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:s1,获取具有wifi功能的数据设备接收到的用于进行网络连接的第一mss值;s2,将所述第一mss值修改为所述数据设备中预先保存的第二mss值。可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本 发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1