掌桥专利:专业的专利平台
掌桥专利
首页

一种时效保证方法、装置及系统

文献发布时间:2024-04-18 19:58:30


一种时效保证方法、装置及系统

技术领域

本申请涉及通信技术领域,具体涉及一种时效保证方法、装置及系统。

背景技术

在工业以太网环境下,为保证工业生产的稳定运行,对其中的查询、控制指令的时效性有一定的要求。

现有的技术方案要求工业以太网内部署高精度时钟服务器,请求方和响应方通过时钟同步算法保证双方系统时间与该高精度时钟服务器时间一致,请求方在查询、控制指令中添加时间戳信息,响应方可以根据指令中的时间戳和系统时间判断该指令是否需要执行,其中,请求方可以为控制器,响应方可以为执行器(Actuator)。该方法中,网络内需要部署高精度时间同步服务器,存在部署成本。

发明内容

本申请实施例公开了一种时效保证方法、装置及系统。通过本申请,网络设备和/或接收端可以对数据帧的时效信息进行更新,从而接收端可以基于更新的时效信息确定数据帧是否有效,该方法无需保持发送端、接收端和网络设备的时间同步,可以减少部署时间同步服务器的部署成本。

第一方面,本申请实施例公开了一种时效保证方法,应用于网络设备,该方法包括:

接收数据帧,数据帧包括时效信息,时效信息用于指示数据帧的剩余时效;

基于网络设备的链路层接收数据帧的起始时刻和链路层接收数据帧的终止时刻,得到传输时延;

基于网络设备的协议栈或应用层处理数据帧所需的时间,得到整体转发时延;

基于传输时延和整体转发时延,更新时效信息;

发送更新后的数据帧。

通过本申请,发送端可以发送携带时效信息的数据帧,网络设备和接收端可以对数据帧的时效信息进行更新,从而接收端可以基于更新的时效信息确定数据帧是否有效,该方法无需保持发送端、接收端和网络设备的时间同步,即可确定数据帧是否在时效范围内,该方法可以减少部署时间同步服务器的部署成本。

结合第一方面,在一种可能的实施方式中,传输时延为起始时刻和终止时刻的时间差;起始时刻为接收到数据帧的起始位时的时刻,终止时刻为接收到数据帧的终止位的时刻;

更新后的数据帧中的剩余时效为数据帧中的剩余时效减去传输时延和整体转发时延的差值。

结合第一方面,在一种可能的实施方式中,整体转发时延包括接收处理时延和发送处理时延;基于传输时延和整体转发时延,更新时效信息,包括:

将数据帧的剩余时效更新为第一时效,得到第一数据帧;第一时效为数据帧的剩余时效减去传输时延和接收处理时延的差值;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间;第一数据帧的剩余时效为第一时效;

将第一数据帧的剩余时效更新为第二时效,得到更新后的数据帧;第二时效为第一时效与发送处理时延的差值,发送处理时延为链路层发送更新后的数据帧前协议栈或应用层发送处理第一数据帧所需的时间;更新后的数据帧的剩余时效为第二时效。

结合第一方面,在一种可能的实施方式中,在发送更新后的数据帧之前,方法还包括:

基于第一时效,确定对第一数据帧的处理方式;处理方式包括优先转发、正常转发或丢弃。

本申请实施例中,网络设备还可以基于第一时效,进行转发决策,从而确定优先转发、正常转发或丢弃该数据帧。该方法中,可以避免数据帧失效,加快转发效率;还可以避免传输失效的数据帧,造成网络资源浪费。

结合第一方面,在一种可能的实施方式中,基于第一时效,确定对第一数据帧的处理方式,包括:

基于数据帧对应的可靠性等级和数据帧对应的实时性等级中的至少一项和第一时效,确定对第一数据帧的处理方式。

本申请实施例中,网络设备可以结合该数据帧对应的可靠性等级和数据帧对应的实时性等级,确定是否优先转发该数据帧。通过该方法,可以优先转发重要消息。

结合第一方面,在一种可能的实施方式中,数据帧承载请求消息、响应消息和主动通知消息中的任一种,请求消息包括查询指令或控制指令,响应消息为响应于查询指令或控制指令生成的回复消息。

结合第一方面,在一种可能的实施方式中,数据帧承载响应方响应于第一请求方的查询指令生成的响应消息,方法还包括:

存储响应消息。

在一种可能的实施方式中,网络设备存储的是数据帧解析后的报文内容。

本申请实施例中,网络设备还可以存储接收到的响应消息,从而在其他请求方请求该响应消息时,向其他请求方发送该响应消息。该方法可以实现就近响应,提高响应效率。

结合第一方面,在一种可能的实施方式中,在将数据帧的剩余时效更新为第一时效,得到第一数据帧后,存储响应消息,包括:

在第一时效和响应消息对应的实时性等级满足缓存决策时,存储响应消息。

本申请实施例中,网络设备可以仅存储没有失效的数据帧,避免存储空间的浪费。

结合第一方面,在一种可能的实施方式中,方法还包括:

接收来自第二请求方的查询指令,来自第二请求方的查询指令用于请求响应消息;

向第二请求方发送响应消息。

结合第一方面,在一种可能的实施方式中,向第二请求方发送响应消息,包括:

获取响应消息对应的第一时效和存储响应消息的时刻;

在当前时刻和存储响应消息的时刻的时间差不大于第一时效时,向第二请求方发送响应消息;

在当前时刻和存储响应消息的时刻的时间差大于第一时效时,向响应方发送请求消息。

本申请实施例中,网络设备可以在确定该数据帧未失效时,再将该数据帧发送至其他请求方。该方法可以避免向其他请求方发送失效的数据帧。

第二方面,本申请实施例公开了一种时效保证方法,应用于发送端,该方法包括:

发送端向接收端发送数据帧;数据帧包括时效信息,数据帧的时效信息用于指示数据帧的剩余时效;

接收端用于基于链路时延和接收处理时延更新数据帧的剩余时效;链路时延是基于接收端的链路层接收数据帧的起始时刻和链路层接收数据帧的终止时刻得到的;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间。

第三方面,本申请实施例公开了一种时效保证方法,应用于接收端,该方法包括:

接收端接收来自发送端的数据帧;数据帧包括时效信息,数据帧的时效信息用于指示数据帧的剩余时效;

接收端基于接收端的链路层接收数据帧的起始时刻和接收端的链路层接收数据帧的终止时刻,得到链路时延;

基于链路时延和接收处理时延,更新剩余时效;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间。

通过本申请,发送端可以发送携带时效信息的数据帧,数据端可以对数据帧的时效信息进行更新,从而接收端可以基于更新的时效信息确定数据帧是否有效,该方法无需保持发送端和接收端的时间同步,可以减少部署时间同步服务器的部署成本。

结合第三方面,在一种可能的实施方式中,数据帧承载请求消息,请求消息包括查询指令或控制指令;方法还包括:

接收端在基于剩余时效和预设阈值确定请求消息有效时,执行查询指令或控制指令。

结合第三方面,在一种可能的实施方式中,接收端接收来自发送端的数据帧,包括:

接收端经至少一个网络设备接收来自请求方的数据帧;

至少一个网络设备用于基于传输时延和整体转发时延更新数据帧的剩余时效;传输时延是基于网络设备的链路层接收数据帧的起始时刻和网络设备的链路层接收数据帧的终止时刻得到的;整体转发时延是基于网络设备的协议栈或应用层处理数据帧所需的时间得到的。

第四方面,本申请提供了一种时效保证装置,该装置包括:

接收单元,用于接收数据帧,数据帧包括时效信息,时效信息用于指示数据帧的剩余时效;

第一处理单元,用于基于网络设备的链路层接收数据帧的起始时刻和链路层接收数据帧的终止时刻,得到传输时延;

第二处理单元,用于基于网络设备的协议栈或应用层处理数据帧所需的时间,得到整体转发时延;

