稳定通信的方法、系统、挖矿服务器和客户端与流程

文档序号:11156684阅读:475来源:国知局
稳定通信的方法、系统、挖矿服务器和客户端与制造工艺

本发明涉及网络通信技术,尤其是一种稳定通信的方法、系统、挖矿服务器和客户端。



背景技术:

P2P对等网络,即对等计算机网络,是一种在对等者(Peer)之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式。P2P电子货币系统为一种采用工作量证明机制的点对点网络来记录交易的公开信息,在进行工作量证明的计算中,计算客户端会连接前端的挖矿服务,获取计算工作,并将计算结果返回给挖矿服务器,其中挖矿服务器与计算客户端之间的连接为TCP的长连接方式。

然而,在实现本发明的过程中,发明人发现,现有技术至少存在以下问题:现有技术中挖矿服务器与计算客户端之间的TCP长连接需要一直保持连接和稳定性,如果遇到了DDOS等攻击,计算客户端就不能连接到挖矿服务,会影响整个挖矿进程和收益。



技术实现要素:

本发明实施例所要解决的一个技术问题是:使挖矿服务器与服务器之间的连接在接收到攻击后能快速重新建立。

本发明实施例提供的一种稳定通信的方法,其特征在于,包括:

响应于接收到客户端的访问请求,挖矿服务器发送多个ip地址给所述客户端;基于所述多个ip地址中的一个ip地址建立所述客户端与所述挖矿服务器的连接;

当接收到基于所述客户端与所述挖矿服务器建立连接的一个ip地址的攻击时,断开所述客户端与所述挖矿服务器基于所述一个ip地址的连接;基于所述多个ip地址中的另一个ip地址建立所述客户端与所述挖矿服务器的连接。

基于上述方法的另一实施例中,所述客户端从接收到的所述多个ip地址选择另一个ip地址与所述挖矿服务器建立连接后,还包括:所述挖矿服务器向所述客户端重新发送多个ip地址。

基于上述方法的另一实施例中,所述挖矿服务器发送多个ip地址给所述客户端,包括:

所述挖矿服务器基于TCP同步握手通信将所述多个ip地址发送给所述客户端。

基于上述方法的另一实施例中,所述挖矿服务器向所述客户端重新发送多个ip地址后,还包括:

对所述被攻击的ip地址分析获得对应所述ip地址的的网络地址和主机地址,基于网络地址将所述被攻击的ip地址进行地域划分,将经过地域划分后的所述被攻击的ip地址存入相应地域数据库中;

所述地域数据库中用于存储针对同一客户端的属于一个网络地址的所有已经被攻击过的ip地址。

基于上述方法的另一实施例中,所述地域数据库中存储的所有ip地址将不再发送到所述地域数据库所对应的客户端。

基于上述方法的另一实施例中,所述客户端与所述挖矿服务器建立连接后,接收所述挖矿服务器发送的具有预设工作量的计算任务,所述客户端处理所述计算任务得到计算结果,并将所述计算结果反馈给所述挖矿服务器。

基于上述方法的另一实施例中,所述挖矿服务器接收所述客户端发送的计算结果后,向所述客户端反馈对应所述计算结果的预设工作量。

基于上述方法的另一实施例中,所述挖矿服务器发送具有预设工作量的计算任务之前,还包括:

将所述预设工作量的计算任务通过约定的密钥进行加密,将加密后的所述预设工作量的计算任务发送到所述客户端,所述客户端通过约定的密钥对接收到的加密后的所述预设工作量的计算任务进行解密后得到所述预设工作量的计算任务。

基于上述方法的另一实施例中,所述挖矿服务器接收到客户端的访问请求后,发送多个ip地址给所述客户端的同时,还将约定的密钥发送给所述客户端。

基于上述方法的另一实施例中,所述基于所述客户端与所述挖矿服务器建立连接的一个ip地址的攻击包括:分布式拒绝服务攻击。

