CN114979113A - 一种文件传输方法、装置及系统 - Google Patents

一种文件传输方法、装置及系统 Download PDF

Info

Publication number
CN114979113A
CN114979113A CN202110203568.3A CN202110203568A CN114979113A CN 114979113 A CN114979113 A CN 114979113A CN 202110203568 A CN202110203568 A CN 202110203568A CN 114979113 A CN114979113 A CN 114979113A
Authority
CN
China
Prior art keywords
terminal device
file
request
response
files
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.)
Granted
Application number
CN202110203568.3A
Other languages
English (en)
Other versions
CN114979113B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110203568.3A priority Critical patent/CN114979113B/zh
Priority to EP21927560.9A priority patent/EP4274198A4/en
Priority to PCT/CN2021/124883 priority patent/WO2022179136A1/zh
Publication of CN114979113A publication Critical patent/CN114979113A/zh
Application granted granted Critical
Publication of CN114979113B publication Critical patent/CN114979113B/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]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data
    • 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/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开一种文件传输方法、装置及系统。在该方法中,第一终端装置向第二终端装置传输第一请求之后,接收第二终端装置对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识,然后第一终端装置根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。通过本申请实施例的方案,第一终端装置可同时获取一个或多个数据块,并可根据第一响应中包括的所述一个或多个数据块分别对应的第一文件的标识,确定获取到的数据块所属的文件,即通过并行传输的方式获取文件,从而提高获取文件的效率,以及提高网络带宽的利用率。

Description

