CN104468062A - 数据处理方法以及装置 - Google Patents
数据处理方法以及装置 Download PDFInfo
- Publication number
- CN104468062A CN104468062A CN201410579814.5A CN201410579814A CN104468062A CN 104468062 A CN104468062 A CN 104468062A CN 201410579814 A CN201410579814 A CN 201410579814A CN 104468062 A CN104468062 A CN 104468062A
- Authority
- CN
- China
- Prior art keywords
- business
- socket
- opposite equip
- business datum
- board
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了数据处理方法以及装置,其中该方法包括:本端设备的备业务板接收所述本端设备的主业务板与对端设备建立套接字socket连接后发来的socket连接信息,并根据所述socket连接信息创建socket镜像后,接收并保存来自所述对端设备的第一业务数据;将所述第一业务数据发送给所述主业务板进行保存和处理,并将来自所述主业务板的第一业务响应数据通过创建的socket镜像发送给所述对端设备。本发明在本端设备的业务板出现故障时,可保证业务不会中断,并且对端设备感知不到本端设备的局部故障。
Description
技术领域
本发明涉及通信技术领域,尤其涉及数据处理方法以及装置。
背景技术
现有技术中,在本端设备与对端设备进行通信时,由本端设备向对端设备发起一个TCP(Transmission Control Protocol,传输控制协议)连接请求,在对端设备接收到该TCP连接请求后,首先建立TCP连接,然后可以基于该TCP连接,通过调用socket(套接字)向本端设备发送数据报文,本端设备接收到该数据报文后,向对端设备回复确认报文。然而,由于网络的不稳定性,在该TCP连接的任意一端出现故障造成设备重启时,该TCP连接就会断开,从而造成本端设备与对端设备之间的业务中止或者数据丢失。
发明内容
本发明提供了数据处理方法以及装置来解决因TCP连接断开,造成本端设备与对端设备之间的业务中止或者数据丢失的问题。
本发明提供了一种数据处理方法,其中包括:
本端设备的备业务板接收所述本端设备的主业务板与对端设备建立套接字socket连接后发来的socket连接信息,并根据所述socket连接信息创建socket镜像后,接收并保存来自所述对端设备的第一业务数据;
将所述第一业务数据发送给所述主业务板进行保存和处理,并将来自所述主业务板的第一业务响应数据通过创建的socket镜像发送给所述对端设备。
本发明还提供一种数据处理方法,其中包括:
本端设备的主业务板与对端设备建立socket连接后,向所述本端设备的至少一个备业务板发送socket连接信息,以使所述至少一个备业务板根据接收到的socket连接信息创建socket镜像;
接收至少一个已创建socket镜像的备业务板中的第一备业务板发送的来自所述对端设备的第一业务数据,保存并处理所述第一业务数据,将处理后得到的第一业务响应数据发送给所述第一备业务板,以使所述第一备业务板将所述第一业务响应数据通过创建的socket镜像发送给所述对端设备。
本发明还提供一种数据处理装置,其中包括:
接收单元,用于接收本端设备的主业务板与对端设备建立套接字socket连接后发来的socket连接信息,以及在创建单元根据所述socket连接信息创建socket镜像后,接收来自所述对端设备的第一业务数据;
创建单元,用于根据所述接收单元接收到的socket连接信息创建socket镜像;
保存单元,用于保存所述接收单元接收到的第一业务数据;
发送单元,用于将所述第一业务数据发送给所述主业务板进行保存和处理,并将来自所述主业务板的第一业务响应数据通过创建的socket镜像发送给所述对端设备。
本发明还提供一种数据处理装置,其中包括:
发送单元,用于在本端设备的所述装置与对端设备建立socket连接后,向所述本端设备的至少一个备业务板发送socket连接信息,以使所述至少一个备业务板根据接收到的socket连接信息创建socket镜像;以及将处理单元处理第一业务数据后得到的第一业务响应数据发送给第一备业务板,以使所述第一备业务板将所述第一业务响应数据通过创建的socket镜像发送给所述对端设备;
接收单元,用于接收至少一个已创建socket镜像的备业务板中的第一备业务板发送的来自所述对端设备的第一业务数据;
保存单元,用于保存所述接收单元接收到的第一业务数据;
处理单元,用于处理所述接收单元接收到的第一业务数据。
本发明实施例提供的数据处理方法及装置,在该方法中,本端设备的主业务板与对端设备建立socket连接后,通过在一些备业务板上建立socket镜像,使得本端设备与对端设备进行业务数据交互时,将所交互的业务数据分别保存在主业务板以及指定备业务板上,这样,在处于工作的备业务板或者主业务板出现故障时,均可由相应的业务板无缝承接出现故障的业务板的业务,以保证业务不会中断,并且对端设备感知不到本端设备的局部故障。
附图说明
图1是本发明实施例的应用场景示意图;
图2是本发明中数据处理方法的一个实施例示意图;
图3是本发明中数据处理方法的另一个实施例示意图;
图4-1,4-2是本发明数据处理交互过程的实施例示意图;
图5是本发明中数据处理装置所在主业务板或备业务板的硬件架构示意图;
图6为本发明中实施例中数据处理装置的一个实施例结构示意图;
图7为本发明中实施例中数据处理装置的另一个实施例结构示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图对本申请方案作进一步地详细说明。
如图1所示,为本发明实施例的应用场景示意图,图1中的本端设备可以包括备业务板(图1中仅示出一个,当然,还可以包括多个)、主业务板以及IO(Input/Output,输入/输出)单板。本端设备与图1中的对端设备均可以是分布式设备,对端设备与本端设备可以是相同类型的设备,也可以是不同类型的设备。
现有技术中在本端设备与对端设备通过TCP连接进行通信时,由于网络的不稳定性,在该TCP连接的任意一端出现故障造成设备重启时,该TCP连接就会断开,从而造成本端设备与对端设备之间的业务中止或者数据丢失。
为此,本发明提供了数据处理方案以解决现有技术中所遇到的问题。
请参考图2,为本发明数据处理方法的一个实施例流程图,该实施例可以应用在本端设备的备业务板上,包括以下步骤:
步骤201,本端设备的备业务板接收本端设备的主业务板与对端设备建立socket连接后发来的socket连接信息,并根据socket连接信息创建socket镜像后,接收并保存来自对端设备的第一业务数据。
本发明实施例中,在对端设备发起与本端设备通信的socket连接请求时,对端设备会首先创建一个socket,并向本端设备发送socket连接信息。其中,该socket连接信息包括创建socket的五元组,该五元组中的源IP地址是对端设备的IP地址、目的IP地址是本端设备的IP地址、源端口是对端设备发送socket连接信息的出端口、目的端口是本端设备接收socket连接信息的入端口以及当前使用的传输层协议号。本端设备的主业务板根据接收到的socket连接信息创建socket,例如socket-a,并将该socket-a的五元组通过内部链路发送至备业务板,备业务板在接收到该socket-a的五元组后,根据五元组创建socket-b,即建立socket镜像。该socket-a与socket-b可以互为socket镜像,即在分布式环境下,与对端设备建立socket连接的本端设备上,有两个位于不同业务板或节点上的独立socket,它们的信息完全一致。
备业务板在创建socket-b后,主业务板将该备业务板的位置信息在本端设备内进行广播,使得本端设备的IO单板记录该备业务板的位置信息,以备后续使用。
在本端设备与对端设备建立socket连接后,对端设备即可以通过自身创建的socket连接与本端设备进行通信。对端设备发送第一业务数据后,首先由本端设备的IO单板接收到该第一业务数据,IO单板会从本地记录的由主业务板广播的备业务板(以广播的备业务板的位置信息呈现)中确定出一个备业务板,作为响应对端设备的备业务板,并将该第一业务数据发送至确定出的备业务板。例如,在上述步骤201中提及的备业务板即是确定出的备业务板,此备业务板接收到该第一业务数据后,将该第一业务数据保存至自身创建的socket-b对应的缓存空间中。
需要说明的是,上述IO单板从本地记录的备业务板中确定出一个备业务板的确定方式可以有多种,可以从本地记录的备业务板中任意选择一个,也可以按照一定的顺序选择等,在此不再一一列举。
步骤202,将第一业务数据发送给主业务板进行保存和处理,并将来自主业务板的第一业务响应数据通过创建的socket镜像发送给对端设备。
在本步骤中,为了提高对端设备持有用户的体验,备业务板在将第一业务数据发送给主业务板的同时,可以通过IO单板向对端设备发送确认响应数据,告知对端设备本端设备已收到第一业务响应数据。
进一步地,备业务板将第一业务数据发送给主业务板后,由主业务板对第一业务数据进行保存,例如保存在socket-a对应的缓存空间中,并在保存后通过内部链路向备业务板发送保存响应数据(DATA ACK),告知备业务板已保存第一业务数据,以确保主、备业务板之间的数据同步。对于备业务板而言,它在接收到保存响应数据后,得知主业务板已保存第一业务数据,但还未对其进行上送处理,此时,备业务板不再响应主业务板。
而对于主业务板来说,它在发送保存响应数据之后,将第一业务数据上送应用层处理,例如进行BGP(Border Gateway Protocol,边界网关协议)业务处理。后续在得到针对第一业务数据的第一业务响应数据时,清除所保存的第一业务数据,并将第一业务响应数据通过内部链路发送给备业务板,告知备业务板已上送处理完毕,可以清除本地保存的第一业务数据,并将第一业务数据反馈给对端设备。
之后,备业务板接收到第一业务响应数据后,清除本地保存的第一业务数据,并将第一业务响应数据通过创建的socket镜像(socket-b)发送给对端设备,通知对端设备已完成第一业务数据的处理,这样一来,在主业务板出现故障时,可由备业务板进行业务承接,保证了本端设备与对端设备之间的业务不中断。在这里的具体实现时,备业务板发送的第一业务响应数据可通过IO单板中转过去。
以上步骤201-步骤202介绍的是对端设备主动与本端设备进行通信的交互流程,下面介绍一下本端设备主动与对端设备进行通信的交互流程。
若本端设备需要与对端设备进行通信,首先由本端设备的主业务板创建socket-a,并向对端设备发送socket连接信息,以使对端设备根据socket连接信息创建socket。其中,该socket连接信息包括创建socket-a的五元组,该五元组中的源IP地址是本端设备的IP地址、目的IP地址是对端设备的IP地址、源端口是本端设备发送socket连接信息的出端口、目的端口是对端设备接收socket连接信息的入端口以及当前使用的传输层协议号。之后,主业务板将socket-a的五元组发送至至少一个备业务板,使得收到该五元组的备业务板均创建socket镜像,以便后续根据主业务板的指示与对端设备进行交互。
接下来,仍以上述步骤201中提及的备业务板(创建的socket-b)为例,详细介绍一下本端设备主动与对端设备进行通信的交互流程。
本端设备与对端设备间建立socket连接后,主业务板先将与对端设备交互的第二业务数据保存至自身创建的socket-a对应的缓存空间中,然后通过内部链路发送至备业务板。备业务板接收到第二业务数据后,将其存储于socket-b对应的缓存空间中,并将该第二业务数据通过已创建的socket镜像发送至对端设备。在这里,具体实现时,备业务板发送的第二业务数据可通过IO单板中转过去,在此过程中,IO单板记录下备业务板的位置信息。
之后,IO单板接收到对端设备返回的针对第二业务数据的第二业务响应数据,然后根据记录的该备业务板的位置信息,将第二业务响应数据转发到该备业务板上。该备业务板接收到第二业务响应数据后,得知第二业务数据已处理完毕,此时,清除保存于socket-b对应的缓存空间中的第二业务数据,并将第二业务响应数据通过内部链路发送至主业务板,以使主业务板在接收到第二业务响应数据后清除保存的第二业务数据。
需要说明的是,在上述备业务板出现故障时,主业务板可以调用其他已创建socket镜像的备业务板继续与对端设备进行交互,以保证本端设备与对端设备之间的业务不中断,具体交互流程与上述备业务板与对端设备的交互流程类似,在此不再赘述。即使其他已创建socket镜像的备业务板均出现故障,还可由主业务板直接与对端设备进行交互,具体交互流程为现有技术,在此不再赘述。在这里,具体的调用方式可与上述IO单板确定备业务板的确定方式类似,在此不再一一列举。
更进一步地,在本发明实施例中,不管是本端设备先向对端设备发起通信,还是对端设备先向本端设备发起通信,在主业务板需要关闭socket连接或者对端设备需要关闭socket连接时,备业务板会接收到主业务板广播的关闭socket连接的关闭报文,在这种情况下,备业务板可根据关闭报文关闭已创建的socket镜像,即关闭socket-b。对于主业务板而言,它在广播关闭socket连接的关闭报文后,也关闭自身创建的socket-a。
请参考图3,为本发明数据处理方法的另一个实施例流程图,该实施例应用在本端设备的主业务板上,包括以下步骤:
步骤301,本端设备的主业务板与对端设备建立socket连接后,向本端设备的至少一个备业务板发送socket连接信息,以使至少一个备业务板根据接收到的socket连接信息创建socket镜像。
具体地,在对端设备发起与本端设备通信的socket连接请求时,主业务板仍根据socket连接请求中的socket连接信息创建socket-a,并将该socket-a的五元组发送至至少一个备业务板,以使这些备业务板根据该五元组创建与socket-a互为socket镜像的socket。
这些备业务板创建镜像socket后,主业务板广播这些备业务板的位置信息,以使本端设备的IO单板记录下这些备业务板的位置信息。
步骤302,接收至少一个已创建socket镜像的备业务板中的第一备业务板发送的来自对端设备的第一业务数据,保存并处理第一业务数据,将处理后得到的第一业务响应数据发送给第一备业务板,以使第一备业务板将第一业务响应数据通过创建的socket镜像发送给对端设备。
在本步骤中,上述第一备业务板发送的来自对端设备的第一业务数据,实际上是本端设备的IO单板在接收到对端设备发送的第一业务数据时,从本地记录的主业务板广播的至少一个已创建socket镜像的备业务板(以广播的备业务板的位置信息呈现)中确定出第一备业务板后,向第一备业务板发送的。
在这里,IO单板确定第一备业务板的过程与上述第一个实施例中提及的确定过程类似,在此不再详述。
进一步地,在本发明实施例中,上述主业务板还执行下述流程:将第一业务数据进行处理后,清除保存的第一业务数据,并在将第一业务响应数据发送给第一备业务板后,指示第一备业务板清除自身保存的第一业务数据。在这里,主业务板处理第一业务数据的具体过程已描述在上述第一个实施例中,在此不再详述。
在本发明实施例中,上述主业务板还执行下述流程:保存需要与对端设备交互的第二业务数据;将第二业务数据发送给第一备业务板,以使第一备业务板保存接收到的第二业务数据,并将其通过创建的socket镜像发送给对端设备;接收到第一备业务板发送的来自对端设备的第二业务响应数据后,清除保存的第二业务数据。在这里,主业务板处理第二业务数据的具体过程已描述在上述第一个实施例中,在此不再详述。
在本发明实施例中,上述主业务板还执行下述流程:在自身需要关闭与对端设备建立的socket连接或者接收到对端设备发送的关闭socket连接的关闭报文时,广播关闭socket连接的关闭报文,以使已创建socket镜像的备业务板根据接收到的关闭报文关闭已创建的socket镜像;在已创建socket镜像的备业务板关闭已创建的socket镜像后,关闭自身创建的socket连接。
更进一步地,在本发明实施例中,为了保证本端设备与对端设备之间的业务不中断,在第一备业务板出现故障时,上述主业务板还执行下述流程:接收至少一个已创建socket镜像的备业务板中的第二备业务板发送的来自对端设备的第三业务数据;保存并处理第三业务数据,并将处理后得到的第三业务响应数据发送给第二备业务板,以使第二备业务板将第三业务响应数据通过创建的socket镜像发送给对端设备。
需要说明的是,对于主业务板来说,它能感知到出现故障的备业务板,例如,当它感知到第一备业务板出现故障时,会向IO单板发送关于第一备业务板出现故障的通知,这样,IO单板接收到此通知后,将本地记录的该备业务板的位置信息删除,并从剩余的备业务板中重新确定一个备业务板,例如上述的第二备业务板,后续在接收到对端发来的业务数据时,即转发到第二备业务板上,由第二备业务板对后续的业务数据进行相关处理。
在这里,如果第一备业务板一直未出现故障,那么,本端设备与对端设备之间的业务数据均可以由第一备业务板进行处理,当然,也可以根据实际需求在处理过程中调换成其他备业务板来承接。如果第一备业务板在处理过程中出现故障,可先由其他备业务板(例如第二备业务板)承接上,以确保本端设备与对端设备之间的业务不中断。
另外,在已创建socket镜像的备业务板均出现故障时,上述主业务板还执行下述流程:接收来自对端设备的第四业务数据;保存并处理第四业务数据,并将处理后得到的第四业务响应数据通过建立的socket发送给对端设备。即,在已创建socket镜像的备业务板均出现故障的情况下,能够由主业务板承接上,进一步保证了本端设备与对端设备之间的业务交互。
综上可知,不管是在本端设备主动与对端设备进行通信的情形下,还是在对端设备主动与本端设备进行通信的情形下,在处于工作的备业务板或者主业务板出现故障时,均可由相应的业务板无缝承接出现故障的业务板的业务,以保证业务不会中断,并且对端设备感知不到本端设备的局部故障,进一步提高了用户体验。
参见图4-1,为本发明数据处理方法的另一个实施例流程图,该实施例通过本端设备的主业务板、备业务板以及IO单板与对端设备之间的交互详细描述了对端设备发起与本端设备通信时的数据处理的过程,包括以下步骤:
步骤401,对端设备向本端设备发送socket连接请求。
在对端设备发起与本端设备通信的socket连接请求时,对端设备会首先创建一个socket,并向本端设备发送socket连接信息。
步骤402,主业务板创建socket-a。
本端设备的主业务板根据接收到的socket连接信息创建socket-a。
步骤403,发送socket-a的五元组至备业务板。
步骤404,备业务板创建socket-b。
备业务板根据socket-a的五元组创建socket-b。
步骤405,主业务板广播该备业务板的位置信息。
主业务板将该备业务板的位置信息在本端设备内进行广播。
步骤406,IO单板保存该备业务板的位置信息。
本端设备的IO单板在收到主业务板发送的广播报文后,可以保存该备业务板的位置信息。
步骤407,IO单板接收对端设备发送的第一业务数据。
在对端设备向本端设备发送第一业务数据后,首先由本端设备的IO单板接收该第一业务数据。
步骤408,IO单板将第一业务数据发送至对应的备业务板。
IO单板从本地记录的由主业务板广播的备业务板(以广播的备业务板的位置信息呈现)中确定出一个备业务板,作为响应对端设备的备业务板,并将该第一业务数据发送至确定出的备业务板。
步骤409,备业务板保存该第一业务数据。
备业务板接收到IO单板发送的第一业务数据后,将该第一业务数据保存至自身创建的socket-b对应的缓存空间。
步骤410,备业务板将该第一业务数据发送给主业务板。
步骤411,主业务板保存该第一业务数据。
主业务板将该第一业务数据保存至自身创建的socket-a对应的缓存空间。
步骤412,主业务板通过内部链路向备业务板发送DATA ACK。
步骤413,主业务板将该第一业务数据上送应用层处理。
主业务板将第一业务数据保存至socket-a对应的缓存空间后,由应用层对主业务板保存的第一业务数据进行处理,在得到针对第一业务数据的第一业务响应数据时,清除socket-a对应的缓存空间中的第一业务数据。
步骤414,主业务板向备业务板发送第一业务响应数据。
步骤415,备业务板清除第一业务数据。
步骤416,备业务板向对端设备发送第一业务响应数据。
备业务板接收到第一业务响应数据后,清除本地保存的第一业务数据,并将第一业务响应数据通过创建的socket镜像(socket-b)发送给对端设备,通知对端设备已完成第一业务数据的处理。
步骤417,对端设备发送关闭socket连接的关闭报文。
在本端设备与对端设备的数据交互完成,不需要再进行数据通信时,可关闭本端设备与对端设备当前建立的socket连接。若由对端设备发起关闭socket连接,对端设备会首先关闭自身创建的socket,然后发送关闭socket连接的关闭报文。
步骤418,主业务板广播关闭socket连接的关闭报文。
本端设备的主业务板接收到该关闭报文后,可以将该关闭报文在本端设备内广播。
步骤419,备业务板关闭socket-b。
备业务板在接收到主业务板广播的关闭报文时,关闭自身创建的socket-b。
步骤420,主业务板关闭socket-a。
在备业务板关闭socket-b后,主业务板关闭创建的socket-a,该socket连接即关闭。
参见图4-2,为本发明数据处理方法的一个实施例流程图,该实施例通过本端设备的主业务板、备业务板以及IO单板与对端设备之间的交互详细描述了本端设备发起与对端设备通信时的数据处理的过程,包括以下步骤:
步骤501,主业务板创建socket-a。
在本端设备需要与对端设备进行通信时,首先由本端设备的主业务板创建socket-a。
步骤502,主业务板向对端设备发送socket连接请求。
主业务板向对端设备发送socket连接信息,以使对端设备根据socket连接信息创建socket。
步骤503,主业务板向备业务板发送socket-a的五元组。
主业务板将socket-a的五元组发送至备业务板,以使备业务板根据五元组创建与socket-a互为socket镜像的socket-b。
步骤504,备业务板创建socket-b。
备业务板根据五元组创建socket-b。
步骤505,主业务板广播该备业务板的位置信息。
主业务板将该备业务板的位置信息在本端设备内进行广播。
步骤506,IO单板保存该备业务板的位置信息。
步骤507,主业务板保存要发送的第二业务数据。
本端设备与对端设备间建立socket连接后,主业务板先将与对端设备交互的第二业务数据保存至自身创建的socket-a对应的缓存空间中。
步骤508,主业务板向备业务板发送第二业务数据。
主业务板通过内部链路将第二业务数据发送至备业务板。
步骤509,备业务板保存第二业务数据。
备业务板将接收到的该第二业务数据存储于自身创建的socket-b对应的缓存空间。
步骤510,备业务板向对端设备发送该第二业务数据。
备业务板将该第二业务数据通过与对端设备建立的socket连接发送至对端设备,具体实现时,备业务板发送的第二业务数据可通过IO单板中转过去,在此过程中,IO单板记录下备业务板的位置信息。
步骤511,对端设备发送第二业务响应数据。
在对端设备接收到该第二业务数据后,会回复第二业务响应数据(例如ACK报文),以表示第二业务数据处理完成。
步骤512,IO单板将第二业务响应数据发送至备业务板。
IO单板接收到对端设备返回的针对第二业务数据的第二业务响应数据,根据记录的该备业务板的位置信息,将第二业务响应数据转发到该备业务板上。
步骤513,备业务板清除第二业务数据。
该备业务板接收到第二业务响应数据后,得知第二业务数据已处理完毕,此时,清除保存于socket-b对应的缓存空间中的第二业务数据。
步骤514,备业务板向主业务板发送第二业务响应数据。
步骤515,主业务板清除第二业务数据。
主业务板在接收到第二业务响应数据后,清除存储于socket-a对应的缓存空间中的第二业务数据。
步骤516,主业务板广播关闭socket连接的关闭报文。
在本端设备与对端设备的数据交互完成,由本端设备发起关闭与对端设备当前建立的socket连接时,主业务板可以在本端设备内广播关闭socket连接的关闭报文,以使本端设备内备业务板将建立的与该socket连接相关的socket镜像关闭。
步骤517,备业务板关闭socket-b。
在备业务板接收到主业务板广播的关闭socket连接的关闭报文时,关闭自身创建的socket-b。
步骤518,主业务板向对端设备发送关闭报文,以使对端设备关闭socket连接。
步骤519,主业务板关闭socket-a。
与本发明数据处理方法的实施例相对应,本发明还提供了数据处理装置的实施例。
本发明数据处理装置的一种实施例可以应用在本端设备的备业务板上。该装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本发明数据处理装置所在备业务板的一种硬件结构图,除了图5所示的CPU、内存、网络端口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等;从硬件结构上来讲该设备还可能是分布式的设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
参见图6,为本发明数据处理装置的一种实施例结构示意图,其从本质上说该装置是一个逻辑装置。在本实施方式中,以软件实现为例,该数据处理装置在逻辑层面上可以包括接收单元601、创建单元602、保存单元603以及发送单元604,其中:
接收单元601,用于接收本端设备的主业务板与对端设备建立套接字socket连接后发来的socket连接信息,以及在创建单元602根据socket连接信息创建socket镜像后,接收来自对端设备的第一业务数据;
创建单元602,用于根据接收单元601接收到的socket连接信息创建socket镜像;
保存单元603,用于保存接收单元601接收到的第一业务数据;
发送单元604,用于将第一业务数据发送给主业务板进行保存和处理,并将来自主业务板的第一业务响应数据通过创建的socket镜像发送给对端设备。
优选地,上述接收单元601接收的第一业务数据,为本端设备的IO单板在接收到对端设备发送的第一业务数据时,从本地记录的主业务板广播的至少一个已创建socket镜像的备业务板中确定出装置后,向装置转发的。
优选地,上述接收单元601,还用于接收来自主业务板的第一业务响应数据;在这种情况下,上述装置还可以包括:清除单元605,用于在接收单元601接收到第一业务响应数据后,清除保存的第一业务数据。
优选地,在本发明实施例中,上述接收单元601,还用于接收主业务板发送的第二业务数据,以及接收对端设备返回的第二业务响应数据;
上述保存单元603,还用于保存接收单元601接收到的第二业务数据;
上述发送单元604,还用于将第二业务数据通过创建的socket镜像发送给对端设备;以及在清除单元605清除保存的第二业务数据后,将第二业务响应数据发送至主业务板,以使主业务板在接收到第二业务响应数据后清除保存的第二业务数据;
上述清除单元605,还用于在接收单元601接收到第二业务响应数据后,清除保存的第二业务数据。
优选地,上述接收单元601,还用于在主业务板需要关闭socket连接或者对端设备需要关闭socket连接时,接收主业务板广播的关闭socket连接的关闭报文;在这种情况下,上述装置还可以包括:关闭单元606,用于根据接收单元601接收到的关闭报文,关闭已创建的socket镜像。
本发明数据处理装置的另一种实施例可以应用在本端设备的主业务板上。该装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。为示例方便,本发明数据处理装置所在主业务板的硬件结构图与备业务板的硬件结构图均可以如图5所示,除了图5所示的CPU、内存、网络端口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等;从硬件结构上来讲该设备还可能是分布式的设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
参见图7,为本发明数据处理装置的另一种实施例结构示意图,其从本质上说该装置是一个逻辑装置。在本实施方式中,以软件实现为例,该数据处理装置在逻辑层面上可以包括发送单元701、接收单元702、保存单元703以及处理单元704,其中:
发送单元701,用于在本端设备的装置与对端设备建立socket连接后,向本端设备的至少一个备业务板发送socket连接信息,以使至少一个备业务板根据接收到的socket连接信息创建socket镜像;以及将处理单元704处理第一业务数据后得到的第一业务响应数据发送给第一备业务板,以使第一备业务板将第一业务响应数据通过创建的socket镜像发送给对端设备
接收单元702,用于接收至少一个已创建socket镜像的备业务板中的第一备业务板发送的来自对端设备的第一业务数据;
保存单元703,用于保存接收单元702接收到的第一业务数据;
处理单元704,用于处理接收单元702接收到的第一业务数据。
优选地,上述接收单元702接收到的第一备业务板发送的来自对端设备的第一业务数据,为本端设备的IO单板在接收到对端设备发送的第一业务数据时,从本地记录的主业务板广播的至少一个已创建socket镜像的备业务板中确定出第一备业务板后,向第一备业务板发送的。
优选地,上述装置还可以包括:清除单元705,用于在处理单元704对第一业务数据进行处理后,清除保存的第一业务数据;在这种情况下,上述发送单元701,还用于将第一业务响应数据发送给第一备业务板后,指示第一备业务板清除自身保存的第一业务数据。
优选地,在本发明实施例中,上述保存单元703,还用于保存装置需要与对端设备交互的第二业务数据;
上述发送单元701,还用于将第二业务数据发送给第一备业务板,以使第一备业务板保存接收到的第二业务数据,并将其通过创建的socket镜像发送给对端设备;
上述接收单元702,还用于接收第一备业务板发送的来自对端设备的第二业务响应数据;
上述清除单元705,用于在接收单元702接收到第二业务响应数据后,清除保存的第二业务数据。
优选地,上述装置还可以包括:广播单元706,用于在装置需要关闭与对端设备建立的socket连接或者接收到对端设备发送的关闭socket连接的关闭报文时,广播关闭socket连接的关闭报文,以使已创建socket镜像的备业务板根据接收到的关闭报文关闭已创建的socket镜像;
关闭单元707,在已创建socket镜像的备业务板关闭已创建的socket镜像后,关闭自身创建的socket连接。
优选地,在本发明实施例中,上述接收单元702,还用于在第一备业务板出现故障时,接收至少一个已创建socket镜像的备业务板中的第二备业务板发送的来自对端设备的第三业务数据;
上述保存单元703,还用于保存接收单元702接收到的第三业务数据;
上述处理单元704,还用于处理接收单元702接收到的第三业务数据;
上述发送单元701,还用于将处理单元704处理后得到的第三业务响应数据发送给第二备业务板,以使第二备业务板将第三业务响应数据通过创建的socket镜像发送给对端设备。
优选地,在本发明实施例中,上述接收单元702,还用于在已创建socket镜像的备业务板均出现故障时,接收来自对端设备的第四业务数据;
上述保存单元703,还用于保存接收单元702接收到的第四业务数据;
上述处理单元704,还用于处理接收单元702接收到的第四业务数据;
上述发送单元701,还用于将处理单元704处理后得到的第四业务响应数据通过建立的socket发送给对端设备。
从以上各种方法和装置的实施方式中可以看出,本发明通过在主业务板以及备业务板上建立socket镜像,并且在本端设备与对端设备进行数据交互时,将所交互的数据信息分别保存在与主业务板以及备业务板所创建的socket对应的缓存空间。使得在任意一端设备的任意业务板出现故障时,将故障业务板的业务无缝的承接至与其建立socket镜像的业务板上,从而保证业务不会中断。另外,与该故障设备通信的对端设备也并不会感知到该变化。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (24)
1.一种数据处理方法,其特征在于,包括:
本端设备的备业务板接收所述本端设备的主业务板与对端设备建立套接字socket连接后发来的socket连接信息,并根据所述socket连接信息创建socket镜像后,接收并保存来自所述对端设备的第一业务数据;
将所述第一业务数据发送给所述主业务板进行保存和处理,并将来自所述主业务板的第一业务响应数据通过创建的socket镜像发送给所述对端设备。
2.如权利要求1所述的方法,其特征在于,所述备业务板接收的所述第一业务数据,为所述本端设备的IO单板在接收到所述对端设备发送的第一业务数据时,从本地记录的所述主业务板广播的至少一个已创建socket镜像的备业务板中确定出所述备业务板后,向所述备业务板转发的。
3.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述备业务板在接收到所述第一业务响应数据后,清除保存的第一业务数据。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
所述备业务板接收并保存所述主业务板发送的第二业务数据,将所述第二业务数据通过创建的socket镜像发送给所述对端设备;
接收到所述对端设备返回的第二业务响应数据后,清除保存的第二业务数据,并将所述第二业务响应数据发送至所述主业务板,以使所述主业务板在接收到所述第二业务响应数据后清除保存的第二业务数据。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
所述主业务板在需要关闭socket连接或者对端设备需要关闭socket连接时,所述备业务板接收所述主业务板广播的关闭socket连接的关闭报文;
根据所述关闭报文,关闭已创建的socket镜像。
6.一种数据处理方法,其特征在于,包括:
本端设备的主业务板与对端设备建立socket连接后,向所述本端设备的至少一个备业务板发送socket连接信息,以使所述至少一个备业务板根据接收到的socket连接信息创建socket镜像;
接收至少一个已创建socket镜像的备业务板中的第一备业务板发送的来自所述对端设备的第一业务数据,保存并处理所述第一业务数据,将处理后得到的第一业务响应数据发送给所述第一备业务板,以使所述第一备业务板将所述第一业务响应数据通过创建的socket镜像发送给所述对端设备。
7.如权利要求6所述的方法,其特征在于,所述第一备业务板发送的来自所述对端设备的第一业务数据,为所述本端设备的IO单板在接收到所述对端设备发送的第一业务数据时,从本地记录的所述主业务板广播的至少一个已创建socket镜像的备业务板中确定出第一备业务板后,向所述第一备业务板发送的。
8.如权利要求6或7所述的方法,其特征在于,所述方法还包括:
所述主业务板将所述第一业务数据进行处理后,清除保存的第一业务数据,并在将所述第一业务响应数据发送给所述第一备业务板后,指示所述第一备业务板清除自身保存的第一业务数据。
9.如权利要求8所述的方法,其特征在于,所述方法还包括:
所述主业务板保存需要与所述对端设备交互的第二业务数据;
将所述第二业务数据发送给所述第一备业务板,以使所述第一备业务板保存接收到的所述第二业务数据,并将其通过创建的socket镜像发送给所述对端设备;
接收到所述第一备业务板发送的来自所述对端设备的第二业务响应数据后,清除保存的第二业务数据。
10.如权利要求9所述的方法,其特征在于,所述方法还包括:
所述主业务板在自身需要关闭与所述对端设备建立的socket连接或者接收到所述对端设备发送的关闭socket连接的关闭报文时,广播关闭socket连接的关闭报文,以使已创建socket镜像的备业务板根据接收到的关闭报文关闭已创建的socket镜像;
在已创建socket镜像的备业务板关闭已创建的socket镜像后,关闭自身创建的socket连接。
11.如权利要求9所述的方法,其特征在于,所述方法还包括:
在所述第一备业务板出现故障时,所述主业务板接收至少一个已创建socket镜像的备业务板中的第二备业务板发送的来自所述对端设备的第三业务数据;
保存并处理所述第三业务数据,并将处理后得到的第三业务响应数据发送给所述第二备业务板,以使所述第二备业务板将所述第三业务响应数据通过创建的socket镜像发送给所述对端设备。
12.如权利要求9所述的方法,其特征在于,所述方法还包括:
在已创建socket镜像的备业务板均出现故障时,所述主业务板接收来自所述对端设备的第四业务数据;
保存并处理所述第四业务数据,并将处理后得到的第四业务响应数据通过建立的socket发送给所述对端设备。
13.一种数据处理装置,其特征在于,包括:
接收单元,用于接收本端设备的主业务板与对端设备建立套接字socket连接后发来的socket连接信息,以及在创建单元根据所述socket连接信息创建socket镜像后,接收来自所述对端设备的第一业务数据;
创建单元,用于根据所述接收单元接收到的socket连接信息创建socket镜像;
保存单元,用于保存所述接收单元接收到的第一业务数据;
发送单元,用于将所述第一业务数据发送给所述主业务板进行保存和处理,并将来自所述主业务板的第一业务响应数据通过创建的socket镜像发送给所述对端设备。
14.如权利要求13所述的装置,其特征在于,所述接收单元接收的所述第一业务数据,为所述本端设备的IO单板在接收到所述对端设备发送的第一业务数据时,从本地记录的所述主业务板广播的至少一个已创建socket镜像的备业务板中确定出所述装置后,向所述装置转发的。
15.如权利要求13或14所述的装置,其特征在于,所述接收单元,还用于接收来自所述主业务板的第一业务响应数据;
所述装置还包括:
清除单元,用于在所述接收单元接收到所述第一业务响应数据后,清除保存的第一业务数据。
16.如权利要求15所述的装置,其特征在于,
所述接收单元,还用于接收所述主业务板发送的第二业务数据,以及接收所述对端设备返回的第二业务响应数据;
所述保存单元,还用于保存所述接收单元接收到的第二业务数据;
所述发送单元,还用于将所述第二业务数据通过创建的socket镜像发送给所述对端设备;以及在所述清除单元清除保存的第二业务数据后,将所述第二业务响应数据发送至所述主业务板,以使所述主业务板在接收到所述第二业务响应数据后清除保存的第二业务数据;
所述清除单元,还用于在所述接收单元接收到所述第二业务响应数据后,清除保存的第二业务数据。
17.如权利要求16所述的装置,其特征在于,所述接收单元,还用于在所述主业务板需要关闭socket连接或者对端设备需要关闭socket连接时,接收所述主业务板广播的关闭socket连接的关闭报文;
所述装置还包括:
关闭单元,用于根据所述接收单元接收到的关闭报文,关闭已创建的socket镜像。
18.一种数据处理装置,其特征在于,包括:
发送单元,用于在本端设备的所述装置与对端设备建立socket连接后,向所述本端设备的至少一个备业务板发送socket连接信息,以使所述至少一个备业务板根据接收到的socket连接信息创建socket镜像;以及将处理单元处理第一业务数据后得到的第一业务响应数据发送给第一备业务板,以使所述第一备业务板将所述第一业务响应数据通过创建的socket镜像发送给所述对端设备;
接收单元,用于接收至少一个已创建socket镜像的备业务板中的第一备业务板发送的来自所述对端设备的第一业务数据;
保存单元,用于保存所述接收单元接收到的第一业务数据;
处理单元,用于处理所述接收单元接收到的第一业务数据。
19.如权利要求18所述的装置,其特征在于,所述接收单元接收到的所述第一备业务板发送的来自所述对端设备的第一业务数据,为所述本端设备的IO单板在接收到所述对端设备发送的第一业务数据时,从本地记录的所述主业务板广播的至少一个已创建socket镜像的备业务板中确定出第一备业务板后,向所述第一备业务板发送的。
20.如权利要求18或19所述的装置,其特征在于,所述装置还包括:
清除单元,用于在所述处理单元对所述第一业务数据进行处理后,清除保存的第一业务数据;
所述发送单元,还用于将所述第一业务响应数据发送给所述第一备业务板后,指示所述第一备业务板清除自身保存的第一业务数据。
21.如权利要求20所述的装置,其特征在于,所述保存单元,还用于保存所述装置需要与所述对端设备交互的第二业务数据;
所述发送单元,还用于将所述第二业务数据发送给所述第一备业务板,以使所述第一备业务板保存接收到的所述第二业务数据,并将其通过创建的socket镜像发送给所述对端设备;
所述接收单元,还用于接收所述第一备业务板发送的来自所述对端设备的第二业务响应数据;
所述清除单元,用于在所述接收单元接收到所述第二业务响应数据后,清除保存的第二业务数据。
22.如权利要求21所述的装置,其特征在于,所述装置还包括:
广播单元,用于在所述装置需要关闭与所述对端设备建立的socket连接或者接收到所述对端设备发送的关闭socket连接的关闭报文时,广播关闭socket连接的关闭报文,以使已创建socket镜像的备业务板根据接收到的关闭报文关闭已创建的socket镜像;
关闭单元,用于在已创建socket镜像的备业务板关闭已创建的socket镜像后,关闭自身创建的socket连接。
23.如权利要求21所述的装置,其特征在于,所述接收单元,还用于在所述第一备业务板出现故障时,接收至少一个已创建socket镜像的备业务板中的第二备业务板发送的来自所述对端设备的第三业务数据;
所述保存单元,还用于保存所述接收单元接收到的第三业务数据;
所述处理单元,还用于处理所述接收单元接收到的第三业务数据;
所述发送单元,还用于将所述处理单元处理后得到的第三业务响应数据发送给所述第二备业务板,以使所述第二备业务板将所述第三业务响应数据通过创建的socket镜像发送给所述对端设备。
24.如权利要求21所述的装置,其特征在于,所述接收单元,还用于在已创建socket镜像的备业务板均出现故障时,接收来自所述对端设备的第四业务数据;
所述保存单元,还用于保存所述接收单元接收到的第四业务数据;
所述处理单元,还用于处理所述接收单元接收到的第四业务数据;
所述发送单元,还用于将所述处理单元处理后得到的第四业务响应数据通过建立的socket发送给所述对端设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410579814.5A CN104468062A (zh) | 2014-10-24 | 2014-10-24 | 数据处理方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410579814.5A CN104468062A (zh) | 2014-10-24 | 2014-10-24 | 数据处理方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104468062A true CN104468062A (zh) | 2015-03-25 |
Family
ID=52913501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410579814.5A Pending CN104468062A (zh) | 2014-10-24 | 2014-10-24 | 数据处理方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104468062A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105939344A (zh) * | 2016-04-18 | 2016-09-14 | 杭州迪普科技有限公司 | 一种tcp连接的建立方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050135427A1 (en) * | 2003-12-19 | 2005-06-23 | Sony Corporation | Apparatus and method for processing informational signal |
CN101651706A (zh) * | 2008-08-14 | 2010-02-17 | 华为技术有限公司 | 一种数据发送和接收方法以及系统和装置 |
CN101764738A (zh) * | 2008-12-25 | 2010-06-30 | 华为技术有限公司 | 一种支持tcp协议连接的备份方法及其设备 |
CN102035687A (zh) * | 2011-01-06 | 2011-04-27 | 华为技术有限公司 | Tcp连接的备份方法及其设备 |
-
2014
- 2014-10-24 CN CN201410579814.5A patent/CN104468062A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050135427A1 (en) * | 2003-12-19 | 2005-06-23 | Sony Corporation | Apparatus and method for processing informational signal |
CN101651706A (zh) * | 2008-08-14 | 2010-02-17 | 华为技术有限公司 | 一种数据发送和接收方法以及系统和装置 |
CN101764738A (zh) * | 2008-12-25 | 2010-06-30 | 华为技术有限公司 | 一种支持tcp协议连接的备份方法及其设备 |
CN102035687A (zh) * | 2011-01-06 | 2011-04-27 | 华为技术有限公司 | Tcp连接的备份方法及其设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105939344A (zh) * | 2016-04-18 | 2016-09-14 | 杭州迪普科技有限公司 | 一种tcp连接的建立方法及装置 |
CN105939344B (zh) * | 2016-04-18 | 2019-10-11 | 杭州迪普科技股份有限公司 | 一种tcp连接的建立方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110661702B (zh) | 一种链路备份的方法、装置及计算机可读存储介质 | |
CN104106303A (zh) | 用于在无线网络中在设备之间建立隧道式直接链路设立(tdls)会话的方法和装置 | |
US10813156B2 (en) | Method and apparatus for processing network connection | |
CN107465613B (zh) | 链路聚合接口通信状态切换方法及装置 | |
US9503317B2 (en) | Method and device for processing communication path | |
US9231907B2 (en) | Method for establishing connection between communication apparatuses, communication apparatus, and server apparatus | |
CN110875827B (zh) | 一种网络切片管理方法及装置 | |
US20180295668A1 (en) | Call termination method, application processor, and modem | |
CN110233851B (zh) | 一种数据传输方法和装置 | |
CN105554042A (zh) | 一种UDP远程传输log的方法及系统 | |
CN103973555A (zh) | 通用路由封装协议隧道建立方法、通信设备及通信系统 | |
US11637874B2 (en) | Communications apparatus, systems, and methods for preventing and/or minimizing session data clipping | |
CN106878072A (zh) | 一种报文传输方法和装置 | |
CN102957623A (zh) | 一种边界网关协议邻居的维护方法和设备 | |
CN104301449A (zh) | 一种修改ip地址的方法和装置 | |
CN102739462B (zh) | 一种测试报文的发送方法以及装置 | |
CN104954321A (zh) | 一种连接切换方法、装置及系统 | |
CN111130886A (zh) | 网口切换方法、装置、板卡和网口切换系统 | |
US20230413154A1 (en) | Data Unit Processing Method and Node | |
CN105591811A (zh) | 一种lisp中映射服务器重启恢复方法及装置 | |
CN106161249B (zh) | PPPoE报文的处理方法及装置 | |
CN104468062A (zh) | 数据处理方法以及装置 | |
CN104333872A (zh) | 一种基于双向转发检测技术的建立会话的方法及系统 | |
CN105451367A (zh) | 一种无线网络连接方法、设备及系统 | |
US12015950B2 (en) | Bidirectional forwarding detection (BFD) parameter negotiation method, apparatus and chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150325 |