基于上述方法的另一实施例中,所述挖矿服务器响应于接收到的分布式拒绝服务攻击后,在设定时间内变换所述挖矿服务器对应域名的ip地址,使所述分布式拒绝服务攻击不能集中流量针对所述挖矿服务器。

基于上述方法的另一实施例中,所述客户端与所述挖矿服务器之间的连接为TCP长连接。

根据本发明实施例的另一个方面,提供的一种挖矿服务器,包括:

连接建立单元,用于响应于接收到客户端的访问请求,发送多个ip地址给所述客户端;基于所述多个ip地址中的一个ip地址与所述客户端建立连接;

连接转换单元,用于当所述与客户端基于一个ip地址的连接受到攻击时,断开与所述客户端基于所述一个ip地址的连接;响应于所述客户端发送的基于所述多个ip地址中的另一个ip地址建立连接请求,与所述客户端的连接。

根据本发明实施例的另一个方面,提供的一种客户端,其特征在于,包括:

连接请求单元,用于向挖矿服务器发送访问请求,并接收挖矿服务器发送多个ip地址;基于所述多个ip地址中的一个ip地址与所述挖矿服务器建立连接;

连接替换单元,用于当所述与挖矿服务器基于一个ip地址的连接受到攻击时,断开与所述挖矿服务器基于所述一个ip地址的连接;基于所述接收的多个ip地址中的另一个ip地址向所述挖矿服务器发送建立连接请求,建立与所述挖矿服务器的连接。

根据本发明实施例的另一个方面,提供的一种稳定通信的系统,包括如上所述的挖矿服务器和如上所述的客户端。

基于本发明上述实施例提供的一种稳定通信的方法、系统、挖矿服务器和客户端,每次挖矿服务器与客户端建立连接时,挖矿服务器发送多个ip地址给客户端,选择其中一个ip地址建立挖矿服务器与客户端的连接,当接收到对连接的攻击时,断开该连接,选择多个ip地址的中另一个ip地址重新建立挖矿服务器与客户端的连接,有效的防止因为攻击而发送的挖矿服务器与客户端断开无法连接的现象,并且每次发送多个ip地址使后续重新建立连接快捷方便,并且不会出错。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:

图1为本发明方法一个实施例的流程图。

图2为本发明方法另一个实施例的流程图。

图3为本发明方法又一个实施例的流程图。

图4为本发明挖矿服务器一个实施例的结构示意图。

图5为本发明挖矿服务器一个实施例的结构示意图。

图6为本发明挖矿服务器又一个实施例的结构示意图。

图7为本发明客户端的一个实施例的结构示意图。

具体实施方式

现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

本发明实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、胖客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。

计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络连接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

图1为本发明方法一个实施例的流程图。如图1所示,该实施例方法包括:

步骤10,响应于接收到客户端的访问请求,挖矿服务器发送多个ip地址给该客户端;基于多个ip地址中的一个ip地址建立该客户端与挖矿服务器的连接。

在本实施例中挖矿服务器每次接收到客户端的访问请求,都发送多个ip地址给该客户端,而客户端选择接收的多个ip地址中的一个ip地址与挖矿服务器建立连接,使连接具有可选择性,对于针对ip地址的攻击有一定防范功能。

步骤20,当接收到基于该客户端与挖矿服务器建立连接的一个ip地址的攻击时,断开该客户端与挖矿服务器基于一个ip地址的连接;基于多个ip地址中的另一个ip地址建立该客户端与挖矿服务器的连接。

基于本发明上述实施例提供的一种稳定通信的方法,每次挖矿服务器与客户端建立连接时,挖矿服务器发送多个ip地址给客户端,选择其中一个ip地址建立挖矿服务器与客户端的连接,当接收到对连接的攻击时,断开该连接,选择多个ip地址的中另一个ip地址重新建立挖矿服务器与客户端的连接,有效的防止因为攻击而发送的挖矿服务器与客户端断开无法连接的现象,并且每次发送多个ip地址使后续重新建立连接快捷方便,并且不会出错。