一种文件传输方法、装置及系统
技术领域
本申请涉及汽车技术领域,具体涉及一种文件传输方法、装置及系统。
背景技术
汽车诊断仪又称汽车故障诊断仪,是一种专门针对汽车进行诊断的专业设备,主要用于检测汽车的性能、监控汽车故障的发生以及查明故障的部位和原因。
在应用过程中,汽车诊断仪通常与汽车内安装的车载终端相连接,并可与车载终端进行信息交互,以实现汽车诊断仪与车载终端之间的文件传输,例如,汽车诊断仪可下载所述车载终端内的文件,或者所述汽车诊断仪可将自身存储的文件上传至车载终端。
但是,目前汽车诊断仪与车载终端进行文件传输时,效率较低。
发明内容
为了解决现有技术中,汽车诊断仪与车载终端之间的文件传输效率较低的问题,本申请实施例提供一种文件传输方法、装置及系统。
第一方面,本申请实施例公开一种文件传输方法,包括:
第一终端装置向第二终端装置传输第一请求,所述第一请求用于请求获取一个或多个第一文件;
所述第一终端装置接收所述第二终端装置对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述第一终端装置根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
通过上述步骤,第一终端装置可通过第一响应获取一个或多个数据块,即第一终端装置可通过并行传输的方式获取各个第一文件,第一终端装置获取文件的效率提高。并且,由于第一终端装置可同时获取两个以上文件,因此还可提高网络带宽的利用率。
一种可选的设计中,还包括:
所述第一终端装置向所述第二终端装置传输第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述第一终端装置接收所述第二终端装置对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
通过上述步骤,所述第一终端装置可根据所述第二终端装置传输的第二响应,确定所述一个或多个第一文件的标识。
一种可选的设计中,所述第二响应还包括所述一个或多个第一文件的大小。
通过所述第二响应中包括的所述一个或多个第一文件的大小,所述第一终端装置可确定自身是否接收到完整的第一文件。
一种可选的设计中,还包括:
所述第一终端装置在根据接收到的所述一个或多个数据块的大小和所述第二响应中包括的所述一个或多个数据块对应的第一文件的大小,确定至少一个第一文件传输完成之后,所述第一终端装置传输第一目标文件对应的第一终止信息,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
通过上述步骤,第一终端装置可通过所述第一终止信息,结束对第一目标文件的传输。
一种可选的设计中,还包括:
所述第一终端装置向所述第二终端装置传输第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述第一终端装置接收所述第二终端装置对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识;
所述第一终端装置根据所述一个或多个数据块分别对应的第二文件的标识,将所述一个或多个数据块保存到对应的第二文件中。
通过上述步骤,第一终端装置还可通过并行传输方式获取一个或多个第二文件,并且,第一终端装置可在获取第一文件的过程中,获取所述一个或多个第二文件,进一步提高第一终端装置获取文件的效率。
一种可选的设计中,还包括:
所述第一终端装置向第三终端装置传输第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述第一终端装置接收所述第三终端装置对所述第四请求的错误应答响应,所述错误应答响应用于指示所述第三终端装置不支持并行传输;
所述第一终端装置传输第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
通过上述步骤,第一终端装置可在第三终端装置不支持并行传输方式的情况下,通过串行传输方式获取第三终端装置内的文件,从而兼容并行传输和串行传输方式。
第二方面,本申请实施例公开一种文件传输方法,其特征在于,包括:
第二终端装置接收第一终端装置传输的第一请求,所述第一请求用于请求获取一个或多个第一文件;
所述第二终端装置向所述第一终端装置发送对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识。
通过上述步骤,第二终端装置可向第一终端装置发送一个或多个数据块,使第一终端装置通过并行传输的方式获取文件,从而提高第一终端装置获取文件的效率。
一种可选的设计中,还包括:
所述第二终端装置接收所述第一终端装置传输的第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述第二终端装置向所述第一终端装置发送对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
通过上述步骤,所述第二终端装置可通过所述第二响应,使第一终端装置确定所述一个或多个第一文件的标识。
一种可选的设计中,所述第二响应还包括所述一个或多个第一文件的大小。
一种可选的设计中,还包括:
所述第二终端装置接收所述第一终端装置传输的第一终止信息,所述第一终止信息用于指示终止传输第一目标文件,所述第一目标文件为完成传输的第一文件;
所述第二终端装置向所述第一终端装置发送对所述第一终止信息的终止应答响应,并释放所述第一目标文件的标识。
通过上述步骤,第二终端装置可结束对第一目标文件的传输,并且,在释放所述第一目标文件的标识之后,所述第二终端装置还可将该标识分配给其他文件,提高第二终端装置分配标识的效率。
一种可选的设计中,还包括:
所述第二终端装置接收所述第一终端装置传输的第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述第二终端装置向所述第一终端装置发送对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识。
通过上述步骤,第二终端装置可向第一终端装置传输第二文件中的一个或多个数据块,从而使第一终端装置通过并行传输方式获取第二文件,提高第一终端装置获取第二文件的效率。
进一步的,第二终端装置可在传输第一文件的数据块的过程中,向第一终端装置传输第二文件的数据块,从而实现第一文件和第二文件的并行传输,进一步提高第一终端装置获取第二文件的效率。
第三方面,本申请实施例公开一种文件传输方法,包括:
第三终端装置在接收第一终端装置传输的第四请求之后,向所述第一终端装置发送对所述第四请求的错误应答响应,所述第四请求包括一个或多个第三文件的并行传输指示信息,所述错误应答响应用于指示所述第三终端装置不支持并行传输;
所述第三终端装置接收所述第一终端装置传输的第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
通过上述步骤,第三终端装置可在自身不支持并行传输的情况下,通过串行传输方式,向第一终端装置传输文件,从而使第一终端装置兼容并行传输和串行传输方式。
第四方面,本申请实施例公开一种文件传输装置,包括:
处理器和收发接口;
所述收发接口用于向第二终端装置传输第一请求,并接收所述第二终端装置对所述第一请求的第一响应,所述第一请求用于请求获取一个或多个第一文件,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述处理器用于根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
一种可选的设计中,所述收发接口还用于,向所述第二终端装置传输第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述收发接口还用于,接收所述第二终端装置对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
一种可选的设计中,所述第二响应还包括所述一个或多个第一文件的大小。
一种可选的设计中,所述收发接口还用于,在所述处理器根据接收到的所述一个或多个数据块的大小和所述第二响应中包括的所述一个或多个数据块对应的第一文件的大小,确定至少一个第一文件传输完成之后,传输第一目标文件对应的第一终止信息,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
一种可选的设计中,所述收发接口还用于,向所述第二终端装置传输第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述收发接口还用于,接收所述第二终端装置对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识;
所述处理器还用于,根据所述一个或多个数据块分别对应的第二文件的标识,将所述一个或多个数据块保存到对应的第二文件中。
一种可选的设计中,所述收发接口还用于,向第三终端装置传输第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述收发接口还用于,接收所述第三终端装置对所述第四请求的错误应答响应,并传输第五请求,所述错误应答响应用于指示所述第三终端装置不支持并行传输,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
第五方面,本申请实施例公开一种文件传输装置,包括:
处理器和收发接口;
所述收发接口用于接收第一终端装置传输的第一请求,所述第一请求用于请求获取一个或多个第一文件;
所述处理器用于生成对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述收发接口还用于,向所述第一终端装置发送对所述第一请求的第一响应。
一种可选的设计中,所述收发接口还用于,接收所述第一终端装置传输的第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述收发接口还用于,向所述第一终端装置发送对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
一种可选的设计中,所述第二响应还包括所述一个或多个第一文件的大小。
一种可选的设计中,所述收发接口还用于,接收所述第一终端装置传输的第一终止信息,所述第一终止信息用于指示终止传输第一目标文件,所述第一目标文件为完成传输的第一文件;
所述收发接口还用于,向所述第一终端装置发送对所述第一终止信息的终止应答响应,并释放所述第一目标文件的标识。
一种可选的设计中,所述收发接口还用于,接收所述第一终端装置传输的第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述收发接口还用于,向所述第一终端装置发送对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识。
第六方面,本申请实施例公开一种文件传输装置,包括:
处理器和收发接口;
所述收发接口用于接收第一终端装置传输的第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述处理器用于生成对所述第四请求的错误应答响应,所述错误应答响应用于指示所述第三终端装置不支持并行传输
所述收发接口还用于,接收所述第一终端装置传输的第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
第七方面,本申请实施例公开一种终端装置,包括:
至少一个处理器和存储器,
所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行第一方面所述的文件传输方法。
第八方面,本申请实施例公开一种终端装置,包括:
至少一个处理器和存储器,
所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行第二方面所述的文件传输方法。
第九方面,本申请实施例公开一种终端装置,包括:
至少一个处理器和存储器,
所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行第三方面所述的文件传输方法。
第十方面,本申请实施例公开一种文件传输系统,包括:
第一终端装置和第二终端装置;
所述第一终端装置包括如第四方面所述的文件传输装置;
所述第二终端装置包括如第五方面所述的文件传输装置。
一种可选的设计中,还包括:
第三终端装置;
所述第三终端装置包括如第六方面所述的文件传输装置。
第十一方面,本申请实施例公开一种计算机可读存储介质,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如第一方面所述的文件传输方法。
第十二方面,本申请实施例公开一种计算机可读存储介质,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如第二方面所述的文件传输方法。
第十三方面,本申请实施例公开一种计算机可读存储介质,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如第三方面所述的文件传输方法。
第十四方面,本申请实施例提供一种计算机可读存储介质;
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如第一方面所述的方法。
第十五方面,本申请实施例提供一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如第二方面所述的方法。
第十六方面,本申请实施例提供一种计算机可读存储介质;
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如第三方面所述的方法。
通过本申请实施例提供的方案,第一终端装置可通过第一响应,同时获取一个或多个数据块,并可根据第一响应中包括的所述一个或多个数据块分别对应的第一文件的标识,确定获取到的数据块所属的文件。也就是说,第一终端装置可同时获取多个数据块,即第一终端装置可通过并行传输的方式获取文件。
因此,与现有技术相比,第一终端装置获取文件的效率提高。并且,由于第一终端装置可同时获取多个数据块,因此该方案还可提高网络带宽的利用率。
进一步的,所述第一终端装置可为汽车诊断仪,并且汽车诊断仪需要通过获取到的文件实现汽车的诊断。由于本申请的方案能够提高第一终端装置获取文件的效率,因此,可加快汽车诊断仪获取文件的速度,相应的能够提高汽车诊断仪的诊断效率,并且减少需要获取汽车诊断结果的用户的等待时间。
并且,由于汽车诊断仪的诊断效率提高,汽车诊断仪与车载终端构成的诊断系统的诊断效率相应提高。进一步的,由于本申请实施例提供的方案使汽车诊断仪的诊断效率提高,能够较快确定车辆的故障原因,以便尽快完成车辆故障的修复,因此,减少了车辆的故障时间,从而能够提高用户对车辆的使用体验。
附图说明
图1为一种汽车诊断仪与车载终端进行信息交互的场景示意图;
图2(a)为一种UDS协议中的请求的示意图;
图2(b)为另一种UDS协议中的请求的示意图;
图2(c)为一种UDS协议中的响应的示意图;
图2(d)为另一种UDS协议中的响应的示意图;
图3(a)为一种第一终端装置与第二终端装置进行文件传输的示意图;
图3(b)为另一种第一终端装置与第二终端装置进行文件传输的示意图;
图4为一种第一终端装置与第二终端装置的交互示意图;
图5为本申请实施例公开的一种文件传输方法的工作流程示意图;
图6为本申请实施例公开的又一种文件传输方法的工作流程示意图;
图7为本申请实施例公开的又一种文件传输方法的工作流程示意图;
图8为本申请实施例公开的又一种文件传输方法的工作流程示意图;
图9为本申请实施例公开的一种文件传输方法的交互示意图;
图10为本申请实施例公开的又一种文件传输方法的工作流程示意图;
图11为本申请实施例公开的一种文件传输装置的结构示意图;
图12为本申请实施例公开的一种终端装置的结构示意图;
图13为本申请实施例公开的一种文件传输系统的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个、两个或两个以上。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
为了解决现有技术中,汽车诊断仪与车载终端之间进行文件传输的效率较低的问题,本申请实施例提供一种文件传输方法及装置。
其中,汽车诊断仪可为多种形式,例如,可为计算机、平板电脑、手机或其他专用设备,并且,在汽车诊断仪中安装有用于进行汽车诊断的软件,所述汽车诊断仪可通过该软件,检测汽车的性能、监控汽车故障的发生以及查明故障的部位和原因。
车载终端也可称为行车电脑,车载电脑或车控制器,为车上的控制单元,也是数据中心,可以为车某个部件的控制器,也可以是整车控制器,例如可为电子控制单元(electronic control unit,ECU),域控制器单元(domain control unit,DCU),移动数据中心(mobile data center,MDC)等。该车载终端通常安装在汽车内,并可根据汽车的故障,生成相应的故障诊断码(diagnostic trouble code,DTC)等信息。另外,通过与汽车诊断仪之间的信息交互,汽车诊断仪可将DTC传输至汽车诊断仪,从而使所述汽车诊断仪获取所述DTC。
参见图1所示的场景示意图,在汽车诊断仪获取DTC的过程中,通常可将车载终端视为下位机,而汽车诊断仪视为上位机,这种情况下,所述汽车诊断仪可向车载终端发出请求,车载终端在接收到该请求之后,向汽车诊断仪传输相应的响应。其中,如果所述汽车诊断仪发出的请求用于请求DTC,则所述车载终端可向所述汽车诊断仪传输包括DTC的响应。
另外,汽车诊断仪与车载终端在进行通信时,会遵循统一诊断服务(unifieddiagnostic services,UDS)协议。UDS协议由ISO-14229系列标准定义,作为一种在汽车电子环境下的诊断通信协议,UDS协议对汽车诊断仪与车载终端之间进行通信的信息的格式进行了定义。
在UDS协议的定义下,汽车诊断仪或车载终端发出的请求通常包括两种类型,一种请求包括子功能(即Sub-function),而另一种请求不包括子功能。
其中,包括子功能的请求可如图2(a)所示。参见图2(a),该请求包括服务标识符(即service identity document,SID)、子功能(即Sub-function)和参数(即Parameter)三部分。另外,不包括子功能的请求可如图2(b)所示。参见图2(b),该请求包括服务标识符SID和参数(即Parameter)两部分。
在UDS协议中,服务标识符用于指示该请求用于请求哪种服务,例如,如果该请求用于请求获取车载终端中的DTC,则该请求中的服务标识符为0x19;根据请求的服务,可确定该请求中是否需要包括子功能部分;请求中的参数部分通常可加载请求的服务的参数,例如,如果该请求用于请求获取某一文件,该参数部分可加载该文件的名称等。
与所述请求相对应的,汽车诊断仪或车载终端发出的响应通常也包括两种类型,其中一种包括子功能(即Sub-function),一种不包括子功能。
其中,包括子功能的响应可如图2(c)所示。参见图2(c),该响应包括响应服务标识符(response service identity document,Response SID)、子功能(即Sub-function)和参数(即Parameter)三部分。另外,不包括子功能的请求可如图2(d)所示。参见图2(d),该请求包括响应服务标识符(即Response SID)和参数(即Parameter)两部分。
在UDS协议中,响应服务标识符用于指示该响应对应哪种服务,例如,如果该响应用于向汽车诊断仪提供DTC,则该响应中的响应服务标识符为0x59;根据响应对应的服务,可确定该响应中是否需要包括子功能部分;响应中的参数部分通常可加载该响应对应的服务的参数,例如,如果该响应用于传输文件,该参数部分可加载该文件的数据块等。
在UDS协议的定义中,如果汽车诊断仪发出的请求用于请求DTC,则该请求中的服务标识符为0x19。车载终端在接收到汽车诊断仪发出的请求之后,如果确定该请求中的服务标识符为0x19,则向汽车诊断仪反馈包括DTC的响应,并且,该响应中的响应服务标识符为0x59,该DTC位于响应的参数(即Parameter)部分。这种情况下,汽车诊断仪根据所述车载终端传输的响应,可获取所述DTC。
通过上述数据信息交互的过程,汽车诊断仪可获取DTC。另外,在车载终端中,往往包括多个文件,例如日志文件等。有些情况下,汽车诊断仪还需要获取车载终端中的文件。例如,在获取DTC之后,汽车诊断仪根据DTC确定汽车中存在一个故障,并且,汽车诊断仪需要获取车载终端中的日志文件,以便进一步确定该故障的产生时间等信息,这种情况下,汽车诊断仪还需要获取车载终端中的日志文件。
另外,有些情况下,汽车诊断仪还需要向车载装置上传文件。例如,有时汽车诊断仪需要向车载装置上传配置文件等。
也就是说,汽车诊断仪不仅需要获取车载终端的DTC,有些情况下,汽车诊断仪与车载终端之间还需进行文件传输。
为了便于说明,在本申请实施例中,设定需要获取文件的终端装置为第一终端装置,存储有所述文件的终端装置为第二终端装置。例如,如果汽车诊断仪需要下载车载终端内的文件,则所述汽车诊断仪为第一终端装置,所述车载终端为第二终端装置。
参见图3(a),目前第一终端装置可通过以下方式获取所述第二终端装置内的文件:第一终端装置向第二终端装置传输用于获取文件信息的请求,该请求的服务标识符为0x38,该文件信息通常包括所述文件的大小;第二终端装置在接收到这一请求之后,向第一终端装置反馈响应,该响应的响应服务标识符为0x78;然后,第一终端装置在接收到该响应之后,向第二终端装置传输用于获取文件的请求,该请求的服务标识符为0x34,并且该请求的参数部分包括所需文件的地址信息;第二终端装置在接收到该请求之后,根据所述请求中包括的地址信息,确定第一终端装置所需的文件,并向第一终端装置传输所述文件。
在图3(a)对应的示例中,第二终端装置中的文件包括第一地址对应的文件和第二地址对应的文件。如果所述第一终端装置传输的用于获取文件的请求中包括第一地址,则所述第二终端装置在接收到该请求之后,向所述第一终端装置传输所述第一地址对应的文件。
但是,这一方案中,第一终端装置需要确定各个文件的地址,以便根据各个文件的地址,生成并传输用于获取文件的请求,较为繁琐,因此目前常用第二种方式进行文件传输。
在第二种方式中,参见图3(b),第一终端装置可通过以下步骤获取所述第二终端装置内的文件:第一终端装置向第二终端装置传输用于获取文件信息的请求,该请求的服务标识符为0x38,该文件信息通常包括文件大小;第二终端装置在接收到这一请求之后,向第一终端装置反馈包括文件信息的响应,该响应的响应服务标识符为0x78;然后,第一终端装置向第二终端装置传输用于获取文件的请求,该请求的服务标识符为0x36,并且该请求的参数部分包括所需文件的名称。第二终端装置在接收到该请求之后,根据所述请求中包括的文件的名称,确定第一终端装置所需的文件,并向第一终端装置传输所述文件。
在图3(b)对应的一个示例中,第二终端装置中的文件名称不同。如果所述第一终端装置传输的请求中包括文件名称,则所述第二终端装置在接收到该请求之后,向所述第一终端装置传输文件名称对应的文件。
在目前的方案中,第二终端装置在向第一终端装置传输文件时,通常将文件拆分成多个数据块,并依次向第一终端装置传输所述多个数据块。以下通过图4对目前这一文件传输过程进行介绍,并且,在图4所对应的示例中,第一终端装置传输的用于获取文件的请求的服务标识符为0x36。
参见图4所示的交互示意图,在目前的方案中,第一终端装置与第二终端装置的信息交互过程中,第一终端装置首先向第二终端装置传输用于获取文件信息的请求,该请求的服务标识符为0x38,该文件信息通常包括文件的大小;第二终端装置在接收到这一请求之后,向第一终端装置反馈包括文件信息的响应,该响应的响应服务标识符为0x78;然后,第一终端装置向第二终端装置传输用于获取文件的请求,该请求的服务标识符为0x36,在这一示例中,第二终端装置中包括文件1、文件2……文件n等多个文件,并且,第一终端装置需要获取文件1,则所述第一终端装置传输的用于获取文件的请求中包括文件1的名称;第二终端装置在接收到第一终端装置发出的用于获取文件的请求之后,将文件1拆分成多个数据块,并向第一终端装置传输包括文件1的第一个数据块的响应,该响应的响应服务标识符为0x76;第一终端装置在接收到该响应之后,如果确定未接收到完整的文件1,则第一终端装置继续向第二终端装置传输用于获取文件的请求,该请求的服务标识符为0x36,并且该请求中包括文件1的名称;第二终端装置在接收到该请求之后,向第一终端装置传输包括文件1中第二个数据块的响应,该响应的响应服务标识符为0x76;如果第一终端装置在接收到第二个数据块之后,确定未接收到完整的文件1,则重复这一过程。如果第一终端装置在接收到某一数据块之后,确定接收到完整的文件1,则向第二终端装置传输用于请求终止传输的请求,该请求的服务标识符为0x37。在接收到这一请求之后,第二终端装置传输该请求对应的响应,该响应的响应服务标识符为0x77,表示结束针对文件1的传输。
根据上述信息交互过程的介绍可知,第二终端装置在向第一终端装置发送文件时,是将文件拆分成一个或多个数据块之后再发送,并且采用串行传输的方式传输文件。在串行传输的方式下,两个终端装置之间一次只传输一个文件,消息交互和处理都比较简单。
当第一终端装置需要获取多个文件时,只能在其中一个文件传输完成之后,再传输下一个文件。例如,在图4所示的示例中,第一终端装置在获取到文件1之后,才能再获取文件2等其他文件。
因此,在现有技术中,第一终端装置获取第二终端装置内的文件的效率较低,二者之间进行文件传输的效率较低。
进一步的,如果第一终端装置为汽车诊断仪,而汽车诊断仪往往需要通过获取到的文件对汽车进行诊断,而汽车诊断仪获取文件的效率较低,会导致汽车诊断仪的诊断效率较低。
另外,随着汽车数字化尤其是自动驾驶的发展,汽车中的车载终端的功能日益多样化。特别的,目前的ECU逐渐复杂化,并有发展成一个超级ECU的趋势。这种情况下,车载终端的系统越来越复杂,并且具有强大的计算能力,这导致车载终端往往包括复杂的文件系统,车载终端内包括的文件可达到几十吉字节(gigabyte,G)甚至上百G。相应的,汽车诊断仪需要从车载终端内获取的文件往往日益增加。这种情况下,汽车诊断仪如果通过现有技术获取车载终端内的文件,则往往由于较低的诊断效率,难以满足用户对汽车的诊断需求。
为了解决现有技术中,汽车诊断仪与车载终端之间进行文件传输时,文件传输的效率较低的问题,本申请实施例提供一种文件传输方法、装置及系统。
为了明确本申请提供的方案,以下结合附图,通过各个实施例,对本申请所提供的方案进行介绍说明。
本申请实施例提供一种文件传输方法,该文件传输方法应用于第一终端装置,所述第一终端装置为汽车诊断仪和车载终端中,需要获取第一文件的终端装置。
示例性的,如果车载终端中存储有第一文件,汽车诊断仪需要获取所述第一文件,则汽车诊断仪为第一终端装置,相应的,所述车载终端为第二终端装置。另外,如果汽车诊断仪中存储有第一文件,车载终端需要获取所述第一文件,则车载终端为第一终端装置,相应的,所述汽车诊断仪为第二终端装置。
参见图5所示的工作流程示意图,本申请实施例提供的文件传输方法包括以下步骤:
步骤S11、第一终端装置向第二终端装置传输第一请求,所述第一请求用于请求获取一个或多个第一文件。
其中,所述一个或多个第一文件通常为存储在所述第二终端装置中的文件,这种情况下,所述第一终端装置通过所述第一请求,向所述第二终端装置请求获取所述一个或多个第一文件。
在本申请实施例中,所述第一请求中通常包括所述第一文件的相关信息,以便所述第一请求的接收方在接收所述第一请求之后,根据所述第一文件的相关信息,确定所述第一终端装置需要获取的第一文件。
其中,所述第一请求中包括的所述第一文件的相关信息可以包括所述第一文件在第二终端装置中的存储路径和所述第一文件的名称,或者包括所述第一文件的标识,或者在第二终端装置的各个存储路径下的文件的名称均不相同时,所述第一文件的相关信息可包括所述第一文件的名称。
在UDS协议中,所述第一请求可为服务标识符为0x36的信息,并且,所述第一文件的相关信息位于所述第一请求的参数部分。
在本申请实施例提供的方案中,如果所述第一文件包括多个文件,第一终端装置可通过发送多个第一请求来获取多个第一文件,每个第一请求中包括至少一个第一文件的相关信息;或者所述第一终端装置也可以发送一个第一请求,这一个第一请求中包括多个第一文件的相关信息。
如果一个第一请求中包括多个第一文件的相关信息,则所述第一请求的参数部分可包括多个参数段,每个参数段包括其中一个第一文件的相关信息。
步骤S12、所述第一终端装置接收所述第二终端装置对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识。
其中,所述第一响应中包括的一个或多个数据块为所述一个或多个第一文件中的数据块。所述第二终端装置在接收到所述第一请求之后,可根据所述第一请求,确定所述第一终端装置希望获取的一个或多个第一文件,并将各个第一文件拆分成一个或多个数据块,然后所述第二终端装置向第一终端装置传输第一响应,以使所述第一终端装置获取所述一个或多个第一文件中的数据块。
另外,所述第一响应中不仅包括所述一个或多个数据块,还包括所述一个或多个数据块分别对应的第一文件的标识。其中,一个数据块对应的文件,指的是所述数据块所属的文件,也就是说,如果某一个数据块是文件A中的数据块,则该数据块对应的文件为文件A。
在本申请实施例的方案中,如果所述第一请求用于请求获取多个第一文件,则所述第二终端装置可向第一终端装置传输多个第一响应,每个第一响应包括其中一个第一文件的数据块和该第一文件的标识。或者,所述第二终端装置可通过一个第一响应传输多个第一文件的数据块,这一个第一响应中包括所述多个第一文件的数据块,并且包括各个数据块分别对应的第一文件的标识。
在UDS协议中,所述第一响应可为响应服务标识符为0x76的信息,并且,数据块与数据块对应的第一文件的标识位于所述第一响应的参数部分。其中,如果一个第一响应中包括多个数据块以及这多个数据块分别对应的第一文件的标识,所述第一响应的参数部分可包括多个参数段,每个参数段包括其中一个数据块,以及该数据块所对应的第一文件的标识。
这种情况下,所述第一终端装置在接收到所述第一响应之后,即可根据数据块对应的第一文件的标识,确定所述数据块所属的第一文件。
进一步的,如果某一第一文件被拆分成至少两个数据块,所述第一响应中通常还包括数据块对应的序列计数。例如,如果所述第二终端装置将所述第一文件拆分为三个数据块,其中一个第一响应中包括第一个数据块,则所述第一响应中还包括指示这一数据块为第一个数据块的序列计数。
根据所述序列计数,第一终端装置可确定接收到的数据块在第一文件中的位置,以便根据接收到的所述至少两个数据块,确定第一文件。
在UDS协议中,该数据块的序列计数位于所述第一响应的参数部分。其中,如果一个第一响应中包括多个数据块以及这多个数据块分别对应的第一文件的标识,所述第一响应的参数部分包括多个参数段,并且每个参数段包括其中一个数据块,以及该数据块所对应的第一文件的标识,则数据块的序列计数可位于包含该数据块的参数段内。
通过步骤S12,第一终端装置可获取到一个或多个第一文件中的数据块,其中,如果所述第一文件包括多个,第一终端装置可同时获取多个第一文件中的数据块,即第一终端装置可通过并行传输的方式,获取到多个第一文件的多个数据块。
步骤S13、所述第一终端装置根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
在本申请实施例提供的方案中,所述第一终端装置根据各个数据块分别对应的第一文件的标识,确定各个数据块分别所属于的第一文件,并将各个数据块分别保存到对应的第一文件中。
其中,如果某一个第一文件仅由一个数据块构成,则所述第一终端装置在获取所述第一响应之后,则获取到这一完整的第一文件。
如果某一个第一文件被拆分成多个数据块,则所述第一终端装置与第二终端装置可进行多次信息交互,使所述第一终端装置获取多个第一响应,所述多个第一响应中分别包括该第一文件的多个数据块,从而使所述第一终端装置获取完整的第一文件。
其中,如果某一个第一文件包括多个数据块,所述第一终端装置在获取多个数据块之后,可通过拼接所述多个数据块的方式,获取完整的第一文件。
在拼接所述多个数据块时,如果所述第一响应中包括各个数据块的序列计数,所述第一终端装置可根据所述序列计数对所述多个数据块进行拼接,以获取完整的第一文件。例如,如果所述第一终端装置接收到三个属于同一第一文件的数据块,各个数据块的序列计数分别为“1”“2”和“3”,则所述第一终端装置在拼接数据块时,确定序列计数为“1”的数据块为拼接时的第一个数据块,序列计数为“2”的数据块为拼接时的第二个数据块,序列计数为“3”的数据块为拼接时的第三个数据块。
或者,如果所述第一响应中不包括数据块的序列计数,所述第一终端装置可根据包括数据块的第一响应的接收时间,确定各个数据块的拼接顺序,这种情况下,第一响应的接收时间越早,则该第一响应中包括的数据块的拼接顺序通常越靠前。
通过本申请实施例提供的方案,第一终端装置可通过第一响应,同时获取一个或多个第一文件包括的数据块,并可根据第一响应中包括的标识,确定获取到的各个数据块所属的文件。其中,如果所述第一终端装置通过所述第一请求向所述第二终端装置请求多个第一文件,则所述第一终端装置可通过第一响应获取多个数据块,即第一终端装置可通过并行传输的方式获取各个第一文件。
因此,与现有技术相比,本申请实施例提供的方案中,第一终端装置获取文件的效率提高。并且,由于在本申请实施例中,第一终端装置可同时获取两个以上文件,因此还可提高网络带宽的利用率。
进一步的,所述第一终端装置可为汽车诊断仪,并且汽车诊断仪需要通过获取到的文件实现汽车的诊断。由于本申请的方案能够提高第一终端装置获取文件的效率,因此,可加快汽车诊断仪获取文件的速度,相应的能够汽车诊断仪的诊断效率,并且减少需要获取汽车诊断结果的用户的等待时间。
并且,由于汽车诊断仪的诊断效率提高,汽车诊断仪与车载终端构成的诊断系统的诊断效率相应提高。而且,由于本申请实施例提供的方案使汽车诊断仪的诊断效率提高,能够较快确定车辆的故障原因,以便尽快完成车辆故障的修复,因此,减少了车辆的故障时间,进一步能够提高用户对车辆的使用体验。
在本申请实施例提供的方案中,第一终端装置根据数据块对应的第一文件的标识,确定所述数据块所属的第一文件。其中,所述第一终端装置可通过多种方式确定所述第一文件的标识。
在一种可行的实现方式中,所述第二终端装置为第一文件分配标识。这种情况下,参见图6所示的工作流程示意图,本申请实施例还包括以下步骤:
步骤S14、所述第一终端装置向所述第二终端装置传输第二请求。
其中,所述第二请求包括所述一个或多个第一文件的并行传输指示信息。
所述并行传输指示信息用于指示所述第一终端装置支持通过并行传输的方式获取所述一个或多个第一文件,并用于请求获取第一文件的标识。
为了提高第一终端装置获取文件的效率,在本申请实施例中,所述第一终端装置可通过并行传输的方式获取文件。如果需要通过并行传输的方式获取第一文件,所述第一终端装置可生成第一文件对应的第二请求,所述第二请求中通常还包括所述一个或多个第一文件的相关信息。第一文件的相关信息通常包括所述第一文件在第二终端装置中的存储路径和第一文件的名称。另外,如果第二终端装置的各个存储路径下的文件的名称不同,所述第一文件的相关信息可包括所述第一文件的名称。
其中,所述第二请求可为UDS协议中,服务标识符为0x38的信息,并且,所述第一文件的相关信息可加载在所述第二请求的参数部分。
如果所述第一终端装置需要获取多个第一文件,所述第一终端装置可向第二终端装置传输多个第二请求,每个第二请求包括其中一个第一文件的并行传输指示信息。或者,所述第一终端装置可向第二终端装置传输一个第二请求,这一个第二请求包括多个第一文件的并行传输指示信息,这种情况下,所述第二请求的参数部分可包括多个参数段,每个参数段包括其中一个第一文件的相关信息。
步骤S15、所述第一终端装置接收所述第二终端装置对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
所述第二终端装置在获取所述第二请求之后,可确定所述第一终端装置支持通过并行传输的方式进行文件的传输。这种情况下,所述第二终端装置会为所述一个或多个第一文件分配相应的标识,并生成第二请求对应的第二响应,向所述第一终端装置传输所述第二响应。在所述第二响应中,包括所述一个或多个第一文件的标识,从而使所述第一终端装置根据所述第二响应确定所述一个或多个第一文件的标识。
其中,所述第二终端装置可通过多种方式,为第一文件分配标识。在一种可行的实现方式中,如果所述第二终端装置不同存储路径下的文件的名称不相同,则所述第二终端装置可确定所述第一文件的名称为所述第一文件的标识。
或者,在另外一种可行的实现方式中,所述第二终端装置可准备编码表,该编码表中包括多个不同的编码,并可依次为各个第一文件分配其中的编码作为所述第一文件的标识。示例性的,所述第二终端装置根据接收到的第二请求,确定需要向所述第一终端装置传输三个第一文件时,可从编码表中任选三个不同的编码,分别作为所述三个第一文件的编码。
当然,所述二终端装置也可通过其他方式为所述第一文件分配标识,本申请实施例对此不作限定。
另外,如果需要传输多个第一文件,所述第二终端装置为所述多个第一文件分配的标识均不相同,以便区分各个第一文件。
通过上述实施例,第二终端装置可为第一文件分配相应的标识,而第一终端装置可基于所述第二终端装置传输的第二响应,确定所述第一文件的标识。
或者,在另一种可行的实现方案中,所述第一终端装置还可通过与第二终端装置之间的协议,确定所述第一文件的标识。
示例性的,如果第二终端装置中不同存储路径下的各个文件的名称均不相同,则该协议可规定所述第一文件的标识为所述第一文件的名称,这种情况下,所述第一终端装置确定自身需要获取的第一文件的名称为所述第一文件的标识。
当然,所述第一终端装置与第二终端装置之间还可设置其他的协议,并且由第一终端装置根据其他的协议确定所述第一文件的标识,本申请实施例对此不作限定。
进一步的,在本申请实施例提供的方案中,所述第二响应还可包括所述一个或多个第一文件的大小。也就是说,所述第二终端装置在获取所述第二请求后生成并传输第二响应,所述第二响应不仅包括所述一个或多个第一文件的标识,还包括所述一个或多个第一文件的大小。
基于所述第二响应,所述第一终端装置可确定自身需获取的第一文件的大小,并进一步根据自身接收到的属于所述第一文件的数据块的大小,确定自身是否接收到完整的第一文件。相应的,在本申请实施例中,还包括以下步骤:
所述第一终端装置在根据接收到的所述一个或多个数据块的大小和所述第二响应中包括的所述一个或多个数据块对应的第一文件的大小,确定至少一个第一文件传输完成之后,所述第一终端装置传输第一目标文件对应的第一终止信息,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
其中,所述第一终止信息中通常包括所述第一目标文件的相关信息,以使所述第二终端装置基于所述第一目标文件的相关信息,确定完成传输的第一目标文件。
所述第一目标文件的相关信息可包括所述第一目标文件的标识;或者,所述第一目标文件的相关信息可包括所述第一目标文件的名称以及所述第一目标文件在所述第二终端装置的存储路径;或者,如果所述第二终端装置的各个存储路径下的文件的名称均不相同,则所述第一目标文件的相关信息可包括所述第一目标文件的名称。
在本申请实施例提供的方案中,第一终端装置可同时获取一个或多个第一文件。其中,如果所述第一终端装置需要获取一个第一文件,则所述第一终端装置确定接收到完整的第一文件之后,可确定这一第一文件为第一目标文件。
另外,如果所述第一终端装置需要获取多个第一文件,则所述第一终端装置可在确定任意一个第一文件完成传输之后,确定该第一文件为第一目标文件,并传输第一目标文件对应的第一终止信息。或者,所述第一终端装置还可在完整接收到所有的第一文件之后,再传输第一终止信息,这种情况下,所述第一目标文件包括所有的第一文件。
所述第二终端装置在接收到所述第一终止信息之后,可传输所述第一终止信息对应的终止应答响应,并释放所述第一目标文件对应的标识。这种情况下,所述第一终端装置还可接收所述第二终端装置传输的终止应答响应,结束第一目标文件的传输。
在UDS协议的定义下,所述第一终止信息的服务标识符可为“0x37”,第一目标文件的相关信息位于所述第一终止信息的参数部分。如果所述第一目标文件包括多个第一文件,所述第一终止信息可包括多个参数段,每个参数段包括其中一个第一目标文件的相关信息。
进一步的,第一终端装置在获取所述第一文件的过程中,还可获取所述第二文件,即以并行传输的方式获取所述第一文件和第二文件。
相应的,在本申请实施例提供的方案中,还包括以下步骤:
第一步,所述第一终端装置向所述第二终端装置传输第三请求,所述第三请求用于请求获取一个或多个第二文件。
在现有技术中,第一终端装置与第二终端装置之间只能通过串行传输方式进行文件的传输,因此,只有在第一文件传输完成之后,第一终端装置才能传输第三请求。
而在本申请实施例中,所述第一终端装置与第二终端装置之间可通过并行传输方式进行文件的传输。这种情况下,所述第一终端装置传输第三请求的时间并无严格限制。示例性的,所述第一终端装置可在传输第一文件的过程中,就传输所述第三请求,从而使所述第一终端装置在获取第一文件的过程中,同时获取第二文件,实现第一文件与第二文件的并行传输;或者,所述第一终端装置可在传输第一文件之前或者之后,传输所述第三请求,本申请实施例对此不作限定。
第二步,所述第一终端装置接收所述第二终端装置对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识。
其中,所述第三响应包括的一个或多个数据块为所述一个或多个第二文件中的数据块。
在获取所述第三响应之前,所述第一终端装置已确定各个第二文件的标识。在本申请实施例中,所述第一终端装置可通过与所述第二终端装置之间的协议,确定所述一个或多个第二文件的标识。
或者,在另一可行的实现方式中,由第二终端装置为所述一个或多个第二文件分配相应的标识。这一方案中,所述第一终端装置可向所述第二终端装置传输所述一个或多个第二文件的并行传输指示。所述第二终端在接收到该并行传输指示之后,确定所述一个或多个第二文件的标识,并向第一终端装置反馈相应的响应,在该响应中,包括所述一个或多个第二文件的标识。这种情况下,根据所述第二终端装置传输的响应,所述第一终端装置即可确定各个第二文件的标识。
由于所述第一终端装置已确定各个第二文件的标识,在这一步骤中,所述第一终端装置可根据所述第三响应中各个数据块分别对应的第二文件的标识,确定所述第三响应中包括的各个数据块所属的第二文件。
第三步,所述第一终端装置根据所述一个或多个数据块分别对应的第二文件的标识,将所述一个或多个数据块保存到对应的第二文件中。
所述第一终端装置根据所述第三响应中一个或多个数据块分别对应的第二文件的标识,可确定数据块所属的第二文件,并将该数据块保存到其所属的第二文件中。
在现有技术中,第一终端装置只能通过串行传输的方式获取文件,因此,在文件传输过程中,第一终端装置每次只能接收一个文件,并只有在接收到完整的文件之后,才能再接收其他文件,获取文件的效率较低。
而本申请实施例提供的方案中,第一终端装置可通过第三请求,请求获取一个或多个第二文件,如果所述第二文件包括多个,则所述第一终端装置可同时获取多个第二文件,即通过并行传输方式获取多个第二文件,从而提高第一终端装置与第二终端装置之间传输文件的效率。
进一步的,在本申请实施例提供的方案中,第一终端装置可在获取第一文件的过程中,还获取第二文件。并且,这一方案中,第一终端装置即使同时获取到一个或多个第一文件的数据块以及一个或多个第二文件的数据块,也可通过数据块对应的标识,确定各个数据块所属的文件,不会造成数据块的混淆,实现第一文件和第二文件的并行传输,进一步提高第一终端装置获取文件的效率。
另外,有些情况下,虽然第一终端装置支持通过并行传输的方式获取第三终端装置中的第三文件,但是,存储第三文件的第三终端装置不能支持通过并行传输方式向所述第一终端装置传输文件。针对这一场景,本申请实施例还包括以下步骤:
第一步,所述第一终端装置向第三终端装置传输第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息。
其中,所述一个或多个第三文件的并行传输指示信息用于指示所述第一终端装置支持通过并行传输的方式获取所述第三文件。
在所述第四请求中,通常包括所述一个或多个第三文件的相关信息。所述第三文件的相关信息通常包括所述第三文件的存储路径和名称,或者,如果所述第二终端装置中各个存储路径下的文件名称均不相同,所述第三文件的相关信息可包括所述第三文件的名称。
在一种可行的实现方式中,所述第四请求为目前传统的汽车诊断仪与车载终端进行信息交互时,所应用的服务标识符为0x38的UDS信息。所述一个或多个第三文件的相关信息位于该信息的参数部分。其中,如果所述第一终端装置通过一个第四请求获取多个第三文件,则所述第四请求的参数部分可包括多个参数段,每个参数段包括其中一个第三文件的相关信息。
第二步,所述第一终端装置接收所述第三终端装置对所述第四请求的错误应答响应,所述错误应答响应用于指示所述第三终端装置不支持并行传输。
在本申请实施例中,由于所述第三终端装置不支持并行传输,因此,在接收到第四请求之后,所述第三终端装置会向所述第一终端装置发送错误应答响应,以表明自身无法通过并行传输的方式,向所述第一终端装置传输所述一个或多个第三文件。
第三步,所述第一终端装置传输第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
在接收到所述错误应答响应之后,所述第一终端装置可确定第三终端装置不支持并行传输,这种情况下,所述第一终端装置可通过串行传输的方式,获取所述第三终端装置内的第三文件。因此,所述第一终端装置可向第三终端装置传输第五请求,以便所述第三终端装置通过串行传输的方式,向所述第一终端装置传输第三文件。
在所述第五请求中,通常包括其中一个第三文件的相关信息,这种情况下,在串行传输过程中,所述第三终端装置接收到所述第五请求之后,可向所述第一终端装置传输第五请求对应的响应,该响应可包括这一个第三文件的大小等信息。然后,所述第一终端装置可向所述第三终端装置传输获取这一第三文件的请求,所述第三终端装置在接收到获取所述第三文件的请求之后,再向所述第一终端装置传输相应的响应,该响应中包括所述一个第三文件的数据块。
另外,在串行传输的过程中,所述第一终端装置在获取这一完整的第三文件之后,再获取其他的文件。也就是说,在串行传输过程中,所述第一终端装置每次只能获取一个文件的数据块,并在获取到完整的文件之后,再获取其他的文件,即所述第一终端装置不会同时获取两个及两个以上的文件。
示例性的,所述第一终端装置与第三终端装置之间可通过图4所示的文件传输方式进行串行传输,以使所述第一终端装置获取第三文件。
另外,所述第一终端装置在接收到所述错误应答响应之后,还可传输所述错误应答响应对应的应答信息,所述第三终端装置还可接收所述错误应答响应对应的应答信息,根据所述应答信息,所述第三终端装置确定所述第一终端装置已经知悉自身不支持通过并行传输的方式传输所述第一文件。
在一种可行的实现方式中,所述第四请求为目前传统的汽车诊断仪与车载终端进行信息交互时,所应用的服务标识符为0x38的UDS信息。
通过上述步骤,能够在第三终端装置不支持并行传输的情况下,仍然使第一终端装置获取到第三终端装置内的文件,使第一终端装置的文件传输方式兼容串行传输和并行传输两种方式,从而使第一终端装置应用于较多样化的场景中。
相应的,在本申请实施例提供的方案中,提供一种文件传输方法,该方法应用于第二终端装置,所述第二终端装置为汽车诊断仪和车载终端中,存储第一文件的终端装置。另外,第一终端装置为汽车诊断仪和车载终端中,需要获取第一文件的终端装置。
示例性的,如果车载终端中存储有第一文件,汽车诊断仪需要获取所述第一文件,则汽车诊断仪为第一终端装置,相应的,所述车载终端为第二终端装置。另外,如果汽车诊断仪中存储有第一文件,车载终端需要获取所述第一文件,则车载终端为第一终端装置,相应的,所述汽车诊断仪为第二终端装置。
参见图7所示的工作流程示意图,本申请实施例提供的文件传输方法包括以下步骤:
步骤S17、第二终端装置接收第一终端装置传输的第一请求,所述第一请求用于请求获取一个或多个第一文件。
其中,所述第一请求中通常包括所述第一文件的相关信息。通过所述第一文件的相关信息,所述第二终端装置可确定所述第一终端装置需要获取的第一文件。
步骤S18、所述第二终端装置向所述第一终端装置发送对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识。
所述第二终端装置在确定所述第一终端装置所需的第一文件之后,将第一文件拆分成至少一个数据块,然后生成第一响应,并向第一终端装置传输第一响应。这种情况下,通过所述第一响应,所述第一终端装置可获取所述第一文件中的数据块,并通过所述标识,确定所述数据块所属的文件。
在本申请实施例提供的方案中,所述第一文件包括一个或多个文件。其中,如果第一请求指示所述第一终端装置需要获取多个第一文件,则所述第二终端装置可生成一个第一响应,这一个第一响应中包括所述多个第一文件的数据块,并包括各个数据块分别对应的第一文件的标识。或者,所述第二终端装置可生成多个第一响应,各个第一响应中分别包括至少一个第一文件的数据块,以及包括所述数据块所属的第一文件的标识。
其中,所述第一请求可为UDS协议中,服务标识符为0x36的信息。相应的,所述第一响应可为UDS协议中,响应服务标识符为0x76的信息。并且,数据块与数据块对应的第一文件的标识位于所述第一响应的参数部分。其中,如果一个第一响应中包括多个数据块以及这多个数据块分别对应的第一文件的标识,所述第一响应的参数部分可包括多个参数段,每个参数段包括其中一个数据块,以及该数据块所对应的第一文件的标识。
通过上述步骤,第二终端装置可向第一终端装置传输一个或多个第一文件中的数据块,以使所述第一终端装置获取所述数据块。
而且,通过这一实施例,第一终端装置不仅可以获取文件中包括的数据块,还可根据响应中包括的标识,确定获取到的各个数据块所属的文件。这种情况下,第一终端装置即使同时获取两个以上的文件中的数据块,也可通过标识确定各个数据块所属的文件,不会造成数据块的混淆。
因此,通过本申请实施例提供的方案,第一终端装置可同时获取两个以上的文件,即第一终端装置和第二终端装置之间,可通过并行传输的方式传输文件。
由于第一终端装置可通过并行传输的方式获取文件,因此与现有技术相比,第一终端装置获取文件的效率提高。并且,由于在本申请实施例中,第一终端装置可同时获取两个以上文件,因此该方案还可提供网络带宽的利用率。
进一步的,所述第一终端装置可为汽车诊断仪,并且汽车诊断仪需要通过获取到的文件实现汽车的诊断。由于本申请的方案能够提高第一终端装置获取文件的效率,因此,可加快汽车诊断仪获取文件的速度,相应的能够汽车诊断仪的诊断效率,并且减少需要获取汽车诊断结果的用户的等待时间。
并且,由于汽车诊断仪的诊断效率提高,汽车诊断仪与车载终端构成的诊断系统的诊断效率相应提高。而且,由于本申请实施例提供的方案使汽车诊断仪的诊断效率提高,能够较快确定车辆的故障原因,以便尽快完成车辆故障的修复,因此,减少了车辆的故障时间,进一步能够提高用户对车辆的使用体验。
在本申请实施例中,第一终端装置根据各个数据块对应的文件的标识,确定所述数据块所属的文件。其中,第一终端装置可根据与第二终端装置之间的协议,确定所述文件的标识。或者,可由第二终端装置为文件分配标识。
如果由第二终端装置为文件分配标识,则本申请实施例还包括以下步骤:
首先,所述第二终端装置接收所述第一终端装置传输的第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息。
其中,所述第二请求用于指示第一终端装置支持通过并行传输的方式获取所述一个或多个第一文件,并用于请求获取一个或多个第一文件的标识。
然后,所述第二终端装置向所述第一终端装置发送对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
所述第二终端装置在接收到所述第二请求之后,可根据所述第二请求,确定所述第一终端装置希望通过并行传输的方式获取所述第一文件。这种情况下,所述第二终端装置可为所述一个或多个第一文件分配相应的标识,并向所述第一终端装置传输包括所述标识的第二响应,从而使所述第一终端装置根据所述第二响应,确定所述一个或多个第一文件的标识。
其中,所述第二请求可为UDS协议中,服务标识符为0x38的信息,相应的,所述第二响应可为UDS协议中,响应服务标识符为0x78的信息。
进一步的,在本申请实施例提供的方案中,所述第二响应还可包括所述一个或多个第一文件的大小。
这种情况下,所述第一终端装置可根据所述第二响应中包括的所述第一文件的大小,以及自身接收到的数据块的大小,确定自身是否接收到完整的第一文件。并且,所述第一终端装置在确定自身接收到完整的第一文件之后,还可向第二终端装置传输第一终止信息。
相应的,本申请实施例提供的方案还包括以下步骤:
首先,所述第二终端装置接收所述第一终端装置传输的第一终止信息,所述第一终止信息用于指示终止传输第一目标文件,所述第一目标文件为完成传输的第一文件;
然后,所述第二终端装置向所述第一终端装置发送对所述第一终止信息的终止应答响应,并释放所述第一目标文件的标识。
在接收到所述第一终止信息之后,所述第二终端装置可确定所述第一终端装置已经接收到完整的第一目标文件。这种情况下,所述第二终端装置可再向所述第一终端装置传输所述终止应答响应。并且,所述第二终端装置可释放所述第一目标文件的标识,所述第一目标文件的标识被释放之后,还可分配至其他文件。
在本申请实施例提供的方案中,第二终端装置为第一文件分配标识,并且,在分配过程中,所述第二终端装置往往需要确定自身为不同文件分配的标识不同,以通过标识区分各个文件。这种情况下,在释放所述标识之后,由于所述第一目标文件的标识与其他文件的标识均不相同,如果需要为其他文件分配标识,所述第二终端装置可直接将所述标识作为其他文件的标识,无需所述第二终端装置再去查找未被当前的各个文件占用的标识,从而能够进一步提高文件传输的效率。
由于在本申请实施例提供的方案中,第一终端装置与第二终端装置之间,可通过并行传输的方式实现文件的传输,因此,在传输第一文件包括的数据块的过程中,所述第二终端装置还可向所述第一终端装置传输第二文件包括的数据块,并且,在传输所述第一文件包括的数据之前或之后,所述第二终端装置也可向第一终端装置传输所述第二文件中的数据块。
针对这一现象,本申请实施例还包括以下步骤:
首先,所述第二终端装置接收所述第一终端装置传输的第三请求,所述第三请求用于请求获取一个或多个第二文件。
在所述第三请求中,通常包括所述第二文件的相关信息。所述第二终端装置在接收到所述第三请求之后,根据所述第二文件的相关信息,确定第一终端装置需要获取的一个或多个第二文件,将所述一个或多个第二文件拆分成一个或多个数据块,并据此生成和传输第三响应。
其中,所述第三请求可为UDS协议中,服务标识符为0x36的信息,相应的,所述第三响应可为UDS协议中,响应服务标识符为0x76的信息。
然后,所述第二终端装置向所述第一终端装置发送对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识。
在这一方案中,所述第二终端装置可通过与第一终端装置之间的协议,确定所述一个或多个第二文件的标识。
或者,所述第二终端装置可为所述至少一个第二文件分配标识,相应的,所述第一终端装置可通过第二终端装置的分配,确定所述一个或多个第二文件的标识。这种情况下,所述第一终端装置可向所述第二终端装置传输请求,该请求中包括所述一个或多个第二文件的并行传输指示信息,接收到该请求之后,第二终端装置为所述一个或多个第二文件分配相应的标识,并向所述第一终端装置传输相应的响应,该响应中包括所述一个或多个第二文件的标识,从而使所述第一终端装置根据该响应确定所述一个或多个第二文件的标识。
并且,在接收到所述第三请求之后,所述第二终端装置向第一终端装置传输第三响应,以使所述第一终端装置获取第二文件中的数据块。
在本申请的方案中,所述第二终端装置传输第三响应的时间并未有严格的时间限制,示例性的,所述第二终端装置可在第一文件传输之前或之后,传输所述第三响应,或者,所述第二终端装置还可在向第一终端装置传输第一文件的过程中,传输所述第三响应。
也就是说,即使所述第二终端装置未将第一文件包括的全部数据块传输至第一终端装置,第二终端装置也可向所述第一终端装置传输第三响应。在接收到所述第三响应之后,所述第一终端装置可获取所述一个或多个第二文件的数据块,并根据第三响应中包括的标识,确定各个数据块所属的文件。
在本申请实施例提供的方案中,第一终端装置可通过第三请求,请求获取一个或多个第二文件,如果所述第二文件包括多个,则所述第一终端装置可同时获取多个第二文件,即通过并行传输方式获取多个第二文件,从而提高获取文件的效率。
进一步的,在本申请实施例提供的方案中,第一终端装置可在获取第一文件的过程中,还获取第二文件。并且,这一方案中,第一终端装置即使同时获取到一个或多个第一文件的数据块和一个或多个第二文件的数据块,也可通过数据块对应的标识,确定各个数据块所属的文件,不会造成数据块的混淆,实现第一文件和第二文件的并行传输,进一步提高第一终端装置获取文件的效率。
在有些应用场景下,第一终端装置希望获取第三终端装置中的第三文件,但是,第三终端装置可能并不支持并行传输。针对这一场景,本申请实施例提供另一种文件传输方法。
该文件传输方法应用于第三终端装置,所述第三终端装置为汽车诊断仪和车载终端中,存储有第三文件的终端装置,并且,所述第三终端装置不支持并行传输。
示例性的,如果车载终端中存储有第三文件,汽车诊断仪需要获取所述第三文件,则汽车诊断仪为第一终端装置,相应的,所述车载终端为第三终端装置。另外,如果汽车诊断仪中存储有第三文件,车载终端需要获取所述第三文件,则车载终端为第一终端装置,相应的,所述汽车诊断仪为第三终端装置。
参见图8所示的工作流程示意图,本申请实施例提供的文件传输方法包括以下步骤:
步骤S19、第三终端装置在接收第一终端装置传输的第四请求之后,向所述第一终端装置发送对所述第四请求的错误应答响应。
所述第四请求包括一个或多个第三文件的并行传输指示信息,所述错误应答响应用于指示所述第三终端装置不支持并行传输。
其中,所述一个或多个第三文件的并行传输指示信息用于指示所述第一终端装置支持通过并行传输的方式获取所述第三文件。在所述第四请求中,通常包括所述一个或多个第三文件的相关信息,所述第三文件的相关信息通常包括所述第三文件的存储路径和名称,或者,如果所述第二终端装置中各个存储路径下的文件名称均不相同,所述第三文件的相关信息可包括所述第三文件的名称。
在本申请实施例中,由于所述第三终端装置不支持并行传输,因此,在接收到第四请求之后,所述第三终端装置会向所述第一终端装置发送错误应答响应。
在一种可行的实现方式中,所述第四请求为目前传统的汽车诊断仪与车载终端进行信息交互时,所应用的服务标识符为0x38的UDS信息。所述一个或多个第三文件的相关信息位于该信息的参数部分。其中,如果所述第一终端装置通过一个第四请求获取多个第三文件,则所述第四请求的参数部分可包括多个参数段,每个参数段包括其中一个第三文件的相关信息。
步骤S20、所述第三终端装置接收所述第一终端装置传输的第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
第一终端装置在通过所述错误应答响应,确定所述第三终端装置不支持并行传输之后,可通过串行传输方式,获取所述第三终端装置中包括的文件。这种情况下,第一终端装置会向第三终端装置传输第五请求。
在所述第五请求中,通常包括其中一个第三文件的相关信息,在串行传输过程中,所述第三终端装置接收到所述第五请求之后,可向所述第一终端装置传输第五请求对应的响应,该响应可包括这一个第三文件的大小等信息。然后,所述第一终端装置可向所述第三终端装置传输获取这一第三文件的请求,所述第三终端装置在接收到获取所述第三文件的请求之后,再向所述第一终端装置传输相应的响应,该响应中包括所述一个第三文件的数据块。
另外,在串行传输的过程中,所述第一终端装置在获取这一完整的第三文件之后,再获取其他的文件。也就是说,在串行传输过程中,所述第一终端装置每次只能获取一个文件的数据块,并在获取到完整的文件之后,再获取其他的文件,即所述第一终端装置不会同时获取两个及两个以上的文件。
示例性的,所述第一终端装置与第三终端装置之间可通过图4所示的文件传输方式进行串行传输,以使所述第一终端装置获取第三文件。
另外,所述第一终端装置在接收到所述错误应答响应之后,还可传输所述错误应答响应对应的应答信息,所述第三终端装置还可接收所述错误应答响应对应的应答信息,根据所述应答信息,所述第三终端装置确定所述第一终端装置已经知悉自身不支持通过并行传输的方式传输所述第一文件。
通过上述步骤,能够使第一终端装置在第三终端装置不支持并行传输的情况下,仍然能够获取到第三终端装置内的文件,使第一终端装置的信息交互方式兼容串行传输和并行传输两种方式。
为了明确本申请实施例提供的方案中,第一终端装置与第二终端装置之间的文件传输过程,以下公开图9。参见图9所示的交互示意图,在本申请实施例提供的方案中,第一终端装置与第二终端装置的信息交互可包括以下步骤:
步骤S21、所述第一终端装置向所述第二终端装置传输第二请求。
其中,所述第二请求包括所述一个或多个第一文件的并行传输指示信息。所述第二请求用于指示所述第一终端装置支持通过并行传输的方式获取所述第一文件,并用于请求获取所述一个或多个第一文件的标识。
在UDS协议的定义下,所述第二请求通常为服务标识符为0x38的UDS信息。以下通过表1提供一种服务标识符为0x38的UDS信息的格式:
表1
Figure BDA0002948894120000211
其中,表1表示服务标识符为0x38的UDS信息可包括多个字段,分别为:服务标识符、传输模式(即mode Ofoperation)、文件路径和文件名称长度(即file path and namelength)等,传输模式字段、文件路径和文件名称长度字段均位于第二请求中的参数部分。
在表1中,第一列表示第二请求中各个字段占用的字节的位置,具体的,可认为服务标识符这一字段占用第一个字节,传输模式这一字段占用第二个字节,文件路径和文件名称长度这一字段占用第三个字节和第四个字节。
如果所述第二请求包括多个第一文件的并行传输指示信息,则所述第二请求可包括多个文件路径和文件名称长度字段,每一个文件路径和文件名称长度字段用于指示其中一个第一文件的路径和名称长度。
另外,表1的第二列为第二请求中包括的各种参数,第三列表示各参数在UDS协议中约定的类型,该类型包括必选、可选和自定义等。
表1还表示在UDS协议中,服务标识符(即SID)这一字段在第二请求中是必选的,通常占用1个字节,并且所述第二请求的服务标识符为0x38,这种情况下,所述第二请求也可称为0x38信息。
传输模式这一字段在第二请求中也是必选的,通常占用1个字节,并且这一字段的取值范围为0x00-0xFF,这一字段用于指示所述第二请求的第一文件所对应的传输模式,在本申请实施例提供的方案中,该传输模式可为串行传输模式或并行传输模式。
在0x38信息中,还包括文件路径和文件名称长度字段,其中,这一字段中的文件路径,用于指示第一终端装置所请求的第一文件在第二终端装置中的存储路径,这一字段中的文件名称长度,用于指示所述第一文件的名称的长度。其中,这一字段可通过最高有效位(most significant bit,MSB)和最低有效位(least significant bit,LSB)表示。另外,这一字段占用两个字节,分别为第三个字节和第四个字节,每个字节的取值范围为0x00-0xFF。
另外,在0x38信息中通常还包括文件名称字段,文件名称字段用于指示所述第一文件的名称。这种情况下,结合所述件路径和文件名称长度字段以及文件名称字段,第二终端装置可确定所述第一终端装置所需获取的第一文件。
如果所述第二请求包括多个第一文件的并行传输指示信息,则在所述第二请求的参数部分,可包括多个参数段,各个参数段分别包括一个第一文件的相关信息。这种情况下,在所述0x38信息中,可包括多个文件路径和文件名称长度字段,分别用于指示其中一个第一文件的相关信息。
根据表1可知,在UDS协议中,所述传输模式的取值范围为0x00-0xFF,其中,不同取值代表不同含义,各个取值所代表的含义可参见表2。
表2
Figure BDA0002948894120000221
参见表2可知,目前UDS协议对“0x00”-“0x05”在传输模式中的含义已经定义。其中,“0x00”表示预留;“0x01”表示增加文件(即下载文件),如果传输模式中加载的字节值为“0x01”,则表示第一终端装置需要通过串行传输的方式获取文件;“0x02”表示删除文件;“0x03”表示替换文件;“0x04”表示读取文件(即上传文件),如果传输模式中加载的字节值为“0x04”,则表示第一终端装置需要通过串行方式上传自身存储的文件;“0x05”表示读取目录。而其他剩余的字节值,即“0x06-0xFF”可为将来其他功能预留。
这种情况下,在本申请实施例中,在传输模式字段中可应用其他未被定义的字节值。在一个示例中,可通过字节值“0x06”表示并行增加文件,即第一终端装置需要通过并行传输的方式获取文件。相应的,在所述第二请求的传输模式字段中包括“0x06”。另外,可通过字节值“0x07”表示并行读取文件,即第一终端装置需要通过并行上传的方式上传自身存储的文件。
当然,在其他示例中,还可通过其他未被定义的字节值表示第一终端装置需要通过并行传输的方式获取文件。例如,可通过“0xFF”这一字节值表示所述第一终端装置需要通过并行传输的方式获取文件,这种情况下,所述第二请求的传输模式字段中包括“0xFF”。
步骤S22、所述第二终端装置接收所述第二请求,并向所述第一终端装置发送第二响应。其中,所述第二响应包括所述一个或多个第一文件的标识。
第二终端装置在接收到所述第二请求之后,可根据所述第二请求,确定所述第一终端装置所支持的文件传输方式。例如,如果第一终端装置通过传输模式字段中加载的“0x06”表示自身支持通过并行传输的方式获取文件,并且所述第二请求的传输模式字段中包括“0x06”,则表明第一终端装置支持通过并行传输的方式获取所述第一文件。
第二终端装置在确定所述第一终端装置支持通过并行传输的方式获取所述一个或多个第一文件后,为所述第一文件分配相应的标识,生成包括所述标识的第二响应,并向所述第一终端装置传输所述第二响应,以使所述第一终端装置根据所述第二响应,确定所述一个或多个第一文件的标识。
进一步的,在本申请实施例提供的方案中,所述第二响应中还包括所述一个或多个第一文件的大小。
在UDS协议的定义下,所述第二请求的服务标识符为0x38,所述第二请求对应的第二响应的响应服务标识符通常为0x78。以下通过表3提供一种响应服务标识符为0x78的信息的格式:
表3
Figure BDA0002948894120000241
其中,表3表示第二响应可包括多个字段,分别为:响应服务标识符(即responseSID)、传输模式(即mode ofoperation)、文件压缩部分大小(即file size compressed)和文件标识(即file id)等,传输模式、文件压缩部分大小和文件标识字段均位于第二响应中的参数部分。
在表3中,第一列表示第二响应中各个字段占用的字节的位置,具体的,可认为响应服务标识符这一字段占用第一个字节,传输模式这一字段占用第二个字节,文件压缩部分大小这一字段占用了k个字节,所占用的k个字节为第“4+m+3+k”个字节至第“4+m+3+2k-1”,并且,这k个字节中的每个字节的取值范围为0x00-0xFF。另外,文件标识这一字段占用4个字节,分别为第“4+m+3+2k”个字节、第“4+m+4+2k”个字节、第“4+m+5+2k”个字节和第“4+m+6+2k”个字节。
另外,表3还表示在UDS协议中,响应服务标识符这一字段在第二请求中是必选的,通常占用1个字节,并且所述第二响应的响应服务标识符为0x78,这种情况下,所述第二响应也可称为0x78信息。
传输模式这一字段在第二请求中也是必选的,通常占用1个字节,并且这一字段的取值范围为0x00-0xFF,这一字段用于指示所述第二响应对应第一文件的传输模式,在本申请实施例提供的方案中,该传输模式可为串行传输模式或并行传输模式。
在0x78信息中,还包括文件压缩部分大小这一字段,用于指示第一文件在压缩后的大小,基于这一字段,第一终端装置可确定所述第一文件的大小。
另外,在0x78信息中通常还包括文件标识字段,文件标识字段用于指示第二终端装置为第一文件分配的标识。在本申请实施例中,该字段可作为在目前UDS协议的定义下,扩展的一个字段,通过该扩展的字段加载文件标识。这种情况下,第一终端装置在获取第二响应之后,通过识别该字段,即可确定所述第一文件的标识。
如果第二响应包括多个第一文件的数据块,则所述第二响应可包括多个文件压缩部分大小字段和多个文件标识字段。
另外,有些情况下,第二终端装置无法支持以并行传输的形式向第一终端装置传输文件。这种情况下,如果第二终端装置接收到第二请求,确定第一终端装置请求通过并行传输的方式获取第一文件,但自身不支持以并行传输的方式向所述第一终端装置传输所述第一文件时,所述第二终端装置还可向所述第一终端装置传输错误应答响应。
第一终端装置在接收到所述错误应答响应后,可重新传输用于获取第一文件的请求,这一情况下,重新传输的请求用于指示所述第一终端装置支持通过串行传输的方式获取所述第一文件,其中,所述重新传输的请求的服务标识符通常为0x38,并且在该请求的传输模式字段加载“0x01”。这种情况下,第一终端装置可通过串行传输的方式,获取所述第二终端装置中的第一文件。
在UDS协议的定义下,第二终端装置所传输的第二请求对应的错误应答响应的响应服务标识符为0x78,并且,在所述错误应答响应中包括否定应答码。
在UDS协议的定义中,错误应答响应的否定应答码可如表4所示:
表4
Figure BDA0002948894120000251
通过表4可知,UDS协议定义了多种否定应答码的含义,其中,如果第一终端装置传输的请求的长度不正确或格式无效,则第二终端装置反馈的错误应答响应中包括否定应答码“0x13”;如果第一终端装置传输的请求的条件不正确,则第二终端装置反馈的错误应答响应中包括否定应答码“0x22”;如果第一终端装置传输的请求超过限值,则第二终端装置反馈的错误应答响应中包括否定应答码“0x31”;如果第一终端装置传输的请求的安全访问被拒绝,则第二终端装置反馈的错误应答响应中包括否定应答码“0x33”;如果第一终端装置传输的请求标识需要上传或下载文件,但是第二终端装置不接受第一终端装置的上传和下载,则第二终端装置反馈的错误应答响应中包括否定应答码“0x70”。
本申请实施例可设置未被当前的UDS协议定义的字节值作为错误应答响应的否定应答码。例如,参见表4,可设置错误应答响应的否定应答码为“0xF0”。这种情况下,如果第二终端装置确定自身不支持通过并行传输方式向第一终端装置传输第一文件,在接收到所述第二请求之后,所述第二终端装置向第一终端装置传输错误应答响应,该错误应答响应中包括否定应答码“0xF0”。相应的,第一终端装置在接收到该错误应答响应之后,可基于该错误应答响应中的否定应答码,确定第二终端装置不支持并行方式传输第一文件,所述第一终端装置可选择采用串行传输的方式,从所述第二终端装置中下载所述第一文件。
当然,所述错误应答响应的否定应答码还可为其他未被UDS协议定义的字节值,本申请实施例对此不作限定。
步骤S23、所述第一终端装置接收所述第二终端装置发送的第二响应,并且,通过所述第二响应,所述第一终端装置确定所述一个或多个第一文件的标识。
步骤S24、所述第一终端装置向第二终端装置传输第一请求,所述第一请求用于请求获取所述一个或多个第一文件。
在所述第一请求中,包括所述第一文件的相关信息。这种情况下,所述第二终端装置在接收到所述第一请求之后,可基于所述第一文件的相关信息,确定需要向第一终端装置传输的第一文件。
在UDS协议的定义下,所述第一请求的服务标识符通常为0x36。以下通过表5提供一种服务标识符为0x36的信息的格式:
表5
Figure BDA0002948894120000261
其中,表5表示第一请求可包括多个字段,分别为:服务标识符、块序列计数(即block sequence counter)和文件标识(即file id)等,块序列计数字段和文件标识字段均位于第二响应中的参数部分。
在表5中,第一列表示第一请求中各个字段占用的字节的位置,具体的,可认为服务标识符这一字段占用第一个字节,块序列计数这一字段占用第二个字节,文件标识这一字段占用四个字节,这四个字节分别为第三个字节至第六个字节。
另外,表5还表示在UDS协议中,服务标识符这一字段在第一请求中是必选的,通常占用1个字节,并且所述第一请求的服务标识符为0x36,这种情况下,所述第一请求也可称为0x36信息。
块序列计数这一字段在第二请求中也是必选的,通常占用1个字节。这一字段的取值范围为0x00-0xFF,在第二请求中,该字段的字节值为0x00。
在第一请求中,通常包括第一文件的相关信息,以便所述第二终端装置根据所述第一文件的相关信息,确定所述第一终端装置需要获取的文件。在一种可行的设计中,所述第一请求中包括的第一文件的相关信息包括所述第一文件的标识。相应的,在0x36信息中还可包括第一文件的标识,所述标识加载在所述0x36信息中的文件标识字段。这种情况下,在接收到第一请求之后,第二终端装置可根据这一字段,确定第一终端装置需要获取的第一文件。
其中,文件标识字段为UDS协议中自定义的字段,也就是说,这一字段为对目前的UDS协议进行扩展后,所得到的字段。在一种可行的设计中,所述文件标识字段中的字节值的取值范围可为0x00-0xFF。
如果所述第一请求用于请求获取多个第一文件,则所述第一请求中可包括多个文件标识字段。
步骤S25、所述第二终端装置向所述第一终端装置传输对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识。
所述第二终端装置在接收到所述第一请求之后,根据所述第一请求的指示,确定所述第一终端装置需要获取的一个或多个第一文件。然后,所述第二终端装置可对所述第一文件进行拆分,将所述一个或多个第一文件拆分成相应的数据块。所述第二终端装置再向第一终端装置传输第一响应,所述第一响应中包括所述一个或多个第一文件中的数据块和所述标识。
其中,如果第一请求指示所述第一终端装置需要获取多个第一文件,则所述第二终端装置所生成的第一响应中可包括多个第一文件的数据块,并包括各个数据块分别对应的第一文件的标识。或者,所述第二终端装置可生成多个第一响应,各个第一响应中分别包括一个或多个第一文件的数据块,以及包括所述数据块对应的第一文件的标识。
在UDS协议的定义下,如果所述第一请求的服务标识符为0x36,则所述第一响应的响应服务标识符通常为0x76。以下通过表6提供一种响应服务标识符为0x76的信息的格式:
表6
Figure BDA0002948894120000271
其中,表6表示第一响应可包括多个字段,分别为:响应服务标识符、块序列计数、文件标识和传输的数据块(即transfer request parameter record)等,块序列计数、文件标识和数据块字段均位于第二响应中的参数部分。
在表6中,第一列表示第一响应中各个字段占用的字节的位置,具体的,可认为响应服务标识符这一字段占用第一个字节,块序列计数这一字段占用第二个字节,文件标识这一字段占用四个字节,这四个字节为第三个字节至第六个字节,数据块这一字段占用“n-6”个字段,分别为第七个字节至第n个字节。
另外,表6还表示在UDS协议中,响应服务标识符这一字段在第一请求中是必选的,通常占用1个字节,并且所述第一响应的响应服务标识符为0x76,这种情况下,所述第一响应也可称为0x76信息。
块序列计数这一字段在第二响应中也是必选的,通常占用1个字节,并且这一字段的取值范围为0x00-0xFF。第二终端装置在向第一终端装置传输第一文件时,将第一文件拆分为一个或多个数据块,并通过第一响应向第一终端装置传输数据块。块序列计数这一字段则用于指示所述第一响应包括的数据块的块序列计数。
另外,在0x76信息中,还包括文件标识字段,用于加载第一文件的标识。
在0x76信息中,还包括数据块字段,用于加载第一文件中的数据块。
其中,如果所述第一响应中包括多个第一文件的数据块,则所述第一响应可包括多个文件标识字段和数据块字段。
这种情况下,第一终端装置在接收到所述第一响应之后,可根据所述数据块字段,获取数据块,并根据文件标识字段,确定所述数据块所属的文件。进一步的,根据块序列计数字段,第一终端装置可确定所述数据块在第一文件中的序列计数,从而可根据该序列计数,对接收到的各个数据块进行拼接,以获取完整的第一文件。
通过上述步骤,第一终端装置可获取第一文件中的数据块。并且,由于所述第一响应包括所述第一文件的标识,通过所述标识,所述第一终端装置可确定所述数据块所属的文件,实现对接收到的数据块的区分。
另外,如果第二终端装置将所述第一文件拆分为两个以上的数据块,则第一终端装置与所述第二终端装置之间可重复步骤S24和步骤S25的操作,从而使第一终端装置获取所述第二终端装置传输的所述两个以上的数据块,并通过拼接所述两个以上的数据块,获取完整的第一文件。
在本申请实施例中,第一终端装置还可根据第二响应中包括的第一文件的大小,以及自身接收到的数据块的大小,确定自身是否接收到完整的第一文件。这种情况下,如果所述第一终端装置接收到完整的第一文件,还可包括以下步骤:
步骤S26、所述第一终端装置根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
另外,所述第一终端装置在根据接收到的所述一个或多个数据块的大小和所述第二响应中包括的所述一个或多个数据块对应的第一文件的大小,确定至少一个第一文件传输完成之后,所述第一终端装置传输第一目标文件对应的第一终止信息。
其中,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
在UDS协议的定义下,所述第一终止信息的服务标识符通常为0x37。以下通过表7提供一种服务标识符为0x37的信息的格式:
表7
Figure BDA0002948894120000281
在表7中,第一列表示第一终止信息中各个字段占用的字节的位置,具体的,可认为服务标识符这一字段占用第一个字节,文件标识这一字段占用四个字节,这四个字节分别为第二个字节至第五个字节。
参见上表,第一终止信息中的服务标识符通常为0x37,并且,在第一终止信息中,通常还包括所述第一目标文件的标识,以便第二终端装置确定需要终止所述第一目标文件的传输。
另外,如果所述第一目标文件包括多个第一文件,所述第一终止信息可包括多个文件标识字段。
步骤S27、所述第二终端装置在接收到所述第一终止信息之后,向所述第一终端装置传输所述第一终止信息对应的终止应答响应,并释放所述第一目标文件的标识。
所述第二终端装置在释放所述标识之后,还可将所述标识分配至其他需要传输的第一文件。
在UDS协议的定义下,所述第一终止信息对应的终止应答响应的响应服务标识符通常为0x77。以下通过表8提供一种服务标识符为0x77的信息的格式:
表8
Figure BDA0002948894120000291
在表8所示的示例中,所述终止应答响应的响应服务标识符通常为0x77,并且,在所述终止应答响应中,通常还包括所述第一文件的标识,以指示终止所述第一文件的传输。
通过上述步骤,第一终端装置可通过UDS协议,获取到第二终端装置内的第一文件。
进一步的,在本申请实施例中,第一终端装置支持通过并行传输的方式获取第一文件,并且,第一终端装置在获取第一文件的过程中,还可获取其他文件。这种情况下,在本申请实施例中,还包括以下步骤:
第一步,所述第一终端装置确定一个或多个第二文件的标识。
在本申请实施例中,可参照步骤S21至步骤S22的操作,确定所述第二文件的标识。这种情况下,所述第一终端装置可向所述第二终端装置传输所述第二文件对应的请求,该请求可包括所述一个或多个第二文件的并行传输指示信息。在接收到这一请求之后,所述第二终端装置向第一终端装置传输该请求对应的响应,在该响应中,包括所述一个或多个第二文件的标识,从而使所述第一终端装置根据所述第二终端装置传输的响应,确定所述一个或多个第二文件的标识。
进一步的,在这种情况下,所述第二终端装置向第一终端装置传输的响应中,还可以包括所述第二文件的大小。
其中,在一种可行的实现方式中,所述第一终端装置向所述第二终端装置传输的所述第二文件对应的请求,为服务标识符为0x38的请求。相应的,所述第二终端装置传输的该请求对应的响应的响应服务标识符为0x78。
第二步,所述第一终端装置在获取任意一个完整的所述第一文件之前,向所述第二终端装置传输第三请求,所述第三请求用于请求获取所述一个或多个第二文件。
在所述第三请求中,包括所述一个或多个第二文件的相关信息,以便所述第二终端装置根据所述第三请求,确定所述第一终端装置需要获取的文件。其中,所述第二文件的相关信息可包括所述第二文件的名称和所述第二文件在所述第二终端装置的存储路径,或者,所述第二文件的相关信息可包括所述标识,本申请实施例对此不作限定。
其中,所述第二终端装置在接收到所述第三请求之后,确定所述一个或多个第二文件对应的一个或多个数据块,据此生成所述第三请求对应的第三响应,并向所述第一终端装置传输所述第三请求对应的第三响应。
在现有技术中,第一终端装置只能通过串行传输的方式获取文件,这种情况下,第一终端装置只能在结束第一文件的获取之后,再传输获取其他文件的请求。而在本申请实施例中,所述第一终端装置在获取完整的第一文件之前,即可传输第三请求,以便请求获取第二文件。这种情况下,所述第一终端装置可在获取第一文件的过程中,同时获取第二文件,即实现第一文件和第二文件的并行传输。
第三步,所述第一终端装置接收所述第二终端装置发送的所述第三请求对应的第三响应,所述第三响应包括所述一个或多个第二文件中的数据块和所述标识。
第四步,所述第一终端装置根据所述一个或多个数据块分别对应的第二文件的标识,将所述一个或多个数据块保存到对应的第二文件中。
通过上述步骤,第一终端装置可在获取第一文件的数据块的过程中,获取第二文件中的数据块。也就是说,所述第一终端装置可通过并行传输的方式,获取第二终端装置内的至少两个文件,提高第一终端装置获取文件的效率。
并且,这一过程中,第一终端装置可根据响应中包括的文件标识,确定各个数据块所属的文件,避免数据块的混淆。例如,所述第一终端装置接收到第一响应和第三响应,则所述第一终端装置可根据第一响应中包括的标识,确定所述第一响应中包括的数据块属于所述第一文件,并且,还可根据第三响应中包括的标识,确定所述第三响应中包括的数据块属于所述第二文件。
进一步的,如果所述第一终端装置根据第二终端装置传输的响应确定所述第二文件的标识,所述第二终端装置传输的响应中还可包括所述第二文件的大小。这种情况下,所述第一终端装置可根据自身接收到的数据块的大小,以及所述第二文件的大小,确定是否接收到完整的第二文件,并在确定自身接收到完整的第二文件之后,传输第二终止信息,所述第二终止信息用于指示终止传输所述第二文件。
所述第二终端装置在接收到所述第二终止信息之后,可传输所述第二终止信息对应的终止应答响应,并释放所述标识,从而结束所述第二文件的传输过程。
另外,在本申请实施例中,所述第一终端装置往往还需要获取第三终端装置中的第三文件,而所述第三终端装置不支持并行传输。这种情况下,还包括以下步骤:
第一步,所述第一终端装置所述第一终端装置向第三终端装置传输第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息。
其中,在UDS协议的定义下,所述第四请求通常为服务标识符为0x38的UDS信息,并且,在该第四请求中,可包括多个文件路径和文件名称长度字段,分别用于指示其中一个第三文件的相关信息。示例性的,所述第四请求的格式可如表1所示。
第二步,所述第三终端装置在接收到所述第四请求之后,向所述第一终端装置传输对所述第四请求的错误应答响应,所述错误应答响应用于指示所述第三终端装置不支持并行传输。
所述第三终端装置不支持并行传输,则在接收到所述第四请求之后,所述第三终端装置可传输错误应答响应。其中,在UDS协议的定义下,所述错误应答响应的响应服务标识符为0x78,并且,在所述错误应答响应中包括否定应答码。示例性的,所述错误应答响应中包括的否定应答码可如表4所示。
在接收到所述错误应答响应之后,第一终端装置可确定所述第三终端装置不支持并行传输,这种情况下,所述第一终端装置与第三终端装置之间通过串行传输的方式,进行文件的传输。示例性的,所述第一终端装置与第三终端装置之间可通过图4所指示的流程,进行文件传输。
为了明确本申请实施例中,第一终端装置与第二终端装置之间进行文件传输的过程,以下公开一个实施例,该实施例所提供的文件传输方法中的第一终端装置可兼容串行传输方式和并行传输方式,并且第二终端装置为可支持并行传输的终端装置,或者,所述第二终端装置为只支持串行传输的终端装置。并且,以下还公开图10,参见图10所示的工作流程示意图,在本申请实施例公开的文件传输方法中,包括以下步骤:
步骤S31、第一终端装置生成第二请求,并向所述第二终端装置传输所述第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息。
其中,所述第二请求通常用于指示所述第一终端装置支持通过并行传输的方式获取所述一个或多个第一文件,并用于请求获取所述一个或多个第一文件的标识。
在本申请实施例提供的方案中,所述第一终端装置获取文件的方式可包括串行传输方式和并行传输方式。在并行传输方式下,所述第一终端装置可同时获取至少两个文件。如果所述第一终端装置确定自身支持通过并行传输的方式获取文件,并且需要获取所述第一文件时,所述第一终端装置可传输所述第二请求。
步骤S32、所述第二终端装置接收所述第一终端装置传输的第二请求,并确定自身是否支持通过并行传输方式向所述第一终端装置传输所述一个或多个第一文件。若是,执行步骤S33的操作,若否,则执行步骤S34的操作。
步骤S33、如果所述第二终端装置支持通过并行传输方式向所述第一终端装置传输所述至少第一文件,则所述第二终端装置生成所述第二请求对应的第二响应,并且,所述第二终端装置向所述第一终端装置传输所述第二响应。
其中,所述第二响应包括所述一个或多个第一文件的标识,并且,所述第二响应还可包括所述一个或多个第一文件的大小。
步骤S34、如果所述第二终端装置不支持通过并行方式向所述第一终端装置传输所述第一文件,则生成错误应答响应,并向第一终端装置传输所述错误应答响应。
其中,所述错误应答响应用于指示所述第二终端装置不支持通过并行传输方式向所述第一终端装置传输所述第一文件。
步骤S35、所述第一终端装置接收所述第二终端装置传输的响应。
其中,所述第二终端装置传输的响应包括所述第二请求对应的第二响应,或者包括所述错误应答响应。
步骤S36、所述第一终端装置根据接收到的所述第二终端装置传输的响应,确定自身是否可通过并行传输的方式获取第二终端装置内的一个或多个第一文件。若否,执行步骤S37的操作,若是,执行步骤S38的操作。
其中,如果所述第一终端装置接收到的所述响应为所述第二响应,则所述第一终端装置确定所述第二终端装置支持通过并行传输方式向所述第一终端装置传输所述至少第一文件,即所述第一终端装置可通过并行传输的方式获取第二终端装置内的所述第一文件。
另外,如果所述第一终端装置接收到的所述响应为所述错误应答响应,则所述第一终端装置确定所述第二终端装置不支持通过并行传输方式向所述第一终端装置传输所述第一文件。相应的,所述第一终端装置不可通过并行传输的方式获取第二终端装置内的所述第一文件。
步骤S37、所述第一终端装置在确定所述第二终端装置不支持通过并行传输方式向所述第一终端装置传输所述第一文件后,可传输第五请求。
其中,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第一文件。
这种情况下,第一终端装置和第二终端装置之间,可通过串行传输技术进行通信,即所述第一终端装置通过串行传输的方式,获取所述第一文件。
另外,在传输所述第五请求之前,所述第一终端装置还可传输所述错误应答响应对应的应答信息。相应的,所述第二终端装置还可接收所述错误应答响应对应的应答信息,根据所述应答信息,所述第二终端装置确定所述第一终端装置已经知悉自身不支持通过并行传输的方式传输所述第一文件。
步骤S38、所述第一终端装置在确定所述第二终端装置支持通过并行传输方式向所述第一终端装置传输所述第一文件之后,生成第一请求并传输。
其中,所述第一请求用于请求获取所述一个或多个第一文件。所述第一请求中,可包括所述一个或多个第一文件的相关信息,在一种可行的实现方式中,所述一个或多个第一文件的相关信息包括所述一个或多个第一文件的标识。
步骤S39、所述第二终端装置在接收到所述第一请求之后,生成并传输所述第一请求对应的第一响应。
其中,所述第一响应包括所述一个或多个第一文件中的数据块和所述标识。
这一步骤中,所述第二终端装置根据所述第一请求中包括的所述一个或多个第一文件的相关信息,确定所述第一终端装置需要获取的一个或多个第一文件,再将所述一个或多个第一文件拆分成相应的数据块,据此生成第一响应,并向所述第一终端装置传输所述第一响应。
步骤S40、所述第一终端装置接收所述第一响应,根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
步骤S41、所述第一终端装置根据所述第二响应中包括的所述一个或多个第一文件的大小,以及自身接收到的数据块的大小,确定是否接收到完整的第一文件。若否,返回执行步骤S38的操作。若是,执行步骤S42的操作。
也就是说,在本申请实施例提供的方案中,如果所述第一终端装置在确定自身未接收到完整的第一文件时,可再次生成第一请求,以请求第二终端装置继续向所述第一终端装置传输数据块。
步骤S42、所述第一终端装置确定至少一个第一文件传输完成之后,传输第一目标文件对应的第一终止信息。
其中,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
步骤S43、所述第二终端装置在接收到所述第一终止信息之后,生成所述第一终止信息对应的终止应答响应并传输。
另外,在接收到所述第一终止信息之后,第二终端装置还可释放所述第一目标文件的标识。这种情况下,所述第二终端装置还可将释放后的标识分配给其他文件。
步骤S44、所述第一终端装置接收所述第一终止信息对应的终止应答响应,结束第一目标文件的传输。
另外,所述第一终端装置在获取所述终止应答响应之后,还可向所述第二终端装置传输相应的响应。
通过上述步骤,第一终端装置可获取所述第二终端装置内的第一文件。另外,在这一示例中,第一终端装置通过并行传输的方式获取所述第一文件,这种情况下,所述第一终端装置还可在获取所述第一文件的过程中,获取其他的文件。
其中,如果所述第一终端装置还需获取第二文件,则在本申请实施例中,还可包括以下步骤:
步骤S45、所述第一终端装置向所述第二终端装置传输第三请求,所述第三请求用于请求获取一个或多个第二文件。
这种情况下,所述第一终端装置与第二终端装置之间,还可参照上述流程进行信息交互。
其中,所述第一终端装置可在第一文件传输的过程中传输所述第三请求,从而使所述第一终端装置在获取所述第一文件的过程中,还能获取所述一个或多个第二文件,实现所述一个或多个第一文件和所述一个或多个第二文件的并行传输。
下述为本申请的装置实施例,可以用于执行本申请的方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请的方法实施例。
作为对上述各实施例的实现,本申请实施例公开一种文件传输装置。该文件传输装置可应用于第一终端装置,所述第一终端装置可为汽车诊断仪和车载终端中,需要获取第一文件的终端装置。参见图11所示的结构示意图,本申请实施例公开的文件传输装置包括:处理器1110和收发接口1120。
其中,所述收发接口1120用于向第二终端装置传输第一请求,并接收所述第二终端装置对所述第一请求的第一响应,所述第一请求用于请求获取一个或多个第一文件,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述处理器1110用于根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
其中,所述一个或多个第一文件通常为存储在所述第二终端装置中的文件,这种情况下,所述第一终端装置通过所述第一请求,向所述第二终端装置请求获取所述一个或多个第一文件。
所述第二终端装置在接收到所述第一请求之后,可根据所述第一请求,确定所述第一终端装置希望获取的一个或多个第一文件,并将各个第一文件拆分成一个或多个数据块,然后所述第二终端装置向第一终端装置传输第一响应,以使所述第一终端装置获取所述一个或多个第一文件中的数据块,以及将各个数据块分别保存到对应的第一文件中。
通过本申请实施例提供的方案,第一终端装置可通过第一响应,同时获取一个或多个第一文件包括的数据块,并可根据第一响应中包括的标识,确定获取到的各个数据块所属的文件。其中,如果所述第一终端装置通过所述第一请求向所述第二终端装置请求多个第一文件,则所述第一终端装置可通过第一响应获取多个数据块,即第一终端装置可通过并行传输的方式获取各个第一文件。
因此,与现有技术相比,本申请实施例提供的方案中,第一终端装置获取文件的效率提高。并且,由于在本申请实施例中,第一终端装置可同时获取两个以上文件,因此还可提高网络带宽的利用率。
进一步的,所述第一终端装置可为汽车诊断仪,并且汽车诊断仪需要通过获取到的文件实现汽车的诊断。由于本申请的方案能够提高第一终端装置获取文件的效率,因此,可加快汽车诊断仪获取文件的速度,相应的能够汽车诊断仪的诊断效率,并且减少需要获取汽车诊断结果的用户的等待时间。
并且,由于汽车诊断仪的诊断效率提高,汽车诊断仪与车载终端构成的诊断系统的诊断效率相应提高。而且,由于本申请实施例提供的方案使汽车诊断仪的诊断效率提高,能够较快确定车辆的故障原因,以便尽快完成车辆故障的修复,因此,减少了车辆的故障时间,进一步能够提高用户对车辆的使用体验。
进一步的,在本申请实施例提供的方案中,所述收发接口1120还用于,向所述第二终端装置传输第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述收发接口1120还用于,接收所述第二终端装置对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
在本申请实施例提供的方案中,第一终端装置根据数据块对应的第一文件的标识,确定所述数据块所属的第一文件。这种情况下,依据上述的方案,可确定所述第一文件的标识。
进一步的,所述第二响应还包括所述一个或多个第一文件的大小。
进一步的,所述收发接口还用于,在所述处理器根据接收到的所述一个或多个数据块的大小和所述第二响应中包括的所述一个或多个数据块对应的第一文件的大小,确定至少一个第一文件传输完成之后,传输第一目标文件对应的第一终止信息,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
通过上述方式,可完成第一目标文件的传输。
进一步的,所述收发接口还用于,向所述第二终端装置传输第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述收发接口还用于,接收所述第二终端装置对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识;
所述处理器还用于,根据所述一个或多个数据块分别对应的第二文件的标识,将所述一个或多个数据块保存到对应的第二文件中。
通过上述方案,第一终端装置可通过第三请求,请求获取一个或多个第二文件,如果所述第二文件包括多个,则所述第一终端装置可同时获取多个第二文件,即通过并行传输方式获取多个第二文件,从而提高第一终端装置与第二终端装置之间传输文件的效率。
进一步的,在本申请实施例提供的方案中,第一终端装置可在获取第一文件的过程中,还获取第二文件。并且,这一方案中,第一终端装置即使同时获取到一个或多个第一文件的数据块以及一个或多个第二文件的数据块,也可通过数据块对应的标识,确定各个数据块所属的文件,不会造成数据块的混淆,实现第一文件和第二文件的并行传输,进一步提高第一终端装置获取文件的效率。
进一步的,所述收发接口还用于,向第三终端装置传输第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述收发接口还用于,接收所述第三终端装置对所述第四请求的错误应答响应,并传输第五请求,所述错误应答响应用于指示所述第三终端装置不支持并行传输,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
通过上述方案,能够在第三终端装置不支持并行传输的情况下,仍然使第一终端装置获取到第三终端装置内的文件,使第一终端装置的文件传输方式兼容串行传输和并行传输两种方式,从而使第一终端装置应用于较多样化的场景中。
本申请实施例公开一种文件传输装置。该文件传输装置可应用于第二终端装置,所述第二终端装置可为汽车诊断仪和车载终端中,存储有第一文件的终端装置。
其中,所述文件传输装置包括:
处理器和收发接口;
所述收发接口用于接收第一终端装置传输的第一请求,所述第一请求用于请求获取一个或多个第一文件;
所述处理器用于生成对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述收发接口还用于,向所述第一终端装置发送对所述第一请求的第一响应。
进一步的,在本申请实施例提供的方案中,所述收发接口还用于,接收所述第一终端装置传输的第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述收发接口还用于,向所述第一终端装置发送对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
进一步的,在本申请实施例提供的方案中,所述第二响应还包括所述一个或多个第一文件的大小。
进一步的,所述收发接口还用于,接收所述第一终端装置传输的第一终止信息,所述第一终止信息用于指示终止传输第一目标文件,所述第一目标文件为完成传输的第一文件;
所述收发接口还用于,向所述第一终端装置发送对所述第一终止信息的终止应答响应,并释放所述第一目标文件的标识。
进一步的,所述收发接口还用于,接收所述第一终端装置传输的第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述收发接口还用于,向所述第一终端装置发送对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识。
本申请实施例公开一种文件传输装置。该文件传输装置可应用于第三终端装置,所述第二终端装置中存储有第三文件。
其中,所述文件传输装置包括:
处理器和收发接口;
所述收发接口用于接收第一终端装置传输的第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述处理器用于生成对所述第四请求的错误应答响应,所述错误应答响应用于指示所述第三终端装置不支持并行传输
所述收发接口还用于,接收所述第一终端装置传输的第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
相应的,与上述的方法相对应的,本申请实施例还公开一种终端装置。参见图12所示的结构示意图,所述终端装置包括:
至少一个处理器1101和存储器,
其中,所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行图5和图6对应的实施例中的全部或部分步骤。
进一步的,该终端装置还可以包括:收发器1102和总线1103,所述存储器包括随机存取存储器1104和只读存储器1105。
其中,处理器通过总线分别耦接收发器、随机存取存储器以及只读存储器。其中,当需要运行该终端装置时,通过固化在只读存储器中的基本输入输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导该终端装置进入正常运行状态。在该终端装置进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,从而使所述终端装置执行图5和图6对应的实施例中的全部或部分步骤。
本发明实施例的装置可对应于上述图5和图6对应的的实施例中的文件传输装置,并且,该装置中的处理器等可以实现图5和图6对应的的实施例中的文件传输装置所具有的功能或者所实施的各种步骤和方法,为了简洁,在此不再赘述。
相应的,与上述的方法相对应的,本申请实施例还公开一种终端装置。所述终端装置包括:
至少一个处理器和存储器,
其中,所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行图7对应的实施例中的全部或部分步骤。
进一步的,该终端装置还可以包括:收发器和总线,所述存储器包括随机存取存储器和只读存储器。
其中,处理器通过总线分别耦接收发器、随机存取存储器以及只读存储器。其中,当需要运行该终端装置时,通过固化在只读存储器中的基本输入输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导该终端装置进入正常运行状态。在该终端装置进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,从而使所述终端装置执行图7对应的实施例中的全部或部分步骤。
本发明实施例的装置可对应于上述图7所对应的实施例中的文件传输装置,并且,该装置中的处理器等可以实现图7所对应的实施例中的文件传输装置所具有的功能或者所实施的各种步骤和方法,为了简洁,在此不再赘述。
相应的,与上述的方法相对应的,本申请实施例还公开一种终端装置。所述终端装置包括:
至少一个处理器和存储器,
其中,所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行图8对应的实施例中的全部或部分步骤。
进一步的,该终端装置还可以包括:收发器和总线,所述存储器包括随机存取存储器和只读存储器。
其中,处理器通过总线分别耦接收发器、随机存取存储器以及只读存储器。其中,当需要运行该终端装置时,通过固化在只读存储器中的基本输入输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导该终端装置进入正常运行状态。在该终端装置进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,从而使所述终端装置执行图8对应的实施例中的全部或部分步骤。
本发明实施例的装置可对应于上述图8所对应的实施例中的文件传输装置,并且,该装置中的处理器等可以实现图8所对应的实施例中的文件传输装置所具有的功能或者所实施的各种步骤和方法,为了简洁,在此不再赘述。
本申请实施例提供一种文件传输系统。参见图13所述的示意图,所述文件传输系统包括:第一终端装置100和第二终端装置200。
其中,所述第一终端装置100中包括文件传输装置,并且,所述文件传输装置可对应于上述图5和图6所对应的实施例中的文件传输装置,并且,该装置中的处理器等可以实现图5和图6所对应的实施例中的文件传输装置所具有的功能或者所实施的各种步骤和方法,为了简洁,在此不再赘述。
所述第二终端装置200中包括文件传输装置,并且,所述文件传输装置可对应于上述图7所对应的实施例中的文件传输装置,并且,该装置中的处理器等可以实现图7所对应的实施例中的文件传输装置所具有的功能或者所实施的各种步骤和方法,为了简洁,在此不再赘述。
在本申请实施例提供的文件传输系统中,第一终端装置100可通过第二终端装置200传输的第一响应,获取一个或多个数据块。也就是说,所述第一终端装置100可通过并行传输的方式,获取所述第二终端装置200内的一个或多个第一文件。
因此,与现有技术相比,本申请实施例提供的方案中,第一终端装置获取文件的效率提高。并且,由于在本申请实施例中,第一终端装置可同时获取两个以上文件,因此还可提高网络带宽的利用率。
进一步的,所述第一终端装置可为汽车诊断仪,并且汽车诊断仪需要通过获取到的文件实现汽车的诊断。由于本申请的方案能够提高第一终端装置获取文件的效率,因此,可加快汽车诊断仪获取文件的速度,相应的能够汽车诊断仪的诊断效率,并且减少需要获取汽车诊断结果的用户的等待时间。
并且,由于汽车诊断仪的诊断效率提高,汽车诊断仪与车载终端构成的诊断系统的诊断效率相应提高。而且,由于本申请实施例提供的方案使汽车诊断仪的诊断效率提高,能够较快确定车辆的故障原因,以便尽快完成车辆故障的修复,因此,减少了车辆的故障时间,进一步能够提高用户对车辆的使用体验。
进一步的,所述文件传输系统还包括第三终端装置300。所述第二终端装置200中包括文件传输装置,并且,所述文件传输装置可对应于上述图8所对应的实施例中的文件传输装置,并且,该装置中的处理器等可以实现图8所对应的实施例中的文件传输装置所具有的功能或者所实施的各种步骤和方法,为了简洁,在此不再赘述。
在本申请实施例中,所述第三终端装置300不支持并行传输方式。这种情况下,所述第一终端装置100与第三终端装置300之间,可通过串行传输方式实现文件的传输。
因此,在本申请实施例提供的文件传输系统中,如果存在不支持并行传输方式的第三终端装置,仍然能够使第一终端装置获取第三终端装置内的文件。并且,第一终端装置的文件传输方式兼容串行传输和并行传输两种方式,从而使第一终端装置应用于较多样化的场景中。
另外,在图13中,所述第一终端装置100为汽车诊断仪的形式,而第二终端装置200和第三终端装置300为车载终端的形式,这种情况下,所述汽车诊断仪可获取车载终端内的文件。
如果车载终端需要获取汽车诊断仪内的文件,则第一终端装置100为车载终端,而第二终端装置200和第三终端装置300为汽车诊断仪。
具体实现中,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括指令。其中,设置在任意设备中计算机可读介质其在计算机上运行时,可实施包括图5和图6对应的实施例中的全部或部分步骤。所述计算机可读介质的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
具体实现中,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括指令。其中,设置在任意设备中计算机可读介质其在计算机上运行时,可实施包括图7对应的实施例中的全部或部分步骤。所述计算机可读介质的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:randomaccess memory,简称:RAM)等。
具体实现中,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括指令。其中,设置在任意设备中计算机可读介质其在计算机上运行时,可实施包括图8对应的实施例中的全部或部分步骤。所述计算机可读介质的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:randomaccess memory,简称:RAM)等。
另外,本申请另一实施例还公开一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备可实施包括图5和图6对应的实施例中的全部或部分步骤。
相应的,本申请另一实施例还公开一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备可实施包括图7对应的实施例中的全部或部分步骤。
另外,本申请另一实施例还公开一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备可实施包括图8对应的实施例中的全部或部分步骤。
本申请实施例中所描述的各种说明性的逻辑单元和电路可以通过通用处理器,数字信息处理器,专用集成电路(ASIC),现场可编程门阵列(FPGA)或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信息处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信息处理器核,或任何其它类似的配置来实现。
本申请实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件单元、或者这两者的结合。软件单元可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于UE中。可选地,处理器和存储媒介也可以设置于UE中的不同的部件中。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本说明书的各个实施例之间相同相似的部分互相参见即可,每个实施例重点介绍的都是与其他实施例不同之处。尤其,对于装置和系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例部分的说明即可。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于本申请公开的道路约束确定装置的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。

