数据交互方法、装置、计算机设备及存储介质与流程

文档序号:32501370发布日期:2022-12-10 05:31阅读:51来源:国知局
数据交互方法、装置、计算机设备及存储介质与流程

1.本发明涉及协议通信领域,具体而言,涉及一种数据交互方法、装置、计算机设备及存储介质。


背景技术:

2.对于安装在不同设备上的流量分析软件之间的数据交互,通常是开放应用程序接口(application program interface,api),为数据交互过程的数据提供方提供数据导出接口,为数据接受方提供数据导入接口。
3.由于不同厂家的api甚至同一厂家不同产品型号的api难以做到完全兼容,使得数据提供方和数据接受方都需要投入资源进行对接和联调的研发工作,导致接口越来越多,越来越复杂,往往一个产品的api文档都有几十页甚至更多。对于一个简单的业务交互场景,都需要投入大量的资源来保证数据交互的稳定性。


技术实现要素:

4.为了克服现有技术的不足,本发明实施例提供了一种数据交互方法、装置、计算机设备和存储介质,其能够降低不同设备上不同的流量分析软件之间数据交互的复杂度。
5.本发明实施例的技术方案可以这样实现:
6.第一方面,本发明实施例提供一种数据交互方法,应用于第一设备,所述第一设备与第二设备通信连接,所述第一设备与所述第二设备上运行的流量分析软件不同,所述第一设备与所述第二设备均可访问文件服务器,所述方法包括:
7.接收所述第二设备发送的数据交互请求,并在所述文件服务器中创建针对所述数据交互请求的目标文件夹;
8.其中,所述数据交互请求包括所述第一设备和所述第二设备上运行的流量分析软件的数据交互角色,所述数据交互角色包括数据提供方和数据接受方中的一种;
9.若所述第一设备上运行的流量分析软件为数据提供方、且所述第二设备为上运行的流量分析软件为数据接受方,则向所述目标文件夹中写入数据流;
10.向所述第二设备发送所述目标文件夹对应的目录信息,以使所述第二设备基于所述目录信息,从所述目标文件夹中读取所述第一设备写入的数据流。
11.可选地,所述向所述目标文件夹中写入数据流的步骤包括:
12.将所述数据流切分为至少一个数据包捕获packet capture文件;
13.按照切分顺序依次向所述目标文件夹中写入每个所述packet capture文件;
14.针对每个所述packet capture文件,在完成所述packet capture文件的写入时,将所述packet capture文件的后缀名修改为预设后缀名,以使所述第二设备通过识别所述预设后缀名读取已完成写入的所述packet capture文件。
15.可选地,所述方法还包括:
16.若所述第一设备上运行的流量分析软件为数据接受方、且所述第二设备上运行的
流量分析软件为数据提供方,则向所述第二设备发送所述目标文件夹对应的目录信息,以使所述第二设备基于所述目录信息,向所述目标文件夹中写入至少一个packet capture文件;
17.从所述目标文件夹中读取后缀名均为预设后缀名的所述packet capture文件,所述预设后缀名表征所述packet capture文件已完成写入。
18.可选地,所述方法还包括:
19.针对每个后缀名为预设后缀名的所述packet capture文件,在完成所述packet capture文件的读取后,将所述packet capture文件进行删除。
20.第二方面,本发明实施例提供一种数据交互装置,应用于第一设备,所述第一设备与第二设备通信连接,所述第一设备与所述第二设备上运行的流量分析软件不同,所述第一设备与所述第二设备均可访问文件服务器,所述装置包括:
21.接收模块,用于接收所述第二设备发送的数据交互请求,并在所述文件服务器中创建针对所述数据交互请求的目标文件夹;
22.其中,所述数据交互请求包括所述第一设备和所述第二设备上运行的流量分析软件的数据交互角色,所述数据交互角色包括数据提供方和数据接受方中的一种;
23.控制模块,用于若所述第一设备上运行的流量分析软件为数据提供方、且所述第二设备为上运行的流量分析软件为数据接受方,则向所述目标文件夹中写入数据流;
24.发送模块,用于向所述第二设备发送所述目标文件夹对应的目录信息,以使所述第二设备基于所述目录信息,从所述目标文件夹中读取所述第一设备写入的数据流。
25.可选地,所述控制模块具体用于:
26.将所述数据流切分为至少一个数据包捕获packet capture文件;
27.按照切分顺序依次向所述目标文件夹中写入每个所述packet capture文件;
28.针对每个所述packet capture文件,在完成所述packet capture文件的写入时,将所述packet capture文件的后缀名修改为预设后缀名,以使所述第二设备通过识别所述预设后缀名读取已完成写入的所述packet capture文件。
29.可选地,所述控制模块还用于:
30.若所述第一设备上运行的流量分析软件为数据接受方、且所述第二设备上运行的流量分析软件为数据提供方,则向所述第二设备发送所述目标文件夹对应的目录信息,以使所述第二设备基于所述目录信息,向所述目标文件夹中写入至少一个packet capture文件;
31.从所述目标文件夹中读取后缀名均为预设后缀名的所述packet capture文件,所述预设后缀名表征所述packet capture文件已完成写入。
32.可选地,所述控制模块还用于:
33.针对每个后缀名为预设后缀名的所述packet capture文件,在完成所述packet capture文件的读取后,将所述packet capture文件进行删除。
34.第三方面,本发明实施例提供一种计算机设备,其包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如前述第一方面所述的数据交互方法。
35.第四方面,本发明提供一种计算机可读存储介质,其存储有计算机程序,所述计算
机程序被处理器执行时实现如前述第一方面所述的数据交互方法。
36.相较于现有技术,本发明实施例提供的一种数据交互方法、装置、计算机设备及存储介质,首先,第一设备接收第二设备发送的数据交互请求,并在文件服务器中创建针对数据交互请求的目标文件夹;其中,数据交互请求包括第一设备和第二设备上运行的流量分析软件的数据交互角色,数据交互角色包括数据提供方和数据接受方中的一种;然后,若第一设备上运行的流量分析软件为数据提供方、且第二设备上运行的流量分析软件为数据接受方,则向目标文件夹中写入数据流;接着,向第二设备发送目标文件夹对应的目录信息,以使第二设备基于目录信息,从目标文件夹中读取第一设备写入的数据流。由于本发明实施例通过设置第一设备和第二设备均可访问的文件服务器,且第一设备在文件服务器中创建针对数据交互请求的目标文件夹,并将目标文件夹对应的目录信息发送给第二设备,使第一设备和第二设备基于各自运行的流量分析软件的数据交互角色,向目标文件夹中读取/写入数据流,从而降低第一设备和第二设备上运行的不同的流量分析软件之间的数据交互的复杂度。
附图说明
37.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
38.图1为本发明实施例提供的一种数据交互方法的应用场景示意图;
39.图2为本发明实施例提供的一种数据交互方法的流程示意图一;
40.图3为本发明实施例提供的一种数据交互方法的流程示意图二;
41.图4为本发明实施例提供的一种数据交互方法的流程示意图三;
42.图5为本发明实施例提供的一种数据交互装置的功能单元框图;
43.图6为本发明实施例提供的一种计算机设备的结构示意框图。
44.图标:100-数据交互装置;101-接收模块;102-控制模块;103-发送模块;200-计算机设备;210-存储器;220-处理器。
具体实施方式
45.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
46.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
47.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
48.此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
49.需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
50.为了降低不同设备上不同的流量分析软件之间的数据交互的复杂度,本发明实施例提供了一种数据交互方法,下面将进行详细介绍。
51.首先,对该数据交互方法的应用场景进行介绍。
52.请参照图1,第一设备上运行有流量分析软件a,多个第二设备上分别运行有流量分析软件b、c、

、n,第一设备和每个第二设备均可以访问文件服务器。
53.可以理解地,第一设备与任一第二设备上运行的流量分析软件的类型都不相同,而任意两个第二设备上运行的流量分析软件的类型可以相同,也可以不同。
54.在本发明实施例中,文件服务器不是单独部署的物理文件服务器,而是部署在第一设备上的一个或多个程序模块,或者在第一设备上运行的虚拟机或容器,并且通过在第一设备上创建内存虚拟磁盘,作为文件服务器的存储空间,从而保障文件服务器的吞吐量。
55.在一种可能的实施方式中,文件服务器可以是ftp/nas文件服务器。
56.接着,对该数据交互方法的实现过程进行介绍。
57.请参照图2,该数据交互方法的执行主体为图1中的第一设备,其包括步骤s101~s103。
58.s101,接收第二设备发送的数据交互请求,并在文件服务器中创建针对数据交互请求的目标文件夹。
59.其中,数据交互请求包括第一设备和第二设备上运行的流量分析软件的数据交互角色,数据交互角色包括数据提供方和数据接受方中的一种。
60.在本发明实施例中,第一设备接收到的每个来自第二设备的数据交互请求,均可以看作一个数据交互任务,可以理解地,第一设备在文件服务器中创建的每个文件夹均对应一个数据交互任务,且多个文件夹可以同时存在,意味着多个数据交互任务可以并发进行。
61.s102,若第一设备上运行的流量分析软件为数据提供方、且第二设备为上运行的流量分析软件为数据接受方,则向目标文件夹中写入数据流。
62.可选地,步骤s102的实现过程可以如下:
63.s102-1,将数据流切分为至少一个数据包捕获packet capture文件。
64.其中,packet capture是一种行业内默认的数据文件存储标准,所有类型的流量分析软件都具备成熟、完善的读取与存储的方案。
65.在本发明实施例中,以packet capture文件作为第一设备和第二设备上运行的流量分析软件之间进行数据交互时的数据格式。
66.s102-2,按照切分顺序依次向目标文件夹中写入每个packet capture文件。
67.其中,每个packet capture文件在写入过程中,其后缀名可以设置为tmp,以表示该packet capture文件未写入完成。
68.s102-3,针对每个packet capture文件,在完成packet capture文件的写入时,将packet capture文件的后缀名修改为预设后缀名,以使第二设备通过识别预设后缀名读取已完成写入的packet capture文件。
capture文件删除,以释放文件服务器的容量,从而平滑峰值,避免出现数据丢失的情况。
84.可以理解地,当第二设备上运行的流量分析软件为数据接受方时,第二设备每读取完一个packet capture文件,也会将该packet capture文件删除,从而保证文件服务器的容量可以循环使用。
85.由于数据流被切分为若干packet capture文件,并按照切分顺序依次写入目标文件夹,且每个写入完成的packet capture文件在被读取后均会被删除,因此目标文件夹中只存在未被读取的后缀名为pcap的packet capture文件和一个正在被写入的后缀名为tmp的packet capture文件。
86.对于因设备断电或重启等异常状态使得数据交互过程中断的情况,第一设备可以首先根据目标文件夹中各packet capture文件的后缀名,确定中断时正在被写入的packet capture文件。
87.若第一设备上运行的流量分析软件为数据提供方且第二设备上运行的流量分析软件为数据接受方,则第一设备重新写入中断时正在被写入的packet capture文件,而第二设备则重新对每个后缀名为pcap的packet capture文件进行读取、删除操作,恢复数据交互。
88.若第一设备上运行的流量分析软件为数据接受方且第二设备上运行的流量分析软件为数据提供方,则第二设备重新写入中断时正在被写入的packet capture文件,而第一设备则重新对每个后缀名为pcap的packet capture文件进行读取、删除操作,恢复数据交互。
89.相较于现有技术,本发明实施例具有以下技术效果:
90.(1)设置第一设备和第二设备均可访问的ftp/nas文件服务器,以packet capture文件作为第一设备和第二设备上运行的流量分析软件之间进行数据交互时的数据格式,使数据交互标准化,第一设备在文件服务器中创建针对数据交互请求的目标文件夹,并将目标文件夹对应的目录信息发送给第二设备,使第一设备和第二设备基于各自运行的流量分析软件的数据交互角色,向目标文件夹中读取/写入pacp文件,避免了因api的兼容问题投入大量的资源以研发对接和联调,从而降低第一设备和第二设备上运行的不同的流量分析软件之间的数据交互的复杂度。
91.(2)在第一设备上创建内存虚拟磁盘,作为文件服务器的存储空间,从而保障文件服务器的吞吐量,保证数据交互的传输速率。
92.(3)第一设备通过在文件服务器上创建不同的文件夹,使多个数据交互任务可以并发进行。
93.(4)第一设备或第二设备每读取完一个packet capture文件后,均将该packet capture文件删除,以释放文件服务器的容量,平滑数据交互任务量的峰值,避免出现数据丢失。
94.(5)第一设备可以根据目标文件夹中各packet capture文件的后缀名,确定中断时正在被写入的packet capture文件和未被读取的packet capture文件,使第一设备和第二设备根据其运行的流量分析软件的数据交互角色,重新进行packet capture文件的读取/写入,进而恢复数据交互。
95.为了执行上述方法实施例及各个可能的实施方式中的相应步骤,下面分别给出一
种数据交互装置100的实现方式。
96.请参照图5,数据交互装置100包括接收模块101、控制模块102和发送模块103。
97.接收模块101,用于接收第二设备发送的数据交互请求,并在文件服务器中创建针对数据交互请求的目标文件夹。其中,数据交互请求包括第一设备和第二设备上运行的流量分析软件的数据交互角色,数据交互角色包括数据提供方和数据接受方中的一种。
98.控制模块102,用于若第一设备上运行的流量分析软件为数据提供方、且第二设备为上运行的流量分析软件为数据接受方,则向目标文件夹中写入数据流。
99.发送模块103,用于向第二设备发送目标文件夹对应的目录信息,以使第二设备基于目录信息,从目标文件夹中读取第一设备写入的数据流。
100.可选地,控制模块102具体用于将数据流切分为至少一个数据包捕获packet capture文件;按照切分顺序依次向目标文件夹中写入每个packet capture文件;针对每个packet capture文件,在完成packet capture文件的写入时,将packet capture文件的后缀名修改为预设后缀名,以使第二设备通过识别预设后缀名别读取已完成写入的packet capture文件。
101.可选地,控制模块102还用于若第一设备上运行的流量分析软件为数据接受方、且第二设备上运行的流量分析软件为数据提供方,则向第二设备发送目标文件夹对应的目录信息,以使第二设备基于目录信息,向目标文件夹中写入至少一个packet capture文件;从目标文件夹中读取每个后缀名均为预设后缀名的packet capture文件,预设后缀名表征packet capture文件已完成写入。
102.可选地,控制模块102还用于针对每个后缀名为预设后缀名的packet capture文件,在完成packet capture文件的读取后,将packet capture文件进行删除。
103.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的数据交互装置100的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
104.进一步地,本发明实施例还提供了一种计算机设备200,其可以是图1中的第一设备,请参照图6,计算机设备200可以包括存储器210和处理器220。
105.其中,处理器220可以是一个通用的中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制上述方法实施例提供的数据交互方法的程序执行的集成电路。
106.存储器210可以是rom或可存储静态信息和指令的其它类型的静态存储设备,ram或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmabler-only memory,eeprom)、只读光盘(compactdisc read-only memory,cd-rom)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器210可以是独立存在,通过通信总线与处理器220相连接。存储器210也可以和处理器220集成在一起。其中,存储器210用于存储执行本技术方案的机器可执行指令。处理器220用于执行存储器210中存储的机器可执行指令,以实现上述的方法实施例。
107.本发明实施例还提供一种包含计算机程序的计算机可读存储介质,计算机程序在被执行时可以用于执行上述的方法实施例提供的数据交互方法中的相关操作。
108.综上,本发明实施例提供的一种数据交互方法、装置、计算机设备及存储介质,首先,第一设备接收第二设备发送的数据交互请求,并在文件服务器中创建针对数据交互请求的目标文件夹;其中,数据交互请求包括第一设备和第二设备上运行的流量分析软件的数据交互角色,数据交互角色包括数据提供方和数据接受方中的一种;然后,若第一设备上运行的流量分析软件为数据提供方、且第二设备上运行的流量分析软件为数据接受方,则向目标文件夹中写入数据流;接着,向第二设备发送目标文件夹对应的目录信息,以使第二设备基于目录信息,从目标文件夹中读取第一设备写入的数据流。由于本发明实施例通过设置第一设备和第二设备均可访问的文件服务器,且第一设备在文件服务器中创建针对数据交互请求的目标文件夹,并将目标文件夹对应的目录信息发送给第二设备,使第一设备和第二设备基于各自运行的流量分析软件的数据交互角色,向目标文件夹中读取/写入数据流,从而降低第一设备和第二设备上运行的不同的流量分析软件之间的数据交互的复杂度
109.以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1