更新单元,用于基于传输时延和整体转发时延,更新时效信息;

发送单元,用于发送更新后的数据帧。

结合第四方面,在一种可能的实施方式中,传输时延为起始时刻和终止时刻的时间差;起始时刻为接收到数据帧的起始位时的时刻,终止时刻为接收到数据帧的终止位的时刻;

更新后的数据帧中的剩余时效为数据帧中的剩余时效减去传输时延和整体转发时延的差值。

结合第四方面,在一种可能的实施方式中,整体转发时延包括接收处理时延和发送处理时延;更新单元用于:

将数据帧的剩余时效更新为第一时效,得到第一数据帧;第一时效为数据帧的剩余时效减去传输时延和接收处理时延的差值;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间;第一数据帧的剩余时效为第一时效;

将第一数据帧的剩余时效更新为第二时效,得到更新后的数据帧;第二时效为第一时效与发送处理时延的差值,发送处理时延为链路层发送更新后的数据帧前协议栈或应用层发送处理第一数据帧所需的时间;更新后的数据帧的剩余时效为第二时效。

结合第四方面,在一种可能的实施方式中,在发送单元发送更新后的数据帧之前,装置还包括处理单元,处理单元用于:

基于第一时效,确定对第一数据帧的处理方式;处理方式包括优先转发、正常转发或丢弃。

结合第四方面,在一种可能的实施方式中,处理单元用于:

基于数据帧对应的可靠性等级和数据帧对应的实时性等级中的至少一项和第一时效,确定对第一数据帧的处理方式。

结合第四方面,在一种可能的实施方式中,数据帧承载请求消息、响应消息和主动通知消息中的任一种,请求消息包括查询指令或控制指令,响应消息为响应于查询指令或控制指令生成的回复消息。

结合第四方面,在一种可能的实施方式中,数据帧承载响应方响应于第一请求方的查询指令生成的响应消息,装置还包括存储单元,存储单元用于:

存储响应消息。

结合第四方面,在一种可能的实施方式中,存储单元用于:

在第一时效和响应消息对应的实时性等级满足缓存决策时,存储响应消息。

结合第四方面,在一种可能的实施方式中,接收单元,用于接收来自第二请求方的查询指令,来自第二请求方的查询指令用于请求响应消息;

发送单元,用于向第二请求方发送响应消息。

结合第四方面,在一种可能的实施方式中,发送单元用于:

获取响应消息对应的第一时效和存储响应消息的时刻;

在当前时刻和存储响应消息的时刻的时间差不大于第一时效时,向第二请求方发送响应消息;

在当前时刻和存储响应消息的时刻的时间差大于第一时效时,向响应方发送请求消息。

第五方面,本申请实施例提供了一种时效保证装置,该装置包括:

接收单元,用于接收来自发送端的数据帧;数据帧包括时效信息,数据帧的时效信息用于指示数据帧的剩余时效;

处理单元,用于基于接收端的链路层接收数据帧的起始时刻和接收端的链路层接收数据帧的终止时刻,得到链路时延;

更新单元,用于基于链路时延和接收处理时延,更新剩余时效;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间。

结合第五方面,在一种可能的实施方式中,数据帧承载请求消息,请求消息包括查询指令或控制指令;装置还包括执行单元,执行单元用于:

在基于剩余时效和预设阈值确定请求消息有效时,执行查询指令或控制指令。

结合第五方面,在一种可能的实施方式中,接收单元用于:

经至少一个网络设备接收来自请求方的数据帧;

至少一个网络设备用于基于传输时延和整体转发时延更新数据帧的剩余时效;传输时延是基于网络设备的链路层接收数据帧的起始时刻和网络设备的链路层接收数据帧的终止时刻得到的;整体转发时延是基于网络设备的协议栈或应用层处理数据帧所需的时间得到的。

第六方面,本申请实施例公开了一种时效保证装置,包括处理器和通信接口,所述处理器用于调用存储器中存储的计算机程序,以实现第一方面或者第一方面的任意一种可能的实施方式所描述的方法。

第七方面,本申请实施例公开了一种时效保证装置,包括处理器和通信接口,所述处理器用于调用存储器中存储的计算机程序,以实现第二方面或者第二方面的任意一种可能的实现方式。

第八方面,本申请实施例公开了一种时效保证装置,包括处理器和通信接口,所述处理器用于调用存储器中存储的计算机程序,以实现第三方面或者第三方面的任意一种可能的实现方式。

第九方面,本申请实施例还提供一种芯片系统,所述芯片系统包括至少一个处理器和通信接口,所述通信接口用于发送和/或接收数据,所述至少一个处理器用于调用至少一个存储器中存储的计算机程序,以使得所述芯片系统所在的装置实现第一方面或者第一方面的任意一种可能的实施方式所描述的方法;又或者实现第二方面或者第二方面的任意一种可能的实施方式所描述的方法;又或者实现第三方面或者第三方面的任意一种可能的实施方式所描述的方法。

第十方面,本申请实施例还提供一种通信系统,包括接收端、网络设备和发送端。其中,所述网络设备用于实现第一方面或者第一方面的任意一种可能的实施方式所描述的方法;所述发送端实现第一方面或者第一方面的任意一种可能的实施方式所描述的方法;所述接收端用于实现第一方面或者第一方面的任意一种可能的实施方式所描述的方法。

第十一方面,本申请实施例公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,执行第一方面或第一方面的任意一种可能的实施方式所描述的方法,又或者执行第二方面或第二方面的任意一种可能的实施方式所描述的方法;又或者实现第三方面或者第三方面的任意一种可能的实施方式所描述的方法。

第十二方面,本申请实施例公开了一种计算机程序产品,当所述计算机程序产品在一个或多个处理器上运行时,执行第一方面或第一方面的任意一种可能的实施方式所描述的方法,又或者执行第二方面或第二方面的任意一种可能的实施方式所描述的方法;又或者实现第三方面或者第三方面的任意一种可能的实施方式所描述的方法。

附图说明

以下对本申请实施例用到的附图进行介绍。

图1是本申请实施例提供的一种现有技术中保证消息时效的方法示意图;

图2A是本申请实施例提供的一种可能的通信系统的示意图;

图2B是本申请实施例提供的另一种可能的通信系统的示意图;

图2C是本申请实施例提供的又一种可能的通信系统的示意图;

图3是本申请实施例提供的再一种可能的通信系统的示意图;

图4是本申请实施例提供的一种时效保证方法的流程示意图;

图5是本申请实施例提供的一种网络设备更新时效信息的流程示意图;

图6A是本申请实施例提供的另一种时效保证方法的流程示意图;

图6B是本申请实施例提供的一种网络设备对请求消息进行时效更新的方法流程图;

图7是本申请实施例提供的一种时效保证方法的具体实现的示意图;

图8是本申请实施例提供的又一种时效保证方法的流程图;

图9是本申请实施例提供的一种响应消息传输过程的流程示意图;

图10是本申请实施例提供的一种查询方法的流程示意图;

图11是本申请实施例提供的一种就近响应的场景图;

图12是本申请实施例提供的一种时效保证装置120的结构示意图;

图13是本申请实施例提供的一种时效保证装置130的结构示意图;

图14是本申请实施例提供的一种时效保证装置140的结构示意图。

具体实施方式

下面结合本申请实施例中的附图对本申请实施例进行描述。需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

本申请中实施例提到的“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b、或c中的至少一项(个),可以表示:a、b、c、(a和b)、(a和c)、(b和c)、或(a和b和c),其中a、b、c可以是单个,也可以是多个。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A、同时存在A和B、单独存在B这三种情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。

以及,除非有相反的说明,本申请实施例使用“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。例如,第一信息和第二信息,只是为了区分不同的信息,而并不是表示这两种信息的内容、优先级、发送顺序或者重要程度等的不同。

在介绍本申请实施例之前,先对本申请实施例中出现的技术术语进行介绍。

