TWI809245B - 使用一或多個投票者元素交叉檢查資料複本的設備和方法 - Google Patents
使用一或多個投票者元素交叉檢查資料複本的設備和方法 Download PDFInfo
- Publication number
- TWI809245B TWI809245B TW109102436A TW109102436A TWI809245B TW I809245 B TWI809245 B TW I809245B TW 109102436 A TW109102436 A TW 109102436A TW 109102436 A TW109102436 A TW 109102436A TW I809245 B TWI809245 B TW I809245B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- copy
- paths
- check
- copies
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME 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
- G07C13/00—Voting apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/552—Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/555—Error detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Hardware Redundancy (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
本發明揭示一種網路交換機,其包括:一接收埠,其經組態以接收資料;以及兩個或多於兩個並行第一路徑,每一路徑經組態以接收該資料之一第一複本,對該第一複本執行一檢查,及為該第一複本產生一保護。一或多個第一投票者元件經組態以接收該資料之第二複本並交叉檢查該些第二複本。一處理段經組態以處理該些第二複本中之一或多者。兩個或多於兩個並行第二路徑各自經組態以接收該資料之一第三複本,並對該第三複本執行多次檢查,包括基於該保護之一檢查。一或多個第二投票者元件經組態以接收該資料之第四複本並交叉檢查該些第四複本。一發送埠經組態以將該些第四複本中之一或多者發送至一下一網路元件。
Description
本發明大體而言係關於使用一或多個投票者元件來交叉檢查資料複本。
網路使用交換機和其他裝置在源裝置與目的地裝置之間路由資料(例如,資料封裝)。例如,特定網路可以包括交換機,該交換機使用資料之封包交換路由而自源裝置接收資料,處理資料並將資料發送至目的地裝置。
在高完整性應用程式中,網路元件可以包括偵測資料損壞的機制。例如,某些交換機可以包括並行執行某些操作的多個並行處理路徑。為了說明,在一個實例中,交換機可以使用多個並行處理路徑,多個並行處理路徑針對在交換機處接收的特定資料並行執行相同功能。
在一些狀況下,使用多個並行處理路徑可能會增加硬體成本和交換機的操作複雜性。另外,在一些情況下,藉由多個並行處理路徑進行的資料處理可能為「不匹配的」(其中一個處理路徑比另一處理路徑操作得更快),從而導致時間位移。時間位移可能會導致並行處理路徑之輸出出現差異,從而指示在交換機中發生了資料損壞。
在特定實例中,網路交換裝置包括經組態以接收資料的接收埠,和耦合至該接收埠之兩個或多於兩個並行第一路徑。第一路徑中之每一者經組態以自接收埠接收資料之第一複本,對資料之第一複本執行檢查,及為資料之第一複本產生保護。該網路交換裝置進一步包括一或多個第一投票者元件,其經組態以自第一路徑接收資料之第二複本並交叉檢查資料之第二複本。該網路交換裝置進一步包括處理段,其經組態以回應於一或多個第一投票者元件來處理資料之第二複本中之一或多者。該網路交換裝置進一步包括兩個或多於兩個並行的第二路徑,每一第二路徑經組態以自該處理段接收資料之第三複本,並對資料之第三複本執行多次檢查。多個檢查包括基於保護之檢查。該網路交換裝置進一步包括一或多個第二投票者元件,其經組態以自第二路徑接收資料之第四複本並交叉檢查資料之第四複本。該網路交換裝置進一步包括發送埠,該發送埠經組態以回應於一或多個第二投票者元件而將資料之第四複本中之一或多者發送至下一網路元件。
在另一特定實例中,一種操作網路交換機的方法包括:經由接收埠接收資料;以及將資料之第一複本提供至多個並行第一路徑。該方法進一步包括在第一路徑中之每一者處對資料之第一複本執行檢查,並為資料之第一複本產生保護。該方法進一步包括交叉檢查自第一路徑接收之資料之第二複本。該方法進一步包括:在處理段處回應於資料之第二複本的交叉檢查以指示第二複本中之至少一些彼此匹配且有效,對來自彼此匹配且有效的資料之第二複本中之至少一者的有效資料進行處理。該方法進一步包括:向多個並行第二路徑提供資料之第三複本,且在多個並行第二路徑之每一第二路徑處,對資料之第三複本執行多次檢查。多個檢查包括基於保護之檢查。該方法進一步包括:對自第二路徑接收之資料之第四複本進行交叉檢查;以及回應於對資料之第四複本進行交叉檢查,選擇性地經由發送埠將資料之第四複本中之一或多者發送至下一網路元件。
在另一特定實例中,電腦可讀取媒體儲存可由處理器執行以起始、執行或控制操作的指令。操作包括經由接收埠接收資料,並將資料之第一複本提供至多個並行第一路徑。該些操作進一步包括在第一路徑中之每一者處對資料之第一複本執行檢查,並為資料之第一複本產生保護。該些操作進一步包括交叉檢查自第一路徑接收之資料之第二複本。該些操作進一步包括:在處理段處且回應於對資料之第二複本之交叉檢查指示第二複本中之至少一些彼此匹配且有效,處理來自彼此匹配且有效的資料之第二複本中之至少一者的有效資料。該些操作進一步包括將資料之第三複本提供至多個並行第二路徑,且在多個並行第二路徑中之每一第二路徑處,對資料之第三複本執行多次檢查。多個檢查包括基於保護之檢查。該些操作進一步包括:對自第二路徑接收之資料之第四複本進行交叉檢查;以及回應於對資料之第四複本進行交叉檢查,經由發送埠將資料之第四複本中之一或多者選擇性地發送至下一網路元件。
在特定實施中,網路交換裝置在網路交換裝置之中間階段包括單個路徑(例如,「合併」至該單個路徑中之多個路徑)。在一個實例中,單個路徑包括一或多個第一投票者元件,該一或多個第一投票者元件經組態以對來自多個並行第一路徑之資料進行交叉檢查(例如,藉由驗證資料之完整性)。因此,藉由「較早」交叉檢查資料(例如,在網路交換裝置之中間階段且在完成網路交換裝置處之資料處理之前),可以更快地(與在「後期」階段處交叉檢查資料相比)偵測到某些資料錯誤。為了說明,在特定實例中,一或多個第一投票者元件經組態以檢查「容易」偵測之資料錯誤,諸如藉由檢查資料之時間戳、資料之資料大小或與資料相關聯之時間(例如延遲)。
在一些實施中,單個路徑進一步包括將某些操作「壓縮」至單個處理段中之處理段(例如,交換組構),諸如不太可能產生錯誤之操作,在多個並行處理路徑上同步化較複雜的操作,或在多個並行處理路徑上複製成本昂貴的操作。因此,使用單個處理段可以減少或回避與整個信號路徑的複製相關聯的資料失配和時間位移以及成本和複雜性。
參考圖1,描繪系統之特定說明性實例,且總體上將其指定為100。系統100包括網路交換裝置102。系統100進一步包括耦合至網路交換裝置102之發送網路元件104和下一網路元件106。
網路交換裝置102包括接收埠110(例如,實體接收埠)。在一些實例中,接收埠110經組態以自發送網路元件104接收資料130。在一些實例中,發送網路元件104包括或對應於交換機或始發者系統。
網路交換機裝置102包括耦合至接收埠110之兩個或多於兩個平行的第一路徑(例如,第一路徑112和第一路徑114)。在一些實例中,第一路徑112、114為複製路徑。例如,在一些實施中,第一路徑112與第一路徑114同步,且第一路徑112經組態以產生輸出,該輸出在第一路徑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經組態以產生輸出,該輸出在第二路徑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之第一複本132的檢查136,且第一路徑114經組態以執行資料130之第一複本134的檢查138。第一路徑112經組態以產生針對第一複本132之保護140,且第一路徑114經組態以產生針對第一複本134之保護142。在特定實例中,第一路徑112經組態以向第一複本132添加保護140以產生資料130之第二複本152,且第一路徑114經組態以向第一複本134添加保護142以產生資料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回應於判定通過狀態而將與第二複本152、154相對應的有效資料提供到處理段118。作為另一實例,在一些實施中,若第二複本152、154彼此不同,若第二複本152、154無效,或若兩者(例如,基於不同時間戳、不同資料大小或內容、不同延遲、一或多個其他參數,或其組合),一或多個第一投票者元件116判定交叉檢查156的失敗狀態。在此狀況下,在一些實施中,一或多個第一投票者元件116經組態以回應於判定失敗狀態而「丟棄」資料130。作為特定的說明性實例,在一些實施中,網路交換裝置102經組態以向發送網路元件104提供異常或錯誤訊息,例如,否定應答(NACK)訊息。在一些實例中,發送網路元件104經組態以回應於接收到異常或錯誤訊息而重新發送資料130。
在一些實施中,一或多個第一投票者元件116經組態以基於資料130之三個或多於三個第二複本執行多數投票。例如,在一些實施中,網路交換裝置102包括N
個第一路徑,該N
個第一路徑經耦接至接收埠110和一或多個第一投票者元件116,且經組態以產生資料130之N
個第二複本(其中N
為大於2之正整數)。在此狀況下,在一些實施中,一或多個第一投票者元件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回應於判定通過狀態,將與第四複本182、184相對應的有效資料提供至發送埠128。作為另一實例,在一些實施中,若第四複本182、184彼此不同,若第四複本182、184無效或若兩者皆有,則一或多個第二投票者元件126確定交叉檢查186的失敗狀態。在此狀況下,在一些實施中,一或多個第二投票者元件126經組態以回應於判定失敗狀態而「丟棄」資料130。作為特定的說明性實例,在一些實施中,網路交換裝置102經組態以向發送網路元件104提供異常或錯誤訊息(例如,NACK訊息)。在一些實例中,發送網路元件104經組態以回應於接收到異常或錯誤訊息而重新發送資料130。
在一些實施中,一或多個第二投票者元件126經組態以基於資料130之三個或多於三個第四複本執行多數投票。例如,在一些實施中,網路交換裝置102包括M
個第二路徑,該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之一或多個態樣改良網路交換裝置之操作。例如,藉由「較早」(例如,在網路交換裝置102之中間階段且在完成網路交換裝置102處之資料處理之前)執行交叉檢查156,可以更快地(如與在「後期」階段處交叉檢查資料相比)偵測到某些資料錯誤。為了說明,在特定實例中,一或多個第一投票者元件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進一步包括訊框濾波器204,該訊框濾波器204經組態以將大小約束214應用於資料130之第一複本132。圖2之實例亦描繪第一路徑112包括經組態以向資料130之第一複本132施加頻寬約束216之訊框管制元件206和經組態以產生保護140之錯誤偵測產生元件208。在特定實例中,保護140包括基於資料130之第一複本132和時間戳212之循環冗餘檢查(CRC)資料218,以在處理段118處之處理之後驗證完整性。在一些實例中,藉由訊框濾波器204(例如,藉由檢查第一複本132滿足大小約束214),藉由訊框管制元件206(例如,藉由檢查第一複本132滿足頻寬約束216)或兩者執行檢查136。
在圖2的實例中,第一路徑114包括時間戳元件222,該時間戳元件202經組態以將時間戳232應用於資料130之第一複本134。在圖2中,第一路徑114進一步包括訊框濾波器224,該訊框濾波器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,該錯誤偵測檢查元件252經組態以使用保護140或保護142來執行循環冗餘檢查(CRC)262,以在處理段118處之處理及儲存之後驗證資料130之第三複本162的資料完整性和時間戳完整性。圖2亦描繪第二路徑122包括路由檢查元件254,該路由檢查元件經組態以檢查與資料130之第三複本162相關聯的路由資訊244。在圖2中,第二路徑122包括經組態以檢查資料130之第三複本162在輸出佇列(例如,第二路徑122之輸出佇列260)中之位置266的輸出佇列檢查元件256。圖2的實例亦描繪第二路徑122包括延遲檢查元件258,該延遲檢查元件258經組態以基於與資料130之第三複本162相關聯的時間戳(例如,時間戳212、時間戳232或另一時間戳)來檢查時間延遲268。在一些實例中,藉由錯誤偵測檢查元件252(例如,基於CRC 262),藉由路由檢查元件254,藉由輸出佇列檢查元件256(例如,基於位置266),藉由延遲檢查元件258(例如,基於時間延遲268)或其組合,來執行檢查166、170。作為特定說明性實例,在一些實施中,檢查166係由錯誤偵測檢查元件252執行(例如,基於CRC 262),且檢查170係由延遲檢查元件258執行(例如,基於時間延遲268)。
在圖2的實例中,第二路徑124包括錯誤偵測檢查元件272,該錯誤偵測檢查元件272經組態以使用保護140來執行循環冗餘檢查(CRC)282,以在處理段118處之處理及儲存之後驗證資料130之第三複本164的資料完整性和時間戳完整性。圖2亦描繪第二路徑124包括路由檢查元件274,該路由檢查元件274經組態以檢查與資料130之第三複本164相關聯的路由資訊244。在圖2中,第二路徑124包括經組態以檢查資料130之第三複本164在輸出佇列(例如,第二路徑124之輸出佇列280)中之位置286的輸出佇列檢查元件276。圖2的實例亦描繪第二路徑124包括延遲檢查元件278,該延遲檢查元件278經組態以基於與資料130之第三複本164相關聯的時間戳(例如,時間戳212、時間戳232或另一時間戳)來檢查時間延遲288。在一些實例中,藉由錯誤偵測檢查元件272(例如,基於CRC 282),藉由路由檢查元件274,藉由輸出佇列檢查元件276(例如,基於位置286),藉由延遲檢查元件278(例如,基於時間延遲288)或其組合,來執行檢查168、172。作為特定說明性實例,在一些實施中,檢查168係由錯誤偵測檢查元件272執行(例如,基於CRC 282),且檢查172係由延遲檢查元件278執行(例如,基於時間延遲288)。
在一些實例中,一或多個第二投票者元件126經進一步組態以至少部分地基於循環冗餘檢查262、282,位置266、286,時間延遲268、288,以及資料130之第四複本182、184中之至少大多數是否彼此匹配(例如,使用交叉檢查186),來驗證資料130之第四複本182、184中之一或多者。
圖2之一或多個態樣改良網路交換裝置之操作。例如,藉由「較早」(例如,在網路交換裝置102之中間階段且在完成網路交換裝置102處之資料處理之前)執行交叉檢查156,可以更快地(如與在「後期」階段處交叉檢查資料相比)偵測到某些資料錯誤。為了說明,在特定實例中,一或多個第一投票者元件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。在預生產期間,方法400包括在402處運載工具之規格說明和設計。在特定實例中,運載工具之規格說明和設計包括判定系統100之一或多個特性。在運載工具之規格說明和設計期間,方法400包括規定組件,諸如系統100之一或多個組件。在一些實例中,系統100之規格說明和設計至少部分地基於諸如基於乙太網路通信協定、飛機資料網路(aircraft data network; 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,以起始資料130向下一網路元件106傳輸資料。替代地或另外,在一些實例中,處理器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之飛機資料網路(ADN)系統中、在運載工具600之一或多個其他系統中或其組合。
本文中所描述之實例的說明旨在提供對各種實施之結構的一般理解。該些說明並不旨在用作對利用本文中所描述之結構或方法的設備和系統之所有元件和特徵的完整描述。在回顧本發明後,諸多其他實施對於熟習此項技術者而言可能為顯而易見的。可以利用其他實施並從本發明中得出其他實施,使得可以在不脫離本發明範圍的情況下進行結構和邏輯上的替換和改變。例如,可以以與圖中所示之順序不同的順序來執行方法操作,或可以省略一或多個方法操作。因此,應將本發明及圖視為說明性而非限制性。
此外,儘管本文中已說明和描述特定實例,但應瞭解,為實現相同或相似結果而設計的任何後續配置可以替代所示出具體實施。本發明旨在覆蓋各種實施之任何和所有隨後修改或變化。在審視說明書之後,以上實施之組合以及本文中未具體描述之其他實施對於熟習此項技術者將為顯而易見的。
提交本發明摘要是基於以下理解:其將不被用於解釋或限制申請專利範圍書之範圍或含義。另外,出於簡化本發明的目的,可以將各種特徵組合在一起或在單個實施中進行描述。以上所描述之實例說明但不限制本發明。亦應理解,根據本發明之原理,許多修改和變化為可能的。如以下申請專利範圍所反映的,所主張標的物可以針對少於所揭示實例中之任何實例的所有特徵。因此,本發明之範圍由以下申請專利範圍及其均等物界定。
100:系統
102:網路交換裝置
104:發送網路元件
106:網路元件
110:參考接收埠
112:第一路徑
114:第一路徑
116:投票者元件/第一投票者元件
118:處理段
122:第二路徑
124:第二路徑
126:投票者元件/第二投票者元件
128:發送埠
130:資料
132:第一複本
134:第一複本
136:檢查
138:檢查
140:保護
142:保護
152:第二複本
154:第二複本
156:交叉檢查
162:第三複本
164:第三複本
166:檢查
168:檢查
170:檢查
172:檢查
182:第四複本
184:第四複本
186:交叉檢查
188:交換機
190:終端系統
202:時間戳元件
204:訊框濾波器
206:訊框管制元件
208:錯誤偵測產生元件
212:時間戳
214:大小約束
216:頻寬約束
218:循環冗餘檢查(CRC)資料
220:結果
222:時間戳元件
224:訊框濾波器
226:訊框管制元件
228:錯誤偵測產生元件
232:時間戳
234:大小約束
236:頻寬約束
238:循環冗餘檢查(CRC)資料
240:結果
242:有效資料
244:路由資訊
252:錯誤偵測檢查元件
254:路由檢查元件
256:輸出佇列檢查元件
258:延遲檢查元件
260:輸出佇列
262:循環冗餘檢查
266:位置
268:時間延遲
272:錯誤偵測檢查元件
274:路由檢查元件
276:輸出佇列檢查元件
278:延遲檢查元件
280:輸出佇列
282:循環冗餘檢查(CRC)
286:位置
288:時間延遲
302:步驟
304:步驟
306:步驟
308:步驟
310:步驟
312:步驟
314:步驟
316:步驟
318:步驟
402:步驟
404:步驟
406:步驟
408:步驟
410:步驟
412:步驟
414:步驟
500:計算環境
520:處理器
526:通信介面
530:記憶體
532:作業系統
534:指令
536:指令
540:儲存裝置
550:輸入/輸出介面
570:輸入/輸出裝置
580:裝置
600:運載工具
618:飛機結構
620:系統
622:內部
624:推進系統
628:環境系統
630:液壓系統
[圖1]為說明系統之實例的某些方面的圖,該系統包括經組態以使用一或多個投票者元件來交叉檢查資料複本的網路交換裝置。
[圖2]為說明諸如圖1之網路交換裝置之網路交換裝置的特定實例的各態樣的圖。
[圖3]為諸如圖1之網路交換裝置的網路交換機的操作方法的實例的圖。
[圖4]為包括圖1之系統的運載工具之壽命週期的實例的流程圖。
[圖5]為說明計算系統的實例的各態樣的方塊圖,該計算系統經組態以執行指令以起始、執行或控制圖3之方法的操作。
[圖6]為說明包括圖1之系統的運載工具的說明性實施的各態樣的方塊圖。
100:系統
102:網路交換裝置
104:發送網路元件
106:網路元件
110:參考接收埠
112:第一路徑
114:第一路徑
116:投票者元件/第一投票者元件
118:處理段
122:第二路徑
124:第二路徑
126:投票者元件/第二投票者元件
128:發送埠
130:資料
132:第一複本
134:第一複本
136:檢查
138:檢查
140:保護
142:保護
152:第二複本
154:第二複本
156:交叉檢查
162:第三複本
164:第三複本
166:檢查
168:檢查
170:檢查
172:檢查
182:第四複本
184:第四複本
186:交叉檢查
188:交換機
190:終端系統
Claims (20)
- 一種網路交換裝置(102),其包含:一接收埠(110),其經組態以接收資料(130);兩個或多於兩個並行第一路徑(112、114),其耦合至該接收埠,該些第一路徑中之每一者經組態以自該接收埠接收該資料之一第一複本(132、134),對該資料之該第一複本執行一檢查(136、138),及為該資料之該第一複本產生一保護(140、142);一或多個第一投票者元件(116),其經組態以自該些第一路徑接收該資料之第二複本(152、154),且執行多數投票以交叉檢查(156)該資料之該些第二複本;一處理段(118),其經組態以回應於該一或多個第一投票者元件來處理該資料之該些第二複本中之一或多者;兩個或多於兩個並行第二路徑(122、124),其耦合至該處理段,該些第二路徑中之每一者經組態以自該處理段接收該資料之一第三複本(162、164),且對該資料之該第三複本執行多個檢查(166、168、170、172),該多個檢查包括基於該保護之一檢查(166、168、170或172);一或多個第二投票者元件(126),其經組態以自該些第二路徑接收該資料之第四複本(182、184),且執行多數投票以交叉檢查(186)該資料之該些第二複本;及一發送埠(128),其經組態以回應於該一或多個第二投票者元件而將該資料之該些第四複本中之一或多者發送至一下一網路元件(106)。
- 如請求項1之網路交換裝置,其中該接收埠經組態以自一發送網路元件(104)接收該資料,且其中該發送埠經組態以將該資料轉發至該下一網路元件。
- 如請求項1之網路交換裝置,其中該下一網路元件包括一交換機(188)或一終端系統(190)。
- 如請求項1之網路交換裝置,其中該處理段包括一單路徑處理段。
- 如請求項4之網路交換裝置,其中該處理段經進一步組態以將該資料路由至該些第二路徑並儲存該資料。
- 如請求項1之網路交換裝置,其中該些第一路徑中之每一者包含:一時間戳元件(202、222),其經組態以將時間戳(212、232)應用於該資料之該第一複本;一訊框濾波器(204、224),其經組態以將一大小約束(214、234)應用於該資料之該第一複本;一訊框管制元件(206、226),其經組態以將一頻寬約束(216、236)應用於該資料之該第一複本;及一錯誤偵測產生元件(208、228),其經組態以產生該保護,其中該保護包括基於該資料之該第一複本和該時間戳之循環冗餘檢查(CRC)資料(218、238),以在該處理段處之處理之後驗證完整性。
- 如請求項1之網路交換裝置,其中該一或多個第一投票者元件經進一步組態以:藉由比較該些第一路徑中之每一者之該檢查的結果(220、240),比較該些第一路徑中之每一者之該資料之該些第二複本,比較該些第一路徑中之每一者之時間戳(212、232),比較由該些第一路徑中之每一者所產生之該些保護,或其任何組合,驗證該資料之該些第二複本中之一或多者;及將經判定為彼此匹配且有效的該些第二複本中之至少一者作為有效資料 (242)發送至該處理段。
- 如請求項7之網路交換裝置,其中該處理段經進一步組態以將路由資訊(244)與該有效資料嵌入在一起,且將該有效資料與所嵌入的該路由資訊一起儲存。
- 如請求項1之網路交換裝置,其中該些第二路徑中之每一者包含:一錯誤偵測檢查元件(252、272),其經組態以使用該保護來執行一循環冗餘檢查(262、282),以驗證在該處理段處進行處理和儲存之後該資料之該第三複本之資料完整性和時間戳完整性;一路由檢查元件(254、274),其經組態以檢查與該資料之該第三複本相關聯之路由資訊(244);一輸出佇列檢查元件(256),其經組態以檢查該資料之該第三複本在一輸出佇列(260、280)中之一位置(266、286);及一延遲檢查元件(258、278),其經組態以基於與該資料之該第三複本相關聯之一時間戳(212、232)來檢查一時間延遲(268、288)。
- 如請求項9之網路交換裝置,其中該一或多個第二投票者元件經進一步組態以至少部分地基於以下各項來驗證該資料之該些第四複本中之一或多者:該循環冗餘檢查、該輸出佇列中之該位置、該些第二路徑中之每一者之該時間延遲,及該資料之該些第四複本中之至少大部分是否彼此匹配。
- 一種操作一網路交換機的方法(300),該方法包含:經由一接收埠(110)接收(302)資料(130);提供(304)該資料之第一複本(132、134)至多個並行第一路徑(112、114);在該些第一路徑中之每一者處,對該資料之一第一複本(132、134)執行 (306)一檢查,並為該資料之該第一複本產生一保護(140、142);執行多數投票以交叉檢查(308)自該些第一路徑接收之該資料之第二複本(152、154);回應於對該資料之該些第二複本的該交叉檢查指示至少一些該些第二複本彼此匹配且係有效的,在一處理段(118)處處理(310)來自彼此匹配且有效的該資料之該些第二複本中之至少一者的有效資料(242);提供(312)該資料之第三複本(162、164)至多個並行第二路徑(122、124);在該多個並行第二路徑之每一第二路徑處,對該資料之一第三複本(162、164)執行(314)多個檢查(166、168、170、172),該多個檢查包括基於該保護之一檢查(166、168、170或172);執行多數投票以交叉檢查(316)自該些第二路徑接收之該資料之第四複本(182、184);及回應於交叉檢查該資料之該些第四複本,經由一發送埠(128)將該資料之該些第四複本中之一或多者選擇性地發送(318)至一下一網路元件(106)。
- 如請求項11之方法,其中處理該有效資料包括產生路由資訊(244)並將其與該有效資料嵌入在一起。
- 如請求項12之方法,其中在該網路交換機之一單個處理段處執行該有效資料之處理。
- 如請求項11之方法,其中產生該保護包括產生循環冗餘檢查(CRC)資料(218、238)。
- 如請求項11之方法,其中在該接收埠處自一發送網路元件(104)接收該資料。
- 一種電腦可讀取媒體(530),其儲存可由一處理器(520)執 行以起始、執行或控制操作之指令(534),該些操作包含:經由一接收埠(110)接收(302)資料(130);提供(304)該資料之第一複本(132、134)至多個並行第一路徑(112、114);在該些第一路徑中之每一者處,對該資料之一第一複本(132、134)執行(306)一檢查,並為該資料之該第一複本產生一保護(140、142);執行多數投票以交叉檢查(308)自該些第一路徑接收之該資料之第二複本(152、154);回應於對該資料之該些第二複本的該交叉檢查指示至少一些該些第二複本彼此匹配且係有效的,在一處理段(118)處處理(310)來自彼此匹配且有效的該資料之該些第二複本中之至少一者的有效資料(242);提供(312)該資料之第三複本(162、164)至多個並行第二路徑(122、124);在該多個並行第二路徑之每一第二路徑處,對該資料之一第三複本(162、164)執行(314)多個檢查(166、168、170、172),該多個檢查包括基於該保護之一檢查(166、168、170或172);執行多數投票以交叉檢查(316)自該些第二路徑接收之該資料之第四複本(182、184);及回應於交叉檢查該資料之該些第四複本,經由一發送埠(128)將該資料之該些第四複本中之一或多者選擇性地發送(318)至一下一網路元件(106)。
- 如請求項16之電腦可讀取媒體,其中處理該有效資料包括產生路由資訊(244)並將其與該有效資料嵌入在一起。
- 如請求項17之電腦可讀取媒體,其中在一網路交換機之一單個處理段處執行該有效資料之處理。
- 如請求項16之電腦可讀取媒體,其中產生該保護包括產生循環冗餘檢查(CRC)資料(218、238)。
- 如請求項16之電腦可讀取媒體,其中在該接收埠處自一發送網路元件(104)接收該資料。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/262,371 | 2019-01-30 | ||
| US16/262,371 US10951544B2 (en) | 2019-01-30 | 2019-01-30 | Apparatus and method of crosschecking data copies using one or more voter elements |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202040975A TW202040975A (zh) | 2020-11-01 |
| TWI809245B true TWI809245B (zh) | 2023-07-21 |
Family
ID=69187659
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW109102436A TWI809245B (zh) | 2019-01-30 | 2020-01-22 | 使用一或多個投票者元素交叉檢查資料複本的設備和方法 |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US10951544B2 (zh) |
| EP (1) | EP3691211B1 (zh) |
| JP (1) | JP7469885B2 (zh) |
| KR (1) | KR102707408B1 (zh) |
| CN (1) | CN111510397B (zh) |
| TW (1) | TWI809245B (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022095257A (ja) * | 2020-12-16 | 2022-06-28 | キオクシア株式会社 | メモリシステム |
| US12001822B2 (en) * | 2021-02-01 | 2024-06-04 | Capital One Services, Llc | Multi-signature validation of deployment artifacts |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020107980A1 (en) * | 2001-02-05 | 2002-08-08 | Nec Corporation | Computer system and method of communication between modules within computer system |
| US20070024910A1 (en) * | 2005-07-29 | 2007-02-01 | Gm Global Technology Operations, Inc. | Secure serial data communication dual path method |
| TW201524170A (zh) * | 2013-06-26 | 2015-06-16 | Cnex Labs Inc | 用於在乙太型網路上對記憶體及輸入/輸出進行遠端存取之非揮發性記憶體快速控制器 |
Family Cites Families (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6496940B1 (en) * | 1992-12-17 | 2002-12-17 | Compaq Computer Corporation | Multiple processor system with standby sparing |
| US6201807B1 (en) * | 1996-02-27 | 2001-03-13 | Lucent Technologies | Real-time hardware method and apparatus for reducing queue processing |
| US6157638A (en) | 1998-03-23 | 2000-12-05 | Motorola, Inc. | High density packet switch with high speed interfaces and method for using same |
| ATE343886T1 (de) * | 1999-03-17 | 2006-11-15 | Broadcom Corp | Netzwerkvermittlung |
| US20020085589A1 (en) * | 2000-09-22 | 2002-07-04 | Narad Networks, Inc. | System and method for assigning network data packet header |
| ES2244557T3 (es) | 2001-01-31 | 2005-12-16 | Teldix Gmbh | Central de conmutacion modular y escalable y metodo para la distribucion de tramas de datos en una red ethernet rapida. |
| US20020141411A1 (en) | 2001-04-03 | 2002-10-03 | Jong-Hwan Oh | Apparatus for line-concentrating and distributing PPP frame data |
| US7123581B2 (en) | 2001-10-09 | 2006-10-17 | Tellabs Operations, Inc. | Method and apparatus to switch data flows using parallel switch fabrics |
| US7590885B2 (en) * | 2005-04-26 | 2009-09-15 | Hewlett-Packard Development Company, L.P. | Method and system of copying memory from a source processor to a target processor by duplicating memory writes |
| US7719982B2 (en) | 2005-08-31 | 2010-05-18 | Intel Corporation | Switching device utilizing flow-control management |
| US7706103B2 (en) * | 2006-07-25 | 2010-04-27 | Seagate Technology Llc | Electric field assisted writing using a multiferroic recording media |
| US7889686B1 (en) * | 2006-11-21 | 2011-02-15 | Picomobile Networks, Inc. | Seamless switching of media streams between different networks |
| JP5251457B2 (ja) | 2008-11-27 | 2013-07-31 | 富士通株式会社 | データ伝送装置 |
| WO2011119137A1 (en) * | 2010-03-22 | 2011-09-29 | Lrdc Systems, Llc | A method of identifying and protecting the integrity of a set of source data |
| US9400722B2 (en) | 2011-11-15 | 2016-07-26 | Ge Aviation Systems Llc | Method of providing high integrity processing |
| US20130208630A1 (en) * | 2012-02-15 | 2013-08-15 | Ge Aviation Systems Llc | Avionics full-duplex switched ethernet network |
| GB201315397D0 (en) * | 2013-08-29 | 2013-10-16 | Quixant Plc | Memory controller and memory access method |
| JP6188867B2 (ja) * | 2015-06-12 | 2017-08-30 | 株式会社日立製作所 | パケットを復元するための方法及びシステム |
| US10331373B2 (en) * | 2015-11-05 | 2019-06-25 | International Business Machines Corporation | Migration of memory move instruction sequences between hardware threads |
| US10067713B2 (en) * | 2015-11-05 | 2018-09-04 | International Business Machines Corporation | Efficient enforcement of barriers with respect to memory move sequences |
| US10498654B2 (en) * | 2015-12-28 | 2019-12-03 | Amazon Technologies, Inc. | Multi-path transport design |
| US10496484B2 (en) * | 2016-08-05 | 2019-12-03 | Sandisk Technologies Llc | Methods and apparatus for error detection for data storage devices |
| US10333652B2 (en) * | 2016-09-16 | 2019-06-25 | International Business Machines Corporation | Redundancy in converged networks |
| US10599524B2 (en) * | 2017-04-28 | 2020-03-24 | Veritas Technologies Llc | Backup performance after backup failure |
| US10901862B2 (en) * | 2018-11-13 | 2021-01-26 | Micron Technology, Inc. | High-reliability non-volatile memory using a voting mechanism |
-
2019
- 2019-01-30 US US16/262,371 patent/US10951544B2/en active Active
-
2020
- 2020-01-21 JP JP2020007404A patent/JP7469885B2/ja active Active
- 2020-01-22 EP EP20153124.1A patent/EP3691211B1/en active Active
- 2020-01-22 TW TW109102436A patent/TWI809245B/zh active
- 2020-01-28 KR KR1020200009922A patent/KR102707408B1/ko active Active
- 2020-01-31 CN CN202010077728.XA patent/CN111510397B/zh active Active
-
2021
- 2021-03-15 US US17/202,181 patent/US11729115B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020107980A1 (en) * | 2001-02-05 | 2002-08-08 | Nec Corporation | Computer system and method of communication between modules within computer system |
| US20070024910A1 (en) * | 2005-07-29 | 2007-02-01 | Gm Global Technology Operations, Inc. | Secure serial data communication dual path method |
| TW201524170A (zh) * | 2013-06-26 | 2015-06-16 | Cnex Labs Inc | 用於在乙太型網路上對記憶體及輸入/輸出進行遠端存取之非揮發性記憶體快速控制器 |
Also Published As
| Publication number | Publication date |
|---|---|
| KR102707408B1 (ko) | 2024-09-13 |
| US10951544B2 (en) | 2021-03-16 |
| US11729115B2 (en) | 2023-08-15 |
| JP7469885B2 (ja) | 2024-04-17 |
| US20200244596A1 (en) | 2020-07-30 |
| TW202040975A (zh) | 2020-11-01 |
| CN111510397B (zh) | 2024-08-23 |
| JP2020145670A (ja) | 2020-09-10 |
| CN111510397A (zh) | 2020-08-07 |
| EP3691211A1 (en) | 2020-08-05 |
| US20210297369A1 (en) | 2021-09-23 |
| EP3691211B1 (en) | 2023-04-26 |
| KR20200095401A (ko) | 2020-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11522698B2 (en) | Method and system for byzantine fault-tolerance replicating of data | |
| CN101902479B (zh) | 网络隔离系统及其数据传输方法 | |
| TWI809245B (zh) | 使用一或多個投票者元素交叉檢查資料複本的設備和方法 | |
| Vytopil | Formal techniques in real-time and fault-tolerant systems | |
| CN105209982B (zh) | 用于控制自动化系统中的物理单元的方法和设备 | |
| CN109039959B (zh) | 一种sdn网络规则的一致性判断方法及相关装置 | |
| CN102375409A (zh) | 冗余化控制系统及其运算数据的传送方法 | |
| US10356203B2 (en) | Fault-tolerant operational group on a distributed network | |
| CN109194493B (zh) | 一种信息管理系统、方法及装置 | |
| JP2016042355A (ja) | 相互接続回路のための伝送制御検査 | |
| US10992516B2 (en) | Efficient self-checking redundancy comparison in a network | |
| US20170344412A1 (en) | Protecting clustered virtual environments from silent data corruption | |
| WO2014207893A1 (ja) | 演算回路及び計算機 | |
| CN106068500B (zh) | 具有改善的稳健性的数据传输方法,以及用于执行该方法的一组设备 | |
| CN117614867A (zh) | 数据处理方法、装置、设备、存储介质和程序产品 | |
| JP5322433B2 (ja) | 処理システムにおけるデータ処理中のエラー検知方法および制御システム | |
| US8365024B2 (en) | High integrity data bus fault detection using multiple signal components | |
| Krishnan et al. | A comparison of AFDX and 1553B protocols using formal verification | |
| JP6219233B2 (ja) | 無瞬断切替装置および無瞬断切替方法 | |
| JP6059652B2 (ja) | 信号保安用制御装置 | |
| Heistand et al. | Packet Based Modular Redundancy | |
| JP2018072967A (ja) | 制御システム | |
| CN111858166A (zh) | 可纠错快速拟态裁决方法、裁决器、架构及介质 | |
| JP2012119954A (ja) | ネットワーク評価システム及びネットワーク評価装置 | |
| CN114501514A (zh) | 一种信息处理方法、装置及设备 |