IP地址的登录方法及装置与流程

文档序号:11681278阅读:1105来源:国知局
IP地址的登录方法及装置与流程

本发明涉及计算机领域,具体而言,涉及一种ip地址的登录方法及装置。



背景技术:

随着互联网技术的飞速发展,大量的软件应用进入人们的生活,比如:游戏软件、聊天软件等等,用户在登录软件时可能需要登录到软件的客户端上,例如:部分游戏考虑到玩家体验会提供双线甚至多线服务器,例如:电信、联通、移动、cap等。另外考虑到接入层的并发压力,游戏服务器可能会采取监听多个端口的实例对外提供服务区,例如:7001端口,7002端口,7003端口等。在实际运营中会存在域名劫持导致玩家无法登录,或者线路选择不够理想导致用户体验下降,表现为卡顿、掉线。同时,还会存在由于部分端口由于玩家所处环境的网络策略到时无法连通,以至于玩家无法登录的情况发生。

目前用户登录客户端的方式主要有以下几种方案:

方案1、游戏通过域名绑定多个接入线路,通过玩家的dns进行解析登录游戏,监听一个或多个端口

方案2、在客户端或服务端配置中配置域名和ip的映射关系,监听一个或多个端口

方案3、部分客户端或服务端通过httpdns的方式获取线路,监听一个或多个端口

方案4、部分游戏直接采取bgp线路,监听一个或多个端口

方案5、游戏增加一个测速模块,对玩家的客户端进行测速,并且在服务器端维护所有的多线列表,由服务端根据负载和测速等把结果传递给客户端进行登录,监听一个或多个端口。

上述方案中虽然针对线路选择有很多种办法,但是始终没有解决玩家端口不通的这个痛点问题。

在以上当前方案无法解决连通性问题的前提下,方案1存在域名劫持,可能导致玩家无法正确解析域名,或者解析出的ip不是最优。方案2需要维护一个映射关系表,管理成本较大,不易维护。方案3需要借助第三方方案。方案4的带宽成本很高。方案5的开发成本较高,增加了服务端的逻辑,给游戏业务带来了一定不可控风险。

可见,上述用户登录客户端的方案可能存在成本高、不易维护、登录易失败、域名易被劫持等问题,使得用户用于登录的第一当前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地址的登录效率低的问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的ip地址的登录方法的应用环境示意图;

图2是根据本发明实施例的一种可选的ip地址的登录方法的示意图;

图3是根据本发明实施例的一种可选的ip地址的登录方法中登录信息的示意图;

图4是根据本发明可选示例的一种可选的ip地址的登录方法的示意图;

图5是根据本发明实施例的一种可选的ip地址的登录装置的示意图一;

图6是根据本发明实施例的一种可选的ip地址的登录装置的示意图二;

图7是根据本发明实施例的一种可选的ip地址的登录装置的示意图三;

图8是根据本发明实施例的一种可选的ip地址的登录装置的示意图四;

图9是根据本发明实施例的一种可选的ip地址的登录装置的示意图五;

图10是根据本发明实施例的一种可选的ip地址的登录装置的示意图六;

图11是根据本发明实施例的一种可选的ip地址的登录方法的应用场景示意图;以及

图12是根据本发明实施例的一种可选的ip地址的登录设备的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1

在本发明实施例中,提供了一种上述ip地址的登录方法的实施例。作为一种可选的实施方式,该ip地址的登录方法可以但不限于应用于如图1所示的应用环境中,客户端102通过网络106与服务器104连接,通过客户端102获取配置信息,其中,配置信息包括:具有关联关系的ip地址和ip地址具有的端口号,客户端102从配置信息包括的端口号中选择一个第一目标端口号,其中,第一目标端口号与ip地址中的第一目标ip地址具有关联关系,检测客户端102是否通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通,并在客户端102通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从第一目标ip地址中选择一个用于登录的第一当前ip地址,再通过客户端102和第一目标端口登录到第一当前ip地址。

在本实施例中,配置信息中的ip地址和ip地址具有的端口号具有对应关系,从配置信息包括的端口号中选择一个第一目标端口号,对该第一目标端口号的连通性进行检测,在检测成功的情况下,从第一目标端口号关联的第一目标ip地址中选择一个用于登录的第一当前ip地址,从而保证选择出的第一当前ip地址是可以连通的,并通过客户端102和第一目标端口登录上述第一当前ip地址,使用具有关联关系的ip地址和端口号作为配置信息,也降低了域名信息被劫持的风险,从而提高了登录ip地址的登录效率,进而克服相关技术中登录ip地址的登录效率低的问题。

可选地,在本实施例中,上述客户端可以包括但不限于以下至少之一:手机、平板电脑、笔记本电脑、台式pc机、数字电视及其他进行区域共享的硬件设备。上述网络可以包括但不限于以下至少之一:广域网、城域网、局域网。上述只是一种示例,本实施例对此不做任何限定。

可选地,在本实施例中,客户端102用于:检测客户端102是否通过第一目标端口与第一目标ip地址中的每个ip地址都连通;在检测到客户端102通过第一目标端口与第一目标ip地址中的每个ip地址都连通的情况下,确定出客户端102通过第一目标端口与第一目标ip地址连通。

可选地,在本实施例中,客户端102用于:获取客户端102与第一目标ip地址中的每个ip地址之间的传输速度;从第一目标ip地址中选择出与客户端102之间的传输速度最大的一个ip地址作为第一当前ip地址。

可选地,在本实施例中,客户端102用于:对于第一目标ip地址中的每个ip地址,连续多次获取客户端102与第一目标ip地址中的每个ip地址之间的传输速度,并将多次获取到的传输速度的平均值作为客户端102与第一目标ip地址中的每个ip地址之间的传输速度。

可选地,在本实施例中,客户端102用于:使用客户端102接收到的登录帐号对配置信息中包括的端口号的数量进行取模运算,得到当前值n;将配置信息中包括的端口号按照从小到大进行排列,并从排列后的端口号中选择出第一目标端口号,其中,第一目标端口号在排列后的端口号中排在第n+1个位置。

可选地,在本实施例中,客户端102用于:在客户端102无法通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从配置信息包括的除第一目标端口号之外的端口号中选择一个第二目标端口号,其中,第二目标端口号与ip地址中的第二目标ip地址具有关联关系;检测客户端102是否通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通;在客户端102通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通的情况下,从第二目标ip地址中选择一个用于登录的第二当前ip地址;通过客户端102和第二目标端口登录到第二当前ip地址。

可选地,在本实施例中,客户端102用于:通过客户端102从服务器获取登录信息;判断登录信息中的字符串是否包括用于登录的域名信息;在登录信息中的字符串不包括域名信息的情况下,从字符串中获取具有关联关系的ip地址和ip地址具有的端口号。

可选地,在本实施例中,客户端102用于:通过客户端102从服务器接收响应信息;判断响应信息中的第一字符串域中是否包括预定的标识字符串;在第一字符串域中包括预定的标识字符串的情况下,将第一字符串域中的字符串拼接在响应信息中的第二字符串域中的字符串之后,得到登录信息,其中,第二字符串域用于存储登录信息,第一字符串域用于在登录信息的长度超过第二字符串域允许的存储长度的情况下存储登录信息中除存储在第二字符串域中的字符串之外的字符串。

根据本发明实施例,提供了一种ip地址的登录方法,如图2所示,该方法包括:

s202,通过客户端获取配置信息,其中,配置信息包括:具有关联关系的ip地址和ip地址具有的端口号;

s204,从配置信息包括的端口号中选择一个第一目标端口号,其中,第一目标端口号与ip地址中的第一目标ip地址具有关联关系;

s206,检测客户端是否通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通;

s208,在客户端通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从第一目标ip地址中选择一个用于登录的第一当前ip地址;

s210,通过客户端和第一目标端口登录到第一当前ip地址。

可选地,在本实施例中,上述ip地址的登录方法可以但不限于应用于登录软件的ip地址的场景中。其中,上述软件可以但不限于为各种类型的软件,例如,在线教育软件、远程控制软件、即时通讯软件、社区空间软件、游戏软件等。具体的,可以但不限于应用于在登录上述游戏的ip地址的场景中,或还可以但不限于应用于在登录上述远程控制软件的ip地址的场景中,以实现ip地址的登录。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,配置信息中可以但不限于包括:具有关联关系的ip地址和该ip地址具有的端口号。例如:配置信息中包括:ip地址a对应端口号a、ip地址b对应端口号b、ip地址c对应端口号c、ip地址d对应端口号d、ip地址e对应端口号e。

可选地,在本实施例中,上述关联关系可以但不限于是不同的ip地址具有相同的端口号,还可以但不限于是不同的ip地址具有不同的端口号,或者可以但不限于是相同的ip地址具有不同的端口号。

可选地,在本实施例中,第一目标ip地址可以但不限于为一个或多个ip地址。也就是说,第一目标端口号可以但不限于与ip地址中的一个或者多个ip地址具有关联关系。

可见,通过上述步骤,配置信息中的ip地址和ip地址具有的端口号具有对应关系,从配置信息包括的端口号中选择一个第一目标端口号,对该第一目标端口号的连通性进行检测,在检测成功的情况下,从第一目标端口号关联的第一目标ip地址中选择一个用于登录的第一当前ip地址,从而保证选择出的第一当前ip地址是可以连通的,并通过客户端和第一目标端口登录上述第一当前ip地址,使用具有关联关系的ip地址和端口号作为配置信息,也降低了域名信息被劫持的风险,从而提高了登录ip地址的登录效率,进而克服相关技术中登录ip地址的登录效率低的问题。

作为一种可选的方案,第一目标ip地址可以但不限于为一个或多个ip地址,其中,检测客户端是否通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通包括:

s1,检测客户端是否通过第一目标端口与第一目标ip地址中的每个ip地址都连通;

s2,在检测到客户端通过第一目标端口与第一目标ip地址中的每个ip地址都连通的情况下,确定出客户端通过第一目标端口与第一目标ip地址连通。

可选地,在本实施例中,端口连通性的检测可以但不限于采用建立socket连接,connect,select的方式实现。

可选地,在本实施例中,当客户端通过第一目标端口与第一目标ip地址中的每个ip地址都连通时可以确定客户端通过第一目标端口与第一目标ip地址连通。

例如:第一目标ip地址为ip地址a、ip地址b和ip地址c,分别检测客户端是否通过第一目标端口与ip地址a连通、客户端是否通过第一目标端口与ip地址b连通、客户端是否通过第一目标端口与ip地址c连通,当检测出客户端通过第一目标端口与ip地址a、ip地址b和ip地址c都连通时,可以确定客户端通过第一目标端口与第一目标ip地址是连通的。

通过上述步骤,对客户端通过第一目标端口与第一目标ip地址中每个ip地址之间的连通性进行检测,可以确保从第一目标ip地址选择的第一当前ip地址是可以连通的,从而保证了登录ip地址的成功率,进而提高了登录ip地址的登录效率。

作为一种可选的方案,从第一目标ip地址中选择一个用于登录的第一当前ip地址包括:

s1,获取客户端与第一目标ip地址中的每个ip地址之间的传输速度;

s2,从第一目标ip地址中选择出与客户端之间的传输速度最大的一个ip地址作为第一当前ip地址。

可选地,在本实施例中,可以但不限于根据客户端与第一目标ip地址中的每个ip地址之间的传输速度来选择出第一当前ip地址。

可选地,在本实施例中,可以但不限于通过以下方式获取客户端与第一目标ip地址中的每个ip地址之间的传输速度:控制客户端向第一目标ip地址中的每个ip地址发送一个预定信息,每个ip地址响应于该预定信息向客户端返回一个信息,通过计算客户端发送预定信息和接收ip地址返回的信息的时间差来确定客户端与第一目标ip地址中的每个ip地址之间的传输速度。

例如:第一目标ip地址为ip地址a、ip地址b和ip地址c,客户端分别向ip地址a、ip地址b和ip地址c发送预定信息“0”,ip地址a、ip地址b和ip地址c接收到该预定信息“0”后,向客户端返回一个信息“1”,客户端接收到ip地址a、ip地址b和ip地址c返回的信息“1”分别用时0.001ms,0.002ms和0.0005ms,则可以确定客户端与第一目标ip地址中ip地址a、ip地址b和ip地址c之间的传输速度分别为1000bit/ms、500bit/ms以及2000bit/ms。

作为一种可选的方案,获取客户端与第一目标ip地址中的每个ip地址之间的传输速度包括:

s1,对于第一目标ip地址中的每个ip地址,连续多次获取客户端与第一目标ip地址中的每个ip地址之间的传输速度,并将多次获取到的传输速度的平均值作为客户端与第一目标ip地址中的每个ip地址之间的传输速度。

可选地,在本实施例中,传输速度的获取可以但不限于通过windows的icmp_32.dll库的icmpsendecho的方式实现。

可选地,在本实施例中,可以连续多次获取客户端与第一目标ip地址中的每个ip地址之间的传输速度,并对获取的传输速度取平均值得到客户端与第一目标ip地址中的每个ip地址之间的传输速度。

例如:对第一目标ip地址中的每个ip地址连续获取5次传输速度,并对获取的5次传输速度取平局值得到客户端与第一目标ip地址中的每个ip地址之间的传输速度。

可见,通过上述步骤,连续多次获取客户端与第一目标ip地址中的每个ip地址之间的传输速度,将多次传输速度的平均值作为客户端与第一目标ip地址中的每个ip地址之间的传输速度,能够减小获取传输速度时的误差,从而使得客户端通过端口号为第一目标端口号的第一目标端口与第一目标ip地址之间的连通性的检测更加准确可靠,进而提高了登录ip地址的成功率,也就提高了登录ip地址的登录效率。

作为一种可选的方案,从配置信息包括的端口号中选择一个第一目标端口号包括:

s1,使用客户端接收到的登录帐号对配置信息中包括的端口号的数量进行取模运算,得到当前值n;

s2,将配置信息中包括的端口号按照从小到大进行排列,并从排列后的端口号中选择出第一目标端口号,其中,第一目标端口号在排列后的端口号中排在第n+1个位置。

可选地,在本实施例中,登录帐号可以但不限于为用户的登录id、用户名等信息。

可选地,在本实施例中,配置信息中包括的端口号的数量可以但不限于指配置信息中包括的不同的端口号的个数。

在一个可选的实施方式中,客户端接收到的登录帐号为登录用户的qq号123456,配置信息中包括10个不同的端口001、002、003、004、005、006、007、008、009、010,那么使用客户端接收到的登录帐号123456对配置信息中包括的10个端口号进行取模运算,得到当前值n为6,将配置信息中包括的端口号按照从小到大进行排列001、002、003、004、005、006、007、008、009、010,并从排列后的端口号中选择出第一目标端口号006,其中,第一目标端口号在排列后的端口号中排在第n+1=7个位置。

作为一种可选的方案,在检测客户端是否通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通之后,还包括:

s1,在客户端无法通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从配置信息包括的除第一目标端口号之外的端口号中选择一个第二目标端口号,其中,第二目标端口号与ip地址中的第二目标ip地址具有关联关系;

s2,检测客户端是否通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通;

s3,在客户端通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通的情况下,从第二目标ip地址中选择一个用于登录的第二当前ip地址;

s4,通过客户端和第二目标端口登录到第二当前ip地址。

可选地,在本实施例中,当客户端无法通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通时,可以在配置信息包括的除第一目标端口号之外的端口号中选择一个第二目标端口号,并使用第二目标端口号进行ip地址的登录。

可见,通过上述步骤,当选择的第一目标端口号的第一目标端口与第一目标ip地址无法连通时,可以选择另一个第二目标端口号进行登录,从而提高了登录ip地址的成功率,进而提高了登录ip地址的登录效率。

作为一种可选的方案,通过客户端获取配置信息包括:

s1,通过客户端从服务器获取登录信息;

s2,判断登录信息中的字符串是否包括用于登录的域名信息;

s3,在登录信息中的字符串不包括域名信息的情况下,从字符串中获取具有关联关系的ip地址和ip地址具有的端口号。

可选地,在本实施例中,当登录信息中不包括域名信息时可以从登录信息中的字符串中获取具有关联关系的ip地址和ip地址具有的端口号。

作为一种可选的方案,通过客户端从服务器获取登录信息包括:

s1,通过客户端从服务器接收响应信息;

s2,判断响应信息中的第一字符串域中是否包括预定的标识字符串;

s3,在第一字符串域中包括预定的标识字符串的情况下,将第一字符串域中的字符串拼接在响应信息中的第二字符串域中的字符串之后,得到登录信息,其中,第二字符串域用于存储登录信息,第一字符串域用于在登录信息的长度超过第二字符串域允许的存储长度的情况下存储登录信息中除存储在第二字符串域中的字符串之外的字符串。

可选地,在本实施例中,当登录信息的长度超出了第二字符串域能够存储的字符串的长度时,可以将超出的部分存储在第一字符串域中,并使用预定的标识字符串对第一字符串域进行标记。当通过客户端从服务器接收到响应信息时,首先可以判断响应信息中的第一字符串域中是否包括预定的标识字符串,如果判断结果为是,则表示第一字符串域和第二字符串域均存储了登录信息,可以将第一字符串域中的字符串拼接在第二字符串域中的字符串之后,得到登录信息。

在一个可选的实施方式中,通过客户端从服务器接收的响应信息如图3所示,在接收到的响应信息中第二字符串域为connecturl,其中存储了:101.226.62.103:14001、112.64.237.232:14001、101.226.62.103:14002、112.64.237.232:14002、101.226.62.103:14003、112.64.237.232:14003,第一字符串域为buf-url,其中存储了:101.226.62.103:14004、112.64.237.232:14004、101.226.62.103:14005、112.64.237.232:14005、101.226.62.103:14006、112.64.237.232:14006,预定的标识字符串为-url,通过客户端从服务器接收到该响应信息,判断该响应信息中的buf-url中是否包括预定的标识字符串-url,判断出buf-url中包括预定的标识字符串-url,则将buf-url中的字符串拼接在响应信息中的connecturl中的字符串之后,得到登录信息:101.226.62.103:14001、112.64.237.232:14001、101.226.62.103:14002、112.64.237.232:14002、101.226.62.103:14003、112.64.237.232:14003、101.226.62.103:14004、112.64.237.232:14004、101.226.62.103:14005、112.64.237.232:14005、101.226.62.103:14006、112.64.237.232:14006。

在一个可选示例中提供了一种ip地址的登录方法,在本可选示例中以游戏客户端的ip地址登录为例,具体结合图4对ip地址的登录过程进行说明:

游戏客户端在连接dir服务器后,当用户选择了区服信息时,客户端获取该区服信息中的所有信息(相当于上述登录信息),包括connecturl和buf的相关配置信息。客户端判断buf中是否有-url的标识字符串,如果有则需要和connecturl的字符串进行拼接,如果没有则不拼接。客户端判断字符串中是否有域名信息例如:xx.qq.com,如果有则进行域名解析后,进行端口分配。

如果字符串中无域名信息,开始根据连接的端口数量对玩家帐号进行qq号取模,例如:玩家qq号为123456,总共监听了10个端口,从7001-7010,则该账户分配到计算方法为123456mod10=6,分配到7007端口。客户端对7007端口进行连通性探测。

如果探测成功则对7007端口下的所有ip进行测速5次(可调整),取最快的平均值线路。如果探测不成功,则随机从端口池中再分配一个端口进行探测,直到找到连通的端口,然后进行测速,如果均不通,则通知玩家无法连接。客户端根据获取到的最佳线路和端口进行游戏登录。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

根据本发明实施例,还提供了一种用于实施上述ip地址的登录方法的ip地址的登录装置,如图5所示,该装置包括:

1)获取模块502,用于通过客户端获取配置信息,其中,所述配置信息包括:具有关联关系的ip地址和所述ip地址具有的端口号;

2)第一选择模块504,用于从所述配置信息包括的所述端口号中选择一个第一目标端口号,其中,所述第一目标端口号与所述ip地址中的第一目标ip地址具有关联关系;

3)第一检测模块506,用于检测所述客户端是否通过端口号为所述第一目标端口号的第一目标端口与所述第一目标ip地址连通;

4)第二选择模块508,用于在所述客户端通过端口号为所述第一目标端口号的第一目标端口与所述第一目标ip地址连通的情况下,从所述第一目标ip地址中选择一个用于登录的第一当前ip地址;

5)第一登录模块510,用于通过所述客户端和所述第一目标端口登录到所述第一当前ip地址。

可选地,在本实施例中,上述ip地址的登录装置可以但不限于应用于登录软件的ip地址的场景中。其中,上述软件可以但不限于为各种类型的软件,例如,在线教育软件、远程控制软件、即时通讯软件、社区空间软件、游戏软件等。具体的,可以但不限于应用于在登录上述游戏的ip地址的场景中,或还可以但不限于应用于在登录上述远程控制软件的ip地址的场景中,以实现ip地址的登录。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,配置信息中可以但不限于包括:具有关联关系的ip地址和该ip地址具有的端口号。例如:配置信息中包括:ip地址a对应端口号a、ip地址b对应端口号b、ip地址c对应端口号c、ip地址d对应端口号d、ip地址e对应端口号e。

可选地,在本实施例中,上述关联关系可以但不限于是不同的ip地址具有相同的端口号,还可以但不限于是不同的ip地址具有不同的端口号,或者可以但不限于是相同的ip地址具有不同的端口号。

可选地,在本实施例中,第一目标ip地址可以但不限于为一个或多个ip地址。也就是说,第一目标端口号可以但不限于与ip地址中的一个或者多个ip地址具有关联关系。

可见,通过上述装置,配置信息中的ip地址和ip地址具有的端口号具有对应关系,从配置信息包括的端口号中选择一个第一目标端口号,对该第一目标端口号的连通性进行检测,在检测成功的情况下,从第一目标端口号关联的第一目标ip地址中选择一个用于登录的第一当前ip地址,从而保证选择出的第一当前ip地址是可以连通的,并通过客户端和第一目标端口登录上述第一当前ip地址,使用具有关联关系的ip地址和端口号作为配置信息,也降低了域名信息被劫持的风险,从而提高了登录ip地址的登录效率,进而克服相关技术中登录ip地址的登录效率低的问题。

作为一种可选的方案,第一目标ip地址为一个或多个ip地址,其中,如图6所示,第一检测模块506包括:

1)检测单元602,用于检测客户端是否通过第一目标端口与第一目标ip地址中的每个ip地址都连通;

2)确定单元604,用于在检测到客户端通过第一目标端口与第一目标ip地址中的每个ip地址都连通的情况下,确定出客户端通过第一目标端口与第一目标ip地址连通。

可选地,在本实施例中,端口连通性的检测可以但不限于采用建立socket连接,connect,select的方式实现。

可选地,在本实施例中,当客户端通过第一目标端口与第一目标ip地址中的每个ip地址都连通时可以确定客户端通过第一目标端口与第一目标ip地址连通。

例如:第一目标ip地址为ip地址a、ip地址b和ip地址c,分别检测客户端是否通过第一目标端口与ip地址a连通、客户端是否通过第一目标端口与ip地址b连通、客户端是否通过第一目标端口与ip地址c连通,当检测出客户端通过第一目标端口与ip地址a、ip地址b和ip地址c都连通时,可以确定客户端通过第一目标端口与第一目标ip地址是连通的。

通过上述装置,对客户端通过第一目标端口与第一目标ip地址中每个ip地址之间的连通性进行检测,可以确保从第一目标ip地址选择的第一当前ip地址是可以连通的,从而保证了登录ip地址的成功率,进而提高了登录ip地址的登录效率。

作为一种可选的方案,如图7所示,第二选择模块508包括:

1)第一获取单元702,用于获取客户端与第一目标ip地址中的每个ip地址之间的传输速度;

2)第一选择单元704,用于从第一目标ip地址中选择出与客户端之间的传输速度最大的一个ip地址作为第一当前ip地址。

可选地,在本实施例中,可以但不限于根据客户端与第一目标ip地址中的每个ip地址之间的传输速度来选择出第一当前ip地址。

可选地,在本实施例中,可以但不限于通过以下方式获取客户端与第一目标ip地址中的每个ip地址之间的传输速度:控制客户端向第一目标ip地址中的每个ip地址发送一个预定信息,每个ip地址响应于该预定信息向客户端返回一个信息,通过计算客户端发送预定信息和接收ip地址返回的信息的时间差来确定客户端与第一目标ip地址中的每个ip地址之间的传输速度。

例如:第一目标ip地址为ip地址a、ip地址b和ip地址c,客户端分别向ip地址a、ip地址b和ip地址c发送预定信息“0”,ip地址a、ip地址b和ip地址c接收到该预定信息“0”后,向客户端返回一个信息“1”,客户端接收到ip地址a、ip地址b和ip地址c返回的信息“1”分别用时0.001ms,0.002ms和0.0005ms,则可以确定客户端与第一目标ip地址中ip地址a、ip地址b和ip地址c之间的传输速度分别为1000bit/ms、500bit/ms以及2000bit/ms。

作为一种可选的方案,获取单元用于:对于第一目标ip地址中的每个ip地址,连续多次获取客户端与第一目标ip地址中的每个ip地址之间的传输速度,并将多次获取到的传输速度的平均值作为客户端与第一目标ip地址中的每个ip地址之间的传输速度。

可选地,在本实施例中,传输速度的获取可以但不限于通过windows的icmp_32.dll库的icmpsendecho的方式实现。

可选地,在本实施例中,可以连续多次获取客户端与第一目标ip地址中的每个ip地址之间的传输速度,并对获取的传输速度取平均值得到客户端与第一目标ip地址中的每个ip地址之间的传输速度。

例如:对第一目标ip地址中的每个ip地址连续获取5次传输速度,并对获取的5次传输速度取平局值得到客户端与第一目标ip地址中的每个ip地址之间的传输速度。

可见,通过上述装置,连续多次获取客户端与第一目标ip地址中的每个ip地址之间的传输速度,将多次传输速度的平均值作为客户端与第一目标ip地址中的每个ip地址之间的传输速度,能够减小获取传输速度时的误差,从而使得客户端通过端口号为第一目标端口号的第一目标端口与第一目标ip地址之间的连通性的检测更加准确可靠,进而提高了登录ip地址的成功率,也就提高了登录ip地址的登录效率。

作为一种可选的方案,如图8所示,第一选择模块504包括:

1)取模运算单元802,用于使用客户端接收到的登录帐号对配置信息中包括的端口号的数量进行取模运算,得到当前值n;

2)第二选择单元804,用于将配置信息中包括的端口号按照从小到大进行排列,并从排列后的端口号中选择出第一目标端口号,其中,第一目标端口号在排列后的端口号中排在第n+1个位置。

可选地,在本实施例中,登录帐号可以但不限于为用户的登录id、用户名等信息。

可选地,在本实施例中,配置信息中包括的端口号的数量可以但不限于指配置信息中包括的不同的端口号的个数。

在一个可选的实施方式中,客户端接收到的登录帐号为登录用户的qq号123456,配置信息中包括10个不同的端口001、002、003、004、005、006、007、008、009、010,那么使用客户端接收到的登录帐号123456对配置信息中包括的10个端口号进行取模运算,得到当前值n为6,将配置信息中包括的端口号按照从小到大进行排列001、002、003、004、005、006、007、008、009、010,并从排列后的端口号中选择出第一目标端口号006,其中,第一目标端口号在排列后的端口号中排在第n+1=7个位置。

作为一种可选的方案,如图9所示,上述装置还包括:

1)第三选择模块902,用于在客户端无法通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从配置信息包括的除第一目标端口号之外的端口号中选择一个第二目标端口号,其中,第二目标端口号与ip地址中的第二目标ip地址具有关联关系;

2)第二检测模块904,用于检测客户端是否通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通;