1、工业协议(Industrial Protocol,IP)/工业以太网(Industrial Ethernet),应用于工业控制领域的以太网技术。

2、可编程逻辑控制器(Programmable Logic Controller,PLC),是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。

3、执行器(Actuator),可以接收控制器下发的指令并执行相应的生产动作。

以下结合图1,介绍现有技术中工业以太网为保证消息时效的方法。

请参见图1,图1是本申请实施例示例性提供的一种现有的工业以太网部署示意图。如图1所示,该工业以太网包括请求方、N个工业网关、响应方和时钟服务器,其中,N为正整数;该时钟服务器可以为高精度时间同步服务器,请求方可以为PLC控制器,响应方为Actuator执行器。

在一种实现中,请求方和响应方通可以过时钟同步算法保证双方系统时间与该高精度时钟服务器时间一致。请参见图1,请求方可以向响应方发送查询指令或控制指令,其中,查询指令或控制指令中包括时间戳信息;响应方可以根据上述指令中的时间戳和系统时间,判断该指令是否满足时效要求,从而确定是否需要执行该指令;响应方可以向在接收到查询指令后,向请求方发送响应消息。

本申请的发明人发现该方法中,网络内需要部署高精度时间同步服务器,存在部署成本。

因此,本申请实施例提出了一种时效保证方法、设备和系统,该方法通过网络设备更新指令中的时效信息,响应方在接收到该指令时可以基于该指令中的剩余时效确定是否需要执行该指令。该方法不需要部署高精度时间同步服务器。

下面对本申请实施例的系统架构和业务场景进行描述。需要说明的是,本申请描述的系统架构及业务场景是为了更加清楚的说明本申请的技术方案,并不构成对于本申请提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请提供的技术方案对于类似的技术问题,同样适用。

请参见图2A,图2A是本申请实施例提供的一种可能的通信系统的示意图,该通信系统10包括请求方101、网络设备102和响应方103。其中:

如图2A所示,请求方101经网络设备102与响应方103相连。例如,请求方101向网络设备102发送请求消息,该请求消息可以包括查询指令或控制指令;网络设备102将该请求消息发送至响应方103。又例如,响应方103可以向网络设备102发送主动通知消息或响应消息,网络设备102再将主动通知消息或响应消息发送至请求方101。可以理解的,可以是请求方101为发送端,响应方103可以为接收端;也可以是响应方103为发送端,请求方101为接收端,可以根据具体场景确定。

其中,请求方101可以包括至少一个请求方;网络设备102可以包括至少一个网络设备,网络设备可以为网关、交换机或网桥等。其中,请求方101可以为控制器,响应方103可以为执行器,此处仅为示例,不应造成对请求方101和响应方103的限定,在不同的应用场景中,发送端301和接收端302可以为不同的设备,此处不做限定。

需要说明的是,在多个请求方和多个网络设备的情况下,请求方可以经多个网络设备中的部分网络设备与响应方进行通信连接;不同的请求方可以经相同的网络设备与响应方进行通信连接,也可以经不同的网络设备与响应方建立通信连接,此处不做限定。

请参见图2B,图2B是本申请实施例提供的另一种可能的通信系统的示意图。图2B示例性的示出了该通信系统20包括请求方、n个网络设备和响应方,其中,请求方包括请求方1和请求方2;n个网络设备分别为网络设备1、网络设备2直至网络设备n,n为大于2的正整数。其中,其中,请求方1与网络设备1建立通信连接,请求方1分别经网络设备1、网络设备2至网络设备n等n个网络设备与响应方相连;请求方2与网络设备2建立通信连接,请求方2分别经网络设备2至网络设备n等n-1个网络设备与响应方相连。

其中,请求方101、网络设备102和响应方103之间通信的链路可以包括各种类型的连接介质,包括有线链路(例如光纤)、无线链路、或者有线链路和无线链路的组合等。例如可以为近距离连接技术包括802.11b/g、蓝牙(blue tooth)、紫蜂(Zigbee)、无线射频识别技术(radio frequency identification,RFID)、超宽带(ultra wideband,UWB)技术、无线短距通信系统(例如车载无线短距通信系统)等,再如还可以为远距离连接技术包括基于长期演进(Long Term Evolution,长期演进)的通信技术、第五代移动通信技术(5thgeneration mobile networks或5th generation wireless systems、5th-Generation,简称5G或5G技术)、全球移动通信系统(global System for mobile communications,GSM)、通用分组无线业务(general packet radio Service,GPRS)、通用移动通信系统(universal mobile telecommunications system,UMTS)等无线接入类型技术。

当然,还有其他无线通信技术可以用于支撑本申请提供的通信系统中各网元或设备进行通信。

需要说明的是,上述通信系统上还可以包括其它网元或设备,此处不作限定。

请参见图2C,图2C是本申请实施例提供的又一种可能的通信系统的示意图。

如图2C所示,该通信系统30仅包括发送端301和接收端302,发送端301可以包括一个或多个发送端。其中:

发送端301用于向接收端302发送数据帧,该数据帧包括时效信息,数据帧的时效信息用于指示数据帧的剩余时效;接收端302用于基于接收端302的链路层接收数据帧的起始时刻和链路层接收数据帧的终止时刻,得到链路时延,再基于链路时延和接收处理时延,更新数据帧的剩余时效。

进一步的,接收端302还可以基于更新后的剩余时效确定该数据帧是否有效,例如该数据帧包括查询指令或控制指令,接收端在确定数据帧有效时,可以执行该查询指令或控制指令;在确定该数据帧无效时,可以执行丢弃该数据帧或向发送端回复错误码等操作。

在一些实施例中,数据帧承载请求消息,请求消息包括查询指令或控制指令,则接收端302可以基于更新后的剩余时效和预设阈值确定请求消息是否有效,在确定该请求消息有效时,执行查询指令或控制指令。

其中,发送端301可以为上述请求方,则接收端302为上述响应方;或者,发送端301为上述响应方,则接收端302为上述请求方。其中,请求方可以为控制器,响应方可以为执行器,此处仅为示例,不应造成对发送端301和接收端302的限定,在不同的应用场景中,发送端301和接收端302可以为不同的设备,此处不做限定。

下面以工业以太网环境为例,对上述通信系统做进一步的介绍。

请参见图3,图3是本申请实施例提供的再一种可能的通信系统的示意图,该通信系统包括N个请求方、N个网络设备和响应方,其中,N为正整数。需要说明的是,其他实施例中,请求方的个数与网络设备的个数可以相同,也可以不同,据实际情况而定,此处N仅为示例,不应造成请求方的个数与网络设备的个数的限定。其中:

如图3所示,图3示例性示出了工业以太网内请求方与响应方之间的查询、控制场景,其中,工业以太网内多个请求方经一个或多个网络设备与响应方相连。图3示例性的画出了请求方-1,请求方-2和请求方-N,以及网络设备1和网络设备N,其中,请求方-1和请求方-2均与网络设备1建立通信连接,请求方-N与网络设备N建立通信连接。其中,网络设备可以用于对接收到的信息进行缓存,例如缓存响应消息;以及对接收到信息进行时效管理,即更新消息中的时效信息;还可以消息进行转发调度,例如基于时效优先转发某消息。

以请求方-1为例,请求方-1可以向网络设备1发送查询指令和/或控制指令,进而,该指令经过其他网络设备后到达响应方,其中,N个网络设备可以对接收到的指令中的时效信息进行更新;响应方在接收到该指令后,可以基于经N个网络设备动态更新后的时效信息确定是否执行该指令;响应方还可以将该指令对应的响应消息通过其他网络设备发送至网络设备1,进而,网络设备1将将响应消息发送至请求方-1,其中,N个网络设备可以对接收到的响应消息中的时效信息进行更新;N个网络设备可以缓存接收到的响应消息。

在网络设备缓存了接收到响应消息后,其他请求方在经网络设备向响应方请求该响应消息时,其他请求方就近的网络设备可以将缓存的响应消息发送至该请求方。例如,请求方-2可以向网络设备2发送查询指令和/或控制指令,网络设备2在查询到存储中有该指令对应的响应消息,并确定该响应消息未超过时效时,可以将将响应消息发送至请求方-2。

关于N个请求方、N个网络设备和响应方之间的通信关系以及时效更新等实现可以具体参见下文中的相关描述,此处不再展开。

如图3所示,图3示例性示出了网络设备中的功能单元,如信息缓存单元、时效管理单元和转发单元。其中,信息缓存单元用于缓存请求方从响应方查询得到的信息结果;时效管理单元用于实时更新请求、响应消息得时效信息;转发单元可根据信息或指令的实时性、可靠性要求等决策请求、响应消息优先转发、普通转发或丢弃。

关于网络设备中的功能单元的具体描述可以具体参见下文中的相关描述,此处不再展开。

需要说明的是,网络设备还可以包括图3中或多或少的功能单元,此处不作限定。

请参见图4,图4是本申请实施例提供的一种时效保证方法的流程示意图。进一步的,该方法可以基于图1、图2A或图2B所示的架构来实现。该方法可以包括以下部分或全部步骤:

步骤S401:发送端向接收端发送数据帧,数据帧包括时效信息,数据帧的时效信息用于指示数据帧的剩余时效。

其中,数据帧可以承载请求消息、响应消息和主动通知消息中的任一种;请求消息可以包括查询指令或控制指令,响应消息可以为响应于查询指令或控制指令生成的回复消息,主动通知消息为发送端自动发送至接收端的消息,例如按照预设规则定时发送的通知消息等。

步骤S402:接收端基于接收端的链路层接收数据帧的起始时刻和链路层接收数据帧的终止时刻,得到链路时延。

在一些实施例中,接收端可以将起始时刻和终止时刻的时间差确定为链路时延,其中,起始时刻可以为接收到数据帧的起始位时的时刻,终止时刻可以为接收到数据帧的终止位的时刻。其中,起始位、终止位遵守数据帧的链路层帧格式定义的起始位编码(前导码或帧起始定界符)和终止编码(帧校验序列FCS)。

步骤S403:接收端基于链路时延和接收处理时延,更新剩余时效,接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间。

在一种实现中,接收端可以将数据帧中的剩余时效减去链路时延和接收处理时延,得到更新后的剩余时效。进而,接收端还可以基于更新后的剩余时效,确定该数据帧是否在时效范围内。例如该数据帧包括查询指令或控制指令,接收端在确定数据帧有效时,可以执行该查询指令或控制指令;在确定该数据帧无效时,可以执行丢弃该数据帧或向发送端回复错误码等操作。

在一些实施例中,数据帧承载请求消息,请求消息包括查询指令或控制指令,则接收端可以基于更新后的剩余时效和预设阈值确定请求消息是否有效;进而,在确定该请求消息有效时,执行查询指令或控制指令。

在另一些实施例中,发送端经至少一个网络设备向接收端发送数据帧,则网络设备可以对接收到的数据帧的剩余时效进行动态更新。请参见图5,图5是本申请实施例提供的一种网络设备更新时效信息的流程示意图。该方法包括以下部分或全部步骤:

步骤S501:网络设备接收数据帧,数据帧包括时效信息,时效信息用于指示数据帧的剩余时效。

其中,数据帧可以承载请求消息、响应消息和主动通知消息中的任一种;请求消息可以包括查询指令或控制指令,响应消息可以为响应于查询指令或控制指令生成的回复消息。

步骤S502:网络设备基于网络设备的链路层接收数据帧的起始时刻和链路层接收数据帧的终止时刻,得到传输时延。

在一些实施例中,传输时延可以为起始时刻和终止时刻的时间差,其中,起始时刻为接收到数据帧的起始位时的时刻,终止时刻为接收到数据帧的终止位的时刻;更新后的数据帧中的剩余时效为数据帧中的剩余时效减去传输时延和整体转发时延的差值。

步骤S503:网络设备基于网络设备的协议栈或应用层处理数据帧所需的时间,得到整体转发时延。

在一些实施例中,整体转发时延包括接收处理时延和发送处理时延;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间;发送处理时延为链路层发送更新后的数据帧前协议栈或应用层发送处理第一数据帧所需的时间。

其中,接收处理时延具体可以为链路层接收完所述数据帧的时刻至协议栈或应用层将该数据帧解析完成的时刻的时间差;协议栈或应用层接收处理数据帧具体可以包括对该数据帧进行解析等处理;协议栈或应用层发送处理第一数据帧具体可以包括对该数据帧进行封包等处理。

步骤S504:网络设备基于传输时延和整体转发时延,更新时效信息。

在一种实现中,网络设备可以将数据帧的剩余时效更新为第一时效,得到第一数据帧,第一时效为数据帧的剩余时效减去传输时延和接收处理时延的差值,第一数据帧的剩余时效为第一时效;再将第一数据帧的剩余时效更新为第二时效,得到更新后的数据帧,第二时效为第一时效与发送处理时延的差值,更新后的数据帧的剩余时效为第二时效。

在一些实施例中,网络设备可以基于第一时效,确定对第一数据帧的处理方式;处理方式包括优先转发、正常转发或丢弃。例如,在确定优先转发该第一数据帧时,优先将该第一数据帧从协议栈或应用层发送至链路层,以使网络设备可以尽快将该第一数据帧发送至下一个网络设备或响应方。

可选地,可以基于数据帧对应的可靠性等级和数据帧对应的实时性等级中的至少一项和第一时效,确定对第一数据帧的处理方式。

在另一些实施例中,网络设备还可以存储第一数据帧。例如数据帧为承载响应方响应于第一请求方的查询指令生成的响应消息的数据帧,则网络设备可以存储响应消息。例如,网络设备可以在将数据帧的剩余时效更新为第一时效,得到第一数据帧后,在第一时效和响应消息对应的实时性等级满足缓存决策时,存储第一数据帧。那么,若网络设备接收来自其他请求方的查询指令,而网络设备存储有该查询指令请求的响应消息,则网络设备可以向第二请求方发送响应消息。其中,网络设备存储的可以是第一数据帧,也可以是第一数据帧承载的响应消息,具体可以是第一数据帧的报文内容,例如请求消息中的查询指令对应的查询内容等。

可选地,网络设备可以在确定存储的响应消息有效后,向第二请求方发送该响应消息;在确定该响应消息已经失效时,将该请求消息转发至响应方。例如,网络设备可以获取响应消息对应的第一时效和存储响应消息的时刻;在当前时刻和存储响应消息的时刻的时间差不大于第一时效时,向第二请求方发送响应消息;在当前时刻和存储响应消息的时刻的时间差大于第一时效时,向响应方发送请求消息。

步骤S505:网络设备发送更新后的数据帧。

在一些实施例中,网络设备在更新数据帧的时效信息后,将该更新后的数据帧转发至下一个网络设备或响应方。

以上图4和图5所示的方法实施例中包含了很多可能的实现方案,下面结合图6A至图11对其中的部分实现方案进行举例说明,需要说明的是,图6A至图11未解释到的相关概念、操作或者逻辑关系可以参照图4和图5所示实施例中的相应描述。

请参见图6A,图6A是本申请实施例提供的另一种时效保证方法的流程示意图,该方法可以基于图2A所示的架构来实现。该时效保证方法可以包括如下步骤:

步骤S601:请求方向至少一个网络设备发送请求消息,该请求消息用于请求响应方响应于该请求消息中的控制指令或查询指令,该请求消息包括时效信息,该时效信息用于指示请求消息的剩余时效。

其中,该请求消息可以包括查询指令或控制指令。例如,该请求消息包括查询指令或控制指令,以及该指令的时效信息。其中,时效信息可以为用于指示剩余时效的指示信息或数值,例如,时效信息可以为1秒或用于指示1秒的指示信息。

