网络交换设备、操作网络交换机的方法和计算机可读介质

文档序号:1300177 发布日期:2020-08-07 浏览:5次 >En<

阅读说明:本技术 网络交换设备、操作网络交换机的方法和计算机可读介质 (Network switch device, method of operating network switch, and computer-readable medium ) 是由 图·Q·莱 塞安·雷米 克里斯蒂娜·乔伊·因 劳伦斯·伊明·钦格 于 2020-01-31 设计创作,主要内容包括:本申请涉及网络交换设备、操作网络交换机的方法和计算机可读介质。网络交换机包括:接收端口,被配置为接收数据;以及两个以上并行的第一路径,每个路径均被配置为接收数据的第一副本,对第一副本进行校验,并为第一副本生成保护。一个或多个第一表决元件被配置为接收数据的第二副本并交叉校验第二副本。处理部分被配置为处理一个或多个第二副本。两个以上并行的第二路径均被配置为接收数据的第三副本,并对第三副本执行多个校验,包括基于保护的校验。一个或多个第二表决元件被配置为接收数据的第四副本并交叉校验第四副本。发送端口被配置为将一个或多个第四副本发送到下一网络元件。(The application relates to a network switching device, a method of operating a network switch, and a computer readable medium. The network switch includes: a receive port configured to receive data; and more than two parallel first paths, each path configured to receive a first copy of the data, verify the first copy, and generate a protection for the first copy. The one or more first voting elements are configured to receive the second copy of the data and cross-check the second copy. The processing portion is configured to process the one or more second copies. The two or more parallel second paths are each configured to receive a third copy of the data and perform a plurality of checks on the third copy, including protection-based checks. The one or more second voting elements are configured to receive a fourth copy of the data and cross-check the fourth copy. The transmit port is configured to transmit the one or more fourth copies to the next network element.)

网络交换设备、操作网络交换机的方法和计算机可读介质

技术领域

本公开总体上涉及使用一个或多个表决元件来交叉校验数据副本。

背景技术

网络使用交换机和其他设备在源设备和目的设备之间路径数据(例如,数据分组)。例如,具体网络可以包括交换机,该交换机使用数据的分组交换路径从源设备接收数据,处理数据并将数据发送到目标设备。

在高完整性应用程序中,网络元件可以包括检测数据损坏的机制。例如,某些交换机可以包括并行执行某些操作的多个并行处理路径。为了说明,在一个示例中,交换机可以使用多个并行处理路径,这些并行处理路径针对在交换机处接收的具体数据并行执行相同的功能。

在某些情况下,使用多个并行处理路径可能会增加硬件成本和交换机的操作复杂性。另外,在某些情况下,通过多个并行处理路径进行的数据处理可能会“不匹配”(其中一个处理路径比另一条处理路径运行得更快),从而导致时间偏移。时间偏移可能会导致并行处理路径的输出出现差异,这表明在交换机中发生了数据损坏。

发明内容

在具体示例中,网络交换设备包括被配置为接收数据的接收端口和耦接至该接收端口的两个以上并行的第一路径。每个第一路径被配置为从接收端口接收数据的第一副本,对数据的第一副本执行校验,并为数据的第一副本生成保护。该网络交换设备还包括一个或多个第一表决元件,其被配置为从第一路径接收数据的第二副本并交叉校验数据的第二副本。该网络交换设备还包括处理部分,该处理部分被配置为响应于一个或多个第一表决元件来处理数据的一个或多个第二副本。该网络交换设备还包括两个以上并行的第二路径,每个第二路径被配置为从处理部分接收数据的第三副本并对该数据的第三副本执行多个校验。多个校验包括基于保护的校验。该网络交换设备还包括一个或多个第二表决元件,其被配置为从第二路径接收数据的第四副本并交叉校验数据的第四副本。该网络交换设备还包括发送端口,该发送端口被配置为响应于一个或多个第二表决元件而将数据的第四副本的一个或多个发送到下一网络元件。

在另一个具体示例中,一种操作网络交换机的方法包括:经由接收端口接收数据;以及将数据的第一副本提供给多个并行的第一路径。该方法还包括在每个第一路径上对数据的第一副本执行校验,并为数据的第一副本生成保护。该方法还包括交叉校验从第一路径接收的数据的第二副本。该方法还包括:响应于对数据的第二副本的交叉校验,表面第二副本中的至少一些彼此匹配并且是有效的,在处理部分处理来自数据的第二副本中彼此匹配且有效的至少一个的有效数据。该方法还包括:将数据的第三副本提供给多个并行的第二路径,并且在多个并行的第二路径中的每个第二路径上,对数据的第三副本进行多个校验。多个校验包括基于保护的校验。该方法还包括:对从第二路径接收的数据的第四副本进行交叉校验;以及响应于对数据的第四副本进行交叉校验,选择性地将数据的第四副本中的一个或多个经由发送端口发送至下一网络元件。

在另一具体示例中,计算机可读介质存储能由处理器执行以发起、执行或控制操作的指令。该操作包括:经由接收端口接收数据;以及将数据的第一副本提供给多个并行的第一路径。该操作还包括在每个第一路径上对数据的第一副本执行校验,并为数据的第一副本生成保护。该操作还包括交叉校验从第一路径接收的数据的第二副本。该操作还包括:响应于对数据的第二副本的交叉校验指示第二副本中的至少一些彼此匹配并且是有效的,在处理部分处理来自数据的第二副本中彼此匹配且有效的至少一个的有效数据。该操作还包括:将数据的第三副本提供给多个并行的第二路径,并且在多个并行的第二路径中的每个第二路径上,对数据的第三副本进行多个校验。多个校验包括基于保护的校验。该操作还包括:对从第二路径接收的数据的第四副本进行交叉校验;以及响应于对数据的第四副本进行交叉校验,选择性地将数据的第四副本中的一个或多个经由发送端口发送至下一网络元件。

附图说明

图1是示出系统的示例的某些方面的示图,该系统包括被配置为使用一个或多个表决元件来交叉校验数据副本的网络交换设备。

图2是示出诸如图1的网络交换设备的网络交换设备的具体示例的各方面的图。

图3是诸如图1的网络交换设备的网络交换机的操作方法的示例的图。

图4是包括图1的系统的车辆的生命周期的示例的流程图。

图5是示出计算系统的示例的各方面的框图,该计算系统被配置为执行指令以发起、执行或控制图3的方法的操作。

图6是示出包括图1的系统的车辆的说明性实现的各方面的框图。

具体实施方式

在具体实现中,网络交换设备在网络交换设备的中间阶段包括单个路径(例如,“合并”为单个路径的多个路径)。在一个示例中,单个路径包括一个或多个第一表决元件,配置为对来自多个并行的第一路径的数据进行交叉校验(例如,通过验证数据的完整性)。结果,通过“前期”交叉校验数据(例如,在网络交换设备的中间阶段并且在完成网络交换设备的数据处理之前),可以更快地检测到某些数据错误(与“后期”阶段交叉校验数据相比)。为了说明,在具体示例中,一个或多个第一表决元件被配置为校验“容易”检测的数据错误,例如通过校验数据的时间戳,数据的数据大小或与数据相关联的时序(例如延迟)。

在一些实现中,单个路径还包括将某些操作“压缩”到单个处理部分中的处理部分(例如,交换结构),例如不太可能产生错误的操作,要在多个并行处理路径上同步的复杂操作,或在多个并行处理路径上重复进行的昂贵操作。结果,使用单个处理部分可以减少或避免与整个信号路径的复制相关联的数据失配和时间偏移以及成本和复杂性。

参照图1,示出了系统的具体说明性示例,并且总体上将其表示为100。系统100包括网络交换设备102。系统100还包括耦接到网络交换设备102的发送网络元件104和下一网络元件106。

网络交换设备102包括接收端口110(例如,物理接收端口)。在一些示例中,接收端口110被配置为从发送网络元件104接收数据130。在一些示例中,发送网络元件104包括或对应于交换机或始发者系统。

网络交换设备102包括耦接到接收端口110的两个以上并行的第一路径(例如,第一路径112和第一路径114)。在一些示例中,第一路径112、114是重复路径。例如,在一些实现中,第一路径112与第一路径114同步,并且被配置为如果在第一路径112、114中没有错误发生,则生成与第一路径114的输出匹配的输出。

网络交换设备102还包括一个或多个第一表决元件116。在图1的示例中,一个或多个第一表决元件116耦接到第一路径112、114。网络交换设备102还包括处理部分118(例如,交换结构)和耦接到处理部分118的两个以上并行的第二路径(例如,第二路径122和第二路径124)。在一些示例中,处理部分118包括一个处理路径。在该示例中,处理部分118包括单个路径处理部分。在一些示例中,处理部分118被配置为将由一个或多个第一表决元件116提供的数据130的特定副本路由到第二路径122、124,并且存储数据130的特定副本。

在一些示例中,第二路径122、124是重复路径。例如,在一些实现中,第二路径122与第二路径124同步,并且被配置为如果在第二路径122、124中没有错误发生,则生成与第二路径124的输出匹配的输出。

网络交换设备102还包括一个或多个第二表决元件126和发送端口128(例如,物理发送端口)。在图1的示例中,发送端口128耦接到一个或多个第二表决元件126。在一些示例中,发送端口128被配置为将数据130转发到下一网络元件106。在一些示例中,下一网络元件106包括交换机188或终端系统190中的一个或多个。

在操作期间,接收端口110从一个或多个网络元件接收数据。为了说明,在图1的示例中,接收端口110被配置为从发送网络元件104接收数据130。

第一路径112被配置为接收数据130的第一副本132,并且第一路径114被配置为接收数据130的第一副本134。第一路径112被配置为执行数据130的第一副本的校验136并且第一路径114被配置为执行数据130的第一副本134的校验138。第一路径112被配置为生成第一副本132的保护140,并且第一路径114被配置为生成第一副本134的保护142。在具体示例中,第一路径112被配置为向第一副本132添加保护140以生成数据130的第二副本152,并且第一路径114被配置为将保护142添加到第一副本134以生成数据130的第二副本154。

一个或多个第一表决元件116被配置为从第一路径112接收数据130的第二副本152,并且从第一路径114接收数据130的第二副本154。一个或多个第一表决元件116被配置为执行数据的第二副本152、154的交叉校验156。在一些实现中,第二副本152包括保护140,并且第二副本154包括保护142。在一些实现中,执行交叉校验156包括校验包括在第二副本152、154中的每一个中的时间戳,校验每个第二副本152,154的数据大小,校验与第二副本152、154中的每一个相关联的定时(例如,延迟),校验一个或多个其他参数或它们的组合。

在一些实现中,一个或多个第一表决元件116被配置为基于第二副本152、154是否彼此匹配并且有效来确定与交叉校验156相关联的通过状态或失败状态。在具体示例中,如果满足校验136、138,则第二副本152、154有效,并且如果第二副本152与第二副本154相同,则第二副本152、154彼此匹配。

为了进一步说明,在一些实现中,如果第二副本152、154有效并且彼此匹配,则一个或多个第一表决元件116确定交叉校验156的通过状态。在这种情况下,在一些示例中,一个或多个第一表决元件116响应于确定通过状态而向处理部分118提供与第二副本152、154相对应的有效数据。作为另一示例,在一些实现中,如果第二副本152、154彼此不同,如果第二副本152、154无效或两者都有(例如,基于不同的时间戳,不同的数据大小或内容,不同的延迟,一个或多个其他参数或其组合),则一个或多个第一表决元件116确定交叉校验156的失败状态。在这种情况下,在一些实现中,一个或多个第一表决元件116被配置为响应于确定失败状态而“丢弃”数据130。作为具体的说明性示例,在一些实现中,网络交换设备102被配置为向发送网络元件104提供异常或错误消息(例如,否定确认(NACK)消息)。在一些示例中,发送网络元件104被配置为响应于接收到异常或错误消息而重新发送数据130。

在一些实现中,一个或多个第一表决元件116被配置为基于数据130的三个或更多第二副本来执行多数表决。例如,在一些实现中,网络交换设备102包括N条第一路径,其耦接到接收端口110和一个或多个第一表决元件116,并且被配置为生成数据130的N个第二副本(其中,N是大于二的正整数)。在这种情况下,在一些实现中,一个或多个第一表决元件116被配置为基于从N个第一路径接收到多于N/2个特定副本的有效实例,来选择N个第二副本的特定副本作为要转发给处理部分118的有效数据。

处理部分118被配置为响应于一个或多个第一表决元件116来处理数据130的一个或多个第二副本152、154。在具体示例中,处理部分118包括配置为接收数据130(例如,从接收端口110,从图1中未显示的其他来源或其组合)的多个输入分组并将输出分组路由到输出队列(例如,发送端口128中包含的输出队列,图1中未显示的其他组件或它们的组合)的交换结构。在一些示例中,处理部分118被配置为(例如,从包括在数据130中的分组报头中)读取数据130的路径或目的地信息,以确定输出队列。

第二路径122被配置为从处理部分118接收数据130的第三副本162,并且对数据130的第三副本162执行多个校验166、170。多个校验166、170包括基于保护的校验,例如保护140或保护142。第二路径124被配置为从处理部分118接收数据130的第三副本164,并对数据130的第三副本164执行多个校验168、172。校验166、172包括基于保护的校验,例如保护140或保护142(例如,错误校验)。

一个或多个第二表决元件126被配置为从第二路径122接收数据130的第四副本182,并从第二路径124接收数据130的第四副本184。一个或多个第二表决元件126配置为执行数据130的第四副本182、184的交叉校验186。在一些实现中,执行交叉校验186包括校验第四副本182、184中的每个副本中包含的时间戳,校验与第四副本182、184中的每一个相关联的路径,校验与第四副本182、184中的每一个相关联的定时(例如,延迟),校验一个或多个其他参数或其组合。