3)第四选择模块906,用于在客户端通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通的情况下,从第二目标ip地址中选择一个用于登录的第二当前ip地址;

4)第二登录模块908,用于通过客户端和第二目标端口登录到第二当前ip地址。

可选地,在本实施例中,当客户端无法通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通时,可以在配置信息包括的除第一目标端口号之外的端口号中选择一个第二目标端口号,并使用第二目标端口号进行ip地址的登录。

可见,通过上述步骤,当选择的第一目标端口号的第一目标端口与第一目标ip地址无法连通时,可以选择另一个第二目标端口号进行登录,从而提高了登录ip地址的成功率,进而提高了登录ip地址的登录效率。

作为一种可选的方案,如图10所示,获取模块502包括:

1)第二获取单元1002,用于通过客户端从服务器获取登录信息;

2)判断单元1004,用于判断登录信息中的字符串是否包括用于登录的域名信息;

3)第三获取单元1006,用于在登录信息中的字符串不包括域名信息的情况下,从字符串中获取具有关联关系的ip地址和ip地址具有的端口号。

可选地,在本实施例中,当登录信息中不包括域名信息时可以从登录信息中的字符串中获取具有关联关系的ip地址和ip地址具有的端口号。

作为一种可选的方案,第二获取单元用于:通过客户端从服务器接收响应信息;判断响应信息中的第一字符串域中是否包括预定的标识字符串;在第一字符串域中包括预定的标识字符串的情况下,将第一字符串域中的字符串拼接在响应信息中的第二字符串域中的字符串之后,得到登录信息,其中,第二字符串域用于存储登录信息,第一字符串域用于在登录信息的长度超过第二字符串域允许的存储长度的情况下存储登录信息中除存储在第二字符串域中的字符串之外的字符串。

可选地,在本实施例中,当登录信息的长度超出了第二字符串域能够存储的字符串的长度时,可以将超出的部分存储在第一字符串域中,并使用预定的标识字符串对第一字符串域进行标记。当通过客户端从服务器接收到响应信息时,首先可以判断响应信息中的第一字符串域中是否包括预定的标识字符串,如果判断结果为是,则表示第一字符串域和第二字符串域均存储了登录信息,可以将第一字符串域中的字符串拼接在第二字符串域中的字符串之后,得到登录信息。

在一个可选的实施方式中,通过客户端从服务器接收的响应信息如图3所示,在接收到的响应信息中第二字符串域为connecturl,其中存储了:101.226.62.103:14001、112.64.237.232:14001、101.226.62.103:14002、112.64.237.232:14002、101.226.62.103:14003、112.64.237.232:14003,第一字符串域为buf-url,其中存储了:101.226.62.103:14004、112.64.237.232:14004、101.226.62.103:14005、112.64.237.232:14005、101.226.62.103:14006、112.64.237.232:14006,预定的标识字符串为-url,通过客户端从服务器接收到该响应信息,判断该响应信息中的buf-url中是否包括预定的标识字符串-url,判断出buf-url中包括预定的标识字符串-url,则将buf-url中的字符串拼接在响应信息中的connecturl中的字符串之后,得到登录信息:101.226.62.103:14001、112.64.237.232:14001、101.226.62.103:14002、112.64.237.232:14002、101.226.62.103:14003、112.64.237.232:14003、101.226.62.103:14004、112.64.237.232:14004、101.226.62.103:14005、112.64.237.232:14005、101.226.62.103:14006、112.64.237.232:14006。

实施例3

本发明实施例的应用环境可以但不限于参照实施例1中的应用环境,本实施例中对此不再赘述。本发明实施例提供了用于实施上述ip地址的登录方法的一种可选的具体应用示例。

作为一种可选的实施例,上述ip地址的登录方法可以但不限于应用于如图11所示的使用客户端登录ip地址的场景中。在本实施例中,使用客户端登录ip地址可以适用于接入cls的,并且监听多个端口实例的客户端游戏业务,为其提供通用的兼容的一种基于网络游戏多端口测速的负载均衡登录方案。下面通过三个可选场景进行说明和描述。

可选场景一

如图11所示,某玩家在游戏a里有两个qq帐号,分别是123456和34567,他的家里是联通宽带,公司里是电信带宽,他在家里登录游戏a时两个号均能正常登录,而在公司里却只能登录一个号,经查发现由于游戏a监听了两个游戏接入端口,分别是7001和7111,而7111端口却被玩家的公司网络防火墙策略给阻止掉了,该玩家的其中一个号被分配到7111端口后无法连接而导致无法登录游戏。

此时可以利用上述实施例提供的ip地址的登录方法进行登录,玩家的两个号在公司里仍然被分配到了7001和7111端口,虽然7111端口被防火墙策略阻止了,但是在分配端口后的第一时间进行了连通性检测,如果发现无法连接,则随机从端口池中分配另一个端口,即7001端口,然后进行测速选择优先的线路,至此玩家在公司中的两个游戏帐号均能登录。

可选场景二

某游戏玩家在家进行游戏a时,由于域名劫持等原因出现解析aaa.xxx.qq.com时,解析出来的ip根本不是游戏服务器的连接ip,导致无法进入游戏。

此时可以利用上述实施例提供的ip地址的登录方法进行登录,由于不再使用域名绑定游戏服务器接入ip,所以对玩家的账户进行取模分配端口,并探测端口连通性通过后,进行该端口下的线路测速,选择了优先线路进行登录,不再受劫持的困扰。

可选场景三

某电信线路游戏玩家在家进行游戏a时,由于域名劫持等原因出现解析aaa.xxx.qq.com时,解析出来的ip为游戏服务器的网通ip,进入游戏后异常卡顿,时不时出现掉线。

此时可以利用上述实施例提供的ip地址的登录方法进行登录,由于不再使用域名绑定游戏服务器接入ip,所以对玩家的账户进行取模分配端口,并探测端口连通性通过后,进行该端口下的线路测速,选择了优先线路进行登录,不再受劫持的困扰。

实施例4

根据本发明实施例,还提供了一种用于实施上述ip地址的登录方法的ip地址的登录设备,如图12所示,该设备包括:

1)通讯接口1202,设置为通过客户端获取配置信息,其中,配置信息包括:具有关联关系的ip地址和ip地址具有的端口号;

2)处理器1204,与通讯接口1202连接,设置为从配置信息包括的端口号中选择一个第一目标端口号,其中,第一目标端口号与ip地址中的第一目标ip地址具有关联关系;检测客户端是否通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通;在客户端通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从第一目标ip地址中选择一个用于登录的第一当前ip地址;通过客户端和第一目标端口登录到第一当前ip地址。

3)存储器1206,与通讯接口1202及处理器1204连接,设置为存储配置信息。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

实施例5

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以位于网络中的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

s1,通过客户端获取配置信息,其中,配置信息包括:具有关联关系的ip地址和ip地址具有的端口号;

s2,从配置信息包括的端口号中选择一个第一目标端口号,其中,第一目标端口号与ip地址中的第一目标ip地址具有关联关系;

s3,检测客户端是否通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通;

s4,在客户端通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从第一目标ip地址中选择一个用于登录的第一当前ip地址;

s5,通过客户端和第一目标端口登录到第一当前ip地址。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

s1,检测客户端是否通过第一目标端口与第一目标ip地址中的每个ip地址都连通;

s2,在检测到客户端通过第一目标端口与第一目标ip地址中的每个ip地址都连通的情况下,确定出客户端通过第一目标端口与第一目标ip地址连通。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:获取客户端与第一目标ip地址中的每个ip地址之间的传输速度;从第一目标ip地址中选择出与客户端之间的传输速度最大的一个ip地址作为第一当前ip地址。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:对于第一目标ip地址中的每个ip地址,连续多次获取客户端与第一目标ip地址中的每个ip地址之间的传输速度,并将多次获取到的传输速度的平均值作为客户端与第一目标ip地址中的每个ip地址之间的传输速度。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:使用客户端接收到的登录帐号对配置信息中包括的端口号的数量进行取模运算,得到当前值n;将配置信息中包括的端口号按照从小到大进行排列,并从排列后的端口号中选择出第一目标端口号,其中,第一目标端口号在排列后的端口号中排在第n+1个位置。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在客户端无法通过端口号为第一目标端口号的第一目标端口与第一目标ip地址连通的情况下,从配置信息包括的除第一目标端口号之外的端口号中选择一个第二目标端口号,其中,第二目标端口号与ip地址中的第二目标ip地址具有关联关系;检测客户端是否通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通;在客户端通过端口号为第二目标端口号的第二目标端口与第二目标ip地址连通的情况下,从第二目标ip地址中选择一个用于登录的第二当前ip地址;通过客户端和第二目标端口登录到第二当前ip地址。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:通过客户端从服务器获取登录信息;判断登录信息中的字符串是否包括用于登录的域名信息;在登录信息中的字符串不包括域名信息的情况下,从字符串中获取具有关联关系的ip地址和ip地址具有的端口号。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:通过客户端从服务器接收响应信息;判断响应信息中的第一字符串域中是否包括预定的标识字符串;在第一字符串域中包括预定的标识字符串的情况下,将第一字符串域中的字符串拼接在响应信息中的第二字符串域中的字符串之后,得到登录信息,其中,第二字符串域用于存储登录信息,第一字符串域用于在登录信息的长度超过第二字符串域允许的存储长度的情况下存储登录信息中除存储在第二字符串域中的字符串之外的字符串。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1