Claims (32)

1.一种文件传输方法,其特征在于,包括:
第一终端装置向第二终端装置传输第一请求,所述第一请求用于请求获取一个或多个第一文件;
所述第一终端装置接收所述第二终端装置对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述第一终端装置根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述第一终端装置向所述第二终端装置传输第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述第一终端装置接收所述第二终端装置对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
3.根据权利要求2所述的方法,其特征在于,
所述第二响应还包括所述一个或多个第一文件的大小。
4.根据权利要求3所述的方法,其特征在于,还包括:
所述第一终端装置在根据接收到的所述一个或多个数据块的大小和所述第二响应中包括的所述一个或多个数据块对应的第一文件的大小,确定至少一个第一文件传输完成之后,所述第一终端装置传输第一目标文件对应的第一终止信息,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
5.根据权利要求1至4任一项所述的方法,其特征在于,还包括:
所述第一终端装置向所述第二终端装置传输第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述第一终端装置接收所述第二终端装置对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识;
所述第一终端装置根据所述一个或多个数据块分别对应的第二文件的标识,将所述一个或多个数据块保存到对应的第二文件中。
6.根据权利要求1至4任一项所述的方法,其特征在于,还包括:
所述第一终端装置向第三终端装置传输第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述第一终端装置接收所述第三终端装置对所述第四请求的错误应答响应,所述错误应答响应用于指示所述第三终端装置不支持并行传输;
所述第一终端装置传输第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
7.一种文件传输方法,其特征在于,包括:
第二终端装置接收第一终端装置传输的第一请求,所述第一请求用于请求获取一个或多个第一文件;
所述第二终端装置向所述第一终端装置发送对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识。
8.根据权利要求7所述的方法,其特征在于,还包括:
所述第二终端装置接收所述第一终端装置传输的第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述第二终端装置向所述第一终端装置发送对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
9.根据权利要求8所述的方法,其特征在于,
所述第二响应还包括所述一个或多个第一文件的大小。
10.根据权利要求7至9任一项所述的方法,其特征在于,还包括:
所述第二终端装置接收所述第一终端装置传输的第一终止信息,所述第一终止信息用于指示终止传输第一目标文件,所述第一目标文件为完成传输的第一文件;
所述第二终端装置向所述第一终端装置发送对所述第一终止信息的终止应答响应,并释放所述第一目标文件的标识。
11.根据权利要求7至9任一项所述的方法,其特征在于,还包括:
所述第二终端装置接收所述第一终端装置传输的第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述第二终端装置向所述第一终端装置发送对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识。
12.一种文件传输方法,其特征在于,包括:
第三终端装置在接收第一终端装置传输的第四请求之后,向所述第一终端装置发送对所述第四请求的错误应答响应,所述第四请求包括一个或多个第三文件的并行传输指示信息,所述错误应答响应用于指示所述第三终端装置不支持并行传输;
所述第三终端装置接收所述第一终端装置传输的第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
13.一种文件传输装置,其特征在于,包括:
处理器和收发接口;
所述收发接口用于向第二终端装置传输第一请求,并接收所述第二终端装置对所述第一请求的第一响应,所述第一请求用于请求获取一个或多个第一文件,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述处理器用于根据所述一个或多个数据块分别对应的第一文件的标识,将所述一个或多个数据块保存到对应的第一文件中。
14.根据权利要求13所述的装置,其特征在于,
所述收发接口还用于,向所述第二终端装置传输第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述收发接口还用于,接收所述第二终端装置对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
15.根据权利要求14所述的装置,其特征在于,
所述第二响应还包括所述一个或多个第一文件的大小。
16.根据权利要求15所述的装置,其特征在于,
所述收发接口还用于,在所述处理器根据接收到的所述一个或多个数据块的大小和所述第二响应中包括的所述一个或多个数据块对应的第一文件的大小,确定至少一个第一文件传输完成之后,传输第一目标文件对应的第一终止信息,所述第一目标文件为完成传输的所述至少一个第一文件,所述第一终止信息用于指示终止传输所述第一目标文件。
17.根据权利要求13至16任一项所述的装置,其特征在于,
所述收发接口还用于,向所述第二终端装置传输第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述收发接口还用于,接收所述第二终端装置对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识;
所述处理器还用于,根据所述一个或多个数据块分别对应的第二文件的标识,将所述一个或多个数据块保存到对应的第二文件中。
18.根据权利要求13至16任一项所述的装置,其特征在于,
所述收发接口还用于,向第三终端装置传输第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述收发接口还用于,接收所述第三终端装置对所述第四请求的错误应答响应,并传输第五请求,所述错误应答响应用于指示所述第三终端装置不支持并行传输,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
19.一种文件传输装置,其特征在于,包括:
处理器和收发接口;
所述收发接口用于接收第一终端装置传输的第一请求,所述第一请求用于请求获取一个或多个第一文件;
所述处理器用于生成对所述第一请求的第一响应,所述第一响应包括一个或多个数据块和所述一个或多个数据块分别对应的第一文件的标识;
所述收发接口还用于,向所述第一终端装置发送对所述第一请求的第一响应。
20.根据权利要求19所述的装置,其特征在于,
所述收发接口还用于,接收所述第一终端装置传输的第二请求,所述第二请求包括所述一个或多个第一文件的并行传输指示信息;
所述收发接口还用于,向所述第一终端装置发送对所述第二请求的第二响应,所述第二响应包括所述一个或多个第一文件的标识。
21.根据权利要求20所述的装置,其特征在于,
所述第二响应还包括所述一个或多个第一文件的大小。
22.根据权利要求19至21任一项所述的装置,其特征在于,
所述收发接口还用于,接收所述第一终端装置传输的第一终止信息,所述第一终止信息用于指示终止传输第一目标文件,所述第一目标文件为完成传输的第一文件;
所述收发接口还用于,向所述第一终端装置发送对所述第一终止信息的终止应答响应,并释放所述第一目标文件的标识。
23.根据权利要求19至21任一项所述的装置,其特征在于,
所述收发接口还用于,接收所述第一终端装置传输的第三请求,所述第三请求用于请求获取一个或多个第二文件;
所述收发接口还用于,向所述第一终端装置发送对所述第三请求的第三响应,所述第三响应包括一个或多个数据块和所述一个或多个数据块分别对应的第二文件的标识。
24.一种文件传输装置,其特征在于,包括:
处理器和收发接口;
所述收发接口用于接收第一终端装置传输的第四请求,所述第四请求包括一个或多个第三文件的并行传输指示信息;
所述处理器用于生成对所述第四请求的错误应答响应,所述错误应答响应用于指示所述第三终端装置不支持并行传输
所述收发接口还用于,接收所述第一终端装置传输的第五请求,所述第五请求用于指示所述第一终端装置通过串行传输方式获取所述一个或多个第三文件。
25.一种终端装置,其特征在于,包括:
至少一个处理器和存储器,
所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行权利要求1-6任一项所述的文件传输方法。
26.一种终端装置,其特征在于,包括:
至少一个处理器和存储器,
所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行权利要求7-11任一项所述的文件传输方法。
27.一种终端装置,其特征在于,包括:
至少一个处理器和存储器,
所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中存储的程序指令,以使所述终端装置执行权利要求12所述的文件传输方法。
28.一种文件传输系统,其特征在于,包括:
第一终端装置和第二终端装置;
所述第一终端装置包括如权利要求13-18任一项所述的文件传输装置;
所述第二终端装置包括如权利要求19-23任一项所述的文件传输装置。
29.根据权利要求28所述的系统,其特征在于,还包括:
第三终端装置;
所述第三终端装置包括如权利要求24所述的文件传输装置。
30.一种计算机可读存储介质,其特征在于,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如权利要求1-6任一项所述的文件传输方法。
31.一种计算机可读存储介质,其特征在于,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如权利要求7-11任一项所述的文件传输方法。
32.一种计算机可读存储介质,其特征在于,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如权利要求12所述的文件传输方法。
CN202110203568.3A 2021-02-23 2021-02-23 一种文件传输方法、装置及系统 Active CN114979113B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110203568.3A CN114979113B (zh) 2021-02-23 2021-02-23 一种文件传输方法、装置及系统
EP21927560.9A EP4274198A4 (en) 2021-02-23 2021-10-20 FILE TRANSFER METHOD, APPARATUS AND SYSTEM
PCT/CN2021/124883 WO2022179136A1 (zh) 2021-02-23 2021-10-20 一种文件传输方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110203568.3A CN114979113B (zh) 2021-02-23 2021-02-23 一种文件传输方法、装置及系统

