JP6594672B2 - 汎用的な変更の指示を用いて、パケットの柔軟な変更を可能にする方法およびその装置 - Google Patents
汎用的な変更の指示を用いて、パケットの柔軟な変更を可能にする方法およびその装置 Download PDFInfo
- Publication number
- JP6594672B2 JP6594672B2 JP2015122561A JP2015122561A JP6594672B2 JP 6594672 B2 JP6594672 B2 JP 6594672B2 JP 2015122561 A JP2015122561 A JP 2015122561A JP 2015122561 A JP2015122561 A JP 2015122561A JP 6594672 B2 JP6594672 B2 JP 6594672B2
- Authority
- JP
- Japan
- Prior art keywords
- protocol
- header
- packet
- bit
- network switch
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 79
- 230000004048 modification Effects 0.000 title description 18
- 238000012986 modification Methods 0.000 title description 18
- 239000013598 vector Substances 0.000 claims description 108
- 230000008859 change Effects 0.000 claims description 45
- 230000005540 biological transmission Effects 0.000 claims description 18
- 238000013507 mapping Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 12
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
ネットワークスイッチ等のネットワークデバイスは、ネットワーク上のトラフィックのスイッチングつまりルーティングを行うことができる。ネットワークスイッチは、パケットを受信する少なくとも1つの入力ポートつまり受信ポート、およびパケットを送信する少なくとも1つの出力ポートつまり送信ポートを備える。一部の実施形態において、ネットワークスイッチは、さらに、パーサ(パース処理手段)およびリライタ(書き換え手段)を備える。パーサ(解析手段)は、ネットワーク上のパケット(ネットワークパケット)のコンテンツを特定する少なくとも1つのパーサエンジンを含み得る。リライタ(再書込手段)は、パケットを、ネットワークスイッチから送出する前に変更する少なくとも1つのリライトエンジンを含み得る。これら少なくとも1つのパーサエンジンおよび少なくとも1つのリライトエンジンは、自由に変更可能であり、プログラマブル(設定可能)に動作し得る。
一部の実施形態において、上記ネットワークスイッチは、17種類のプロトコルおよび8層のプロトコルレイヤをサポートする。すなわち、817通りのプロトコルレイヤ組合せが想定され得る。図1に、パケット内のプロトコルレイヤ組合せの複数例を示す。一例として、パケットは、イーサネット,IPv4,ICMPのような3層プロトコルレイヤ組合せを有し得る。他の例として、パケットは、イーサネット,IPv4,UDP,VxLAN,イーサネット,ARPのような7層プロトコルレイヤ組合せを有し得る。
レイヤタイプ(LayerType)と、パケットの1つ以上のフィールドについてのハッシュとの固有の組合せにより、上記リライトエンジンに、各プロトコルレイヤの汎用フォーマットが供与され得る。一部の実施形態において、この固有の組合せにより、上記メモリに記憶された、プロトコルの汎用フォーマットについてのソフトウェア定義のマッピングのうちの1つが指定され得る。上記リライトエンジンは、この汎用フォーマットを使用して、プロトコルレイヤの拡張、さらには、ソフトウェア命令を用いてのプロトコルレイヤの変更を行い得る。このレイヤタイプ(LayerType)が、さらに、パケット内においてそのプロトコルレイヤが開始する位置(開始位置)を、上記リライトエンジンに教示し得る。
上記リライトエンジンは、パケット内の所与のデータを用いて、受信ヘッダにおけるレイヤを変更するが、そのパケット内における当該データの位置はどこであってもよい。レイヤのサイズは様々に変化し得るため、上記リライトエンジンによる変更時に必要な、データのオフセット自体も、様々に変化し得る。このことは、リライトエンジンがどのデータをどこから選択できるのかに関してのハードウェア面での柔軟性を低下させる原因となり得る。
チェックサム、長さデータ等の付帯情報(MiscellaneousInformation)は、チェックサムの再計算およびヘッダの長さの更新などといった、そのプロトコルレイヤの特殊な取扱い要件を、上記リライトエンジンに教示し得る。
略述したように、前記リライトエンジンが、パケットの各プロトコルヘッダを、そのプロトコルに特有である汎用フォーマットで表現することにより、パケットにプログラマブルな変更を可能にする。これにより、パケットのヘッダを変更する際のハードウェア面およびソフトウェア面での柔軟性が向上する。
ネットワークスイッチの入力イーサネットポートで受信した、カスタマVLANタグ付きのパケットを、タグがない状態で、出力イーサネットポートに送信する場合を考える。図9Aに、その受信イーサネットポートで受信するパケット内の、イーサネットパケットヘッダのフォーマットの一例900を示す。その受信イーサネットポートで受信するパケットに対して、ソフトウェアにより、イーサネットヘッダの汎用フォーマットが、{22’b111111_111111_0000_1111_11}であるとプログラムされる。リライトエンジンは、そのヘッダ内のプロトコルレイヤを受け取って前記メモリを参照し、このメモリは、当該ヘッダのプロトコルの汎用フォーマットが{22’b111111_111111_0000_1111_11}であることをハードウェアに認識させる。この場合、ハードウェアでは、先頭から連続する12個の(いずれも「1」にマークされた)バイトと、4バイト分シフトして後に続く6個の(いずれも「1」にマークされた)バイトとの内容について待ち受ける。前記4バイト分は、ビットベクトルにおいて「0」にマークされた4個のビットに対応する、無効なバイトである。
ネットワークスイッチの入力イーサネットポートで受信した、サービスVLANタグおよびカスタマVLANタグ付きのパケットを、タグがない状態で、出力イーサネットポートに送信する場合を考える。図10Aに、その受信イーサネットポートで受信するパケット内の、イーサネットパケットヘッダのフォーマットの一例1000を示す。その受信イーサネットポートで受信するパケットに対して、ソフトウェアにより、イーサネットヘッダの汎用フォーマットが、{22’b111111_111111_1111_1111_11}であるとプログラムされる。リライトエンジンは、そのヘッダ内のプロトコルレイヤを受け取って前記メモリを参照し、このメモリは、当該ヘッダのプロトコルの汎用フォーマットが{22’b111111_111111_1111_1111_11}であることをハードウェアに認識させる。この場合、ハードウェアは、連続する22個の(いずれも「1」にマークされた)バイトの内容について待ち受ける。
ネットワークスイッチの入力イーサネットポートで受信した、タグが付いていないパケット、またはサービスVLANタグ、カスタマVLANタグもしくは両方のタグが付いたパケットを、(別の)二重タグ付きの状態で、出力イーサネットポートに送信する場合を考える。前記受信パケットが二重タグ付きのパケットである場合、ソフトウェアにより、イーサネットヘッダの汎用フォーマットが、、{22’b111111_111111_1111_1111_11}であるとプログラムされる。前記受信パケットがタグの付いていないパケットである場合、ソフトウェアにより、イーサネットヘッダの汎用フォーマットが、{22’b111111_111111_0000_0000_11}であるとプログラムされる。前記受信パケットが単一タグ付きのパケットである場合、ソフトウェアにより、イーサネットヘッダの汎用フォーマットが、{22’b111111_111111_0000_1111_11}又は{22’b111111_111111_1111_0000_11}であるとプログラムされる。
受信時の各レイヤに含まれるバイト数は、例えば64バイトであったり、128バイトであったり、あるいは、それ以上にもなり得る。なお、これまでの例における拡張後のイーサネットヘッダのバイト数は、22バイトであった。プロトコルレイヤ内の全てのバイトをビットベクトルで表そうとすると、プロトコルによっては最悪の場合、メモリを大量に消費することになり、効率が良いとは言えないことがある。現代のシステムオンチップ(SOC)設計では、通常、組み込まれるメモリの面積および電力予算がチップ全体の予算を大きく占める。そのため、限られたメモリリソースを効率的に利用することが重要となる。
変更は、拡張後のプロトコルヘッダに適用され得る汎用的な命令のセットを用いる。これら命令は、受信時のヘッダ(例えば、サイズ、プロトコルなど)に影響されないので、いずれも汎用的な命令であると言える。
リライトエンジンは、プロトコルヘッダを変更用の汎用フォーマットに基づいて拡張するためだけに限らず、そのプロトコルヘッダを当該汎用フォーマットから「通常の」フォーマットに減縮するためにも、各プロトコルヘッダに対するビットベクトルを用い得る。典型的に、ビットベクトルの各ビットは、汎用化後のプロトコルヘッダ内の1バイトを表している。ビットベクトルにおいて0にマークされたビットは無効なバイトに対応し、1にマークされたビットは有効なバイトに対応する。汎用化後のプロトコルヘッダに対して全ての命令が実行された後、リライトエンジンが、ビットベクトルを用いて無効なバイトを全て除外することにより、新しいプロトコルヘッダを形成し得る。このように、リライトエンジンは、ビットベクトルを用いて、パケット内のプロトコルヘッダを拡張することも減縮することも可能であり得る。つまり、汎用的な命令のセットを用いることにより、パケットの柔軟な変更が実施可能になり得る。
受信パケットから、複数の互いに異なるプロトコルレイヤを汎用化のためにそれぞれ抽出したり、これらのプロトコルレイヤの変更後にパケットを再構築したりするのに、ポインタ構造(ポインタ構造体)が使用され得る。このポインタ構造は、N+1個のレイヤポインタおよびそのパケット内の全てのヘッダの合計サイズを含み得る。典型的に、このポインタ構造は、パーサエンジンにより供給されるデータを用いて予め更新(初期化)され、リライトエンジンが、そのポインタ構造を用いてパケットを個々のレイヤに分割し、さらに、そのポインタ構造を用いてこれら個々のレイヤを情報処理で(知的に(intelligently))継合する。具体的に述べると、リライトエンジンは、パケットを個々のレイヤに分割した後、プロトコルヘッダを汎用化し、汎用化後のプロトコルヘッダを変更し、さらに、無効なバイトを全て除外することによって汎用化後のプロトコルヘッダを圧縮し得る。リライトエンジンは、レイヤを変更すると、前記レイヤポインタを更新し得る。パケットをネットワークスイッチから送信するのに先立って、更新後のレイヤポインタを用いて、互いに異なるプロトコルレイヤを互いに継合し得る。このようにプロトコルレイヤを互いに継合するため、複数のプロトコルレイヤを実体的には連続させずとも、レイヤポインタによってあたかもプロコルレイヤが連続するかのように扱う(仮想的に連続させる)ことが可能となる。
Claims (25)
- ネットワークスイッチのリライトエンジンの動作方法であって、
パケットの各プロトコルヘッダを、当該プロトコルヘッダ用の汎用フォーマットに従って汎用化する過程であって、汎用化後の各プロトコルヘッダは、無効フィールドについてはビットが第1の値にマークされて有効フィールドについてはビットが第2の値にマークされたビットベクトルに対応し、前記汎用フォーマットは、前記プロトコルヘッダのプロトコルによってサポートされる全てのフィールドを含むフォーマットである、過程と、
当該ネットワークスイッチのメモリに記憶された汎用的な命令のセットから、少なくとも1つの命令を用いて、汎用化後の少なくとも1つのプロトコルヘッダを変更する過程と、
を含む、方法。 - 請求項1に記載の方法において、前記フィールドの各々は、前記プロトコルヘッダのプロトコルの変種にかかわらず同一のオフセットを有する、方法。
- 請求項1に記載の方法において、前記ビットベクトルが、汎用化後のプロトコルヘッダの各バイトに対して1ビットを有する、方法。
- 請求項1に記載の方法において、汎用化後の前記少なくとも1つのプロトコルヘッダを、当該ネットワークスイッチの送信ポートの出口側ポートタイプ(egress portType)に基づいて変更する、方法。
- 請求項1に記載の方法において、汎用化後の前記少なくとも1つのプロトコルヘッダを変更すると、前記ビットベクトルが更新される、方法。
- 請求項1に記載の方法において、汎用的な命令の前記セットが、あるプロトコルの第1の変種のパケットヘッダを変更するために、かつ、当該プロトコルの第2の変種のパケットヘッダを変更するために使用される、方法。
- 請求項1に記載の方法において、汎用的な命令の前記セットが、第1のプロトコルのパケットヘッダを変更するために、かつ、第2のプロトコルのパケットヘッダを変更するために使用される、方法。
- ネットワークスイッチの動作方法であって、
前記ネットワークスイッチのメモリ内に、汎用的な命令のセットを保持する過程と、
前記ネットワークスイッチの受信ポートでパケットを受信する過程と、
前記パケットの各プロトコルヘッダを、当該プロトコルヘッダ用の汎用フォーマットに従って汎用化する過程であって、汎用化後の各プロトコルヘッダが、無効フィールドについてはビットが第1の値にマークされて有効フィールドについてはビットが第2の値にマークされたビットベクトルに対応し、前記汎用フォーマットは、前記プロトコルヘッダのプロトコルによってサポートされる全てのフィールドを含むフォーマットである、過程と、
汎用的な命令の前記セットから、少なくとも1つの命令を、汎用化後のプロトコルヘッダに適用することにより、汎用化後の少なくとも1つのプロトコルヘッダを変更する過程であって、これにより、前記ビットベクトルが更新される過程と、
更新後のビットベクトルに基づいて、新しいプロトコルヘッダを形成する過程と、
前記パケットを、前記新しいプロトコルヘッダ付きで、前記ネットワークスイッチの送信ポートから送信する過程と、
を含む、方法。 - 請求項8に記載の方法において、汎用的な命令の前記セットにおける各命令が、ソフトウェアによりプログラム可能なマイクロコードとして実現される、方法。
- 請求項8に記載の方法において、汎用的な命令の前記セットが、開始(Start)およびサイズ(Size)をパラメータとして有するデリート(Delete)命令を含む、方法。
- 請求項8に記載の方法において、汎用的な命令の前記セットが、ソース(Source)、ソースオフセット(SourceOffset)、サイズ(Size)、宛先オフセット(DestinationOffset)、ビットマスク(Bitmask)、コピー一定ビットマスク(copyConstantBitMask)およびコピー一定データ(copyConstantData)をパラメータとして有するコピー(Copy)命令を含む、方法。
- 請求項11に記載の方法において、前記コピー(Copy)命令が、ソース(Source)のソースオフセット(SourceOffset)から、サイズ(Size)分のバイトのデータを、汎用化後のプロトコルヘッダの宛先オフセット(DestinationOffset)にコピーする、方法。
- 請求項11に記載の方法において、前記コピー(Copy)命令が、ビットマスク(Bitmask)を用いてビットマスク演算を実行する、方法。
- 請求項11に記載の方法において、コピー一定ビットマスク(copyConstantBitMask)が所与のビット位置に第3の値を有するとき、コピー一定データ(copyConstantData)における対応する位置のバイトを、汎用化後のプロトコルヘッダにおける対応する位置にコピーする、方法。
- 請求項11に記載の方法において、コピー一定データ(copyConstantData)が、前記メモリに記憶され、かつ、ソフトウェアで定義される、方法。
- 請求項11に記載の方法において、対応する宛先のバイトの有効性がソース(Source)のデータの有効性に依存し、前記ビットベクトルにおいて無効なバイトを表すビットは前記第1の値にマークされて有効なバイトを表すビットは前記第2の値にマークされる、方法。
- 請求項8に記載の方法において、汎用的な命令の前記セットが、開始オフセット(StartOffset)、宛先オフセット(DestinationOffset)およびサイズ(Size)をパラメータとして有する移動(Move)命令を含む、方法。
- 請求項17に記載の方法において、前記移動(Move)命令が、汎用化後のプロトコルヘッダ内において開始オフセット(StartOffset)からサイズ(Size)分のバイトを、宛先オフセット(DestinationOffset)に移動する、方法。
- 請求項17に記載の方法において、対応する宛先のバイトの有効性がソース(Source)のデータの有効性に依存し、前記ビットベクトルにおいて無効なバイトを表すビットは前記第1の値にマークされて有効なバイトを表すビットは前記第2の値にマークされる、方法。
- 請求項8に記載の方法において、各プロトコルヘッダを汎用化する過程が、
前記パケットのプロトコルヘッダから、欠けているフィールドを検出すること、および
そのプロトコルヘッダを、前記検出の結果に基づいて、前記欠けているフィールドを含めることにより、前記汎用フォーマットに拡張すること、
を含む、方法。 - 請求項20に記載の方法において、さらに、前記パケットを前記新しいプロトコルヘッダ付きで送信する過程に先立って、
実行された全てのオペレーションについて、追加された又はデリートされたバイト数を計数する過程、
を含む、方法。 - 複数のプロトコルの異なる1つにそれぞれ対応する1つ以上のプロトコルレイヤと共にヘッダをそれぞれ有するパケットを送受信する入力ポートおよび出力ポートであって、前記プロトコルの各々は、フィールドの異なる組合せを有する複数のプロトコルレイヤ変種をサポートし、さらに、前記パケットの前記プロトコルレイヤの各々は、前記プロトコルレイヤが対応する前記プロトコルによってサポートされた前記プロトコルレイヤ変種のうちの1つである、入力ポートおよび出力ポートと、
前記プロトコルのうちの1つにそれぞれ関連付けられ、ヘッダの変更を行うために用いられる汎用的な命令のセットを記憶するメモリと、
前記プロトコルレイヤがどの前記プロトコルレイヤ変種を含むかに関わらず、前記プロトコルレイヤの前記プロトコルに関連する前記汎用的な命令の少なくとも1つを適用することによって、前記プロトコルレイヤの各々を変更するリライトエンジンと、
を備える、ネットワークスイッチ。 - 請求項22に記載のネットワークスイッチにおいて、ソフトウェア定義のマッピングのうち、前記プロトコルレイヤを前記プロトコルレイヤの前記プロトコルによってサポートされた全てのフィールドを含む汎用フォーマットに変換することで前記プロトコルレイヤに対応する前記プロトコルのうちの1つに特有であるマッピングに従って、前記ヘッダの各プロトコルレイヤが、前記リライトエンジンによって汎用後のプロトコルレイヤに汎用化される、ネットワークスイッチ。
- 請求項22に記載のネットワークスイッチにおいて、汎用化後の各プロトコルレイヤが、無効フィールドについてはビットが第1の値にマークされて有効フィールドについてはビットが第2の値にマークされたビットベクトルを備える、ネットワークスイッチ。
- 請求項22に記載のネットワークスイッチにおいて、前記汎用的な命令のセットが、デリート(Delete)命令、コピー(Copy)命令および移動(Move)命令を含む、ネットワークスイッチ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/309,650 US9531848B2 (en) | 2014-06-19 | 2014-06-19 | Method of using generic modification instructions to enable flexible modifications of packets and an apparatus thereof |
US14/309,650 | 2014-06-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016005283A JP2016005283A (ja) | 2016-01-12 |
JP6594672B2 true JP6594672B2 (ja) | 2019-10-23 |
Family
ID=53541502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015122561A Active JP6594672B2 (ja) | 2014-06-19 | 2015-06-18 | 汎用的な変更の指示を用いて、パケットの柔軟な変更を可能にする方法およびその装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9531848B2 (ja) |
EP (1) | EP2958286B1 (ja) |
JP (1) | JP6594672B2 (ja) |
KR (1) | KR102368166B1 (ja) |
CN (1) | CN105282136B (ja) |
HK (1) | HK1220835A1 (ja) |
TW (1) | TW201605207A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110471776B (zh) * | 2019-06-27 | 2022-02-08 | 浙江口碑网络技术有限公司 | 应用数据通信方法、装置及系统 |
Family Cites Families (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5805808A (en) | 1991-12-27 | 1998-09-08 | Digital Equipment Corporation | Real time parser for data packets in a communications network |
US5793954A (en) * | 1995-12-20 | 1998-08-11 | Nb Networks | System and method for general purpose network analysis |
US6088356A (en) | 1997-06-30 | 2000-07-11 | Sun Microsystems, Inc. | System and method for a multi-layer network element |
US6341129B1 (en) | 1998-04-03 | 2002-01-22 | Alteon Networks, Inc. | TCP resegmentation |
US7333484B2 (en) | 1998-08-07 | 2008-02-19 | Intel Corporation | Services processor having a packet editing unit |
FI106504B (fi) | 1998-10-06 | 2001-02-15 | Nokia Networks Oy | Datan segmentointimenetelmä tietoliikennejärjestelmässä |
US6356951B1 (en) * | 1999-03-01 | 2002-03-12 | Sun Microsystems, Inc. | System for parsing a packet for conformity with a predetermined protocol using mask and comparison values included in a parsing instruction |
US6789116B1 (en) | 1999-06-30 | 2004-09-07 | Hi/Fn, Inc. | State processor for pattern matching in a network monitor device |
JP4708650B2 (ja) | 1999-12-02 | 2011-06-22 | パナソニック株式会社 | 光ディスク媒体およびその記録方法、記録装置 |
JP3613102B2 (ja) | 1999-12-14 | 2005-01-26 | 日本電気株式会社 | フレーム構成方法、フレーム構成装置およびフレーム構成転送システム |
JP4099930B2 (ja) | 2000-06-02 | 2008-06-11 | 株式会社日立製作所 | ルータ装置及びvpn識別情報の設定方法 |
GB0023169D0 (en) | 2000-09-20 | 2000-11-01 | Ibm | Message parsing in message processing systems |
US7451235B2 (en) * | 2000-10-11 | 2008-11-11 | Broadcom Corporation | Dynamic delta encoding for cable modem header suppression |
US6944168B2 (en) * | 2001-05-04 | 2005-09-13 | Slt Logic Llc | System and method for providing transformation of multi-protocol packets in a data stream |
US6904057B2 (en) | 2001-05-04 | 2005-06-07 | Slt Logic Llc | Method and apparatus for providing multi-protocol, multi-stage, real-time frame classification |
JP4460195B2 (ja) * | 2001-08-06 | 2010-05-12 | 株式会社日立製作所 | パケット転送装置およびルーティング制御装置 |
US20030037154A1 (en) * | 2001-08-16 | 2003-02-20 | Poggio Andrew A. | Protocol processor |
US7580408B2 (en) | 2001-11-21 | 2009-08-25 | Alcatel Lucent | Configurable packet processor |
US7236501B1 (en) | 2002-03-22 | 2007-06-26 | Juniper Networks, Inc. | Systems and methods for handling packet fragmentation |
US7187694B1 (en) | 2002-03-29 | 2007-03-06 | Pmc-Sierra, Inc. | Generic packet parser |
JP2003308206A (ja) | 2002-04-15 | 2003-10-31 | Fujitsu Ltd | プロセッサ装置 |
US20050232303A1 (en) | 2002-04-26 | 2005-10-20 | Koen Deforche | Efficient packet processing pipeline device and method |
US7408957B2 (en) | 2002-06-13 | 2008-08-05 | International Business Machines Corporation | Selective header field dispatch in a network processing system |
US20050281281A1 (en) | 2003-01-24 | 2005-12-22 | Rajesh Nair | Port input buffer architecture |
US7415596B2 (en) | 2003-01-24 | 2008-08-19 | Gigafin Networks, Inc. | Parser table/production rule table configuration using CAM and SRAM |
US7706363B1 (en) | 2003-06-11 | 2010-04-27 | Radlan Computer Communications, Ltd | Method and apparatus for managing packets in a packet switched network |
GB0320957D0 (en) * | 2003-09-08 | 2003-10-08 | Qinetiq Ltd | Document authentication |
US7411957B2 (en) | 2004-03-26 | 2008-08-12 | Cisco Technology, Inc. | Hardware filtering support for denial-of-service attacks |
US7580350B1 (en) | 2004-03-30 | 2009-08-25 | Extreme Networks, Inc. | System for deriving packet quality of service indicator |
US7385984B2 (en) * | 2004-03-30 | 2008-06-10 | Extreme Networks, Inc. | Packet processing system architecture and method |
US7822032B1 (en) * | 2004-03-30 | 2010-10-26 | Extreme Networks, Inc. | Data structures for supporting packet data modification operations |
US8200839B1 (en) | 2004-04-30 | 2012-06-12 | Rockstar Bidco Lp | Method and apparatus for restoring service label information |
JP4392294B2 (ja) | 2004-06-15 | 2009-12-24 | 株式会社日立製作所 | 通信統計収集装置 |
JP4156568B2 (ja) | 2004-06-21 | 2008-09-24 | 富士通株式会社 | 通信システムの制御方法、通信制御装置、プログラム |
US7474619B2 (en) | 2004-07-22 | 2009-01-06 | International Business Machines Corporation | Method and apparatus for providing fragmentation at a transport level along a transmission path |
US7570661B2 (en) | 2005-06-14 | 2009-08-04 | Microsoft Corporation | Script-based parser |
US7603474B2 (en) | 2005-10-05 | 2009-10-13 | Microsoft Corporation | Efficient endpoint matching using a header-to-bit conversion table |
US9143585B2 (en) | 2006-07-07 | 2015-09-22 | Wi-Lan Inc. | Method and system for generic multiprotocol convergence over wireless air interface |
US7710959B2 (en) * | 2006-08-29 | 2010-05-04 | Cisco Technology, Inc. | Private VLAN edge across multiple switch modules |
CA2669932A1 (en) | 2006-12-19 | 2008-06-26 | International Business Machines Corporation | Apparatus and method for analysing a network flow |
US7822875B1 (en) | 2006-12-22 | 2010-10-26 | Marvell International Ltd. | Method for flexible modifications to a packet |
IL220238A (en) | 2007-03-12 | 2014-03-31 | Marvell Israel Misl Ltd | A method and system for determining the location of fields in information units |
US8825592B2 (en) | 2008-03-12 | 2014-09-02 | Web Access, Inc. | Systems and methods for extracting data from a document in an electronic format |
US7843919B2 (en) | 2008-03-20 | 2010-11-30 | International Business Machines Corporation | Ethernet virtualization using a network packet alteration |
KR101456563B1 (ko) | 2008-05-14 | 2014-10-31 | 삼성전자주식회사 | 멀티 홉 릴레이 환경에서 대역폭 할당 요청과 할당 방법 및시스템 |
US8234369B2 (en) | 2008-12-23 | 2012-07-31 | Verizon Patent And Licensing Inc. | Web page response monitoring |
CN102273149A (zh) * | 2008-12-23 | 2011-12-07 | 莫维克网络公司 | 一种利用多层协议的透明代理设备 |
US8902886B2 (en) | 2009-04-23 | 2014-12-02 | International Business Machines Corporation | Canonicalization of network protocol headers |
US8111704B2 (en) | 2009-06-26 | 2012-02-07 | Intel Corporation | Multiple compression techniques for packetized information |
US9008082B2 (en) | 2009-12-07 | 2015-04-14 | Telefonaktiebolaget L M Ericsson (Publ) | Handling data packets received at a routing node |
CN101777791B (zh) * | 2009-12-18 | 2012-05-23 | 深圳市科陆电子科技股份有限公司 | 一种同时兼容多种电力负控系统通信协议的方法及其系统 |
US8472438B2 (en) | 2010-04-23 | 2013-06-25 | Telefonaktiebolaget L M Ericsson (Publ) | Efficient encapsulation of packets transmitted on a packet-pseudowire over a packet switched network |
EP2567524B1 (en) | 2010-05-03 | 2019-06-26 | Nokia Technologies Oy | Protocol overhead reduction |
US8537815B2 (en) | 2010-06-17 | 2013-09-17 | Apple Inc. | Accelerating data routing |
US8705533B1 (en) | 2010-12-10 | 2014-04-22 | Juniper Networks, Inc. | Fast packet encapsulation using templates |
TW201246867A (en) | 2011-05-06 | 2012-11-16 | Ralink Technology Corp | Packet processing accelerator and method thereof |
US8711860B2 (en) | 2011-12-22 | 2014-04-29 | Telefonaktiebolaget L M Ericsson (Publ) | Controller for flexible and extensible flow processing in software-defined networks |
US8521905B2 (en) | 2011-12-22 | 2013-08-27 | Telefonaktiebolaget L M Ericsson (Publ) | System for flexible and extensible flow processing in software-defined networks |
US9282173B2 (en) | 2012-02-17 | 2016-03-08 | Viavi Solutions Inc. | Reconfigurable packet header parsing |
EP3276977B1 (en) | 2012-10-17 | 2020-04-29 | Sony Corporation | Data processing device, data processing method, and program |
US9438517B2 (en) | 2012-10-30 | 2016-09-06 | Viavi Solutions Inc. | Method and system for identifying matching packets |
US9219694B2 (en) | 2013-03-15 | 2015-12-22 | Wisconsin Alumni Research Foundation | Content addressable memory with reduced power consumption |
US9769701B2 (en) | 2013-06-14 | 2017-09-19 | Texas Instruments Incorporated | Header compression for wireless backhaul systems |
US9444914B2 (en) | 2013-09-16 | 2016-09-13 | Annapurna Labs Ltd. | Configurable parser and a method for parsing information units |
US9628382B2 (en) | 2014-02-05 | 2017-04-18 | Intel Corporation | Reliable transport of ethernet packet data with wire-speed and packet data rate match |
-
2014
- 2014-06-19 US US14/309,650 patent/US9531848B2/en active Active
-
2015
- 2015-04-13 TW TW104111753A patent/TW201605207A/zh unknown
- 2015-05-25 CN CN201510272670.3A patent/CN105282136B/zh active Active
- 2015-06-15 KR KR1020150084526A patent/KR102368166B1/ko active IP Right Grant
- 2015-06-18 JP JP2015122561A patent/JP6594672B2/ja active Active
- 2015-06-19 EP EP15172917.5A patent/EP2958286B1/en active Active
-
2016
- 2016-07-26 HK HK16108894.2A patent/HK1220835A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
HK1220835A1 (zh) | 2017-05-12 |
EP2958286A1 (en) | 2015-12-23 |
TW201605207A (zh) | 2016-02-01 |
US20150373159A1 (en) | 2015-12-24 |
CN105282136B (zh) | 2020-05-05 |
KR102368166B1 (ko) | 2022-02-25 |
CN105282136A (zh) | 2016-01-27 |
US9531848B2 (en) | 2016-12-27 |
JP2016005283A (ja) | 2016-01-12 |
EP2958286B1 (en) | 2019-05-01 |
KR20150146406A (ko) | 2015-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6608628B2 (ja) | パケットの固有の識別子を用いて、パケットの構造を特定する方法およびその装置 | |
US20240022652A1 (en) | A method of using bit vectors to allow expansion and collapse of header layers within packets for enabling flexible modifications and an apparatus thereof | |
JP6678401B2 (ja) | 変更のためにパケットを個々のレイヤに分割し、変更後のレイヤを情報処理で継合する方法およびその装置 | |
US9473601B2 (en) | Method of representing a generic format header using continuous bytes and an apparatus thereof | |
JP6594671B2 (ja) | パケットを汎用フォーマットに変更して、プログラマブルな変更を可能にする方法およびその装置 | |
JP6594672B2 (ja) | 汎用的な変更の指示を用いて、パケットの柔軟な変更を可能にする方法およびその装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180601 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20180601 Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20180601 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190308 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190318 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190618 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190826 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190925 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6594672 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |