本发明专利技术公开了一种报文通信方法,所述报文通信方法包括:第一终端在接收到第二终端发送的命令报文时,在所述命令报文的报文头中提取出命令令牌标识;所述第一终端确定提取的所述命令令牌标识的类型;在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端基于所述私有命令令牌标识获取应答数据;所述第一终端根据提取的所述应答数据生成应答报文,以将所述应答报文反馈至所述第二终端。发明专利技术还公开了一种报文通信装置。本发明专利技术提高了报文通信的准确性。
【技术实现步骤摘要】
本专利技术涉及通信
,尤其涉及一种报文通信方法及装置。
技术介绍
目前,SATA(Serial Advanced Technology Attachment,串行高级技术附件)协议没有提供一个方便开发人员自定义的命令接口,用于来传输自定义数据,即私有命令数据,所以目前SATA接口固态硬盘的开发过程中,经常使用SATA的公有命令来进行“二次通讯开发”,也就是在公有命令的命令报文中添加私有命令,然后主机将添加了私有命令的命令报文传输至从机,由于私有命令是存放在命令的数据包中,在这数据包中添加了标识符或验证码,若发现这个标识符或验证码则认为是私有命令,但是实际的公有命令操作过程中,公有命令的数据包的标识刚好和私有命令的数据包的标识完全一致,就会把公有命令当成私有命令来处理,导致丢失了公有命令的数据(一般都是逻辑数据),而目前应用采用了多种手段来降低了出现这种情况的概率,比如采用地址系列的相关性来判断,但也只是降低了这种概率,不能做到消除,而且这种方式非常繁琐。显然,这种报文通信方式,几乎都会存在逻辑数据和私有命令误判的情况,导致报文通信的准确性降低。
技术实现思路
本专利技术的主要目的在于提出一种报文通信方法及装置,旨在解决传统的报文通信方式,准确性较低的技术问题。为实现上述目的,本专利技术提供的一种报文通信方法,所述报文通信方法包括:第一终端在接收到第二终端发送的命令报文时,在所述命令报文的报文头中提取出命令令牌标识;所述第一终端确定提取的所述命令令牌标识的类型;在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端基于所述私有命令令牌标识获取应答数据;所述第一终端根据提取的所述应答数据生成应答报文,以将所述应答报文反馈至所述第二终端。优选地,所述第一终端基于所述私有命令令牌标识获取应答数据的步骤之前,所述报文通信方法还包括:所述第一终端确定当前状态;在所述当前状态为空闲状态时,执行所述第一终端基于所述私有命令令牌标识获取应答数据的步骤;在所述当前状态为繁忙状态时,所述第一终端向所述第二终端反馈等待报文,并在所述当前状态从繁忙状态切换为空闲状态时,执行所述第一终端基于所述私有命令令牌标识获取应答数据的步骤。优选地,所述在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端基于所述私有命令令牌标识获取应答数据的步骤包括:在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端将所述私有命令令牌标识与预存的私有命令令牌标识进行比对;在有预存的私有命令令牌标识与所述私有命令令牌标识匹配时,所述第一终端获取所述私有命令令牌标识对应的应答数据。此外,为实现上述目的,本专利技术还提出一种报文通信方法,所述报文通信方法包括以下步骤:在接收到命令报文通信指令时,第二终端确定所述命令报文通信指令对应的命令类型;在所述命令类型为私有命令时,所述第二终端获取所述私有命令对应的私有命令令牌标识,并将获取的所述私有命令令牌标识添加到命令报文的报文头中;所述第二终端将添加有所述私有命令令牌标识的命令报文发送至第一终端中,以供所述第一终端在所述命令报文的报文头中提取出私有命令令牌标识,并根据所述私有命令令牌标识对应的应答数据生成应答报文,以反馈添加有应答数据的应答报文。优选地,所述在接收到命令报文通信指令时,第二终端确定所述命令报文通信指令对应的命令类型的步骤之前,所述报文通信方法还包括:在预设的应用程序接口中接收到输入的私有命令属性字段时,所述第二终端根据所述私有命令属性字段生成私有命令令牌标识;所述第二终端存储生成的所述私有命令令牌标识。此外,为实现上述目的,本专利技术还提出一种报文通信装置,所述报文通信装置包括:提取模块,用于在接收到第二终端发送的命令报文时,在所述命令报文的报文头中提取出命令令牌标识;第一确定模块,用于确定提取的所述命令令牌标识的类型;获取模块,用于在所述命令令牌标识的类型为私有命令令牌标识时,基于所述私有命令令牌标识获取应答数据;反馈模块,用于根据提取的所述应答数据生成应答报文,以将所述应答报文反馈至所述第二终端。优选地,所述第一确定模块,还用于确定当前状态;所述获取模块,还用于在所述当前状态为空闲状态时,基于所述私有命令令牌标识获取应答数据;所述反馈模块,还用于在所述当前状态为繁忙状态时,向所述第二终端反馈等待报文;所述获取模块,还用于在所述当前状态从繁忙状态切换为空闲状态时,基于所述私有命令令牌标识获取应答数据。优选地,所述获取模块包括:比对单元,用于在所述命令令牌标识的类型为私有命令令牌标识时,将所述私有命令令牌标识与预存的私有命令令牌标识进行比对;获取单元,用于在有预存的私有命令令牌标识与所述私有命令令牌标识匹配时,获取所述私有命令令牌标识对应的应答数据。此外,为实现上述目的,本专利技术还提出一种报文通信装置,所述报文通信装置包括:第二确定模块,用于在接收到命令报文通信指令时,确定所述命令报文通信指令对应的命令类型;处理模块,用于在所述命令类型为私有命令时,获取所述私有命令对应的私有命令令牌标识,并将获取的所述私有命令令牌标识添加到命令报文的报文头中;发送模块,用于将添加有所述私有命令令牌标识的命令报文发送至第一终端中,以供所述第一终端在所述命令报文的报文头中提取出私有命令令牌标识,并根据所述私有命令令牌标识对应的应答数据生成应答报文,以反馈添加有应答数据的应答报文。优选地,所述报文通信装置还包括:生成模块,用于在预设的应用程序接口中接收到输入的私有命令属性字段时,根据所述私有命令属性字段生成私有命令令牌标识;存储模块,用于存储生成的所述私有命令令牌标识。本专利技术提出的报文通信方法及装置,第一终端在接收到第二终端发送的命令报文时,先在所述命令报文的报文头中提取出命令令牌标识,然后确定提取的所述命令令牌标识的类型,在所述命令令牌标识的类型为私有命令令牌标识时,基于所述私有命令令牌标识获取应答数据,最终根据获取的所述应答数据生成应答报文,以将所述应答报文反馈至所述第二终端,而不是在获取到第二终端发送的命令报文时,若在第一个数据区解析到标识符及验证码时,就认为该命令报文携带的都是私有命令,若是在第一个数据区没有解析到标识符及验证码时,认为该命令报文携带的都是逻辑数据,从而从机导致反馈的应答报文有误,本专利技术在所述命令报文的报文头中提取出命令令牌标识,并对所述命令令牌标识进行解析,以确定命令令牌标识的类型,最终反馈相应的应答报文,避免了私有命令和逻辑数据的误判,从而提高了报文通信的准确性。附图说明图1为本专利技术报文通信方法第一实施例的流程示意图;图2为本专利技术第二终端和第一终端进行报文通信的较佳场景示意图;图3为本专利技术所述第一终端基于所述私有命令令牌标识获取应答数据较佳实施例的流程示意图;图4为本专利技术第一预设查找表的示意图;图5为本专利技术报文通信方法第二实施例的流程示意图;图6为本专利技术令牌模板的示意图;图7为本专利技术报文通信装置第一实施例的功能模块示意图;图8为图7中获取模块的细化功能模块示意图;图9为本专利技术报文通信装置第二实施例的功能模块示意图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例的主要解本文档来自技高网...
【技术保护点】
一种报文通信方法,其特征在于,所述报文通信方法包括以下步骤:第一终端在接收到第二终端发送的命令报文时,在所述命令报文的报文头中提取出命令令牌标识;所述第一终端确定提取的所述命令令牌标识的类型;在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端基于所述私有命令令牌标识获取应答数据;所述第一终端根据提取的所述应答数据生成应答报文,以将所述应答报文反馈至所述第二终端。
【技术特征摘要】
1.一种报文通信方法,其特征在于,所述报文通信方法包括以下步骤:第一终端在接收到第二终端发送的命令报文时,在所述命令报文的报文头中提取出命令令牌标识;所述第一终端确定提取的所述命令令牌标识的类型;在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端基于所述私有命令令牌标识获取应答数据;所述第一终端根据提取的所述应答数据生成应答报文,以将所述应答报文反馈至所述第二终端。2.如权利要求1所述的报文通信方法,其特征在于,所述第一终端基于所述私有命令令牌标识获取应答数据的步骤之前,所述报文通信方法还包括:所述第一终端确定当前状态;在所述当前状态为空闲状态时,执行所述第一终端基于所述私有命令令牌标识获取应答数据的步骤;在所述当前状态为繁忙状态时,所述第一终端向所述第二终端反馈等待报文,并在所述当前状态从繁忙状态切换为空闲状态时,执行所述第一终端基于所述私有命令令牌标识获取应答数据的步骤。3.如权利要求1所述的报文通信方法,其特征在于,所述在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端基于所述私有命令令牌标识获取应答数据的步骤包括:在所述命令令牌标识的类型为私有命令令牌标识时,所述第一终端将所述私有命令令牌标识与预存的私有命令令牌标识进行比对;在有预存的私有命令令牌标识与所述私有命令令牌标识匹配时,所述第一终端获取所述私有命令令牌标识对应的应答数据。4.一种报文通信方法,其特征在于,所述报文通信方法包括以下步骤:在接收到命令报文通信指令时,第二终端确定所述命令报文通信指令对应的命令类型;在所述命令类型为私有命令时,所述第二终端获取所述私有命令对应的私有命令令牌标识,并将获取的所述私有命令令牌标识添加到命令报文的报文头中;所述第二终端将添加有所述私有命令令牌标识的命令报文发送至第一终端中,以供所述第一终端在所述命令报文的报文头中提取出私有命令令牌标识,并根据所述私有命令令牌标识对应的应答数据生成应答报文,以反馈添加有应答数据的应答报文。5.如权利要求4所述的报文通信方法,其特征在于,所述在接收到命令报文通信指令时,第二终端确定所述命令报文通信指令对应的命令类型的步骤之前,所述报文通信方法还包括:在预设的应用程序接口中接收到输入的私有命令...
【专利技术属性】
技术研发人员:余云锋,吴大畏,李晓强,
申请(专利权)人:深圳市硅格半导体股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。