CN103338118B - 一种通信网络连接方法及装置 - Google Patents
一种通信网络连接方法及装置 Download PDFInfo
- Publication number
- CN103338118B CN103338118B CN201310218436.3A CN201310218436A CN103338118B CN 103338118 B CN103338118 B CN 103338118B CN 201310218436 A CN201310218436 A CN 201310218436A CN 103338118 B CN103338118 B CN 103338118B
- Authority
- CN
- China
- Prior art keywords
- network connection
- network
- connection
- module
- state
- 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.)
- Expired - Fee Related
Links
- 238000004891 communication Methods 0.000 title claims abstract description 81
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000005540 biological transmission Effects 0.000 claims abstract description 138
- 238000012545 processing Methods 0.000 claims abstract description 40
- 230000002159 abnormal effect Effects 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims description 35
- 238000001514 detection method Methods 0.000 claims description 20
- 230000005856 abnormality Effects 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 9
- 230000003139 buffering effect Effects 0.000 claims description 5
- 238000011084 recovery Methods 0.000 abstract description 10
- 238000007689 inspection Methods 0.000 abstract 1
- 230000008859 change Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004883 computer application Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种通信网络连接方法及装置,其中方法具体是:当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;根据所述状态信息,检测网络连接的当前连接状态是否正常;当正常时,检查重传请求队列中是否有需要重传的传输请求,根据检查结果分别进行不同的处理;当异常时,重新建立网络连接,如果建立成功,将状态信息中的连接状态更新为正常,再进行相应的数据传输处理;如果建立失败,将当前传输请求储存在重传请求队列中。这种连接方法,可以减少网络重连操作,避免不必要的恢复操作,同时最小化故障恢复对上层应用的影响,提高通信网络的实时性。
Description
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种通信网络连接方法和装置。
背景技术
分布式系统是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统。透明性是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地的还是远程。在分布式数据库系统中,用户感觉不到数据是分布的,即用户无须知道是否分割、有无复本、数据存于哪个站点以及事务在哪个站点上执行等。基于上述优势,分布式系统得到广泛的开发和应用。
异步网络通信库主要是用于简化分布式系统的开发,需要为开发人员屏蔽底层的socket操作细节,不仅包括正常情况下的网络数据传输,也包括网络出现故障时的异常处理,特别是在底层的物理网络故障排除后,能够无须上层用户的干预,自动地恢复受影响的网络连接,最小化对上层应用的影响。
目前,为了简化分布式系统的开发,有各种各样的网络通信基础库,比如ACE、MINA、Netty等通信库。这些通信基础库的,即没有内置对网络异常的处理,也没有对网络连接的自动修复,当出现故障时就需要开发人员采用显式地进行控制连接。相比这些通信基础库,HyperTable的AsyncComm通信库内置了网络故障恢复的处理功能,对于发生故障的网络连接,采用以下处理方式,具体是:采用定期重连的策略,尝试在底层网络故障排除后尽快修复网络连接。但是,定期重连的故障恢复机制引入了额外的处理开销,特别是在底层网络故障持续了较长时间的情况下,这种定期重连的机制将导致很多不必要的重连操作。
除此以外,采用定期重连网络机制进行重连时,必须设置一个重连时间间隔,对于瞬时的网络故障,比如,由于交换机或者网卡的异常导致的网络闪断故障,也需要等待一个重连时间间隔才能恢复网络连接,不能满足通信网络对于实时性的高要求。
基于上述技术问题,目前迫切需要提供一种新型的通信网络连接的方法,以减少网络重连操作,避免不必要的恢复操作,同时最小化故障恢复对上层应用的影响,提高通信网络的实时性。
发明内容
为了解决上述技术问题,本发明实施例中提供了一种通信网络连接方法及装置,以减少网络重连操作次数,避免不必要的恢复操作,同时最小化故障恢复对上层应用的影响,提高通信网络的实时性。
本申请实施例公开了如下技术方案:
一种通信网络连接方法,包括:
S1:当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;
S2:网络数据库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;
S3:当连接状态显示正常时,检查重传请求队列中是否有需要重传的传输请求,如果有,依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;如果没有,直接处理当前传输请求;
S4:当连接状态显示异常时,重新建立网络连接,如果建立成功,将状态信息中的连接状态更新为正常,并跳转到步骤S3;如果建立失败,将当前传输请求储存在重传请求队列中。
优选的,所述网络连接的状态信息是通过以下方式生成的,包括:
在上层应用初次建立网络连接时,网络通信库储存网络连接的状态信息,并将该状态信息反馈给所述上层应用,所述状态信息包括:目标地址、连接状态;其中,连接状态在数据传输过程中会得到更新。
优选的,所述重传请求队列中缓存的传输请求是网络数据库在网络连接故障期间接收到上层应用发送的数据传输请求。
优选的,在步骤S3中处理传输请求过程中,当数据传输失败时,还包括:
网络通信库更新当前网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传请求队列中。
优选的,在步骤S4中当连接状态显示异常时,重新建立网络连接,具体包括:
网络通信库获取所需的网络连接的状态信息中的目标地址;
根据所述目标地址,重新建立与目的端的网络连接。
本发明还提供了一种通信网络连接装置,包括:
发送模块,用于当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;
检测模块,用于网络数据库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;
检查模块,用于当检测模块检测结果显示正常时,检查重传请求队列中是否有需要重传的传输请求;
第一处理模块,用于当检查模块检查结果是有时,依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;
第二处理模块,用于当检查模块检查结果是没有时,直接处理当前传输请求;
重连模块,用于当检测模块检测结果显示异常时,重新建立网络连接;
更新模块,用于当重连模块建立成功时,将状态信息中的连接状态更新为正常,并转入检测模块进行检测处理;
储存模块,用于当重连模块建立失败时,将当前传输请求储存在重传队列中。
优选的,所述发送模块中所发送的网络连接的状态信息是通过以下模块生成的,包括:
生成模块,用于在上层应用初次建立网络连接时,网络通信库储存网络连接的状态信息,并将该状态信息反馈给所述上层应用,所述状态信息包括:目标地址和连接状态,其中,连接状态在数据传输过程中会得到更新。
优选的,所述重传请求队列,用于缓存在网络连接故障期间接收到上层应用发送的数据传输请求。
优选的,还包括:
第三处理模块,用于当输出传输失败时,更新当前网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传队列中。
优选的,所述重连模块,包括:
获取子模块,用于通过网络通信库获取所需的网络连接的状态信息中的目标地址;
重建子模块,用于根据所述目标地址,重新建立与目的端的网络连接。
由上述实施例可以看出,当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;网络数据库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;当连接状态显示正常时,检查重传请求队列中是否有需要重传的传输请求,如果有,依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;如果没有,直接处理当前传输请求;当连接状态显示异常时,重新建立网络连接,如果建立成功,将状态信息中的连接状态更新为正常,并跳转到步骤S3;如果建立失败,将当前传输请求储存在重传队列中。这种网络连接方式,使得在数据传输过程中捎带进行网络连接重新建立以恢复网络,避免了不必要的恢复操作,在数据传输时进行网络连接状态的判断,以提高通信网络的实时性,同时最小化故障恢复对上层应用的影响。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一揭示的一种通信网络连接方法的方法流程图;
图2为本申请实施例二揭示的一种通信网络连接方法的方法流程图;
图3为本申请实施例三揭示的一种通信网络连接装置的装置结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例进行详细描述。
实施例一
请参阅图1,其为本申请实施例一揭示的一种通信网络连接方法的方法流程图,该方法包括以下步骤:
S1:当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;
网络通信库是指异步网络通信库,是为了简化网络编程将socket通信封装为异步消息传输模式的网络通信框架。分布式系统为上层应用提供了大规模文件储存和访问的接口,以提供快速、方便的通信。上层应用的类型是多种多样的,不同的上层应用有不同的功能,以完成不同的数据处理。
当上层应用有数据需要传输时,首先必须发送所需的网络连接的状态信息和所需传输的数据给网络通信库。所述网络连接的状态信息是通过以下方式生成的,包括:在上层应用初次建立网络连接时,网络通信库储存网络连接的状态信息,并将该状态信息反馈给所述上层应用,所述状态信息包括:目标地址、连接状态;其中,连接状态在数据传输过程中会得到更新。
比如:当上层应用A需要将数据传输给服务器B时,需要将与B之间的网络连接状态信息和待传输的数据,发送给网络通信库。而,A与B之间的网络连接状态信息是通过以下方式生成的,具体是:
在A初次与B建立网络连接时,网络通信库储存A与B之间的状态信息包括:B的地址信息和此次网络连接状态,连接状态是正常或者异常,正常表示网络连接成功,异常表示网络连接失败,网络处于断开状态。并将A与B之间的状态信息反馈给上层应用A。而且,网络通信库中储存的状态信息中的连接状态时在数据传输过程中会被更新的。那么,当上层应用A需要与B之间进行数据交互时,就会将与B之间的网络连接的状态信息,发送给网络通信库。
上述上层应用A和服务器B仅仅是用来举例说明,并没有具体指定意义,任意一个上层应用或者任意一个服务器,只要需要数据交互时,都是按照上述方法进行处理。
S2:网络通信库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;
比如:当网络数据库接收到上层应用发送的状态信息具体为:目标地址是服务器B的地址、连接状态是正常,则检测A与B之间的网络连接的当前连接状态是否正常。由于网络受到各种现实因素的影响,比如交换机/网卡的异常等其他多种因素,导致的网络闪断,网络连接的连接状态会实时的发生变化。因此,需要检测网络连接的当前连接状态。
S3:当连接状态显示正常时,检查重传请求队列中是否有需要重传的传输请求,如果有,依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;如果没有,直接处理当前传输请求;
重传请求队列中缓存的传输请求是网络通信库在网络连接故障期间接收到上层应用发送的数据传输请求。重传请求队列就是一个缓冲区域,用于缓冲未处理的数据传输请求。比如A与B之间的网络连接出现故障后,上层应用A仍旧有数据需要传输,就会发送数据传输请求,但是此时,网络处于故障状态,无法进行数据传输,因此,将在故障期间将上层应用A发起的数据传输请求,都依次缓存在重传请求队列中。以待A与B之间的网络连接正常之后,再依次对重传请求队列中的数据传输请求进行处理。也可能是,在网络出现故障期间,上层应用A没有发起数据传输请求,因此重传请求队列中是空的。假如:当检查出重传请求队列中有数据传输请求,依次为“请求1、请求2、请求3、请求4”,而上层应用A当前发起的数据传输请求为“请求a”,则依次处理“请求1、请求2、请求3、请求4”,处理完之后最后再处理“请求a”。如果检查出重传请求队列是空的,则直接进行“请求a”的处理。
当然,也可以先处理“请求a”再处理重传请求队列中的每一个“请求”。或者,根据实际情况,选择性的处理重传请求队列中的“请求”和当前的“请求”。对其处理顺序不做限定。
S4:当连接状态显示异常时,重新建立网络连接,如果建立成功,将状态信息中的连接状态更新为正常,并跳转到步骤S3;如果建立失败,将当前传输请求储存在重传队列中。
当步骤S2检测网络连接的当前连接状态显示异常时,比如:上层应用A与服务器B之间的网络连接出现异常时,重新建立A与B之间的网络连接,如果建立成功,将A与B之间的网络连接状态信息中的连接状态更新为正常,并跳转至不走S3进行相应的处理。如果建立失败,将当前数据传输请求“请求a”储存在重传请求队列中。
在步骤S3中处理传输请求过程中,当数据传输失败时,还包括:
网络通信库更新当前网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传请求队列中。
比如:当处理重传请求队列中的上层应用A与服务器B之间“请求2”,进行该请求的数据传输时,发现传输失败,则更新上层应用A与服务器B之间的网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传请求队列中,由于是按照储存顺序依次进行处理,所以“请求2”之后的“请请求3、请求4”,以及当前“请求a”都没有得到处理,再者由于出现故障则,“请求2”也没有得到处理,因此将“请求2、请求3、请求4、请求a”依次储存在重传请求队列中,以待下一个请求达到时,网络连接处于正常状态时再依次进行处理。
通过上述实施例可以看出:网络通信库为每个进行数据传输的网络连接维护相关的状态信息,并在数据传输时更新其状态的变化,每次网络通信库在上层应用进行数据传输之前,都会检测相应网络连接的当前连接状态,并根据不同的状态进行不同的处理。另外,如果在数据传输的过程中,由于网络故障导致整个网络连接上的数据传输失败,就会实时更新当前网络连接的连接状态为异常状态,以待下一次收到数据传输请求时候,进行重新建立该网络连接,在重建成功后,更新网络连接状态为正常状态,并开始相应的数据传输处理。这种连接方式是按照需求进行重建,能够使得该网络通信库最小化底层网络故障对数据传输的影响。这种连接方式能够避免在无数据传输需求下不必要的重连操作,节省网络开销,提高通信网络处理效率,同时也使得网络具有很高的实用性。
实施例二
下面以具体的应用场景对发明的网络连接方法进行解释说明,具体为:上层应用为邮件发送端1,当前任务是需要传送一份邮件给邮件接收端2,具体方法请参阅图2,其为本申请实施例二揭示的一种通信网络连接方法的方法流程图,该方法包括以下步骤:
步骤201:当邮件发送端1需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;
当邮件发送端1需要发送邮件给邮件接收端2时,发送邮件发送端1与邮件接收端2之间的网络连接的状态信息和所需传输的邮件数据给网络通信库。
当邮件发送端1第一次与邮件接收端2建立网络连接时,网络通信库会储存该网络连接的状态信息包括:邮件接收端2的地址信息、此次网络连接的连接状态,并将该网络连接的状态信息反馈给邮件发送端1,以便当邮件发送端1需要与邮件接收端2之间进行数据交互时,直接将该状态信息发送给网络通信库,及时进行数据传输处理。当每一次数据传输的过程中,该网络连接的连接状态可能会发生变化,所以,每一次该网络连接的连接状态发生变化时,会及时更新。比如:该网络连接的连接状态之前是正常状态,在该状态下进行数据传输时,网络发生故障,该网络连接的连接状态变为异常,则更新储存的网络连接的状态信息中的连接状态为异常状态。
步骤202:网络数据库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;当检测结果为正常时,跳转到步骤203,当检测结果为异常时,跳转到步骤204;
比如:当网络通信库接收到上层应用发送的状态信息具体为:目标地址是接收端2的地址、连接状态是正常,则检测邮件发送端1与邮件接收端2之间的网络连接的当前连接状态是否正常。由于网络受到各种现实因素的影响,比如交换机/网卡的异常等其他多种因素,导致的网络闪断,网络连接的连接状态会实时的发生变化。也许,在上一次传输数据成功后到此次传输数据期间,该网络连接发生了故障,因此,需要检测网络连接的当前连接状态。
步骤203:检查重传请求队列中是否有需要重传的传输请求;如果有,转到步骤205;如果没有,转到步骤206;
重传请求队列中缓存的传输请求是网络数据库在网络连接故障期间接收到上层应用发送的数据传输请求。重传请求队列就是一个缓冲区域,用于缓冲未处理的数据传输请求。
比如邮件发送端1与邮件接收端2之间的网络连接出现故障后,邮件发送端1仍旧有邮件需要发送给邮件接收端2,就会发送数据传输请求,但是此时,网络处于故障状态,无法进行数据传输,因此,将在故障期间将邮件发送端1发起的数据传输请求,都依次缓存在重传请求队列中。以待邮件发送端1与邮件接收端2之间的网络连接正常之后,再依次对重传请求队列中的数据传输请求进行处理。也可能是,在网络出现故障期间,邮件发送端1没有发起数据传输请求,因此重传请求队列中是空的。假如:当检查出重传请求队列中有数据传输请求,依次为“请求1、请求2、请求3、请求4”,而邮件发送端1当前发起的数据传输请求为“请求a”,则依次处理“请求1、请求2、请求3、请求4”,处理完之后最后再处理“请求a”。如果检查出重传请求队列是空的,则直接进行“请求a”的处理。
当然,也可以先处理“请求a”再处理重传请求队列中的每一个“请求”。或者,根据实际情况,选择性的处理重传请求队列中的“请求”和当前的“请求”。对其处理顺序不做限定。
步骤204:重新建立邮件发送端1与邮件接收端2之间的网络连接,如果建立成功,跳转至步骤207;如果建立失败,跳转至步骤208;
步骤205:依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;
步骤206:直接处理当前传输请求;
步骤207:将状态信息中的连接状态更新为正常;并跳转至步骤203进行数据传输处理;
步骤208:将当前传输请求储存在重传队列中;
在步骤205或者步骤206处理传输请求过程中,当数据传输失败时,还包括:
网络通信库更新当前网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传请求队列中。
通过上述实施例可以看出:网络通信库为每个进行数据传输的网络连接维护相关的状态信息,并在数据传输时更新其状态的变化,每次网络通信库在上层应用进行数据传输之前,都会检测相应网络连接的当前连接状态,并根据不同的状态进行不同的处理。另外,如果在数据传输的过程中,由于网络故障导致整个网络连接上的数据传输失败,就会实时更新当前网络连接的连接状态为异常状态,以待下一次收到数据传输请求时候,进行重新建立该网络连接,在重建成功后,更新网络连接状态为正常状态,并开始相应的数据传输处理。这种连接方式是按照需求进行重建,能够使得该网络通信库最小化底层网络故障对数据传输的影响。这种连接方式能够避免在无数据传输需求下不必要的重连操作,节省网络开销,提高通信网络处理效率,同时也使得网络具有很高的实用性。
实施例三
与上述实施例一中的一种通信网络连接方法相对应,本申请实施例提供了一种通信网络连接装置。请参阅图3,其为本申请实施例三揭示的一种通信网络连接装置的装置结构图,该装置包括:发送模块301、检测模块302、检查模块303、第一处理模块304、第二处理模块305、重连模块306、更新模块307和储存模块308。下面结合该装置的工作原理进一步介绍其内部结构及其连接关系。
发送模块301,用于当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;
检测模块302,用于网络数据库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;
检查模块303,用于当检测模块检测结果显示正常时,检查重传请求队列中是否有需要重传的传输请求;
第一处理模块304,用于当检查模块检查结果是有时,依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;
第二处理模块305,用于当检查模块检查结果是没有时,直接处理当前传输请求;
重连模块306,用于当检测模块检测结果显示异常时,重新建立网络连接;
更新模块307,用于当重连模块建立成功时,将状态信息中的连接状态更新为正常,并转入检查模块进行检测处理;
储存模块308,用于当重连模块建立失败时,将当前传输请求储存在重传队列中。
优选的,所述发送模块中所发送的网络连接的状态信息是通过以下模块生成的,包括:
生成模块,用于在上层应用初次建立网络连接时,网络通信库储存网络连接的状态信息,并将该状态信息反馈给所述上层应用,所述状态信息包括:目标地址和连接状态,其中,连接状态在数据传输过程中会得到更新。
优选的,所述重传请求队列,用于缓存在网络连接故障期间接收到上层应用发送的数据传输请求。
优选的,还包括:第三处理模块,用于当输出传输失败时,更新当前网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传队列中。
优选的,所述重连模块,包括:
获取子模块,用于通过网络通信库获取所需的网络连接的状态信息中的目标地址;
重建子模块,用于根据所述目标地址,重新建立与目的端的网络连接。
通过上述实施例可以看出:本申请的中的装置为每个进行数据传输的网络连接维护相关的状态信息,并在数据传输时更新其状态的变化,每次网络通信库在上层应用进行数据传输之前,都会检测相应网络连接的当前连接状态,并根据不同的状态进行不同的处理。另外,如果在数据传输的过程中,由于网络故障导致整个网络连接上的数据传输失败,就会实时更新当前网络连接的连接状态为异常状态,以待下一次收到数据传输请求时候,进行重新建立该网络连接,在重建成功后,更新网络连接状态为正常状态,并开始相应的数据传输处理。这种连接方式是按照需求进行重建,能够使得该网络通信库最小化底层网络故障对数据传输的影响。这种连接方式能够避免在无数据传输需求下不必要的重连操作,节省网络开销,提高通信网络处理效率,同时也使得网络具有很高的实用性。
需要说明的是,本申请中的上述装置中的各个模块,可以集成在网络通信库中,也可以单独存在。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上对本发明所提供的一种通信网络连接方法和装置进行了详细介绍,本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种通信网络连接方法,其特征在于,包括:
S1:当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;所述所需的网络连接的状态信息是指所述上层应用与目标地址对应的目的端之间的网络连接的状态信息;
S2:网络通信库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;
S3:当连接状态显示正常时,检查重传请求队列中是否有需要重传的传输请求,如果有,依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;如果没有,直接处理当前传输请求;
S4:当连接状态显示异常时,重新建立网络连接,如果建立成功,将状态信息中的连接状态更新为正常,并跳转到步骤S3;如果建立失败,将当前传输请求储存在重传请求队列中。
2.根据权利要求1所述的方法,其特征在于,所述网络连接的状态信息是通过以下方式生成的,包括:
在上层应用初次建立网络连接时,网络通信库储存网络连接的状态信息,并将该状态信息反馈给所述上层应用,所述状态信息包括:目标地址和连接状态;其中,连接状态在数据传输过程中会得到更新。
3.根据权利要求1所述的方法,其特征在于,所述重传请求队列中缓存的传输请求是网络通信库在网络连接故障期间接收到上层应用发送的数据传输请求。
4.根据权利要求1所述的方法,其特征在于,在步骤S3中处理传输请求过程中,当数据传输失败时,还包括:
网络通信库更新当前网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传请求队列中。
5.根据权利要求1所述的方法,其特征在于,在步骤S4中当连接状态显示异常时,重新建立网络连接,具体包括:
网络通信库获取所需的网络连接的状态信息中的目标地址;
根据所述目标地址,重新建立与目的端的网络连接。
6.一种通信网络连接装置,其特征在于,包括:
发送模块,用于当上层应用需要进行数据传输时,发送所需的网络连接的状态信息和所需传输的数据给网络通信库;所述所需的网络连接的状态信息是指所述上层应用与目标地址对应的目的端之间的网络连接的状态信息;
检测模块,用于网络通信库根据接收到的所述状态信息,检测所需的网络连接的当前连接状态是否正常;
检查模块,用于当检测模块检测结果显示正常时,检查重传请求队列中是否有需要重传的传输请求;
第一处理模块,用于当检查模块检查结果是有时,依次处理所述重传请求队列中的传输请求,最后再处理当前传输请求;
第二处理模块,用于当检查模块检查结果是没有时,直接处理当前传输请求;
重连模块,用于当检测模块检测结果显示异常时,重新建立网络连接;
更新模块,用于当重连模块建立成功时,将状态信息中的连接状态更新为正常,并转入检查模块进行检查处理;
储存模块,用于当重连模块建立失败时,将当前传输请求储存在重传请求队列中。
7.根据权利要求6所述的装置,其特征在于,所述发送模块中所发送的网络连接的状态信息是通过以下模块生成的,包括:
生成模块,用于在上层应用初次建立网络连接时,网络通信库储存网络连接的状态信息,并将该状态信息反馈给所述上层应用,所述状态信息包括:目标地址和连接状态,其中,连接状态在数据传输过程中会得到更新。
8.根据权利要求6所述的装置,其特征在于,所述重传请求队列,用于缓存在网络连接故障期间接收到上层应用发送的数据传输请求。
9.根据权利要求6所述的装置,其特征在于,还包括:
第三处理模块,用于当数据传输失败时,更新当前网络连接的连接状态为异常状态,同时将未执行的传输请求储存在重传请求队列中。
10.根据权利要求6所述的装置,其特征在于,所述重连模块,包括:
获取子模块,用于通过网络通信库获取所需的网络连接的状态信息中的目标地址;
重建子模块,用于根据所述目标地址,重新建立与目的端的网络连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310218436.3A CN103338118B (zh) | 2013-06-04 | 2013-06-04 | 一种通信网络连接方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310218436.3A CN103338118B (zh) | 2013-06-04 | 2013-06-04 | 一种通信网络连接方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103338118A CN103338118A (zh) | 2013-10-02 |
CN103338118B true CN103338118B (zh) | 2016-09-14 |
Family
ID=49246222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310218436.3A Expired - Fee Related CN103338118B (zh) | 2013-06-04 | 2013-06-04 | 一种通信网络连接方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103338118B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224055A (zh) * | 2014-06-13 | 2016-01-06 | 株式会社日立制作所 | 资源受限设备的连接状态管理方法及装置 |
CN105759934B (zh) * | 2014-12-19 | 2019-10-29 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN106303702A (zh) * | 2015-06-11 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 连接状态检测方法、装置和智能电视系统 |
CN105634679A (zh) * | 2016-04-08 | 2016-06-01 | 浪潮(北京)电子信息产业有限公司 | 一种通信架构 |
CN106793158B (zh) * | 2016-11-26 | 2020-03-17 | 宇龙计算机通信科技(深圳)有限公司 | 一种终端状态管理方法及装置 |
CN107566215B (zh) * | 2017-09-11 | 2019-07-09 | Oppo广东移动通信有限公司 | 无线网络断流检测方法、装置、存储介质及移动终端 |
CN109194744B (zh) * | 2018-09-05 | 2020-11-10 | 上海华测导航技术股份有限公司 | 一种数据传输方法、装置、存储介质及监测设备 |
CN109639653A (zh) * | 2018-11-29 | 2019-04-16 | 中国人民银行清算总中心 | 基于分布式网银系统的报文传输方法及系统 |
CN110086685A (zh) * | 2019-06-13 | 2019-08-02 | 深圳市友华通信技术有限公司 | 基于网络终端的网络恢复方法 |
CN111669438B (zh) * | 2020-05-27 | 2022-10-04 | 北京百度网讯科技有限公司 | 直播消息传输方法、装置、电子设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030003366A (ko) * | 2001-06-30 | 2003-01-10 | 주식회사 케이티 | 비동기식 전송 모드 초고속 정보 통신망에서 루프백을이용한 물리 링크 토폴로지 확인 방법 |
CN101567861A (zh) * | 2009-05-20 | 2009-10-28 | 福建星网锐捷网络有限公司 | 异构应用系统之间的数据同步方法及应用系统 |
CN101661494A (zh) * | 2009-09-29 | 2010-03-03 | 莱芜钢铁集团有限公司 | 一种分布式中间件与数据库数据交互方法 |
CN102830967A (zh) * | 2012-08-03 | 2012-12-19 | 福建富士通信息软件有限公司 | 一种餐饮云平台系统 |
-
2013
- 2013-06-04 CN CN201310218436.3A patent/CN103338118B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030003366A (ko) * | 2001-06-30 | 2003-01-10 | 주식회사 케이티 | 비동기식 전송 모드 초고속 정보 통신망에서 루프백을이용한 물리 링크 토폴로지 확인 방법 |
CN101567861A (zh) * | 2009-05-20 | 2009-10-28 | 福建星网锐捷网络有限公司 | 异构应用系统之间的数据同步方法及应用系统 |
CN101661494A (zh) * | 2009-09-29 | 2010-03-03 | 莱芜钢铁集团有限公司 | 一种分布式中间件与数据库数据交互方法 |
CN102830967A (zh) * | 2012-08-03 | 2012-12-19 | 福建富士通信息软件有限公司 | 一种餐饮云平台系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103338118A (zh) | 2013-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103338118B (zh) | 一种通信网络连接方法及装置 | |
US7676616B2 (en) | Method, apparatus and program storage device for providing asynchronous status messaging in a data storage system | |
CN100580636C (zh) | 网络数据存储相关操作 | |
JP5872731B2 (ja) | クラスタの複数のノードのそれぞれに対してリンクの障害の検出を伝えるためのコンピュータ実装方法、非一時的なコンピュータ可読媒体およびコンピュータシステム | |
CN109842651B (zh) | 一种业务不间断的负载均衡方法和系统 | |
CN103514173B (zh) | 数据处理的方法和节点设备 | |
CN106330475A (zh) | 一种通信系统中管理主备节点的方法和装置及高可用集群 | |
JP6431197B2 (ja) | スナップショット処理方法および関係付けられたデバイス | |
CN107203443A (zh) | 一种基于kvm虚拟化的虚拟机高可用的方法与装置 | |
CN108924008A (zh) | 一种双控制器数据通信方法、装置、设备及可读存储介质 | |
CN116760510B (zh) | 一种消息发送方法、消息接收方法、装置和设备 | |
CN112612653B (zh) | 一种业务恢复方法、装置、仲裁服务器以及存储系统 | |
CN108418859B (zh) | 写数据的方法和装置 | |
CN113986501A (zh) | 实时数据库api无中断调用方法、系统、存储介质及服务器 | |
CN103685501A (zh) | 数据处理方法、装置和系统 | |
US20090319699A1 (en) | Preventing Loss of Access to a Storage System During a Concurrent Code Load | |
JP2010092336A (ja) | ストレージシステム及び通信方法 | |
CN113760862B (zh) | 一种增量数据断点续传方法、装置、设备及存储介质 | |
CN107678891A (zh) | 一种存储系统的双控方法、装置及可读存储介质 | |
CN107483635A (zh) | 一种业务请求处理方法、处理系统及消息中间件 | |
US9252922B2 (en) | System and method for improved error response in data mirroring | |
CN102055606A (zh) | 一种业务支撑系统中的业务处理方法、系统及设备 | |
CN110134628B (zh) | 消息传输方法、装置、设备及存储介质 | |
CN116340040A (zh) | 一种多存储控制器故障切换方法、装置、设备及存储介质 | |
CN102457559A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 100086 12, 1201, 3 building, 2 South Road, Haidian District Academy of Sciences, Beijing. Patentee after: BEIJING SOHU NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd. Address before: 100084 Beijing Haidian District Zhongguancun East Road 1 hospital 9 building Sohu cyber Building 8 floor 802 Patentee before: BEIJING SOHU NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160914 |