图2为本发明方法另一个实施例的流程图。该实施例方法包括:

步骤10,响应于接收到客户端的访问请求,挖矿服务器发送多个ip地址给该客户端;基于多个ip地址中的一个ip地址建立该客户端与挖矿服务器的连接。

步骤20,当接收到基于该客户端与挖矿服务器建立连接的一个ip地址的攻击时,断开该客户端与挖矿服务器基于一个ip地址的连接;基于多个ip地址中的另一个ip地址建立该客户端与挖矿服务器的连接。

步骤30,挖矿服务器向该客户端重新发送多个ip地址。

在本实施例中,挖矿服务器与客户端已重新基于一个ip地址建立了连接,此时挖矿服务器重新向该客户端发送多个ip地址,可以使客户端与挖矿服务器之间的连接在再次收到攻击时保证还具有可替换的ip地址,因为如果首次发送的ip地址为2个,收到攻击替换ip地址后,客户端将没有可用的ip地址,因此,挖矿服务器需要重新向该客户端发送多个ip地址,以保证该连接能够接收多次攻击。

本发明另一个实施例中,在上述实施例的基础上,步骤10和步骤30中挖矿服务器发送多个ip地址给该客户端,具体可以包括:

挖矿服务器基于TCP同步握手通信将多个ip地址发送给该客户端。

本实施例中基于TCP同步握手通信发送多个ip地址,保证了ip地址发送的准确性和稳定性,保证了客户端一定能收到挖矿服务器发送的ip地址。TCP(Transmission Control Protocol传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。TCP三次握手的过程如下:客户端发送SYN(SEQ=x)报文给服务器端,进入SYN_SEND状态。服务器端收到SYN报文,回应一个SYN(SEQ=y)ACK(ACK=x+1)报文,进入SYN_RECV状态。客户端收到服务器端的SYN报文,回应一个ACK(ACK=y+1)报文,进入Established状态。

本发明另一个实施例中,在上述实施例的基础上,在步骤30之后还可以包括:

对被攻击的ip地址分析获得对应该ip地址的的网络地址和主机地址,基于网络地址将该被攻击的ip地址进行地域划分,将经过地域划分后的该被攻击的ip地址存入相应地域数据库中。

其中,地域数据库中用于存储针对同一客户端的属于一个网络地址的所有已经被攻击过的ip地址。并且地域数据库中存储的所有ip地址将不再发送到该地域数据库所对应的客户端。

在本实施例中,将被攻击过的客户端和ip地址进行存储,并且每个被攻击过的客户端对应所有针对该客户端受到攻击的ip地址,保存这些受过攻击的ip地址,并控制这些受过攻击的ip地址不再重新发送到对应的客户端,保证了该客户端不会因为重新连接受过攻击的ip地址而受到重复攻击。

图3为本发明方法又一个实施例的流程图。该方法实施例包括:

步骤10,响应于接收到客户端的访问请求,挖矿服务器发送多个ip地址给该客户端;基于多个ip地址中的一个ip地址建立该客户端与挖矿服务器的连接。

步骤40,判断是否接收到基于该客户端与挖矿服务器建立连接的一个ip地址的攻击,如果是,执行步骤20;否则,执行步骤50。

步骤20,断开该客户端与挖矿服务器基于一个ip地址的连接;基于多个ip地址中的另一个ip地址建立该客户端与挖矿服务器的连接,执行步骤40。

步骤50,接收挖矿服务器发送的具有预设工作量的计算任务,该客户端处理该计算任务得到计算结果,并将计算结果反馈给挖矿服务器。

在本实施例中,记载了挖矿服务器与客户端建立连接的目的所在,建立连接并不是最终目的,建立连接是为了传输计算任务和计算结果,因此,在建立连接后,并且该连接未受到攻击时,挖矿服务器下发计算任务到客户端,客户端计算后将计算结果反馈给挖矿服务器,实现了客户端在稳定的连接中进行挖矿的过程。

在本发明上述实施例的一个具体示例中,在步骤50挖矿服务器接收客户端发送的计算结果后,还包括向该客户端反馈对应计算结果的预设工作量。

比特币挖矿过程通常有大量客户端参与挖矿,因此,在产出时需要按照工作量对产出的比特币进行分配,因此,需要对每个客户端进行计算并基于计算结果得到的工作量进行统计,只有在比特币产出时得到每个参与计算的客户端的工作量,才能将比特币公平的分配到付出算力的客户端中。

在本发明上述实施例的一个具体示例中,在步骤50挖矿服务器发送具有预设工作量的计算任务之前,还包括:

将预设工作量的计算任务通过约定的密钥进行加密,将加密后的预设工作量的计算任务发送到客户端,该客户端通过约定的密钥对接收到的加密后的预设工作量的计算任务进行解密后得到该预设工作量的计算任务。

在本实施例中为了保证挖矿服务器与客户端之间传输的任务数据的安全性,在传输之前将计算任务进行加密,客户端收到加密的计算任务后通过约定密钥进行解密,保证了计算任务与客户端的对应性,即发给该客户端的计算任务,即使被非法截获了,由于无法解密也无法对该计算任务进行处理,保证了与挖矿服务器建立稳定连接的客户端的利益不受侵害。

在本实施例中,上述又一个实施例中所使用的密钥是挖矿服务器接收到客户端的访问请求后,发送多个ip地址给该客户端的同时发送给该客户端的。

通过在建立连接的过程中同时通知密钥,保证了密钥的即时性和安全性,对于同一个客户端在其他时间重新申请访问请求时,将重新发送新的密钥,以保证密钥的即时性,对于过期密钥将不可用,进一步保证了计算任务的安全性。

本发明还一个实施例中,在上述各实施例的基础上,步骤20中基于客户端与挖矿服务器建立连接的一个ip地址的攻击包括:DDOS分布式拒绝服务攻击。

分布式拒绝服务(DDOS:Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDOS攻击,从而成倍地提高拒绝服务攻击的威力。在信息安全的三要素——“保密性”、“完整性”和“可用性”中,DOS(Denial of Service),即拒绝服务攻击,针对的目标正是“可用性”。该攻击方式利用目标系统网络服务功能缺陷或者直接消耗其系统资源,使得该目标系统无法提供正常的服务。因此,本发明方法在受到DDOS攻击后,首先是断开该连接,以避免挖矿服务器被大量数据消耗导致瘫痪,而导致其他客户端也无法正常工作,重新建立连接后,该DDOS攻击将失去攻击目标。

在本发明上述实施例的一个具体示例中,挖矿服务器响应于接收到的分布式拒绝服务攻击后,在设定时间内变换挖矿服务器对应域名的ip地址。

本实施例中,在受到攻击后,断开连接前的时间里,挖矿服务器变换对应域名的ip地址,使该分布式拒绝服务攻击不能集中流量针对挖矿服务器,保证了挖矿服务器的正常工作。

在本发明上述各个实施例的一个具体示例中,客户端与挖矿服务器之间的连接为TCP长连接。

TCP(Transmission Control Protocol传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,能够保证挖矿服务器的可访问性和稳定性。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

图4为本发明挖矿服务器一个实施例的结构示意图。该实施例的挖矿服务器可用于实现本发明上述各方法实施例。如图4所示,该实施例包括:

连接建立单元11,用于响应于接收到客户端的访问请求,发送多个ip地址给客户端;基于多个ip地址中的一个ip地址与客户端建立连接;

连接转换单元12,用于当与客户端基于一个ip地址的连接受到攻击时,断开与客户端基于所述一个ip地址的连接;响应于客户端发送的基于所述多个ip地址中的另一个ip地址建立连接请求,与客户端的连接。

基于本发明上述实施例提供的挖矿服务器,每次挖矿服务器与客户端建立连接时,挖矿服务器发送多个ip地址给客户端,选择其中一个ip地址建立挖矿服务器与客户端的连接,当接收到对连接的攻击时,断开该连接,选择多个ip地址的中另一个ip地址重新建立挖矿服务器与客户端的连接,有效的防止因为攻击而发送的挖矿服务器与客户端断开无法连接的现象,并且每次发送多个ip地址使后续重新建立连接快捷方便,并且不会出错。

本发明挖矿服务器的另一个实施例中,在上述实施例的基础上,连接转换单元12还用于在基于另一个ip地址建立与客户端的连接后,向客户端重新发送多个ip地址。

在本实施例中,挖矿服务器与客户端已重新基于一个ip地址建立了连接,此时挖矿服务器重新向该客户端发送多个ip地址,可以使客户端与挖矿服务器之间的连接在再次收到攻击时保证还具有可替换的ip地址,因为如果首次发送的ip地址为2个,收到攻击替换ip地址后,客户端将没有可用的ip地址,因此,挖矿服务器需要重新向该客户端发送多个ip地址,以保证该连接能够接收多次攻击。

本发明另一个实施例中,在上述实施例的基础上,连接转换单元12发送多个ip地址给客户端时,具体用于:基于TCP同步握手通信将多个ip地址发送给客户端。

图5为本发明挖矿服务器一个实施例的结构示意图。在上述实施例的基础上,如图5所示,还包括存储单元13,用于对被攻击的ip地址分析获得对应ip地址的的网络地址和主机地址,基于网络地址将被攻击的ip地址进行地域划分,将经过地域划分后的被攻击的ip地址存入相应地域数据库中;

其中,地域数据库中用于存储针对同一客户端的属于一个网络地址的所有已经被攻击过的ip地址。

在本发明上述实施例的一个具体示例中,存储单元13还用于控制地域数据库中存储的所有ip地址将不再发送到所述地域数据库所对应的客户端。

图6为本发明挖矿服务器又一个实施例的结构示意图。在上是实施例的基础上,连接建立单元11和连接转换单元12建立与客户端的连接后,还包括计算单元14,用于发送具有预设工作流的计算任务给客户端,并接收客户端反馈的对计算任务处理得到计算结果。

在本发明上述实施例的一个具体示例中,还包括结果反馈单元15,用于在接收客户端发送的计算结果后,向客户端反馈对应计算结果的预设工作量。

在本发明上述实施例的一个具体示例中,还包括加密单元,用于将预设工作量的计算任务通过约定的密钥进行加密,将加密后的预设工作量的计算任务发送到客户端。

在本发明上述实施例的一个具体示例中,连接建立单元11和连接转换单元12在发送多个ip地址给客户端的同时,还用于控制将约定的密钥发送给客户端。

本发明还一个实施例中,在上述各实施例的基础上,连接转换单元12接收到的与客户端基于一个ip地址的连接受到的攻击为分布式拒绝服务攻击。

本实施例在受到DDOS攻击后,首先是断开该连接,以避免挖矿服务器被大量数据消耗导致瘫痪,而导致其他客户端也无法正常工作,重新建立连接后,该DDOS攻击将失去攻击目标。

在本发明上述实施例的一个具体示例中,连接转换单元12接收到分布式拒绝服务攻击后,还用于在设定时间内变换对应域名的ip地址,使分布式拒绝服务攻击不能集中流量针对挖矿服务器。

在本发明上述各个实施例的一个具体示例中,连接建立单元11和连接转换单元12建立的与客户端之间的连接为TCP长连接。

图7为本发明客户端的一个实施例的结构示意图。如图7所示,该客户端包括:

连接请求单元21,用于向挖矿服务器发送访问请求,并接收挖矿服务器发送多个ip地址;基于所述多个ip地址中的一个ip地址与所述挖矿服务器建立连接;

连接替换单元22,用于当所述与挖矿服务器基于一个ip地址的连接受到攻击时,断开与所述挖矿服务器基于所述一个ip地址的连接;基于所述接收的多个ip地址中的另一个ip地址向所述挖矿服务器发送建立连接请求,建立与所述挖矿服务器的连接。

本发明客户端的另一个实施例中,在上述实施例的基础上,还包括解密单元,用于通过约定的密钥对接收到的挖矿服务器加密后的预设工作量的计算任务进行解密,并得到预设工作量的计算任务。

其中,解密单元与挖矿服务器中的加密单元相对应,用于对挖掘服务器发送的经过加密单元加密后的任务数据进行解密。

本发明还提供稳定通信的系统的一个实施例,包括如上述实施例中任意一项的挖矿服务器和如上述实施例中任意一项的客户端。

1、一种稳定通信的方法,包括:

响应于接收到客户端的访问请求,挖矿服务器发送多个ip地址给所述客户端;基于所述多个ip地址中的一个ip地址建立所述客户端与所述挖矿服务器的连接;

当接收到基于所述客户端与所述挖矿服务器建立连接的一个ip地址的攻击时,断开所述客户端与所述挖矿服务器基于所述一个ip地址的连接;基于所述多个ip地址中的另一个ip地址建立所述客户端与所述挖矿服务器的连接。

2、根据1所述的方法,所述客户端从接收到的所述多个ip地址选择另一个ip地址与所述挖矿服务器建立连接后,还包括:所述挖矿服务器向所述客户端重新发送多个ip地址。

3、根据1或2所述的方法,所述挖矿服务器发送多个ip地址给所述客户端,包括:

所述挖矿服务器基于TCP同步握手通信将所述多个ip地址发送给所述客户端。

4、根据2或3所述的方法,所述挖矿服务器向所述客户端重新发送多个ip地址后,还包括:

对所述被攻击的ip地址分析获得对应所述ip地址的的网络地址和主机地址,基于网络地址将所述被攻击的ip地址进行地域划分,将经过地域划分后的所述被攻击的ip地址存入相应地域数据库中;

所述地域数据库中用于存储针对同一客户端的属于一个网络地址的所有已经被攻击过的ip地址。

5、根据4所述的方法,所述地域数据库中存储的所有ip地址将不再发送到所述地域数据库所对应的客户端。

6、根据1至5任意一项所述的方法,所述客户端与所述挖矿服务器建立连接后,接收所述挖矿服务器发送的具有预设工作量的计算任务,所述客户端处理所述计算任务得到计算结果,并将所述计算结果反馈给所述挖矿服务器。

7、根据6所述的方法,所述挖矿服务器接收所述客户端发送的计算结果后,向所述客户端反馈对应所述计算结果的预设工作量。

8、根据6或7所述的方法,所述挖矿服务器发送具有预设工作量的计算任务之前,还包括:

将所述预设工作量的计算任务通过约定的密钥进行加密,将加密后的所述预设工作量的计算任务发送到所述客户端,所述客户端通过约定的密钥对接收到的加密后的所述预设工作量的计算任务进行解密后得到所述预设工作量的计算任务。

9、根据8所述的方法,所述挖矿服务器接收到客户端的访问请求后,发送多个ip地址给所述客户端的同时,还将约定的密钥发送给所述客户端。

10、根据1至9任意一项所述的方法,所述基于所述客户端与所述挖矿服务器建立连接的一个ip地址的攻击包括:分布式拒绝服务攻击。

11、根据9所述的方法,所述挖矿服务器响应于接收到的分布式拒绝服务攻击后,在设定时间内变换所述挖矿服务器对应域名的ip地址,使所述分布式拒绝服务攻击不能集中流量针对所述挖矿服务器。

12、根据1至11任意一项所述的方法,所述客户端与所述挖矿服务器之间的连接为TCP长连接。

13、一种挖矿服务器,包括:

连接建立单元,用于响应于接收到客户端的访问请求,发送多个ip地址给所述客户端;基于所述多个ip地址中的一个ip地址与所述客户端建立连接;

连接转换单元,用于当所述与客户端基于一个ip地址的连接受到攻击时,断开与所述客户端基于所述一个ip地址的连接;响应于所述客户端发送的基于所述多个ip地址中的另一个ip地址建立连接请求,与所述客户端的连接。

14、根据13所述的挖矿服务器,所述连接转换单元还用于在基于另一个ip地址建立与所述客户端的连接后,向所述客户端重新发送多个ip地址。

15、根据13或14所述的挖矿服务器,所述连接转换单元发送多个ip地址给所述客户端时,具体用于:基于TCP同步握手通信将所述多个ip地址发送给所述客户端。

16、根据14或15所述的挖矿服务器,还包括存储单元,用于对所述被攻击的ip地址分析获得对应所述ip地址的的网络地址和主机地址,基于网络地址将所述被攻击的ip地址进行地域划分,将经过地域划分后的所述被攻击的ip地址存入相应地域数据库中;

所述地域数据库中用于存储针对同一客户端的属于一个网络地址的所有已经被攻击过的ip地址。

17、根据16所述的挖矿服务器,所述存储单元还用于控制所述地域数据库中存储的所有ip地址将不再发送到所述地域数据库所对应的客户端。

18、根据13至17任意一项所述的挖矿服务器,所述连接建立单元和所述连接转换单元建立与所述客户端的连接后,还包括计算单元,用于发送具有预设工作流的计算任务给所述客户端,并接收所述客户端反馈的对所述计算任务处理得到计算结果。

19、根据18所述的挖矿服务器,还包括结果反馈单元,用于在接收所述客户端发送的计算结果后,向所述客户端反馈对应所述计算结果的预设工作量。

20、根据18或19所述的挖矿服务器,还包括加密单元,用于将所述预设工作量的计算任务通过约定的密钥进行加密,将加密后的所述预设工作量的计算任务发送到所述客户端。

21、根据20所述的挖矿服务器,所述连接建立单元和连接转换单元在发送多个ip地址给所述客户端的同时,还用于控制将约定的密钥发送给所述客户端。

22、根据13至21任意一项所述的挖矿服务器,所述连接转换单元接收到的与客户端基于一个ip地址的连接受到的攻击为分布式拒绝服务攻击。

23、根据22所述的挖矿服务器,所述连接转换单元接收到分布式拒绝服务攻击后,还用于在设定时间内变换对应域名的ip地址,使所述分布式拒绝服务攻击不能集中流量针对所述挖矿服务器。

24、根据权利要求13至23任意一项所述的挖矿服务器,所述连接建立单元和所述连接转换单元建立的与所述客户端之间的连接为TCP长连接。

25、一种客户端,包括:

连接请求单元,用于向挖矿服务器发送访问请求,并接收挖矿服务器发送多个ip地址;基于所述多个ip地址中的一个ip地址与所述挖矿服务器建立连接;

连接替换单元,用于当所述与挖矿服务器基于一个ip地址的连接受到攻击时,断开与所述挖矿服务器基于所述一个ip地址的连接;基于所述接收的多个ip地址中的另一个ip地址向所述挖矿服务器发送建立连接请求,建立与所述挖矿服务器的连接。

26、根据25所述的客户端,还包括解密单元,用于通过约定的密钥对接收到的挖矿服务器加密后的所述预设工作量的计算任务进行解密,并得到所述预设工作量的计算任务。

27、一种稳定通信的系统,包括如13至24任意一项所述的挖矿服务器和如25或26所述的客户端。

本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

可能以许多方式来实现本发明的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。

本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变换对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

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