CZ303954B6 - Zapojení pro rychlou analýzu hlavicek paketu prenásených po datové sbernici - Google Patents

Zapojení pro rychlou analýzu hlavicek paketu prenásených po datové sbernici Download PDF

Info

Publication number
CZ303954B6
CZ303954B6 CZ20120264A CZ2012264A CZ303954B6 CZ 303954 B6 CZ303954 B6 CZ 303954B6 CZ 20120264 A CZ20120264 A CZ 20120264A CZ 2012264 A CZ2012264 A CZ 2012264A CZ 303954 B6 CZ303954 B6 CZ 303954B6
Authority
CZ
Czechia
Prior art keywords
input
activation
outputs
header
subcircuit
Prior art date
Application number
CZ20120264A
Other languages
English (en)
Other versions
CZ2012264A3 (cs
Inventor
Pus@Viktor
Original Assignee
CESNET, zájmové sdruzení právnických osob
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 CESNET, zájmové sdruzení právnických osob filed Critical CESNET, zájmové sdruzení právnických osob
Priority to CZ20120264A priority Critical patent/CZ2012264A3/cs
Priority to EP13158504.4A priority patent/EP2654261B8/en
Priority to US13/855,792 priority patent/US8923300B2/en
Publication of CZ303954B6 publication Critical patent/CZ303954B6/cs
Publication of CZ2012264A3 publication Critical patent/CZ2012264A3/cs

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

Je reseno zapojení pro rychlou analýzu hlavicek paketu pomocí obvodu pripojeného prímo k datové sbernici (1) prenásející pakety. Tento obvod obsahuje podobvody (3, 4, 9, 10) pro analýzu hlavicek jednotlivých protokolu. Dále obvod obsahuje cítac (2), který podobvody (3, 4, 9, 10) informuje o stavu sbernice (1). Kazdý z podobvodu (3, 4, 9, 10) je opatren vstupem dat ze sbernice (1), vstupem cítace (2), aktivacním vstupem (3.1, 3.4, 5.2, 6.2), urcujícím výskyt dané hlavicky protokolu v paketu, a vstupem pozice zacátku hlavicky v paketu (3.2, 3.6, 7.1, 8.1). Dále je kazdý z podobvodu (3, 4, 9, 10) opatren sadou aktivacních výstupu (3.3, 3.4, 4.1, 4.2, 9.1, 10.1) urcujících typ následující hlavicky protokolu a výstupem (3.6, 4.3, 9.2, 10.2) pozice zacátku následující hlavicky protokolu. Vsechny podobvody (3, 4, 9, 10) jsou s vyuzitím obvodu pomocné logiky (5, 6) a multiplexoru (7, 8) zapojeny do struktury, která odpovídá poctu a strukture ocekávaných protokolu v paketu. Takto vytvorený retezec z podobvodu je dále stejným zpusobem vetven na základe predpokládaného poctu protokolu s analyzovanými hlavickami. Výstupy celého obvodu tvorí dílcí aktivacní výstupy (3.3, 3.4, 3.5, 4.1, 4.2, 9.1, 10.1) a výstupy (3.6, 4.3, 9.2, 10.2) pozice zacátku následující hlavicky.

Description

Oblast techniky
Předkládané řešení se týká zpracování paketů v počítačových sítích. Základní informace o paketu jsou uloženy v jeho hlavičce, kterou je nutné analyzovat před dalším zpracováním paketu. Jedná se tedy o oblast telekomunikační techniky a služeb.
Dosavadní stav techniky
Zprávy v počítačových sítích jsou zapouzdřeny do několika vrstev komunikačních protokolů. Každý takový protokol přidává k paketu vlastní hlavičku. Je nutné analyzovat postupně jednotlivé hlavičky přítomné v paketu. Protože však hlavičky některých protokolů nemají pevnou délku, a protože pořadí hlaviček v paketu není obvykle předem známo, je obvykle nutné zpracovávat jednotlivé hlavičky protokolů postupně, kdy výsledek analýzy jedné hlavičky ovlivňuje analýzu následující hlavičky.
Současná řešená ukládají paket do paměti a následně provádějí analýzu hlaviček. Díky datovým závislostem však obsahují celou řadu závislých paměťových přístupů, kdy čtení nějaké hodnoty z paměti je podmíněno ukončením čtení předchozí hodnoty. Nejkratší možná doba zpracování všech hlaviček paketu je pak dána součinem doby trvání jedné paměťové operace a počtu paměťových operací.
Podstata vynálezu
Výše uvedené nedostatky odstraňuje zapojení pro rychlou analýzu hlaviček paketů obvodem připojených přímo ke sběrnici pro přenos paketů podle předkládaného řešení. Jeho podstatou je, že datová sběrnice je svými datovými výstupy propojená jednak s řetězcem N podobvodů analýzy hlaviček protokolů, jejichž počet je dán předpokládaným počtem přenášených protokolů, a jednak s čítačem, jehož výstup je propojen se vstupy hodnot čítače jednotlivých podobvodů. Na vstupu v řetězci zapojený první podobvod má aktivační vstup a vstup pozice začátku hlavičky, jejichž hodnoty jsou konstantní, a je svým výstupem pozice začátku následující hlavičky propojen jednak přímo se vstupem druhého podobvodů a jednak s jedním vstupem všech multiplexorů, jejichž počet je dán počtem v dalším úseku řetězce zařazených podobvodů. Tento první podobvod je opatřen aktivačními výstupy, jejichž počet je dán počtem v dalším úseku řetězce zařazených podobvodů. Jeden aktivační výstup je připojen přímo na aktivační vstup druhého podobvodů a další aktivační výstupy jsou připojeny na jeden vstup obvodů pomocné logiky, jejichž počet je dán počtem v dalším stupni řetězce zařazených podobvodů. Na druhý vstup každého z obvodů pomocné logiky je připojen jeden z aktivačních výstupů druhého podobvodů. Výstup pozice začátku následující hlavičky druhého podobvodů je připojen na druhý vstup multiplexorů, které majíc na své řídicí vstupy připojeny řídicí výstupy obvodů pomocné logiky. Aktivační výstupy obvodů pomocné logiky jsou připojeny na aktivační vstup jim náležejícího dalšího podobvodů, na jejichž druhý vstup je připojen výstup příslušejícího multiplexoru. Aktivační výstupy těchto dalších podobvodů, jejichž počet je dán počtem předpokládaných dalších typů hlaviček protokolů, a výstupy pozice začátku následující hlavičky jsou součástí výstupu celého obvodu. Takto vytvořený řetězec z podobvodů je dále stejným způsobem větven na základě předpokládaného počtu protokolů s analyzovanými hlavičkami. Výstupy celého obvodu pak tvoří dílčí aktivační výstupy a výstupy pozice začátku následující hlavičky.
Ve výhodném provedení je uvedené zapojení vytvořeno uvnitř obvodu FPGA, který slouží k příjmu, zpracování a odesílání paketů.
- 1 CZ 303954 B6
Výhodou tohoto řešení je rychlejší analýza hlaviček paketu než v případě umístění paketu do paměti. Několik vrstev hlaviček může být analyzováno v každém taktu hodin FPGA, protože informace předávané mezi jednotlivými podobvody jsou velmi jednoduché. Další výhodou je možnost změny podporovaných protokolů změnou struktury obvodu. Podobvody analýzy jednotlivých hlaviček pracují nezávisle a mají jednotné rozhraní, proto změna struktury obvodu, a tedy změna podporovaných protokolů, není obtížná.
Přehled obrázků na výkresech
Podstata nového řešení je dále vysvětlena a popsána na základě připojeného výkresu, obr. 1, který znázorňuje blokové schéma obvodu. Na obr. 2 je pak uvedeno jedno možné schéma zapojení podobvodu.
Příklady provedení vynálezu
Předmětem nového řešení obecně je použití analyzačního obvodu složeného z podobvodu pro analýzu hlaviček jednotlivých protokolů a z čítače datových slov na datové sběrnici a připojeného přímo k datové sběrnici, která přenáší pakety. Obvod obsahuje podobvody zapojené do struktury odpovídající jednotlivým očekávaným hlavičkám protokolů v paketech. Na přiloženém obr. 1 je vyznačeno obvodové řešení celého zapojení. Uvedené schéma ukazuje pouze jednu konkrétní možnost zapojení podobvodů, které vychází z konkrétní množiny podporovaných protokolů.
V zapojení podle obr. 1 je datová sběrnice I svými datovými výstupy propojená jednak s řetězcem N podobvodů, zde podobvodů 3, 4, 9 a 10, analýzy hlaviček protokolů. Počet podobvodů je dán předpokládaným počtem přenášených protokolů. Další součástí zapojení je čítač 2, jehož výstup 2.1 je propojen se vstupy hodnot čítače jednotlivých podobvodů 3, 4, 9 a 10. Na vstupu v řetězci zapojený první podobvod 3 má aktivační vstup 3.1 a vstup 3.2 pozice začátku hlavičky, jejichž hodnoty jsou konstantní. Výstup 3.6 pozice začátku následující hlavičky prvního podobvodu 3 je propojen jednak přímo se vstupem druhého podobvodu 4 a jednak s jedním vstupem všech multiplexorů 7, 8, jejichž počet je dán počtem v dalším úseku řetězce zařazených podobvodů, zde tedy se jedná o dva další podobvody 9 a 10. První podobvod 3 je dále opatřen aktivačními výstupy 3.3, 3.4, 3.5, jejichž počet je opět dán počtem v dalším úseku řetězce zařazených podobvodů. Zde se tedy jedná o tři podobvody 4, 9, j_0. Jeden tento aktivační výstup (3.4) je zde připojen přímo na aktivační vstup druhého podobvodu 4 a další aktivační výstupy 3.3, 3.5 jsou připojeny na jeden vstup obvodů pomocné logiky 5, 6, jejichž počet je dán počtem v dalším stupni řetězce zařazených podobvodů, zde tedy třetího podobvodu 9 a čtvrtého podobvodu 10. Na druhý vstup každého z obvodů pomocné logiky 5, 6 je připojen jeden z aktivačních výstupů
4.1, 4,2 druhého podobvodu 4, jehož výstup 4,3 pozice začátku následující hlavičky je připojen na druhý vstup multiplexorů 7, 8. Řídicí vstupy multiplexorů 7 a 8 jsou připojeny na řídicí výstupy 5.1, 6.1 obvodů pomocné logiky 5, 6. Aktivační výstupy 5.2, 6.2 obvodů pomocné logiky 5, 6 jsou připojeny na aktivační vstup jim náležejícího dalšího podobvodu 9 respektive 10, na jejichž druhý vstup je připojen výstup 7.1, 8.1 příslušejícího multiplexorů 7, respektive 8. V uváděném příkladu jsou aktivační výstupy 9.1 10,1 třetího aktivačního obvodu 9 a čtvrtého aktivačního obvodu j0 a výstupy 9.2, 10.2 pozice začátku následující hlavičky součástí výstupu celého obvodu. Takto vytvořený a právě popsaný řetězec skládající se z podobvodů je dále stejným způsobem větven na základě předpokládaného počtu protokolů s analyzovanými hlavičkami. Výstupy celého obvodu tvoří dílčí aktivační výstupy 33. 3.4, 3.5, 4.1, 4.2, 9.1, 10,1 a výstupy 3.6, 4.3,
9.2, 10.2 pozice začátku následující hlavičky.
Uváděné příkladné provedení využívá jeden obvod FPGA pro vytvoření datové sběrnice a obvodu složeného z jednotlivých podobvodů 3, 4, 9, 10 pro analýzu protokolů.
. 7 CZ 303954 B6
Obecně lze říci, že vstupem každého podobvodu 3, 4, 9,jO je aktivační signál nesoucí informaci o tom, zda byl aktivován, tedy zda se příslušná hlavička v paketu vyskytuje, a signál pozice začátku hlavičky, informující podobvod o pozici začátku příslušné hlavičky v paketu. Dále jsou vstupem každého podobvodu 3, 4, 9, 10 signály datové sběrnice 1 přenášející pakety. Dalším vstupem každého podobvodu 3, 4, 9, 10 je hodnota čítače 2 aktuální pozice v paketu. Výstupem každého podobvodu 3, 4, 9, 10 jsou aktivační signály nesoucí infoímaci o zjištěném typu následující hlavičky protokolu a signál nesoucí informaci o pozici začátku následující hlavičky v paketu.
Datová sběrnice 1 přenáší pakety. Čítač 2 sleduje provoz na datové sběrnici 1 a poskytuje na svém výstupu 2.1 ostatním podobvodům analýzy hlaviček, zde podobvodům 3, 4, 9 a 10, informaci o stavu datové sběrnici 1, především o pozici v paketu, která je v daném okamžiku viditelná na datové sběrnici 1.
Všechny podobvody 3, 4, 9 a 10 analýzy hlaviček mají na svém datovém vstupu data právě přenášená na datové sběrnici 1 a na svém vstupu hodnoty čítače mají výstup 2.1 čítače 2. Protože je podobvod 3 první, má na svém aktivačním vstupu 3.1 a na svém vstupu 3.2 pozice začátku hlavičky konstanty. Tento první podobvod 3 začíná pracovat vždy na začátku paketu. V síti typu Ethernet jde o analyzátor hlavičky protokolu Ethernet. Jeho výstupem je výstup 3.6 pozice začátku následující hlavičky a aktivační výstupy 3.3, 3.4, 3.5. V tomto příkladu se tedy předpokládá, že za hlavičkou prvního protokolu mohou následovat tři různé hlavičky dalších protokolů.
Druhý podobvod 4 má ke svému aktivačnímu vstupu přímo připojen aktivační výstup 3.4 prvního podobvodu 3 a ke svému vstupu pozice začátku hlavičky má připojen přímo výstup 3.6 podobvodu 3. V tomto příkladu se tedy předpokládá, že hlavička protokolu zpracovávaného druhým podobvodem 4 může v paketu následovat jedině po hlavičce protokolu zpracovávaného prvním podobvodem 3. Výstupy druhého podobvodu 4 jsou výstup 4,3 pozice začátku následující hlavičky a aktivační výstupy 4.1 a 42. V tomto příkladu se tedy předpokládá, že po hlavičce protokolu zpracovávaného druhým podobvodem 4 mohou v paketu následovat dvě různé hlavičky protokolů.
Třetí podobvod 9 má na svém aktivačním vstupu připojen aktivační výstup 5.2 prvního obvodu pomocné logiky 5, která hodnotu svého aktivačního výstupu 5.2 určuje jako logický součet aktivačního výstupu 3.3 prvního podobvodu 3 a aktivačního výstupu 4.1 druhého podobvodu 4, a dále na svém vstupu pozice začátku hlavičky má připojen výstup 7.1 prvního multiplexoru 7. První multiplexor 7 na svůj výstup 7.1 přepíná jeden z výstupů 3.6 a 4.3 pozice začátku následující hlavičky na základě řídicího vstupu, který je nastavován řídicím výstupem 5.1 prvního obvodu pomocné logiky 5 podle toho, který z podobvodů 3, 4 aktivuje třetí podobvod 9. V tomto příkladu se tedy předpokládá, že hlavička protokolu zpracovávaného třetím podobvodem 9 může v paketu následovat po hlavičkách protokolů zpracovávaných prvním podobvodem 3 nebo druhým podobvodem 4. Výstupem třetího podobvodu 9 je sada aktivačních výstupů 9.1, která určuje typ následující hlavičky protokolu, a výstup 9.2 pozice začátku následující hlavičky. Zpracování hlavičky následující po hlavičce protokolu zpracovávaného třetím podobvodem 9 se v tomto příkladu nepředpokládá, a tedy aktivační výstup 9.1 a výstup 9.2 pozice začátku následující hlavičky jsou použity jako výstupy celého obvodu.
Čtvrtý podobvod 10 má na svém aktivačním vstupu aktivační výstup 6.2 druhého obvodu pomocné logiky 6, která hodnotu aktivačního výstupu 6.2 určuje jako logický součet aktivačního výstupu 3.5 prvního podobvodu 3 a aktivačního výstupu 42 druhého podobvodu 4, a dále na svém vstupu pozice začátku hlavičky má připojen výstup 8.1 druhého multiplexoru 8. Druhý multiplexor 8 na svůj výstup 8.1 přepíná jeden z výstupů 3.6 a 4,3 pozice začátku následující hlavičky na základě řídicího vstupu, který je nastavován řídicím výstupem 6.1 druhého obvodu pomocné logiky 6 podle toho, který z podobvodů 3, 4 aktivuje čtvrtý podobvod J_0. V tomto příkladu se tedy předpokládá, že hlavička protokolu zpracovávaného čtvrtým podobvodem 10 může v paketu následovat po hlavičkách zpracovávaných prvním podobvodem 3 nebo druhým podobvodem 4. Výstupem čtvrtého podobvodu J_0 je sada aktivačních výstupů 10.1, která určuje typ následující hlavičky protokolu, a výstup 10.2 pozice začátku následující hlavičky. Zpracování hlavičky následující po hlavičce protokolu zpracovávaného čtvrtým podobvodem _10 se v tomto příkladu nepředpokládá, a tedy aktivační výstup 10.1 a výstup 10,2 pozice začátku následující hlavičky jsou použity jako výstupy celého obvodu.
Lze tedy souhrnně říci, že podobvody 3, 4, 9, JO zejména provádějí následující funkce:
- Výpočet pozice zájmových polí v paketu pomocí sčítaček sčítajících pozici začátku hlavičky v paketu (vstup podobvodu) s konstantními pozicemi zájmových polí v hlavičce.
- Výběr zájmových polí přenášených na datové sběrnici i pomocí multiplexorů řízených vypočtenými pozicemi polí v paketu.
- Uložení hodnot zájmových polí do registrů, které jsou řízeny řídicí logikou podobvodu.
- Určení typu následujícího protokolu porovnáním uložených hodnot s konstantami.
- Určení začátku hlavičky následujícího protokolu pomocí sčítaček sčítajících pozici začátku hlavičky aktuálního protokolu (vstup podobvodu) s velikostí této hlavičky.
- Kontrolu správnosti protokolu obvodem k tomu určeným, například výpočtem kontrolního součtu.
Získané informace podobvody 3, 4, 9 a _10 předávají na svůj výstup, odkud jsou připojeny na vstupy následujících podobvodů a současně na výstup celého obvodu. Výstupem celého obvodu jsou informace získané v podobvodech 3, 4, 9, 10, zejména informace o přítomnosti jednotlivých hlaviček protokolů a o jejich pozicích v paketu. Tyto informace lze dále využít např. pro změnu paketu úpravou některé hlavičky, případně pro snadnou extrakci jednotlivých polí z hlaviček s pomocí multiplexorů.
Obvodová realizace každého podobvodu 3, 4, 9 a J_0 je závislá na protokolu, který je daným podobvodem zpracováván. Každý podobvod obsahuje sčítačky pro výpočet pozic zájmových polí v paketu. Vstupem každé sčítačky je informace o pozici začátku příslušné hlavičky v paketu (tedy vstup podobvodu) a konstanta určující pozici zájmového pole v rámci hlavičky. Hodnota konstanty vychází ze specifikace daného protokolu. Výstupem každé sčítačky je pozice zájmového pole v paketu. Každý podobvod dále obsahuje multiplexory pro výběr zájmových polí paketu z datové sběrnice. K řídicím vstupům multiplexorů jsou připojeny výstupy sčítaček, k datovým vstupům multiplexorů jsou připojeny signály datové sběrnice přenášející pakety. Každý podobvod dále obsahuje registry pro zachycení výstupů z multiplexorů. Řídicí vstup registrů povolující zápis do registrů je připojen k řídicí logice podobvodu. Hodnoty takto vybraných a uložených zájmových polí jsou přivedeny na vstupy komparátorů určujících typ následující hlavičky.
Za předpokladu, že velikost hlavičky protokolu zpracovávaného daným podobvodem není konstantní, jsou hodnoty vybraných zájmových polí přivedeny k aritmetické jednotce určující velikost hlavičky. Výstupem aritmetické jednotky jsou signály nesoucí informaci o velikosti hlavičky. V opačném případě, tedy za předpokladu, že velikost hlavičky je konstantní, jsou signály nesoucí informaci o velikosti hlavičky konstantní. Každý podobvod dále obsahuje sčítačku určující začátek hlavičky následujícího protokolu. Jeden vstup sčítačky je připojen na vstupní signály podobvodu nesoucí informaci o pozici začátku příslušné hlavičky, druhý vstup sčítačky je připojen na signály nesoucí informaci o velikosti hlavičky.
Za předpokladu, že protokol zpracovávaný podobvodem obsahuje kontrolní informace, jsou hodnoty zájmových polí přivedeny k obvodu provádějícímu kontrolu. Výstupy obvodu provádějícího kontrolu mohou být využity k hlášení chyb v protokolu.
-4CZ 303954 B6
Propojení podobvodů mezi sebou je provedeno podle následujících pravidel.
Očekává-li se, že hlavička protokolu zpracovávaného podobvodem A bude v paketu následována hlavičkou jednoho z protokolů zpracovávaných podobvody Bl..Bn, pak je výstup podobvodů A nesoucí informaci o pozici začátku následující hlavičky připojen na vstupy pozice začátku hlavičky všech podobvodů Bl..Bn. Aktivační výstupy podobvodů A jsou pak připojeny na aktivační vstupy podobvodů Bl ..Bn tak, aby byl aktivován právě ten z těchto podobvodů, který je určen ke zpracování zjištěného typu protokolu.
Očekává-li se, že protokol zpracovávaný podobvodem A může v paketu následovat po jednom z protokolů zpracovávaných podobvody ΒΙ,.Βη, pak je vstup pozice začátku hlavičky podobvodu A připojen z výstupu multiplexoru, který je řízen aktivačními výstupy podobvodů BL.Bn. Aktivační vstup podobvodů Aje pak připojen z logiky provádějící logický součet aktivačních výstupů podobvodů BL.Bn tak, aby byl podobvod A aktivován, pokud jej aktivuje některý z podobvodů B1 ..Bn.
Na přiloženém obr. 2 je vyznačeno obvodové řešení příkladného podobvodů 4 pro analýzu hlaviček jednoho protokolu, který následuje za prvním podobvodem 3. Uvedený příklad předpokládá, že délka analyzované hlavičky není konstantní a lze ji vypočítat z některého pole v hlavičce, dále že analyzovaná hlavička obsahuje kontrolní pole, jehož kontrolou lze ověřit správnost protokolu, a dále že protokol připouští dvě možnosti typu následujícího protokolu. Datová sběrnice i přenáší pakety. Jeden vstup druhého podobvodů 4 je vlastně výstup 3.6 pozice začátku následující hlavičky prvního podobvodů 3 a určuje pozici začátku analyzované hlavičky v paketu. Druhý vstup druhého podobvodů 4 je výstup 2,1 čítače 2 a identifikuje pozici v paketu, která je právě viditelná na datové sběrnici I. Třetí vstup druhého podobvodů 4 tvoří aktivační výstup 3.4 prvního podobvodů 3, který určuje, zda je celý podobvod aktivní. Sčítačky 500, 600, 700 vypočítávají pozice tří zájmových polí v paketu součtem pozice začátku analyzované hlavičky na výstupu 3.6 s konstantami 800, 900, 100. Konstanty 800, 900, 100 jsou určeny ze specifikace protokolu. Multiplexory 11, 12, 13 jsou řízeny výstupy sčítaček 500, 600, 700 a vybírají z datové sběrnice i hodnoty zájmových polí. Aritmetická jednotka 18 na základě hodnoty zájmového pole uložené v registru 14 vypočítává délku hlavičky zpracovávaného protokolu. Povaha výpočtu je dána specifikací protokolu. Sčítačka 19 sčítá pozici začátku zpracovávané hlavičky ze vstupu 3.6 s délkou zpracovávané hlavičky a jejím výstupem je výstup 4.3 pozice začátku následující hlavičky. Kontrolní obvod 20 provádí kontrolu správnosti hodnoty zájmového pole uložené v registru 15 a určuje hodnotu výstupu 27, který indikuje chybu v protokolu. Povaha kontroly je dána specifikací protokolu. Komparátory 21 a 22 porovnávají hodnotu zájmového pole uloženou v registru 16 s konstantami 23 a 24 a na aktivační výstupy 4.1 a 4.2 předávají informaci o typu následující hlavičky protokolu. Konstanty 23 a 24 jsou dány specifikací protokolu.
Průmyslová využitelnost
Zapojení pro rychlou analýzu hlaviček paketů obvodem připojeným přímo ke sběrnici pro přenos paketů podle uvedeného řešení je průmyslově využitelné v obvodech pro zpracování paketů. Ve srovnání s běžně používanými řešeními umožňuje zrychlit proces analýzy hlaviček paketů a tím přispívá ke zrychlení celého zařízení.

Claims (2)

  1. PATENTOVÉ NÁROKY
    1. Zapojení pro rychlou analýzu hlaviček paketů přenášených po datové sběrnici, vyznačující se tím, že datová sběrnice (1) je svými datovými výstupy propojená jednak s řetězcem N podobvodů (3, 4, 9, 10) analýzy hlaviček protokolů, jejichž počet je dán předpokládaným počtem přenášených protokolů, a jednak s čítačem (2), jehož výstup (2.1) je propojen se vstupy hodnot čítače jednotlivých podobvodů (3, 4, 9, 10), kde na vstupu v řetězci zapojený první podobvod (3) má aktivační vstup (3.1) a vstup (3.2) pozice začátku hlavičky, jejichž hodnoty jsou konstantní, a je svým výstupem (3.6) pozice začátku následující hlavičky propojen jednak přímo se vstupem druhého podobvodů (4) a jednak s jedním vstupem všech multiplexorů (7, 8), jejichž počet je dán počtem v dalším úseku řetězce zařazených podobvodů (9, 10), a dále je opatřen aktivačními výstupy (3.3, 3.4, 3.5), jejichž počet je dán počtem v dalším úseku řetězce zařazených podobvodů (4, 9, 10), z nichž jeden aktivační výstup (3.4) je připojen přímo na aktivační vstup druhého podobvodů (4) a další aktivační výstupy (3.3, 3.5) jsou připojeny najeden vstup obvodů pomocné logiky (5.6), jejichž počet je dán počtem v dalším stupni řetězce zařazených podobvodů (9. 10), kde na druhý vstup každého z obvodů pomocné logiky (5, 6) je připojen jeden z aktivačních výstupů (4.1, 4.2) druhého podobvodů (4), jehož výstup (4.3) pozice začátku následující hlavičky je připojen na druhý vstup mulplexorů (7, 8), majících na své řídicí vstupy připojeny řídicí výstupy (5.1, 6.1) obvodů pomocné logiky (5, 6), a aktivační výstupy (5.2, 6.2) obvodů pomocné logiky (5, 6) jsou připojeny na aktivační vstup jim náležejícího dalšího podobvodů (9, 10), na jejichž druhý vstup je připojen výstup (7.1, 8.1) příslušejícího multiplexoru (7, 8), ajejichž aktivační výstupy (9.1, 10.1), jejichž počet je dán počtem předpokládaných dalších typů hlaviček protokolů, a výstupy (9.2, 10.2) pozice začátku následující hlavičky jsou součástí výstupu celého obvodu, přičemž takto vytvořený řetězec z podobvodů je dále stejným způsobem větven na základě předpokládaného počtu protokolů s analyzovanými hlavičkami, přičemž výstupy celého obvodu tvoří dílčí aktivační výstupy (3.3, 3.4, 3.5, 4.1, 4.2, 9.1, 10.1) a výstupy pozice začátku následující hlavičky (3.6, 4.3, 9.2, 10.2).
  2. 2. Zapojení podle nároku 1, vyznačující se tím, že je vytvořeno uvnitř obvodu FPGA.
CZ20120264A 2012-04-17 2012-04-17 Zapojení pro rychlou analýzu hlavicek paketu prenásených po datové sbernici CZ2012264A3 (cs)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CZ20120264A CZ2012264A3 (cs) 2012-04-17 2012-04-17 Zapojení pro rychlou analýzu hlavicek paketu prenásených po datové sbernici
EP13158504.4A EP2654261B8 (en) 2012-04-17 2013-03-11 Circuit for the fast analysis of packet headers transferred via a data bus
US13/855,792 US8923300B2 (en) 2012-04-17 2013-04-03 Connection for the fast analysis of packet headers transferred via data bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CZ20120264A CZ2012264A3 (cs) 2012-04-17 2012-04-17 Zapojení pro rychlou analýzu hlavicek paketu prenásených po datové sbernici

Publications (2)

Publication Number Publication Date
CZ303954B6 true CZ303954B6 (cs) 2013-07-10
CZ2012264A3 CZ2012264A3 (cs) 2013-07-10

Family

ID=47891417

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ20120264A CZ2012264A3 (cs) 2012-04-17 2012-04-17 Zapojení pro rychlou analýzu hlavicek paketu prenásených po datové sbernici

Country Status (3)

Country Link
US (1) US8923300B2 (cs)
EP (1) EP2654261B8 (cs)
CZ (1) CZ2012264A3 (cs)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CZ306871B6 (cs) * 2016-06-14 2017-08-16 CESNET, zájmové sdružení právnických osob Zapojení pro rychlé vyhledávání regulárních výrazů v datech
CN106850339B (zh) * 2016-12-30 2020-04-24 广州致远电子有限公司 一种总线信号协议解码方法
CN114943197B (zh) * 2022-07-25 2022-09-23 青岛中科方德软件有限公司 一种电路控制逻辑的仿真方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001010096A2 (en) * 1999-07-30 2001-02-08 Intel Corporation Parsing a packet header
WO2008009994A1 (en) * 2006-07-19 2008-01-24 Chronicle Solutions (Uk) Limited Network monitoring by using packet header analysis
WO2009013067A2 (en) * 2007-07-26 2009-01-29 Telefonaktiebolaget Lm Ericsson (Publ) Protocol-independent packet header analysis

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004040196A (ja) * 2002-06-28 2004-02-05 Matsushita Electric Ind Co Ltd パケットデータ処理装置およびパケットデータ処理方法
DE10260604B4 (de) * 2002-12-23 2006-09-21 Infineon Technologies Ag Multikanal-Prozessor
IL190134A (en) * 2007-03-12 2012-07-31 Marvell Israel Misl Ltd Method and system for determining the location of fields in information units
EP2096832A1 (en) * 2008-02-28 2009-09-02 Deutsche Thomson OHG Reconfigurable hardware-based parser for packet-oriented protocols

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001010096A2 (en) * 1999-07-30 2001-02-08 Intel Corporation Parsing a packet header
WO2008009994A1 (en) * 2006-07-19 2008-01-24 Chronicle Solutions (Uk) Limited Network monitoring by using packet header analysis
WO2009013067A2 (en) * 2007-07-26 2009-01-29 Telefonaktiebolaget Lm Ericsson (Publ) Protocol-independent packet header analysis

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Kobiersky P; et al.: Packet header analysis and field extraction for multigigabit networks, Design and Diagnostics of Electronic Circuits&Systems, 2009. DDECS '09. 12th International Symposium, str. 96-101, 15.04.2009 *

Also Published As

Publication number Publication date
US20130272307A1 (en) 2013-10-17
CZ2012264A3 (cs) 2013-07-10
EP2654261A2 (en) 2013-10-23
EP2654261A3 (en) 2017-07-12
EP2654261B1 (en) 2017-12-20
US8923300B2 (en) 2014-12-30
EP2654261B8 (en) 2018-02-28

Similar Documents

Publication Publication Date Title
US10880197B2 (en) Methods, systems, and computer readable media for testing a network node using source code for programming a packet forwarding plane of the network node
US8798038B2 (en) Efficient header generation in packetized protocols for flexible system on chip architectures
Cota et al. The impact of NoC reuse on the testing of core-based systems
JP6149150B2 (ja) スキューのあるマルチレーン通信リンクにおけるタイムスタンプ補正
KR20140063736A (ko) 최소 스토리지를 활용한 플렉시블 링크 폭들을 갖는 라우터에서 크레딧 흐름 제어 방식
US9954534B2 (en) Methods and circuits for preventing hold time violations
CZ303954B6 (cs) Zapojení pro rychlou analýzu hlavicek paketu prenásených po datové sbernici
US20130031412A1 (en) Processing apparatus, test signal generator, and method of generating test signal
EP1984830A1 (en) Ring bus in an emulation environment
US20050228926A1 (en) Virtual-bus interface and associated system and method
KR101473144B1 (ko) Can 통신 기반의 반도체 테스트 방법 및 시스템
KR101958540B1 (ko) 온 칩 dram을 사용한 멀티코어 환경에서의 포스트 실리콘 디버그 장치 및 방법
CN110958079B (zh) 一种测试方法、装置及测试系统
CZ23921U1 (cs) Zapojení pro rychlou analýzu hlaviček paketů přenášených po datové sběrnici
US9838229B2 (en) Method for verifying the functionality of a digital circuit
Sterpone et al. A new fault injection approach for testing network-on-chips
Parane et al. YaNoC: Yet another network-on-chip simulation acceleration engine supporting congestion-aware adaptive routing using FPGAs
Hawari et al. OP4T: Bringing Advanced Network Packet Timestamping into the Field
US9916405B2 (en) Distributed timing analysis of a partitioned integrated circuit design
Han et al. Parallelized network-on-chip-reused test access mechanism for multiple identical cores
US10476776B2 (en) Methods, systems and computer readable media for wide bus pattern matching
Wang et al. Analysis and Research on Distributed Network Protocol Testing Controllability Problem
Ponnan et al. On chip network with increased performance for efficient wireless communication
Mariño et al. Vehicular network processor design for scalability & automation: Elastic Gateway SoC concept & builder
JP4771076B2 (ja) 回路解析装置、回路解析方法、およびプログラム

Legal Events

Date Code Title Description
MM4A Patent lapsed due to non-payment of fee

Effective date: 20220417