其中,至少一个网络设备可以为一个或多个网络设备。例如,在至少一个网络设备为一个网络设备时,请求方向至少一个网络设备发送请求消息即是,请求方向该网络设备发送请求消息,该网络设备将该请求消息发送至响应方;在至少一个网络设备为多个网络设备时,请求方向至少一个网络设备发送请求消息即是,请求方向多个网络设备中的一个网络设备发送请求消息,多个网络设备中的网络设备会基于请求方向响应方发送数据的通信链路依次转发该请求消息,直至转发至响应方。

步骤S602:至少一个网络设备中每一个网络设备均对接收到的请求消息中的时效信息进行更新。

假设上述至少一个网络设备中包括网络设备N,以下示例性的以网络设备N为例,介绍网络设备对请求消息进行时效更新的一种具体实现。

请参见图6B,图6B是本申请实施例提供的一种网络设备对请求消息进行时效更新的方法流程图。该方法包括如下部分或全部步骤:

步骤S6021:网络设备N基于接收到的请求消息,计算传输时延和整体转发时延,该整体转发时延包括接收处理时延和发送处理时延。

其中,网络设备N可以为与请求方直接通信的第一网络设备,也可以为与请求方间接通信的第二网络设备。如图3所示,假设请求方为请求方-N,则网络设备N为与请求方直接通信的网络设备(即上述第一网络设备),即请求方直接向第一网络设备发送该请求消息;假设请求方为请求方-1,网络设备N为与请求方间接通信的网络设备(即上述第二网络设备)。

在一些实施例中,考虑到工业以太网场景,请求方与响应方部署位置相近,指令的数据帧在网络设备间的传输时延,可等价为网元接收端口接收数据帧的起始位时刻Ts和终止位时刻Te的时间差ΔTt=Te–Ts;数据帧在网络设备内的转发时延,可分为两部分,接收处理时延ΔTp=T–Te和发送处理时延ΔTp’=Ts'–T,其中Ts’为发送端口发送指令的数据帧的起始位的时刻,整体转发时延可表示为ΔTf=ΔTp+ΔTp’。其中,处理时刻T为数据帧在协议栈或应用层处理完成的时刻,具体处理可以为解析该数据帧等操作。

需要说明的是,上述传输时延也可以称为链路时延,为方便表述,以下均称为传输时延。

步骤S6022:网络设备N基于传输时延和接收处理时延,计算第一时效Pn。

在一些实施例中,网络设备N可以将接收到的请求消息中的剩余时效减去传输时延和接收处理时延,得到第一时效。

步骤S6023:网络设备N将请求消息中的剩余时效更新为第一时效Pn,得到缓存消息。

在一些实施例中,网络设备N可以将请求消息中的剩余时效更新为第一时效Pn,得到缓存消息。

步骤S6024:网络设备N基于第一时效Pn、实时性要求和可靠性要求,加速转发、正常转发或丢弃该缓存消息。

其中,网络设备N加速转发、正常转发该缓存消息具体可以是指,网络设备N在将缓存消息从协议栈或应用层发送至链路层的过程中加速转发或正常转发该缓存消息。

例如,正常转发是将发送队列中的消息按照从前到后的排列顺序从协议栈或应用层发送至链路层;假设在发送队列中存在若干个消息位于缓存消息前面,则正常转发是,网络设备依次将若干个消息从协议栈或应用层发送至链路层,再将该缓存消息从协议栈或应用层发送至链路层;而优先转发是先将该缓存消息从协议栈或应用层发送至链路层,再依次将若干个消息从协议栈或应用层发送至链路层。

在一种实现中,网络设备N可以基于Pn结合指令的实时性要求R、可靠性要求R’计算消息的优先等级Q=f(Pn|R|R’),当Q>Qhigh则进行高优先级转发、Qhigh≥Q≥Qdrop则进行普通转发,或者Q<Qdrop则丢弃该消息。其中,Qhigh和Qdrop可以为预设阈值,Q=f(Pn|R|R’)为预设函数。

步骤S6025:网络设备N将该缓存消息中的剩余时效更新为第二时效P'n,得到更新后的请求消息,该第二时效为第一时效减去发送处理时延得到的时间段。

在一种实现中,网络设备在链路层接收到该缓存消息,在链路层汇总中将该缓存消息中剩余时效更新为第二时效P'n。其中,第二时效为第一时效减去发送处理时延得到的时间段。

步骤S6026:网络设备N将更新后的请求消息转发至下一个网络设备或响应方。

其中,下一个网络设备是指请求方至响应方的通信连路上网络设备N的下一个网络设备。例如请求方向响应方发送消息,需要由请求方发送至网络设备N,网络设备N转发至网络设备N+1,再由网络设备N+1发送至响应方,则网络设备的下一个网络设备是指网络设备N+1。

步骤S603:至少一个网络设备将更新后的请求消息发送至响应方。

在一些实施例中,至少一个网络设备中每一个网络设备更新接收到的请求消息中剩余时效,将经所有网络设备更新时效后的请求消息发送至响应方。

假设,请求方的请求消息经两个网络设备后发送至响应方,该请求消息中的初始剩余时效为T1;第一个网络设备接收到请求方发送的请求消息后,将该请求消息的剩余时效更新为T2,T2为T1减去第一个网络设备计算的传输时延和整体转发时延;第二个网络设备在接收到第一网络设备发送的请求消息后,将该请求消息的剩余时效更新为T3,T3为T2减去第二个网络设备计算的传输时延和整体转发时延;最后,第二个网络设备将更新后的请求消息发送至响应方,响应方接收到该请求消息的剩余时效为T3,响应方可以基于T3确定该请求消息是否符合时效。其中,T1、T2、T3均为正数。可以理解的,T1>T2>T3。

步骤S604:响应方响应于接收到的请求消息,向至少一个网络设备发送响应消息,该响应消息包括时效信息,该时效信息用于指示该响应消息的剩余时效。

其中,该请求消息包括查询指令或控制指令,以及指令的时效信息;则响应方在接收到该请求后,可以先基于时效信息确定该指令是否有效,在指令有效时执行该指令,并生成该指令对应的响应消息。

例如,响应方在查询指令有效时,可以响应于该查询指令进行查询,得到查询信息;进而,生成响应消息,该响应消息包括查询信息。又例如,响应方在控制指令有效时,可以响应于该指令进行控制操作;还可以生成响应消息,该响应消息包括控制结果或控制参数等消息。

其中,响应方可以基于时效信息判断该请求消息是否有效,关于判定方法此处不作限定。例如,响应方可以在该消息的剩余时效小于0时,确定该消息已失效;又或者在该消息的剩余时效小于预设阈值时,确定该消息已失效。可以理解的,本申请实施例中,响应方不需要与请求方建立时间同步,响应方仅基于剩余时效和预设阈值即可确定消息是否有效。

在一些实施例中,响应方在接收请求消息时,计算请求消息的链路时延和接收处理时延;进而,基于链路时延和接收处理时延更新该请求消息的剩余消息,基于更新的剩余时效确定该请求消息是否有效。其中,该链路时延可以是基于响应方接收承载该请求消息的数据帧的起始时刻和终止时刻得到的,接收处理时延为响应方的链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间。关于响应方计算链路时延和接收处理时延的具体方法可以参见网络设备计算传输时延和接收处理时延的相关内容,此处不再赘述。

步骤S605:至少一个网络设备中每一个网络设备均对接收到的响应消息的时效信息进行更新。

在一些实施例中,至少一个网络设备中每一个网络设备对接收到的响应消息的时效信息进行更新的过程,可以与其对请求消息的时效更新的过程一致,具体可以参见上述网络设备对请求消息进行时效更新的相关内容,此处不再赘述。

步骤S606:至少一个网络设备将更新后的响应消息发送至第一请求方。

在一些实施例中,至少一个网络设备中每一个网络设备更新接收到的响应消息中剩余时效,将经所有网络设备更新时效后的响应消息发送至响应方。

以下结合图7,示例性的详细介绍上述步骤S601至步骤S606的一种可能的具体实现。

如图7所示,图7中示例性示出了请求方、响应方以及多个网络设备中的网络设备N和网络设备N+1。其中,请求方可以经多个网络设备向响应方发送请求消息,响应方可以经多个网络设备向请求方发送响应消息。

可以理解的,在请求方经多个网络设备向响应方发送请求消息时,请求方为发送端,响应方为接收端;在响应方经多个网络设备向请求方发送响应消息时,响应方为发送端,请求方为接收端。

其中,请求方发送查询、控制指令时,请求消息中携带该指令的时效信息P;查询指令的回应消息中也携带查询信息ID和信息值V以及信息时效信息P。如图7所示,图7示例性示出了请求消息和响应消息包括的信息,如信息ID、信息值V和时效信息。

考虑到工业以太网场景,请求方与响应方部署位置相近,指令的数据帧在网络设备间的传输时延,可等价为网元接收端口接收数据帧的起始位时刻Ts和终止位时刻Te的时间差ΔTt=Te–Ts;数据帧在网络设备内的转发时延,可分为两部分,接收处理时延ΔTp=T–Te和发送处理时延ΔTp'=Ts'–T,其中,T为协议栈或应用接收处理完毕的时刻,Ts'为发送端口发送指令的数据帧的起始位的时刻,整体转发时延可表示为ΔTf=ΔTp+ΔTp’。

以网络设备N为例,如图7所示,网络设备N接收端口接收数据帧的起始位时刻Tsn和终止位时刻Ten的时间差ΔTtn=Ten–Tsn;数据帧在网络设备内的转发时延,可分为两部分,接收处理时延ΔTpn=Tn–Ten和发送处理时延ΔTp'n=Ts'n–Tn,其中,Tn为协议栈或应用接收处理完毕的时刻,Ts'n为发送端口发送指令的数据帧的起始位的时刻,整体转发时延可表示为ΔTfn=ΔTp n+ΔTp'n。

进而,网络设备N可以基于传输时延和整体转发时延计算Pn和P'n。网络设备N计算Pn和P'n具体公式可以如图7所示,网络设备N接收到请求消息的时效为P'

其中,链路上的各网络设备更新请求消息、响应消息中剩余时效信息Pn,并根据Pn结合指令的实时性要求R、可靠性要求R'计算消息的优先等级Q=f(Pn|R|R'),当Q>Qhigh则进行高优先级转发、Qhigh≥Q≥Qdrop则进行普通转发,或者Q<Qdrop则丢弃该消息。其中,Qhigh和Qdrop可以为预设值。

在转发消息之前,链路上的各网络设备可以将消息中剩余时效信息进行更新。为以网络设备N为例,网络设备N在转发请求消息前,可以基于ΔTp'n对时效进一步的更新,如图7所示,网络设备N转发的消息中的时效为P'n。

可以理解的,各网络设备无需借助外部时钟服务器,仅需根据指令的数据帧结构即可计算传输时延;网络设备可根据请求消息、响应消息的传输路径,实时更新该消息的剩余时效;网络设备可结合请求消息、响应消息的剩余时效和消息的实时性要求、可靠性要求等,提升指令的响应速度。

在另一些实施例中,网络设备对响应消息的处理可以与对请求消息的处理也可以不同。

以下示例性的介绍本申请实施例提供的另一种时效保证方法。

该方法中,请求方(第一请求方)与响应方的通信链路上的网络设备可以存储更新后的响应消息,以使其它请求方(即第二请求方)在请求相同的响应消息时,通信链路上的网络设备可以将存储的响应消息发送至其它请求方。可以理解的,上文中步骤S604至步骤S606可以替换为本申请实施例中的步骤S802。

请参见图8,图8是本申请实施例提供的又一种时效保证方法的流程图,该方法包括以下步骤:

步骤S801:第一请求方经至少一个网络设备向响应方发送查询指令,至少一个网络设备包括网络设备N。

其中,查询指令可以包括该指令对应的时效信息,该时效信息用于指示该查询指令的剩余时效。

在一些实施例中,第一请求方经至少一个网络设备向响应方发送查询指令的过程中还包括发送该指令对应的时效信息;至少一个网络设备中每一个网络设备可以更新接收到的查询指令对应的时效信息;进而,响应方可以接收到经每一个网络设备更新后的时效信息,基于该查询指令的剩余时效确定该查询指令是否有效。

需要说明的是,第一请求方经至少一个网络设备向响应方发送查询指令的具体实现还可以参见上文中步骤S601至步骤S603的相关内容,此处不作赘述。

步骤S802:响应方响应于接收到的查询指令,经至少一个网络设备向第一请求方发送响应消息,该响应消息包括用于指示剩余时效的时效信息。

在一些实施例中,响应方在接收到查询指令后,进行查询,得到目标信息;然后,生成响应消息,该响应消息包括目标信息;进而,将该响应消息经至少一个网络设备发送至第一请求方。

其中,至少一个网络设备中每一个网络设备在接收到响应消息后,可以对该响应消息中的剩余时效进行更新;还可以存储该响应消息。

以下以网络设备N为例,详细介绍网络设备N在接收到响应消息后的一种具体操作。

步骤S8021:网络设备N在接收到响应消息后,将时效信息指示的剩余时效更新为第一时效,得到缓存消息,第一时效为该剩余时效减去传输时延和接收处理时延的时间段。

其中,网络设备N计算传输时延和接收处理时延的具体过程可参见上文中的相关描述,此处不再赘述。

步骤S8022:网络设备N在第一时延满足预设条件时,存储该缓存消息。

在一种实现中,网络设备N可以基于第一时延,进行缓存决策,确定是否存储该缓存消息。例如,各网络设备可以根据响应消息中信息的剩余时效信息Pn结合该信息的实时性要求计算存储等级S=f’(Pn|R),当S>Sstore时存储该信息,用于后续网络设备收到相同信息的查询指令时的快速处理。其中,Sstore可以为预设阈值,S=f’(Pn|R)为预设函数。

其中,存储该缓存消息具体可以是存储该缓存消息,也可以是存储该缓存消息对应的报文内容,例如可以是存储该响应消息对应的查询指令要求查询的内容等。

在一些实施例中,至少一个网络设备中每一个网络设备均存储该缓存消息,那么,与该网络设备直接通信的请求方请求该查询指令对应的响应消息时,网络设备可以将该缓存消息发送至请求方。可以理解的,该方法可以实现就近响应,提高响应的速度。其中,关于网络设备查询缓存消息等内容可以参见以下步骤S8026至步骤S8028的相关描述。

需要说明的是,在另一些实施例中,也可以是至少一个网络设备中部分网络设备存储有该缓存消息,可以根据实际情况而定,此处不做限定。

步骤S8023:网络设备N基于第一时延,确定优先转发或普通转发缓存消息。

其中,网络设备N基于第一时延,确定优先转发或普通转发缓存消息的过程可以参见步骤S6024中的相关内容,此处不再赘述。

步骤S8024:网络设备N将缓存消息的剩余时效更新为第二时效,得到更新后的响应消息,第二时效为第一时效减去发送处理时延的时间段。

其中,网络设备N将缓存消息的剩余时效更新为第二时效的过程可以参见步骤S6025中的相关内容,此处不再赘述。

步骤S8025:网络设备N将更新后的响应消息发送至下一个网络设备或第一请求方。

其中,下一个网络设备是指响应方至请求方的通信连路上网络设备N的下一个网络设备。例如请求方向响应方发送消息,需要由请求方发送至网络设备N,网络设备N转发至网络设备N-1,再由网络设备N-1发送至响应方,则网络设备的下一个网络设备是指网络设备N-1。

以下结合图9,介绍图8所示的时效保证方法的一种可能的具体实现。

图9以响应方响应于请求方-1发送的查询指令,向请求方-1发送响应消息的场景为例,对响应消息的传输过程进行介绍。需要说明的是,请求方-1向响应方发送查询指令的过程可以参见上文中的相关描述,此处不作赘述。

请参见图9,图9是本申请实施例提供的一种响应消息传输过程的流程示意图。

如图9所示,请求方-1和响应方进行消息传输的通信链路上包括多个网络设备,图9中示例性示出了网络设备1和网络设备N,其中,网络设备1与请求方-1建立通信连接。具体的,请求方-1可以向网络设备1发送查询指令,进而,网络设备1将该查询指令发送至通信链路上的下一个网络设备,依次类推,直至最后一个网络设备将该查询指令发送至响应方;响应方可以响应于该查询指令,生成响应消息,响应消息可以携带信息ID、信息值V和时效信息;该响应消息经通信链路上的多个网络设备发送至网络设备1,由网络设备1将该响应消息发送至请求方-1。其中,该响应消息中包括随通信链路上的网络设备不断动态更新的剩余时效,该剩余时效可以用于请求方-1基于该剩余时效判断该响应消息是否有效。

其中,各网络设备可以根据响应消息中信息的剩余时效信息Pn结合该信息的实时性要求计算存储等级S=f’(Pn|R),当S>Sstore时存储该信息,用于后续网络设备收到相同信息的查询指令时的快速处理。其中,Sstore可以为预设值。

以网络设备N为例,网络设备N接收到的响应消息中的时效为P'

其中,网络设备N计算传输时延、接收处理时延和发送处理时延的具体过程可以参见上文中的相关内容。

基于图8和图9所示的时效保证方法,本申请实施例提供了一种查询方法。该方法中,由于网络设备存储经其传输的响应消息,因此,网络设备可以在接收到查询该响应消息的查询指令时,直接向请求方发送存储的该响应消息。

以下以网络设备N为例,结合图10,介绍该查询方法。请参见图10,图10是本申请实施例提供的一种查询方法的流程示意图,如图10所示,该查询方法可以包括以下全部或部分步骤:

步骤S8026:网络设备N接收来自第二请求方的查询指令。

其中,网络设备N可以为与第二请求方直接通信的网络设备;也可以为与第二请求方间接通信的网络设备。

步骤S8027:网络设备N在存储中查询该查询指令对应的响应消息。

在一些实施例中,网络设备N在接收到查询指令后,可以先在存储的缓存消息中查询是否存有该查询指令对应的响应消息。

步骤S8028:网络设备N在查询到的响应消息满足预设条件时,向第二请求方发送响应消息。

在一种实现中,网络设备N在查询到的响应消息未失效时,向第二请求方发送响应消息。其中,网络设备N可以基于响应消息的剩余时效确定该响应消息是否失效。例如网络设备N查询该响应消息的存储时间和当前时间,计算存储时间和当前时间的时间差,再从剩余时效中减去上述时间差,若剩余时效小于预设阈值则判定该响应消息失效,若剩余时效大于预设阈值则判定该响应消息有效,其中,预设阈值可以为0,也可以为其他值,此处不做限定。

在一些实施例中,网络内其他请求方经网络设备向响应方查询信息时,各级网络设备优先检查本地信息缓存,若存在该信息缓存且未超出时效,则响应本地缓存的信息,否则转发该查询指令至响应方。

在一种可能的实现中,网络设备N为与第二请求方间接通信的网络设备。例如,第二请求方经两个网络设备与响应方通信,第二请求方将查询指令发送至网络设备N-1,再由网络设备N-1更新该查询指令的时效信息后转发给网络设备N,最后由网络设备N发送至响应方,那么网络设备N为与第二请求方间接通信的网络设备。在网络设备N-1未存储该查询指令对应的响应消息时,网络设备N-1将该查询指令的时效信息更新后,将更新后的查询指令转发给网络设备N,在网络设备N查询到该查询指令对应的响应消息时,网络设备N可以将该响应消息发送至网络设备N-1,再由网络设备N-1将该响应消息发送至第二请求方。其中,网络设备N将该响应消息经网络设备N-1发送至第二请求方时,网络设备N和网络设备N-1均可以对该响应消息中的剩余时效进行更新。

可以理解的,网络设备为与请求方建立直接通信连接的网络设备,那么,网络设备执行上述图10所示的查询方法,可以实现就近响应;网络设备为与请求方建立间接通信连接的网络设备时,同样可以减少原本需要发送至响应方时所要花费的时间。

请参见图11,图11是本申请实施例提供的一种就近响应的场景图。

如图11所示,图11示例性的画出了请求方-1,请求方-2和请求方-N,以及网络设备1和网络设备N,其中,请求方-1和请求方-2均与网络设备1建立通信连接,请求方-N与网络设备N建立通信连接。

示例性的,请求方-1为上述第一请求方,请求方-2和请求方-N为上述第二请求方。具体的,请求方-1与响应方的通信经包括图11所示的网络设备1和网络设备N等多个网络设备。假设请求方-1向网络设备1发送查询指令,进而,在响应方经上述多个网络设备将该查询指令对应的响应消息发送至请求方-1的过程中,多个网络设备均对响应消息中的时效进行更新,多个网络设备均存储更新后的响应消息。

那么,在请求方-2向网络设备2发送上述查询指令时,网络设备2可以先在存储中查询该查询指令对应的响应消息,在查询到对应的响应消息后,将该响应消息发送至请求方-2;请求方-N向网络设备N发送查询指令时,网络设备2可以先在存储中查询是否有该查询指令对应的响应消息,在查询到对应的响应消息后,将该响应消息发送至请求方-N。

其中,网络设备存储的响应消息可以为该网络设备接收到的响应消息更新为第一时效后的响应消息(如上文所述的缓存消息),关于网络设备对响应消息进行时效更新。参见上文中的相关描述,此处不再赘述。

图11示例性的示出了响应消息携带的信息,如信息ID、信息值和时效信息。可以理解的,响应方生成的响应消息的初始时效为P,多个网络设备可以对响应消息中的时效信息进行更新,如网络设备N将该响应消息的时效更新为P

上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。

请参见图12,图12是本申请实施例提供的一种时效保证装置120的结构示意图,该装置120可以为网络设备。当然,该装置120也可以为网络设备中的一个器件,例如芯片或者集成电路等,该装置120可以包括接收单元1201、第一处理单元1202、第二处理单元1203、更新单元1204和发送单元1205。该时效保证装置120用于实现前述的时效保证方法,例如图5或图6B所示的任意一个实施例的时效保证方法。

在一种可能的实施方式中,接收单元1201,用于接收数据帧,数据帧包括时效信息,时效信息用于指示数据帧的剩余时效;

第一处理单元1202,用于基于网络设备的链路层接收数据帧的起始时刻和链路层接收数据帧的终止时刻,得到传输时延;

第二处理单元1203,用于基于网络设备的协议栈或应用层处理数据帧所需的时间,得到整体转发时延;

更新单元1204,用于基于传输时延和整体转发时延,更新时效信息;

发送单元1205,用于发送更新后的数据帧。

在一种可能的实施方式中,传输时延为起始时刻和终止时刻的时间差;起始时刻为接收到数据帧的起始位时的时刻,终止时刻为接收到数据帧的终止位的时刻;

更新后的数据帧中的剩余时效为数据帧中的剩余时效减去传输时延和整体转发时延的差值。

在一种可能的实施方式中,整体转发时延包括接收处理时延和发送处理时延;更新单元1204用于:

将数据帧的剩余时效更新为第一时效,得到第一数据帧;第一时效为数据帧的剩余时效减去传输时延和接收处理时延的差值;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间;第一数据帧的剩余时效为第一时效;

将第一数据帧的剩余时效更新为第二时效,得到更新后的数据帧;第二时效为第一时效与发送处理时延的差值,发送处理时延为链路层发送更新后的数据帧前协议栈或应用层发送处理第一数据帧所需的时间;更新后的数据帧的剩余时效为第二时效。

在一种可能的实施方式中,在发送单元1205发送更新后的数据帧之前,装置还包括处理单元,处理单元用于:

基于第一时效,确定对第一数据帧的处理方式;处理方式包括优先转发、正常转发或丢弃。

在一种可能的实施方式中,处理单元用于:

基于数据帧对应的可靠性等级和数据帧对应的实时性等级中的至少一项和第一时效,确定对第一数据帧的处理方式。

在一种可能的实施方式中,数据帧承载请求消息、响应消息和主动通知消息中的任一种,请求消息包括查询指令或控制指令,响应消息为响应于查询指令或控制指令生成的回复消息。

在一种可能的实施方式中,数据帧承载响应方响应于第一请求方的查询指令生成的响应消息,装置还包括存储单元,存储单元用于:

存储响应消息。

在一种可能的实施方式中,存储单元用于:

在第一时效和响应消息对应的实时性等级满足缓存决策时,存储响应消息。

在一种可能的实施方式中,接收单元1201,用于接收来自第二请求方的查询指令,来自第二请求方的查询指令用于请求响应消息;

发送单元1205,用于向第二请求方发送响应消息。

在一种可能的实施方式中,发送单元1205用于:

获取响应消息对应的第一时效和存储响应消息的时刻;

在当前时刻和存储响应消息的时刻的时间差不大于第一时效时,向第二请求方发送响应消息;

在当前时刻和存储响应消息的时刻的时间差大于第一时效时,向响应方发送请求消息。

需要说明的是,各个单元的实现还可以对应参照图6A或者图8所示的实施例的相应描述。该时效保证装置120可以为图6A或者图8所示实施例中的网络设备。

可以理解的,本申请各个装置实施例中,对多个单元或者模块的划分仅是一种根据功能进行的逻辑划分,不作为对装置具体的结构的限定。在具体实现中,其中部分功能模块可能被细分为更多细小的功能模块,部分功能模块也可能组合成一个功能模块,但无论这些功能模块是进行了细分还是组合,装置120在配对的过程中所执行的大致流程是相同的。例如,上述装置120中的接收单元1201和发送单元1205也可以集成为通信单元,该通信单元可以实现接收单元1201和发送单元1205所实现的功能。通常,每个单元都对应有各自的程序代码(或者程序指令),这些单元各自对应的程序代码在处理器上运行时,使得该单元受处理单元的控制而执行相应的流程从而实现相应功能。

请参见图13,图13是本申请实施例提供的一种时效保证装置130的结构示意图,该装置130可以接收端。当然,该装置130也可以为接收端中的一个器件,例如芯片或者集成电路等,该装置130可以包括接收单元1301、处理单元1302和更新单元1303。该时效保证装置130可以为上述实施例中的响应方或请求方,用于实现前述的时效保证方法,例如图6A或者图8所示的任意一个实施例的时效保证方法。

在一种可能的实施方式中,该装置包括:

接收单元1301,用于接收来自发送端的数据帧;数据帧包括时效信息,数据帧的时效信息用于指示数据帧的剩余时效;

处理单元1302,用于基于接收端的链路层接收数据帧的起始时刻和接收端的链路层接收数据帧的终止时刻,得到链路时延;

更新单元1303,用于基于链路时延和接收处理时延,更新剩余时效;接收处理时延为链路层接收数据帧后协议栈或应用层接收处理数据帧所需的时间。

在一种可能的实施方式中,数据帧承载请求消息,请求消息包括查询指令或控制指令;装置还包括执行单元1304,执行单元1304用于:

在基于剩余时效和预设阈值确定请求消息有效时,执行查询指令或控制指令。

在一种可能的实施方式中,接收单元1301用于:

经至少一个网络设备接收来自请求方的数据帧;

至少一个网络设备用于基于传输时延和整体转发时延更新数据帧的剩余时效;传输时延是基于网络设备的链路层接收数据帧的起始时刻和网络设备的链路层接收数据帧的终止时刻得到的;整体转发时延是基于网络设备的协议栈或应用层处理数据帧所需的时间得到的。

需要说明的是,各个单元的实现还可以对应参照图6A或者图8所示的实施例的相应描述。该时效保证装置130可以为图6A或者图8所示实施例中的响应方或请求方。

请参见图14,图14是本申请实施例提供的一种时效保证装置140的结构示意图,该时效保证装置140可以为节点,也可以为节点中的一个器件,例如芯片或者集成电路等。该装置140可以包括至少一个处理器1402和通信接口1404。进一步可选的,所述时效保证装置还可以包括至少一个存储器1401。更进一步可选的,还可以包含总线1403,其中,存储器1401、处理器1402和通信接口1404通过总线1403相连。

其中,存储器1401用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器1401可以是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read onlymemory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)等等中的一种或者多种的组合。

处理器1402是进行算术运算和/或逻辑运算的模块,具体可以是中央处理器(central processing unit,CPU)、图片处理器(graphics processing unit,GPU)、微处理器(microprocessor unit,MPU)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)、复杂可编程逻辑器件(Complex programmable logic device,CPLD)、协处理器(协助中央处理器完成相应处理和应用)、微控制单元(Microcontroller Unit,MCU)等处理模块中的一种或者多种的组合。

通信接口1404可以用于为所述至少一个处理器提供信息输入或者输出。和/或所述通信接口可以用于接收外部发送的数据和/或向外部发送数据,可以为包括诸如以太网电缆等的有线链路接口,也可以是无线链路(Wi-Fi、蓝牙、通用无线传输、车载短距通信技术等)接口。可选的,通信接口1404还可以包括与接口耦合的发射器(如射频发射器、天线等),或者接收器等。

该装置140中的处理器1402用于读取所述存储器1401中存储的计算机程序,用于执行前述的时效保证方法,例如图6A或者图8所示实施例所描述的时效保证方法。

在一种设计中,该时效保证装置140可以为图6A或者图8所示实施例中的网络设备。该装置140中的处理器1402用于读取所述存储器1401中存储的计算机程序,用于执行上述图6A或者图8所示的方法实施例。

在另一种设计中,该时效保证装置140可以为图6A或者图8所示实施例中的请求方或响应方。该装置140中的处理器1402用于读取所述存储器1401中存储的计算机程序,用于执行以上图6A或者图8所示的方法实施例。

具体实现还可以参考图6A、图6B、图8或者图10所示实施例中的详细描述,此处不再赘述。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,实现图6A、图6B、图8或者图10所示的实施例所述的方法。

本申请实施例还提供了一种芯片系统,所述芯片系统包括至少一个处理器和通信接口,所述通信接口用于发送和/或接收数据,所述至少一个处理器用于调用至少一个存储器中存储的计算机程序,实现图6A、图6B、图8或者图10所示的实施例所述的方法。

进一步,所述至少一个处理器可以包含CPU、MPU、MCU或者协处理器中的至少一个。

本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在一个或多个处理器上运行时,可以实现如图6A、图6B、图8或者图10所示的实施例所描述的方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。

当使用软件实现时,可以全部或部分地以计算机指令产品的形式实现。

在计算机上加载和执行该计算机指令时,可以全部或部分地实现本申请实施例所描述的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其它可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者通过计算机可读存储介质进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid statedisk,SSD))等。

本申请方法实施例中的步骤可以根据实际需要进行顺序调整、合并和删减。

本申请装置实施例中的模块可以根据实际需要进行合并、划分和删减。

相关技术
  • 一种贮箱底铝合金顶盖蠕变时效成形的装置及方法
  • 一种能够同时保证亮度与色域的动态波长转换装置及方法
  • 一种保证送丝稳定进入熔池的方法和装置
  • 一种绿色智能振动时效系统及方法
  • 一种基于声发射技术的振动时效工艺参数确定系统及方法
  • 适用于有时效保证通讯系统的点对点通讯的终端调度方法
  • 适用于有时效保证通讯系统的点对点通讯的文件检索方法
技术分类

06120116498079