在一些实现中,一个或多个第二表决元件126被配置为基于第四副本182、184是否彼此匹配并且有效来确定与交叉校验186相关联的通过状态或失败状态。在具体示例中,如果满足校验166、168、170和172,则第四副本182、184有效,并且如果第四副本182与第四副本184相同,则第四副本182、184彼此匹配。

为了进一步说明,在一些实现中,如果第四副本182、184彼此匹配并且有效,则一个或多个第二表决元件126确定交叉校验186的通过状态。在这种情况下,在一些示例中,响应于确定通过状态,一个或多个第二表决元件126向发送端口128提供与第四副本182、184相对应的有效数据。作为另一示例,在一些实现中,如果第四副本182、184彼此不同,如果第四副本182、184无效或两者皆有,则一个或多个第二表决元件126确定交叉校验186的失败状态。在这种情况下,在一些实现中,一个或多个第二表决元件126被配置为响应于确定失败状态而“丢弃”数据130。作为具体的说明性示例,在一些实现中,网络交换设备102被配置为向发送网络元件104提供异常或错误消息(例如,NACK消息)。在一些示例中,发送网络元件104被配置为响应于接收到异常或错误消息而重新发送数据130。

在一些实现中,一个或多个第二表决元件126被配置为基于数据130的三个或更多第四副本执行多数表决。例如,在一些实现中,网络交换设备102包括M个第二路径,其耦接到处理部分118和一个或多个第二表决元件126,并被配置为生成数据130的M个第四副本(其中M是大于2的正整数)。在这种情况下,在一些实现中,一个或多个第二表决元件126被配置为基于从M个第二路径接收到超过M/2个特定副本的有效实例,来选择M个第四副本的特定副本作为要转发到发送端口128的有效数据。

发送端口128被配置为响应于一个或多个第二表决元件126而将数据130的第四副本182、184中的一个或多个发送至下一网络元件106。例如,在一些实现中,发送端口128包括物理接口,该物理接口耦接到一个或多个第二表决元件126和下一网络元件106。

尽管图1的示例示出了两个第一路径112、114,但是在其他示例中,接收端口110可以耦接至三个或多个第一路径。替代地或另外,尽管图1的示例示出了两个第二路径122、124,但是在其他示例中,处理部分118可以耦接到三个或多个第二路径。为了进一步说明,在一些示例中,网络交换设备102包括不同数量的第一路径和第二路径。例如,在具体实现中,网络交换设备102包括N个第一路径和M个第二路径,其中N≥2,其中M≥2,并且其中N≠M。另外,尽管参考多数票描述了表决元件116、126的某些方面,但是在其他实现中,可以使用另一种技术,例如多数票。在一些示例中,网络交换设备102包括多个接收端口110(例如,其中多个接收端口110中的每个接收端口耦接到“收敛”到处理部分118的一组并行路径中的对应路径)。替代地或另外,在一些实现中,网络交换设备102包括多个发送端口128(例如,多个发送端口128中的每个发送端口耦接到从处理部分118“分支”的一组并行路径中的对应路径)。

另外,尽管图1的示例示出了两组并行路径(第一路径112、114和第二路径122、124),但是在其他实现中,网络交换设备102可以包括不同数量的并行路径,例如一组并行路径,三组并行路径或其他组数的并行路径。作为具体的说明性示例,网络交换设备102可以包括三组并行路径和两组处理部分。

此外,应注意,在一些实现中,可将多个并行路径“合并”到减少数目的并行路径(例如,而不是单个处理部分118)。为了说明,在一些示例中,可以将三个并行的第一路径“合并”为两个并行的路径(例如,而不是单个处理部分118)。替代地或附加地,两个并行的路径可以被“扩展”为三个并行的第二路径。在一些实现中,将特定数量的并行路径合并为减少数量的并行路径(而不是单个处理部分)减少设备尺寸或复杂性(与使用更大的并行度相比),同时与使用单个处理部分相比,还可以在减少的并行路径中实现数据完整性或冗余(例如,通过在减少的并行路径的输出处执行数据匹配和验证)。

图1的一个或多个方面改善了网络交换设备的操作。例如,通过“前期”执行交叉校验156(例如,在网络交换设备102的中间阶段并且在完成网络交换设备102的数据处理之前),可以更快地检测到某些数据错误(与“后期”阶段交叉校验数据相比)。为了说明,在具体示例中,作为说明性例子,一个或多个第一表决元件116被配置为例如,通过校验第二副本152、154的时间戳,第二副本152、154的数据大小或与第二副本152、154相关的时序(例如延迟),来校验“易于”检测的数据错误。结果,可以更快地检测到某些数据错误(与“后期”阶段的交叉校验数据相比),从而增加了系统100的数据吞吐量。

此外,在一些示例中,处理部分118处的并行度降低(与第一路径112、114和第二路径122、124相比)导致较低的复杂度和成本(与在第一路径112和第一路径114中包括处理部分118的方面相比)。在一些实现中,保护器140和保护器142使得能够检测在处理部分118的处理期间发生的错误(因为在处理部分118处减少的冗余减少了由并行性提供的保护)。

图2描绘了网络交换设备102的说明性示例的具体方面。在图2的示例中,第一路径112包括时间戳元件202,该时间戳元件202被配置为将时间戳212应用于数据130的第一副本132。在图2中,第一路径112还包括配置为向数据130的第一副本132施加大小约束214的帧过滤器204。图2的示例还描绘了第一路径112包括配置为向数据130的第一副本132施加带宽约束216的帧策略元件206和配置为生成保护140的错误检测生成元件208。在具体示例中,保护140包括基于数据130的第一副本132和时间戳212的循环冗余校验(CRC)数据218,以在处理部分118进行处理之后验证完整性。在一些示例中,校验136是由帧过滤器204(例如,通过校验第一副本132满足大小约束214)、帧策略元件206(例如,通过校验第一副本132满足带宽约束216)或两者执行的。

在图2的示例中,第一路径114包括时间戳元件222,该时间戳元件222被配置为将时间戳232应用于数据130的第一副本134。在图2中,第一路径114还包括帧过滤器224,其被配置为将大小约束234应用于数据130的第一副本134。图2的示例还描绘了第一路径114包括配置为向数据130的第一副本134施加带宽约束236的帧策略元件226和配置为生成保护142的错误检测生成元件228。在具体示例中,保护142包括基于数据130的第一副本134和时间戳232的循环冗余校验(CRC)数据238,在处理部分118处理之后验证完整性。在一些示例中,执行校验138包括通过帧过滤器224校验第一副本134是否满足大小约束234、通过帧策略元件226校验第一副本134是否满足带宽约束236,或两者。

在一些示例中,一个或多个第一表决元件116被配置为通过比较校验136、138的结果220、240;通过比较每个第一路径112,114的数据130的第二副本152,154;通过比较每个第一路径112,114的时间戳212,232;通过比较由第一路径112,114中的每一个或它们的任意组合产生的保护140,142来验证数据130的一个或多个第二副本152、154。作为具体示例,在一些实现中,一个或多个第一表决元件116被配置为基于确定第二副本152与第二副本154相匹配,并且还基于确定第二副本152、154满足大小约束214、234,第二副本152、154满足带宽约束216、236或其组合来验证第二副本152、154。在一些实现中,一个或多个第一表决元件116被配置为将被确定为彼此匹配并且有效(例如,使用交叉校验156)的第二副本152、154中的至少一个作为有效数据242发送给处理部分。

在具体示例中,处理部分118被配置为将路径信息244嵌入到有效数据242并且将有效数据242与嵌入的路径信息244一起存储(例如,在与发送端口128相关联的输出队列处)。在一些示例中,有效数据242对应于数据130的第三副本162、164。

在图2的示例中,第二路径122包括错误检测校验元件252,配置为使用保护140或保护142来执行循环冗余校验(CRC)262,以在处理部分118进行处理和存储之后,验证数据130的第三副本162的数据完整性和时间戳完整性。图2还描绘了第二路径122包括被配置为校验与数据130的第三副本162相关联的路径信息244的路径校验元件254。在图2中,第二路径122包括配置为校验数据130的第三副本162在输出队列(例如,第二路径122的输出队列260)中的位置266的输出队列校验元件256。图2的示例还描绘了第二路径122包括延迟校验元件258,该延迟校验元件258被配置为基于与数据130的第三副本162相关联的时间戳(例如,时间戳212,时间戳232或其他时间戳)来校验时间延迟268。在一些示例中,校验166、170由错误检测校验元件252(例如,基于CRC 262),由路径校验元件254,由输出队列校验元件256(例如,基于位置266),由延迟校验元件258(例如,基于时间延迟268)或它们的组合执行。作为具体的说明性示例,在一些实现中,校验166由错误检测校验元件252执行(例如,基于CRC 262),并且校验170由延迟校验元件258执行(例如,基于时间延迟268)。

在图2的示例中,第二路径124包括错误检测校验元件272,其被配置为使用保护140来执行循环冗余校验(CRC)282,以在处理部分118处进行处理和存储之后,验证数据130的第三副本164的数据完整性和时间戳完整性。图2还描绘了第二路径124包括路径校验元件274,其被配置为校验与数据130的第三副本164相关联的路径信息244。在图2中,第二路径124包括输出队列校验元件276,其被配置为校验数据130的第三副本164在输出队列(例如,第二路径124的输出队列280)中的位置286。图2的示例还描绘了第二路径124包括延迟校验元件278,其被配置为基于与数据130的第三副本164相关联的时间戳(例如,时间戳212,时间戳232或另一个时间戳)来校验时间延迟288。在一些示例中,校验168、172由错误检测校验元件272(例如,基于CRC 282),由路径校验元件274,由输出队列校验元件276(例如,基于位置286),由延迟校验元件278(例如,基于时间延迟288)或其组合执行。作为具体的说明性示例,在一些实现中,校验168由错误检测校验元件272(例如,基于CRC282)执行,校验172由延迟校验元件278(例如,基于时间延迟288)执行。

在一些示例中,一个或多个第二表决元件126还被配置为至少部分地基于循环冗余校验262、282,位置266、286,时间延迟268、288,以及数据130的第四副本182、184中的至少大多数是否彼此匹配(例如,使用交叉校验186)来验证数据130的第四副本182、184中的一个或多个。

图2的一个或多个方面改善了网络交换设备的操作。例如,通过“前期”执行交叉校验156(例如,在网络交换设备102的中间阶段并且在完成网络交换设备102的数据处理之前),可以更快地检测到某些数据错误(与“后期”阶段交叉校验数据相比)。为了说明,在具体示例中,作为说明性示例,一个或多个第一表决元件116被配置为例如通过校验时间戳212、232;通过校验第二副本152,154符合大小限制214,234;通过校验第二副本152,154符合带宽约束216,236,或通过校验保护140,142来校验“易于”检测的数据错误。结果,可以更快地检测到某些数据错误(与“后期”阶段的交叉校验数据相比),从而增加了系统100的数据吞吐量。

此外,在一些示例中,处理部分118处的并行度降低(与第一路径112、114和第二路径122、124相比)导致较低的复杂度和成本(与在第一路径112和第一路径114中包括处理部分118的方面相比)。在一些实现中,保护器140和保护器142使得能够检测在处理部分118的处理期间发生的错误(因为在处理部分118处减少的冗余减少了由并行性提供的保护)。

参考图3,示出了操作网络交换机的方法的具体示例,并且总体上将其标记为300。在一些实现中,执行方法300以操作网络交换设备102。

方法300包括在302处经由接收端口接收数据。在具体示例中,在接收端口处从发送网络元件接收数据。为了说明,在一些示例中,网络交换设备102被配置为使用接收端口110来接收数据130。

方法300还包括在304处将数据的第一副本提供给多个并行的第一路径。在具体示例中,接收端口110被配置为将数据130的第一副本132、134提供给第一路径112、114。

方法300进一步包括,在306处,在每个第一路径处,对数据的第一副本执行校验,并为数据的第一副本生成保护。在具体示例中,执行校验包括通过第一路径112执行校验136,并且进一步包括通过第一路径114执行校验138。在具体示例中,生成保护包括通过第一路径112生成保护140,且还包括通过第一路径114生成保护142。在具体示例中,生成保护包括生成CRC数据218、CRC数据238或两者。替代地或另外,在一些示例中,执行校验包括执行参考图2描述的一个或多个操作。

方法300还包括在308处,对从第一路径接收的数据的第二副本进行交叉校验。在具体示例中,对第二副本进行交叉校验包括由一个或多个第一表决元件116执行交叉校验156。

方法300还包括,在310处,响应于对数据的第二副本的交叉校验指示第二副本中的至少一些彼此匹配并且是有效的,在处理部分中,处理来自数据的至少第二副本中的彼此匹配且有效的至少一个有效数据。在具体示例中,处理部分118被配置为将第二副本152、154中的至少一个作为有效数据242进行处理。在一些示例中,处理有效数据包括生成路径信息(例如,路径信息244)并将其嵌入有效数据。在一些示例中,在网络交换机的单个处理部分(例如,其中处理部分118对应于网络交换设备102的单个处理部分)处对有效数据进行处理。

方法300还包括在312处将数据的第三副本提供给多个并行的第二路径。在具体示例中,处理部分118被配置为将第三副本162、164提供给第二路径122、124。

方法300还包括在314处,在多个并行的第二路径中的每个第二路径上,对数据的第三副本执行多个校验,该多个校验包括基于保护的校验。在具体示例中,执行多个校验包括执行包括基于保护140或保护142的校验(例如,CRC校验或另一错误检测校验)的校验166、168、170和172中的任何一个。可替代地或另外地,在一些示例中,执行多个校验包括执行参考图2描述的一个或多个操作。

方法300还包括在316处对从第二路径接收到的数据的第四副本进行交叉校验。在具体示例中,对数据的第四副本进行交叉校验包括由一个或多个第二表决元件126执行交叉校验186。

方法300还包括在318处,响应于交叉校验数据的第四副本,经由发送端口选择性地将数据的第四副本中的一个或多个发送至下一网络元件。在具体示例中,数据130由发送端口128发送到下一网络元件106。

图3的方法300的一个或多个方面改善了网络交换设备的操作。例如,通过“前期”执行交叉校验例如,在网络交换设备102的中间阶段并且在完成网络交换设备102的数据处理之前),可以更快地检测到某些数据错误(与“后期”阶段交叉校验数据相比)。结果,可以更快地检测到某些数据错误(与“后期”交叉校验数据相比),从而提高了系统的数据吞吐量。

此外,在一些示例中,在单个处理部分(例如,处理部分118)处减小的并行度导致较低的复杂度和成本(与使用并行处理路径实现处理部分相比)。在一些实现中,错误检测信息(例如,保护140和保护142)用于检测在处理部分的处理期间发生的错误(因为在处理部分的减少的冗余减少了由并行性提供的保护)。

参照图4,示出了包括系统100的车辆(例如飞机)的生命周期的说明性示例的流程图,并且总体上以400表示。在预生产期间,在402处,方法400包括车辆的规格和设计。在具体示例中,车辆的规格和设计包括确定系统100的一个或多个特征。在车辆的规格和设计期间,方法400包括指定组件,例如系统100的一个或多个组件。在一些示例中,系统100的规格和设计至少部分地在诸如基于以太网的通信协议,飞机数据网络(ADN)通信协议,一个或多个其他通信协议或其组合的通信协议上执行。

在404处,方法400包括材料采购。例如,方法400可以包括采购用于车辆的材料(诸如通过采购用于系统100的一个或多个部件的材料)。

在生产期间,方法400包括在406处的部件和子组件的制造以及在408处的车辆的系统整合。在一些实现中,作为说明性示例,方法400的系统集成包括例如通过将系统100集成在车辆的通信系统内或车辆的控制系统内,来将系统100集成在车辆内。

方法400包括在410处对车辆进行认证和交付,以及在412处使车辆投入使用。在一些实现中,对车辆进行认证包括测试系统100的操作。

在使用中,可以安排车辆进行例行维护和保养(还可能包括修改,重新配置,翻新等)。在414处,方法400包括对车辆进行维护和服务。为了说明,在一些示例中,执行维护和服务可以包括校验和维修系统100的组件。

图5是包括网络交换设备102的具体示例的计算环境500的框图的图示。在图5的示例中,网络交换设备102被配置为支持根据本公开的计算机实现的方法和计算机可执行的程序指令(或代码)的实施例。在一些示例中,网络交换设备102或其部分执行指令以发起、执行或控制本文所述的操作,诸如图3的方法300的操作。

网络交换设备102包括处理器520。处理器520被配置为与存储器530(例如,系统存储器或另一存储器),一个或多个存储设备540,一个或多个输入/输出接口550,通信接口526,或其组合进行通信。

取决于具体的实现,存储器530包括易失性存储设备(例如,随机存取存储器(RAM)设备),非易失性存储设备(例如,只读存储器(ROM)设备,可编程只读存储器或闪存),一个或多个其他存储设备或其组合。在图5中,存储器530存储操作系统532,其可以包括用于引导网络交换设备102的基本输入/输出系统以及使网络交换设备102能够与用户,其他程序和其他设备交互的完整操作系统。图5的具体示例还描绘了存储器530存储能由处理器520执行的指令534。在一些示例中,指令534能由处理器520执行以在网络交换设备102的组件(诸如存储器530,一个或多个存储设备540,一个或多个输入/输出接口550,通信接口526或其组合)之间传输信号。

在具体示例中,指令534包括数据发送和接收指令536。在一些示例中,数据发送和接收指令536能由处理器520执行以发起,控制或执行图3的方法300的一个或多个操作。作为具体示例,在一些实现中,处理器520被配置为执行数据发送和接收指令536以发起向下一网络元件106的数据130的发送。可替代地或另外地,在一些示例中,处理器520被配置为执行数据发送和接收指令536以控制来自发送网络元件104的数据130(或其他数据)的接收。可替代地或另外,在一些实现中,发送网络元件104或下一网络元件106中的一个或多个包括处理器(例如,处理器520或另一处理器),存储器(例如,存储器530或另一存储器)或其组合。

为了进一步说明,在具体示例中,处理器520被配置为执行数据发送和接收指令536以执行本文描述的一个或多个操作,例如参考接收端口110,第一路径112、114,一个或多个第一表决元件116,处理部分118,第二路径122、124,一个或多个第二表决元件126,发送端口128或它们的组合描述的一个或多个操作。作为具体示例,在一些实现中,网络交换设备102包括处理器,该处理器被配置为执行数据发送和接收指令536以执行校验136、138,交叉校验156,校验166、168、180和172或交叉校验186中的任何一个(例如,通过执行一个或多个比较指令以比较数据130的副本)。在该示例中,表决元件116、126中的任何一个可以对应于处理器可执行的指令(例如,固件或其他指令),以确定数据副本是否彼此匹配并且有效。

替代地或另外,在一些示例中,作为说明性示例,使用一个或多个硬件组件或电路来执行本文描述的一个或多个操作,诸如通过使用比较器电路来执行校验136、138,交叉校验156,校验166、168、180和172,或交叉校验186中的任何一个(例如,通过使用比较器电路比较数据130的副本)。在这种情况下,表决元件116、126中的任何一个可以包括一个或多个硬件电路(例如,作为说明性示例,一个或多个比较器电路),其被配置为确定数据副本是否彼此匹配并且有效。

在一些实现中,一个或多个存储设备540包括非易失性存储设备,诸如磁盘,光盘或闪存设备。在一些示例中,一个或多个存储设备540包括可移动存储设备,不可移动存储设备或两者。在一些情况下,一个或多个存储设备540被配置为存储操作系统,操作系统的图像,应用程序和程序数据。在具体示例中,存储器530,一个或多个存储设备540或两者包括有形的计算机可读介质。

在图5的示例中,处理器520被配置为与一个或多个输入/输出接口550通信,以使网络交换设备102能够与一个或多个输入/输出设备570通信,以促进用户交互。在一些实现中,一个或多个输入/输出接口550包括串行接口(例如,通用串行总线(USB)接口或电气和电子工程师协会(IEEE)1394接口),并行接口,显示适配器,音频适配器,一个或多个其他接口,或其组合。在一些示例中,一个或多个输入/输出设备570包括键盘,定点设备,显示器,扬声器,麦克风,触摸屏,一个或多个其他设备或其组合。在一些示例中,处理器520被配置为基于经由一个或多个输入/输出接口550接收的用户输入来检测交互事件。

在具体示例中,处理器520被配置为使用通信接口526与一个或多个设备580通信(或向其发送信号)。在一些实现中,通信接口526包括一个或多个有线接口(例如,以太网接口),符合IEEE 802.11通信协议的一个或多个无线接口,一个或多个其他无线接口,一个或多个光接口或一个或多个其他网络接口,或其组合。在一些示例中,一个或多个设备580包括主机计算机,服务器,工作站,一个或多个其他计算设备或其组合。

在一些示例中,处理器520被配置为使用系统100发送或接收数据(例如,数据130或其他数据)。例如,在一些实现中,系统100经由通信接口526耦接到处理器520。在一些实现中,处理器520被配置为启动,执行或控制图3的方法300的操作。

可以在如图6所示的车辆600的示例的上下文中描述本公开的各方面。在一些示例中,车辆600包括或对应于飞机。

如图6所示,车辆600包括具有多个系统620和内部622的机身618。多个系统620的示例包括推进系统624,环境系统628,液压系统630以及系统100中的一个或多个。可以包括任何数量的其他系统。

在一些实现中,作为说明性示例,系统100包括在系统620的特定系统中,例如车辆600的通信系统或控制系统。在一些示例中,系统100包括在以太网络中(例如,在车辆600的基于以太网的通信系统中),在车辆600的一个或多个其他系统中,或者在它们的组合中。

本文描述的示例的图示旨在提供对各种实现的结构的一般理解。这些说明并不旨在用作对利用本文中描述的结构或方法的装置和系统的所有元件和特征的完整描述。在回顾本公开后,许多其他实现对于本领域技术人员而言可能是显而易见的。可以利用其他实现并从本公开中得出其他实现,从而可以在不脱离本公开范围的情况下进行结构和逻辑上的替换和改变。例如,可以以与图中所示的顺序不同的顺序来执行方法操作,或者可以省略一个或多个方法操作。因此,本公开和附图应被认为是说明性而非限制性的。

此外,尽管本文已经图示和描述了具体示例,但是应当理解,被设计为实现相同或相似结果的任何后续布置可以代替所示的具体实现。本公开旨在覆盖各种实现的任何和所有随后的修改或变化。通过阅读说明书,以上实现的组合以及本文中未具体描述的其他实现对于本领域技术人员将是显而易见的。

在披露摘要的前提下,将不被用来解释或限制技术方案的范围或含义。另外,在前述具体实现中,为了使本公开合理化,可以将各种特征组合在一起或在单个实现中进行描述。以上描述的示例说明但不限制本公开。还应该理解,根据本公开的原理,许多修改和变化是可能的。如以下技术方案所反映的,所要求保护的主题可以针对少于所公开的示例中的任何示例的所有特征。因此,本公开的范围由所附技术方案及其等同物限定。

21页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于控制平面网络中的冗余连接的控制设备和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!