Publications (2)

Publication Number Publication Date
CN114979113A true CN114979113A (zh) 2022-08-30
CN114979113B CN114979113B (zh) 2023-12-15

Family

ID=82974304

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110203568.3A Active CN114979113B (zh) 2021-02-23 2021-02-23 一种文件传输方法、装置及系统

Country Status (3)

Country Link
EP (1) EP4274198A4 (zh)
CN (1) CN114979113B (zh)
WO (1) WO2022179136A1 (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150008541A (ko) * 2013-07-15 2015-01-23 (주)네오위즈게임즈 데이터 전송 제어 방법 및 서버
CN105007322A (zh) * 2015-07-21 2015-10-28 陈丹 一种文件传输方法及系统
CN108334331A (zh) * 2018-02-08 2018-07-27 苏州妙益科技股份有限公司 一种安全的电动汽车电池管理系统软件升级方法
CN108833530A (zh) * 2018-06-11 2018-11-16 联想(北京)有限公司 一种传输方法和装置
CN109474606A (zh) * 2018-12-04 2019-03-15 平安科技(深圳)有限公司 文件传输方法、装置、计算机设备及存储介质
CN109496418A (zh) * 2018-05-31 2019-03-19 优视科技新加坡有限公司 文件下载方法、装置及设备/终端/服务器
CN110515366A (zh) * 2019-07-29 2019-11-29 华为技术有限公司 一种故障诊断方法及装置
CN111245748A (zh) * 2020-01-03 2020-06-05 北京明略软件系统有限公司 文件传输方法及装置、系统、电子设备、存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101958919A (zh) * 2009-07-20 2011-01-26 新奥特(北京)视频技术有限公司 一种基于非ip数据隧道的多文件并行传输方法及系统
US9306915B2 (en) * 2013-11-05 2016-04-05 General Electric Company Systems and methods for secure file transfers
CN105871706A (zh) * 2016-06-13 2016-08-17 珠海佳米科技有限公司 文件传输方法及系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150008541A (ko) * 2013-07-15 2015-01-23 (주)네오위즈게임즈 데이터 전송 제어 방법 및 서버
CN105007322A (zh) * 2015-07-21 2015-10-28 陈丹 一种文件传输方法及系统
CN108334331A (zh) * 2018-02-08 2018-07-27 苏州妙益科技股份有限公司 一种安全的电动汽车电池管理系统软件升级方法
CN109496418A (zh) * 2018-05-31 2019-03-19 优视科技新加坡有限公司 文件下载方法、装置及设备/终端/服务器
CN108833530A (zh) * 2018-06-11 2018-11-16 联想(北京)有限公司 一种传输方法和装置
CN109474606A (zh) * 2018-12-04 2019-03-15 平安科技(深圳)有限公司 文件传输方法、装置、计算机设备及存储介质
CN110515366A (zh) * 2019-07-29 2019-11-29 华为技术有限公司 一种故障诊断方法及装置
CN111245748A (zh) * 2020-01-03 2020-06-05 北京明略软件系统有限公司 文件传输方法及装置、系统、电子设备、存储介质

Also Published As

Publication number Publication date
EP4274198A1 (en) 2023-11-08
EP4274198A4 (en) 2024-05-22
WO2022179136A1 (zh) 2022-09-01
CN114979113B (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
JP6722198B2 (ja) モバイル支援型自動車ソフトウェア・アップデート及び車両データ分析の集中管理システム
US9160554B1 (en) Apparatus and method for operating automated test equipment (ATE)
JP4852583B2 (ja) 無線通信システムにおいて無線リソース測定を促進するための装置及び関連方法
CN111176695A (zh) 一种车辆ecu配置的方法、服务器及终端
CN109417501B (zh) 网络资源的编排方法和设备
KR20200067742A (ko) 차량 ecu 소프트웨어 업데이트 시스템
CN112513850A (zh) 电子控制单元及其数据访问方法与装置
EP2320695A1 (en) Data processor and communication system
CN112732982A (zh) 一种故障码存储方法、装置、终端设备及可读存储介质
EP2005660B1 (en) Generic access performance abstraction for access selection
CN113112641A (zh) 车辆ecu刷写方法及车辆诊断仪的下位机
CN107205233B (zh) 用于蜂窝订阅绑定的方法和设备
AU4664099A (en) Changing functionality of a module terminal in a wireless network
CN112492592A (zh) 一种多个nrf场景下的授权方法
CN112882742A (zh) 软件更新方法以及相关设备
CN114979113A (zh) 一种文件传输方法、装置及系统
CN111459519A (zh) 一种mcu升级方法及装置
CN110659076A (zh) 操作系统的安装部署方法及装置
CN113433929B (zh) 多请求的远程诊断方法、设备以及系统
KR102064519B1 (ko) 차량 ecu 소프트웨어 업데이트 방법, 그를 수행하기 위한 장치 및 시스템
CN110972204B (zh) 资源配置的方法、装置、存储介质及网络设备和终端
KR20160144597A (ko) 차량용 진단통신 시스템 및 그의 데이터 보안방법
CN111104333A (zh) 覆盖率测试方法、测试装置及计算机可读存储介质
CN106550027B (zh) 设备连接方法和设备连接系统
CN111200546A (zh) 一种基于CANopen的设备参数信息诊断系统及方法

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