CN111556128B - 一种数据传输方法和系统 - Google Patents

一种数据传输方法和系统 Download PDF

Info

Publication number
CN111556128B
CN111556128B CN202010333680.4A CN202010333680A CN111556128B CN 111556128 B CN111556128 B CN 111556128B CN 202010333680 A CN202010333680 A CN 202010333680A CN 111556128 B CN111556128 B CN 111556128B
Authority
CN
China
Prior art keywords
data
file
queue
request
receiving
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.)
Active
Application number
CN202010333680.4A
Other languages
English (en)
Other versions
CN111556128A (zh
Inventor
王卓华
杨丽君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Police Wing Software Technology Co ltd
Original Assignee
Shenzhen Police Wing Software Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Police Wing Software Technology Co ltd filed Critical Shenzhen Police Wing Software Technology Co ltd
Priority to CN202010333680.4A priority Critical patent/CN111556128B/zh
Publication of CN111556128A publication Critical patent/CN111556128A/zh
Application granted granted Critical
Publication of CN111556128B publication Critical patent/CN111556128B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种数据传输方法和系统,方法包括:数据上传单元获取断点续传文件列表、重传或指定传输文件列表、根据重要顺序获取未上传文件列表;向电子证据管理单元发出视音频数据上传队列的请求;获取电子证据管理单元返回的队列名称、队列绑定的交换器名称以及对应的路由键值;这是由电子证据管理单元向数据接收单元发出请求并接收基于请求的响应获得;根据绑定的参数信息初始化队列,与队列建立连接;若失败,则向电子证据管理单元发送释放视音频数据队列请求;若成功,则向数据接收单元进行文件传输,所有文件传输完成后,向电子证据管理单元发送释放视音频数据队列的请求。实现重要数据优先传输、优化数据管理和节省数据存储服务器空间。

Description

一种数据传输方法和系统
技术领域
本发明涉及数据传输技术领域,尤其涉及一种数据传输方法和系统。
背景技术
目前,随着执法记录仪和执法采集设备被广泛使用,特别在公安、交警、消防等机构都使用频繁,这些机构对执法数据的保存和管理要求比较高,每个执法单位及其下属单位每天能产生大量的执法数据,需要对数据进行控制,优先重要文件的传输、传输指定文件和加快文件传输速度。目前市面上的执法数据采集软件进行的存储方式分为分布式、集中式和混合式,分布式是将数据全部保存在执法数据采集设备上,容易造成重要的数据丢失;集中式是将所有数据都转存到数据存储服务器上,此模式对于数据存储服务器的网络带宽和硬盘要求较高;混合式是将已经标记为重要的数据转存到存储服务器进行保存,但是无法对未标记为重要的数据进行转存,会造成一些未标记为重要的重要数据丢失。此三种模式无法很好的达到数据保存和管理的效果。
以上基于现有技术的文件传输系统,无法进行指定文件的传输,同时由于数据全部转存到存储服务器或者全部不转存到存储服务器,数据全部转存将受到存储服务器磁盘的大小限制,全部不转存到将产生数据丢失问题。无法实现通过电子证据管理单元进行上传的统一调控,造成数据管理上的混乱。无法实现发送端和接收端分离,任何一端出现问题,都将造成数据无法传输。
以上背景技术内容的公开仅用于辅助理解本发明的构思及技术方案,其并不必然属于本专利申请的现有技术,在没有明确的证据表明上述内容在本专利申请的申请日已经公开的情况下,上述背景技术不应当用于评价本申请的新颖性和创造性。
发明内容
本发明为了解决现有技术中执法记录仪无法很好的进行数据保存和管理的问题,提供一种数据传输方法和系统。
为了解决上述问题,本发明采用的技术方案如下所述:
一种数据传输方法,包括如下步骤:S1:数据上传单元获取断点续传文件列表、重传或指定传输文件列表、根据重要顺序获取未上传文件列表;S2:向所述电子证据管理单元发出视音频数据上传队列的请求;S3:获取所述电子证据管理单元返回的队列名称、队列绑定的交换器名称以及对应的路由键值;所述队列名称、队列绑定的交换器名称以及对应的路由键值由所述电子证据管理单元向数据接收单元发出申请视音频数据上传队列的请求并接收所述数据接收单元基于所述请求的响应获得;S4:根据所述绑定的参数信息初始化所述队列,与所述队列建立连接;S5:若连接建立失败,则向所述电子证据管理单元发送释放视音频数据队列请求;若连接建立成功,则向所述数据接收单元进行文件传输,所有所述文件传输完成后,向所述电子证据管理单元发送释放视音频数据队列的请求。
优选地,所述连接建立成功后,进行文件传输包括如下步骤:S51:读取文件数据包和文件属性;S52:当读取的所述文件数据包不是所述文件的最后一个数据包时,将所述文件属性和必要的标志作为所述数据包的数据属性,将所述数据包作为传输主体,通过已建立的队列连接进行传输;S53:当读取到所述文件的最后一个数据包时,计算所述文件的校验值;S54:当所述文件校验值计算失败时,保存当前文件读取的偏移量并标记所述文件为上传失败,结束当前文件的上传,开始下一个文件的上传;当所述文件校验值计算成功时,传输所述文件;S55:当所有所述文件传输完成后,向外发送释放视音频数据队列的请求。
优选地,所述文件属性包括文件存储的相对路径、文件校验值;所述必要的标志包括文件开始和结束的标志、文件的当前偏移量、文件重要性标志、文件的发送者;所述数据属性包括需要加入的属性参数标志、数据持久化标志、文件属性和必要的标志。
本发明又提供一种数据传输方法,包括如下步骤:T1:接收数据上传单元发来的视音频数据上传队列的请求,所述请求的参数包括数据采集设备的编码、数据采集设备的IP地址;T2:向数据接收单元发出申请视音频数据上传队列的请求;T3:接收所述数据接收单元基于所述请求的响应,所述响应包括队列名称、队列绑定的交换器名称以及对应的路由键值;T4:将所述队列名称、队列绑定的交换器名称以及对应的路由键值发送给所述数据上传单元;T5:等待所述数据上传单元传输文件;T6:接收所述数据上传单元发来的释放视音频数据队列的请求,并将所述释放视音频数据队列的请求发送给所述数据接收单元;T7:获取所述数据接收单元基于所述释放视音频数据队列的请求返回的完成数据接收的通知,将所述队列及其绑定的交换器进行删除。
优选地,还包括:接收所述数据接收单元发来的重传文件请求,具体包括如下步骤:获取所述请求的参数,所述请求参数包括所述文件的数据采集设备的编码、文件存储的相对位置;根据所述请求的参数将所述文件插入传输文件列表;将插入的结果返回给所述数据接收单元。
优选地,还包括:接收所述数据接收单元发来的获取指定上传的文件请求,具体包括如下步骤:获取所述请求的参数,所述请求参数包括所述文件的数据采集设备的编码;根据所述请求的参数将查询传输文件列表;将查询结果返回给所述数据接收单元。
本发明再提供一种数据传输方法,包括如下步骤:P1:数据接收单元接收电子证据管理单元的申请队列的请求;所述请求的参数包括数据采集设备的编号;P2:根据所述数据采集设备的编号查询是否已有相应的队列:若有,则将所述队列的状态设置为正在使用,且将所述队列的名称、交换器、路由键值取出并返回给所述电子证据管理单元;若没有,则声明一个队列、声明一个交换器,并将所述队列和所述交换器进行绑定、将所述交换器与路由键值进行绑定,将所述队列的名称、交换器、路由键值取出并返回给所述电子证据管理单元;P3:持续监听所述队列;P4:接收所述队列的数据,待所有数据接收完成后,向所述电子证据管理单元发送已完成数据接收通知;P5:接收来自所述电子证据管理单元的释放队列的请求,等待所述队列中的全部数据接收完成后,将所述队列进行释放。
优选地,接收所述队列的数据包括如下步骤:P41:接收带有开始标识的文件数据,并根据数据属性确定文件的偏移、文件的相对存储路径,循环接收并写入相应的文件中;P42:每条所述文件数据写入相应的所述文件后,对所述文件数据进行确认接收操作,并将所述文件数据从所述队列中删除;P43:当接收失败或者写入失败时,不对所述文件数据进行确认操作,并重新尝试接收;重新尝试接收至指定次数后仍失败,向所述电子证据管理单元发送文件接收失败通知;P44:发送文件接收失败通知成功后,将所有属于所述文件数据的数据包进行接收确认,但不写入所述文件;P45:接收到带有结束标识的文件数据,写入所述文件后计算所述文件的校验值,与文件属性中的校验值进行比对:若两个校验值不一样,将所述文件的信息发送给所述电子证据管理单元并标识所述文件为需要指定重传的文件。
优选地,接收来自所述电子证据管理单元的释放队列的请求包括如下步骤:P51:获取所述请求的参数,所述参数包括数据采集设备的编号;P52:根据所述参数查询所述数据采集设备是否有相应的队列;P53:如有相应队列,则将所述队列的状态设置为等待释放;若无相应的队列,则将结果返回给所述电子证据管理单元。
本发明再提供一种数据传输系统,包括:
数据上传单元,用于执行如前任一所述的方法;
电子证据管理单元,用于执行如前任一所述的方法;
数据接收单元,用于执行如前任一所述的方法。
优选地,所述数据上传单元与所述电子证据管理单元通过申请视音频数据队列接口连接,所述数据接收单元包括RABBITMQ服务器。
本发明再提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如前任一所述方法的步骤。
本发明的有益效果为:提供一种数据传输方法和系统,通过基于消息队列,数据从数据上传单元通过队列传输到数据接收单元,数据接收程序和数据上传单元通过电子证据管理单元进行交互,使得电子证据管理单元对数据的管理更加高效和精简。
更进一步的,能够控制哪些文件可以上传,以达到重要数据优先传输、优化数据管理和节省数据存储服务器空间的目的。
附图说明
图1是本发明实施例中第一种数据传输方法的示意图。
图2是本发明实施例中进行文件传输的方法的示意图。
图3是本发明实施例中第二种数据传输方法的示意图。
图4是本发明实施例中接收数据接收单元发来的重传文件请求的方法示意图。
图5是本发明实施例中接收数据接收单元发来的获取指定上传的文件请求的方法示意图。
图6是本发明实施例中第三种数据传输方法的示意图。
图7是本发明实施例中接收所述队列的数据的方法示意图。
图8是本发明实施例中接收来自所述电子证据管理单元的释放队列的请求的方法示意图。
图9是本发明实施例中一种数据传输系统的示意图。
图10-图11是本发明实施例中数据上传单元的工作流程示意图。
图12-图14是本发明实施例中电子证据管理单元的工作流程示意图。
图15-图18是本发明实施例中数据接收单元的工作流程示意图。
具体实施方式
为了使本发明实施例所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。另外,连接既可以是用于固定作用也可以是用于电路连通作用。
需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本发明实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
基于现有技术中的数据传输中的问题,本发明提供一种数据传输方法,可以理解的是,也可以用于执法记录仪或其他数据采集设备,本发明不做具体限制。
如图1所示,一种数据传输方法,其特征在于,包括如下步骤:
S1:数据上传单元获取断点续传文件列表、重传或指定传输文件列表、根据重要顺序获取未上传文件列表;
S2:向所述电子证据管理单元发出视音频数据上传队列的请求;
S3:获取所述电子证据管理单元返回的队列名称、队列绑定的交换器名称以及对应的路由键值;所述队列名称、队列绑定的交换器名称以及对应的路由键值由所述电子证据管理单元向数据接收单元发出申请视音频数据上传队列的请求并接收所述数据接收单元基于所述请求的响应获得;
S4:根据所述绑定的参数信息初始化所述队列,与所述队列建立连接;
S5:若连接建立失败,则向所述电子证据管理单元发送释放视音频数据队列请求;若连接建立成功,则向所述数据接收单元进行文件传输,所有所述文件传输完成后,向所述电子证据管理单元发送释放视音频数据队列的请求。
本发明提供的数据传输方法基于消息队列,数据从数据上传单元通过队列传输到数据接收单元,数据接收程序和数据上传单元通过电子证据管理单元进行交互,使得电子证据管理单元对数据的管理更加高效和精简。
通过电子证据管理单元,可以控制哪些文件需要上传到数据接收单元,哪些文件需要进行重传,成功避开了基于原有技术的分布式、集中式、混合式存储方式的弊端,解决了数据管理混乱、数据占用空间大、数据丢失的问题。
本发明将在现有数据上传单元、电子证据管理单元和数据存储服务器即数据接收单元的基础上进行改造,在数据存储服务器上新增基于消息队列的数据接收程序,用于接收数据并保存,数据采集设备采用AMQP协议进行上传,将RABBITMQ插件和数据接收端搭建在数据存储服务器上,电子证据管理单元新增接口控制执法采集设备的数据上传。通过搭建该基于消息队列的文件传输系统,能够使数据能够更快速的转存到数据存储服务器。本发明在支持原有存储模式的情况下,增加了能够控制哪些文件可以上传的方法,以达到重要数据优先传输、优化数据管理和节省数据存储服务器空间的目的。
上述AMQP协议也称高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。RabbitMQ插件是一个开源的AMQP实现,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。
如图2所示,所述连接建立成功后,进行文件传输包括如下步骤:
S51:读取文件数据包和文件属性;
S52:当读取的所述文件数据包不是所述文件的最后一个数据包时,将所述文件属性和必要的标志作为所述数据包的数据属性,将所述数据包作为传输主体,通过已建立的队列连接进行传输;
S53:当读取到所述文件的最后一个数据包时,计算所述文件的校验值;
S54:当所述文件校验值计算失败时,保存当前文件读取的偏移量并标记所述文件为上传失败,结束当前文件的上传,开始下一个文件的上传;当所述文件校验值计算成功时,传输所述文件;
S55:当所有所述文件传输完成后,向外发送释放视音频数据队列的请求。
在本发明的一种实施例中,文件属性包括文件存储的相对路径、文件校验值必要的标志包括文件开始和结束的标志、文件的当前偏移量、文件重要性标志、文件的发送者;数据属性包括需要加入的属性参数标志、数据持久化标志、文件属性和必要的标志。
通过上述方法,可以确定哪些文件传输失败可以选择重新上传。
如图3所示,本发明提供的一种数据传输方法,包括如下步骤:
T1:接收数据上传单元发来的视音频数据上传队列的请求,所述请求的参数包括数据采集设备的编码、数据采集设备的IP地址;
T2:向数据接收单元发出申请视音频数据上传队列的请求;
T3:接收所述数据接收单元基于所述请求的响应,所述响应包括队列名称、队列绑定的交换器名称以及对应的路由键值;
T4:将所述队列名称、队列绑定的交换器名称以及对应的路由键值发送给所述数据上传单元;
T5:等待所述数据上传单元传输文件;
T6:接收所述数据上传单元发来的释放视音频数据队列的请求,并将所述释放视音频数据队列的请求发送给所述数据接收单元;
T7:获取所述数据接收单元基于所述释放视音频数据队列的请求返回的完成数据接收的通知,将所述队列及其绑定的交换器进行删除。
本发明提供的又一种数据传输方法,还包括:接收所述数据接收单元发来的重传文件请求。
如图4所示,具体包括如下步骤:
获取所述请求的参数,所述请求参数包括所述文件的数据采集设备的编码、文件存储的相对位置;
根据所述请求的参数将所述文件插入传输文件列表;
将插入的结果返回给所述数据接收单元。
本发明提供的再一种数据传输方法,还包括:接收所述数据接收单元发来的获取指定上传的文件请求。
如图5所示,具体包括如下步骤:
获取所述请求的参数,所述请求参数包括所述文件的数据采集设备的编码;
根据所述请求的参数将查询传输文件列表;
将查询结果返回给所述数据接收单元。
如图6所示,本发明又提供一种数据传输方法,包括如下步骤:
P1:数据接收单元接收电子证据管理单元的申请队列的请求;所述请求的参数包括数据采集设备的编号;
P2:根据所述数据采集设备的编号查询是否已有相应的队列:
若有,则将所述队列的状态设置为正在使用,且将所述队列的名称、交换器、路由键值取出并返回给所述电子证据管理单元;
若没有,则声明一个队列、声明一个交换器,并将所述队列和所述交换器进行绑定、将所述交换器与路由键值进行绑定,将所述队列的名称、交换器、路由键值取出并返回给所述电子证据管理单元;
P3:持续监听所述队列;
P4:接收所述队列的数据,待所有数据接收完成后,向所述电子证据管理单元发送已完成数据接收通知;
P5:接收来自所述电子证据管理单元的释放队列的请求,等待所述队列中的全部数据接收完成后,将所述队列进行释放。
如图7所示,接收所述队列的数据包括如下步骤:
P41:接收带有开始标识的文件数据,并根据数据属性确定文件的偏移、文件的相对存储路径,循环接收并写入相应的文件中;
P42:每条所述文件数据写入相应的所述文件后,对所述文件数据进行确认接收操作,并将所述文件数据从所述队列中删除;
P43:当接收失败或者写入失败时,不对所述文件数据进行确认操作,并重新尝试接收;重新尝试接收至指定次数后仍失败,向所述电子证据管理单元发送文件接收失败通知;
P44:发送文件接收失败通知成功后,将所有属于所述文件数据的数据包进行接收确认,但不写入所述文件;
P45:接收到带有结束标识的文件数据,写入所述文件后计算所述文件的校验值,与文件属性中的校验值进行比对:若两个校验值不一样,将所述文件的信息发送给所述电子证据管理单元并标识所述文件为需要指定重传的文件。
如图8所示,接收来自所述电子证据管理单元的释放队列的请求包括如下步骤:
P51:获取所述请求的参数,所述参数包括数据采集设备的编号;
P52:根据所述参数查询所述数据采集设备是否有相应的队列;
P53:如有相应队列,则将所述队列的状态设置为等待释放;若无相应的队列,则将结果返回给所述电子证据管理单元。
如图9所示,本发明还提供一种数据传输系统,包括:
数据上传单元,用于执行如图1-2任一所述的方法;
电子证据管理单元,用于执行如图3-5任一所述的方法;
数据接收单元,用于执行如图6-8任一所述的方法。
在本发明的一种实施例中,所述数据上传单元与所述电子证据管理单元通过申请视音频数据队列接口连接,所述数据接收单元包括RABBITMQ服务器。
本发明提供了一种数据传输系统,包含能够使用消息队列进行文件数据发送的数据上传单元,能够使用消息队列进行文件数据接收并保证完整性和正确性的数据接收单元,能够与执法数据采集软件、数据接收程序进行交互、控制和管理文件传输的电子证据管理单元。实现文件数据发送和接收相互分离,通过电子证据管理单元进行数据管控。
进一步的,利用RABBITMQ作为中间服务插件,成功将数据的发送和接收分离,实现了发送和接收的异步操作。
在发明的一种实施例中,文件上传包括如下步骤:
数据上传单元先查找需要进行断点续传的文件,再从电子证据管理单元获取指定上传的文件,最后查找其他需要进行正常上传的文件并按照文件的重要性进行排序。
数据上传单元查找到需要进行上传的文件后,通过申请视音频数据队列接口向电子证据管理单元申请一个用于视音频数据上传的队列。此队列将作为数据传输的通道。
电子证据管理单元收到数据上传单元的队列申请后,将队列声明、队列应该绑定交换器名称以及对应的路由键值发送给数据接收单元。
数据接收单元在RABBITMQ服务器中声明一个视音频数据上传的队列和交换器,并将交换器通过路由键值进行绑定。
数据接收单元将结果返回电子证据管理单元,并持续监听该队列。
电子证据管理单元声明视音频数据上传的队列成功后,将该队列声明和绑定的参数返回给执法数据采集软件。
数据上传单元申请视音频数据上传的队列失败后,将在下次轮询时再次尝试申请。
数据采集设备通过数据上传单元申请视音频数据上传的队列成功后,将获得视音频数据上传的队列名称、队列应该绑定的交换器和指定的路由键值。
数据上传单元获得队列名称、队列应该绑定的交换器和指定的路由键值后,根据获得的队列名称、交换器、路由键值与队列建立连接。
当连接建立失败后,数据上传单元向电子证据管理单元发送释放视音频数据队列请求,流程结束。
当连接建立成功后,数据上传单元读取文件数据包和文件属性。
当读取到文件的最后一个数据包时,计算文件的校验值。文件的校验值主要用于检验文件的完整性,可以根据需求决定采用何种检验值,如文件的MD5值。
当文件校验值计算失败时,保存当前文件读取的偏移量并标记该文件为上传失败,结束当前文件的上传,开始下一个文件的上传。
当文件校验值计算成功时,将校验值、文件属性和必要的标志作为数据属性,将数据包作为传输主体,通过已建立的队列连接进行传输。
当所有文件传输完成后,数据上传单元向电子证据管理单元发送释放视音频数据队列的请求,并结束上传。
电子证据管理单元收到释放视音频数据队列的请求后,标识该队列为已结束上传的队列,并等待数据接收单元完成所有数据接收。
当数据接收单元完成所有数据接收后,向电子证据管理单元发送已完成数据接收通知。
电子证据管理单元收到数据接收单元发送的已完成数据接收通知,将队列及其绑定的交换器进行删除。
所述文件属性包括文件存储的相对路径、文件校验值。
所述必要的标志包括文件开始和结束的标志、文件的当前偏移量、文件重要性标志、文件的发送者。
所述数据属性包括需要加入的属性参数标志、数据持久化标志、文件属性和必要的标志。
所述数据接收单元具备从视音频数据队列中接收数据的能力、具备与电子证据管理单元交互能力、具备能并发的从多个视音频数据队列中接收数据的能力、具备确保文件接收完成后文件的完整性和正确性。
在一种更为具体的实施例中,以执法数据采集设备的数据长传为例,从数据上传单元、电子证据管理单元、数据接收单元三个单元描述本发明的方法。
如图10-图11所示,从数据上传单元来看的具体流程,此处文字部分不做重复说明,以附图中为准。
如图12-图14所示,从电子证据管理单元来看的具体流程,此处文字部分不做重复说明,以附图中为准。
如图15-图18所示,从数据接收单元来看的具体流程,此处文字部分不做重复说明,以附图中为准。
对比传统的执法数据存储模式和传输模式,本发明能够在有效的确保文件的完整性和正确性的同时,还可以根据文件的重要性来进行优先接收。数据接收单元和数据上传单元通过电子证据管理单元进行交互,使得电子证据管理单元对数据的管理更加高效和精简。利用RABBITMQ作为中间服务插件,成功将数据的发送和接收分离,实现了发送和接收的异步操作。通过电子证据管理单元可以控制哪些文件需要上传到存储服务器,哪些文件需要进行重传,成功避开了基于原有技术的分布式、集中式、混合式存储方式的弊端,解决了数据管理混乱、数据占用空间大、数据丢失的问题。
本申请实施例还提供一种控制装置,包括处理器和用于存储计算机程序的存储介质;其中,处理器用于执行所述计算机程序时至少执行如上所述的方法。
本申请实施例还提供一种存储介质,用于存储计算机程序,该计算机程序被执行时至少执行如上所述的方法。
本申请实施例还提供一种处理器,所述处理器执行计算机程序,至少执行如上所述的方法。
所述存储介质可以由任何类型的易失性或非易失性存储设备、或者它们的组合来实现。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,FerromagneticRandom Access Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,SynchronousStatic Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random AccessMemory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random AccessMemory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data RateSynchronous DynamicRandom Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上内容是结合具体的优选实施方式对本发明所做的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。

Claims (12)

1.一种数据传输方法,其特征在于,包括如下步骤:
S1:数据上传单元获取断点续传文件列表、重传或指定传输文件列表、根据重要顺序获取未上传文件列表;
S2:向电子证据管理单元发出视音频数据上传队列的请求;
S3:获取所述电子证据管理单元返回的队列名称、队列绑定的交换器名称以及对应的路由键值;所述队列名称、队列绑定的交换器名称以及对应的路由键值由所述电子证据管理单元向数据接收单元发出申请视音频数据上传队列的请求并接收所述数据接收单元基于所述请求的响应获得;
S4:根据绑定的参数信息初始化所述队列,与所述队列建立连接;
S5:若连接建立失败,则向所述电子证据管理单元发送释放视音频数据队列请求;若连接建立成功,则向所述数据接收单元进行文件传输,所有所述文件传输完成后,向所述电子证据管理单元发送释放视音频数据队列的请求。
2.如权利要求1所述的数据传输方法,其特征在于,所述连接建立成功后,进行文件传输包括如下步骤:
S51:读取文件数据包和文件属性;
S52:当读取的所述文件数据包不是所述文件的最后一个数据包时,将所述文件属性和必要的标志作为所述数据包的数据属性,将所述数据包作为传输主体,通过已建立的队列连接进行传输;
S53:当读取到所述文件的最后一个数据包时,计算所述文件的校验值;
S54:当所述文件的校验值计算失败时,保存当前文件读取的偏移量并标记所述文件为上传失败,结束当前文件的上传,开始下一个文件的上传;当所述文件的校验值计算成功时,传输所述文件;
S55:当所有所述文件传输完成后,向外发送释放视音频数据队列的请求。
3.如权利要求2所述的数据传输方法,其特征在于,所述文件属性包括文件存储的相对路径、文件校验值;
所述必要的标志包括文件开始和结束的标志、文件的当前偏移量、文件重要性标志、文件的发送者;
所述数据属性包括需要加入的属性参数标志、数据持久化标志、文件属性和必要的标志。
4.一种数据传输方法,其特征在于,包括如下步骤:
T1:接收数据上传单元发来的视音频数据上传队列的请求,所述请求的参数包括数据采集设备的编码、数据采集设备的IP地址;
T2:向数据接收单元发出申请视音频数据上传队列的请求;
T3:接收所述数据接收单元基于所述请求的响应,所述响应包括队列名称、队列绑定的交换器名称以及对应的路由键值;
T4:将所述队列名称、队列绑定的交换器名称以及对应的路由键值发送给所述数据上传单元;
T5:等待所述数据上传单元传输文件;
T6:接收所述数据上传单元发来的释放视音频数据队列的请求,并将所述释放视音频数据队列的请求发送给所述数据接收单元;
T7:获取所述数据接收单元基于所述释放视音频数据队列的请求返回的完成数据接收的通知,将所述队列及其绑定的交换器进行删除。
5.如权利要求4所述的数据传输方法,其特征在于,还包括:接收所述数据接收单元发来的重传文件请求,具体包括如下步骤:
获取所述请求的参数,所述请求参数包括所述文件的数据采集设备的编码、文件存储的相对位置;
根据所述请求的参数将所述文件插入传输文件列表;
将插入的结果返回给所述数据接收单元。
6.如权利要求4所述的数据传输方法,其特征在于,还包括:接收所述数据接收单元发来的获取指定上传的文件请求,具体包括如下步骤:
获取所述请求的参数,所述请求参数包括所述文件的数据采集设备的编码;
根据所述请求的参数将查询传输文件列表;
将查询结果返回给所述数据接收单元。
7.一种数据传输方法,其特征在于,包括如下步骤:
P1:数据接收单元接收电子证据管理单元的申请队列的请求;所述请求的参数包括数据采集设备的编码;
P2:根据所述数据采集设备的编码查询是否已有相应的队列:
若有,则将所述队列的状态设置为正在使用,且将所述队列的名称、交换器、路由键值取出并返回给所述电子证据管理单元;
若没有,则声明一个队列、声明一个交换器,并将所述队列和所述交换器进行绑定、将所述交换器与路由键值进行绑定,将所述队列的名称、交换器、路由键值取出并返回给所述电子证据管理单元;
P3:持续监听所述队列;
P4:接收所述队列的数据,待所有数据接收完成后,向所述电子证据管理单元发送已完成数据接收通知;
P5:接收来自所述电子证据管理单元的释放队列的请求,等待所述队列中的全部数据接收完成后,将所述队列进行释放。
8.如权利要求7所述的数据传输方法,其特征在于,接收所述队列的数据包括如下步骤:
P41:接收带有开始标识的文件数据,并根据数据属性确定文件的偏移、文件的相对存储路径,循环接收并写入相应的文件中;
P42:每条所述文件数据写入相应的所述文件后,对所述文件数据进行确认接收操作,并将所述文件数据从所述队列中删除;
P43:当接收失败或者写入失败时,不对所述文件数据进行确认操作,并重新尝试接收;重新尝试接收至指定次数后仍失败,向所述电子证据管理单元发送文件接收失败通知;
P44:发送文件接收失败通知成功后,将所有属于所述文件数据的数据包进行接收确认,但不写入所述文件;
P45:接收到带有结束标识的文件数据,写入所述文件后计算所述文件的校验值,与文件属性中的校验值进行比对:若两个校验值不一样,将所述文件的信息发送给所述电子证据管理单元并标识所述文件为需要指定重传的文件。
9.如权利要求7所述的数据传输方法,其特征在于,接收来自所述电子证据管理单元的释放队列的请求包括如下步骤:
P51:获取所述请求的参数,所述参数包括数据采集设备的编码;
P52:根据所述参数查询所述数据采集设备是否有相应的队列;
P53:如有相应队列,则将所述队列的状态设置为等待释放;若无相应的队列,则将结果返回给所述电子证据管理单元。
10.一种数据传输系统,其特征在于,包括:
数据上传单元,用于执行如权利要求1-3任一所述的方法;
电子证据管理单元,用于执行如权利要求4-6任一所述的方法;
数据接收单元,用于执行如权利要求7-8任一所述的方法。
11.如权利要求10所述的数据传输系统,其特征在于,所述数据上传单元与所述电子证据管理单元通过申请视音频数据队列接口连接,所述数据接收单元包括RABBITMQ服务器。
12.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-3任一所述方法的步骤;或,4-6任一所述方法的步骤;或,7-8任一所述方法的步骤。
CN202010333680.4A 2020-04-24 2020-04-24 一种数据传输方法和系统 Active CN111556128B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010333680.4A CN111556128B (zh) 2020-04-24 2020-04-24 一种数据传输方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010333680.4A CN111556128B (zh) 2020-04-24 2020-04-24 一种数据传输方法和系统

Publications (2)

Publication Number Publication Date
CN111556128A CN111556128A (zh) 2020-08-18
CN111556128B true CN111556128B (zh) 2023-04-07

Family

ID=72003929

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010333680.4A Active CN111556128B (zh) 2020-04-24 2020-04-24 一种数据传输方法和系统

Country Status (1)

Country Link
CN (1) CN111556128B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102111301A (zh) * 2011-03-28 2011-06-29 上海云高软件科技有限公司 一种通用文件传输系统及其实现方法
CN103747091A (zh) * 2014-01-16 2014-04-23 电信科学技术第一研究所 一种嵌入式设备的分布式数据同步系统及方法
CN109471710A (zh) * 2018-10-25 2019-03-15 网易(杭州)网络有限公司 任务请求的处理方法、装置、处理器、终端及服务器
CN109981732A (zh) * 2019-02-18 2019-07-05 百度在线网络技术(北京)有限公司 海量文件传输控制方法及装置
CN110071873A (zh) * 2019-04-09 2019-07-30 华为技术有限公司 一种发送数据的方法、装置及相关设备
CN110311974A (zh) * 2019-06-28 2019-10-08 东北大学 一种基于异步消息的云存储服务方法
CN110661849A (zh) * 2019-08-30 2020-01-07 中国人民财产保险股份有限公司 一种请求处理方法、装置、电子设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102111301A (zh) * 2011-03-28 2011-06-29 上海云高软件科技有限公司 一种通用文件传输系统及其实现方法
CN103747091A (zh) * 2014-01-16 2014-04-23 电信科学技术第一研究所 一种嵌入式设备的分布式数据同步系统及方法
CN109471710A (zh) * 2018-10-25 2019-03-15 网易(杭州)网络有限公司 任务请求的处理方法、装置、处理器、终端及服务器
CN109981732A (zh) * 2019-02-18 2019-07-05 百度在线网络技术(北京)有限公司 海量文件传输控制方法及装置
CN110071873A (zh) * 2019-04-09 2019-07-30 华为技术有限公司 一种发送数据的方法、装置及相关设备
CN110311974A (zh) * 2019-06-28 2019-10-08 东北大学 一种基于异步消息的云存储服务方法
CN110661849A (zh) * 2019-08-30 2020-01-07 中国人民财产保险股份有限公司 一种请求处理方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于消息代理的OPC UA发布/订阅模式研究与实现;刘洋等;《高技术通讯》;20180615(第06期);全文 *

Also Published As

Publication number Publication date
CN111556128A (zh) 2020-08-18

Similar Documents

Publication Publication Date Title
JP3305769B2 (ja) 通信装置
JP6370912B2 (ja) ユーザデータを送信及び受信するための方法及び端末デバイス
JP5472276B2 (ja) 車両用通信制御装置
CN102027461B (zh) 扩展的消息收发平台
CN111147564A (zh) 数据文件传输方法、系统及通信终端
CN101997661B (zh) 数据包发送方法、数据包获取方法及装置
JP2001014285A (ja) データ転送管理システム、データ転送システム、転送履歴収集装置及び記録媒体
CN102890631A (zh) 基于持久化消息队列传输消息的方法及消息传输装置
KR20130046540A (ko) 데이터 전송 장치 및 방법
JP5607461B2 (ja) システム及びゲートウェイ
TW200402961A (en) Data communication method
CN111752803A (zh) 埋点数据收集上报的方法、装置及介质
CN111556128B (zh) 一种数据传输方法和系统
CN115065694B (zh) 一种云存储数据中转上传系统、方法、设备及介质
CN115348333B (zh) 基于udp双端通信交互的数据传输方法、系统及设备
JP3827415B2 (ja) 電子メールシステムの端末装置
CN113808711A (zh) Dicom文件处理方法、装置、计算机设备和存储介质
CN115514799A (zh) Tcp连接方法、系统、网络设备及存储介质
JP4266107B2 (ja) データ転送装置、データ転送先装置、データ収集装置、データ転送プログラム、データ転送先プログラム及びデータ収集プログラム
RU2444149C1 (ru) Способ эксплуатации беспроводного мобильного радиоустройства и подключенного к нему беспроводного стационарного радиоустройства
JP4704689B2 (ja) 移動デバイス、受信デバイス及びデータ送信確認システム
CN116756087A (zh) 一种基于多个移动设备的私有云文件管理系统
CN113992732B (zh) 终端管理控制方法、装置、服务器及存储介质
KR20060006148A (ko) Wcdma 패킷 과금 데이터 처리 방법 및 시스템
US7769014B2 (en) Transmitting and receiving system, transmitting apparatus, and receiving apparatus

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant