JP2005064803A - Packet transfer apparatus - Google Patents
Packet transfer apparatus Download PDFInfo
- Publication number
- JP2005064803A JP2005064803A JP2003291551A JP2003291551A JP2005064803A JP 2005064803 A JP2005064803 A JP 2005064803A JP 2003291551 A JP2003291551 A JP 2003291551A JP 2003291551 A JP2003291551 A JP 2003291551A JP 2005064803 A JP2005064803 A JP 2005064803A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- transfer processing
- packet transfer
- processing
- protocol
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、IP系パケット、MPLSパケット、Ethernet(登録商標)フレーム、PoSフレーム等の転送処理を行うパケット転送装置に関するものである。 The present invention relates to a packet transfer apparatus that performs transfer processing of IP packets, MPLS packets, Ethernet (registered trademark) frames, PoS frames, and the like.
従来、IP系パケット、MPLSパケット、Ethernet(登録商標)フレーム、PoSフレーム等のパケットを転送する転送処理方式としては、例えば、レイヤ2に該レイヤ2プロトコルのパケット転送処理を行うEthernet(登録商標)処理ブロック及びPoS処理ブロックを有し、レイヤ3に該レイヤ3プロトコルのパケット転送処理を行うIP処理ブロック及びMPLS処理ブロックを有する構成がある。
Conventionally, as a transfer processing method for transferring a packet such as an IP packet, an MPLS packet, an Ethernet (registered trademark) frame, or a PoS frame, for example, Ethernet (registered trademark) that performs packet transfer processing of the
Ethernet(登録商標)上でIPパケットの送受信処理を行う場合を例にとり、動作について説明する。レイヤ1から受信したEthernet(登録商標)フレームをEthernet(登録商標)処理ブロックで受信処理し、Ethernet(登録商標)フレームヘッダに示されるプロトコル情報からレイヤ3プロトコルがIPであることを判定し、IP処理ブロックに処理済パケットを渡して受信処理を依頼する。
The operation will be described by taking as an example the case of performing transmission / reception processing of IP packets on Ethernet (registered trademark). The Ethernet (registered trademark) frame received from the
IP処理ブロックは、IPパケット受信処理を行い、Ethernet(登録商標)上でパケットを送信すればよいと判断し、IP処理ブロック内部でのIPパケット送信処理を行った上で、Ethernet(登録商標)処理ブロックに対して処理済パケットを渡して送信処理を依頼する。Ethernet(登録商標)処理ブロックは送信処理を行った上で、処理済パケットをレイヤ1上に送信する。
The IP processing block performs IP packet reception processing, determines that the packet should be transmitted on the Ethernet (registered trademark), performs IP packet transmission processing inside the IP processing block, and then performs Ethernet (registered trademark). Send the processed packet to the processing block and request transmission processing. The Ethernet (registered trademark) processing block performs transmission processing, and then transmits the processed packet on
しかし、従来の方式では、L2プロトコルとL3プロトコルの組合せについては柔軟に変更可能とする様に考慮されているが、IP系プロトコルで発生する、以下のようなケースに対応できないという問題点がある。 However, in the conventional method, the combination of the L2 protocol and the L3 protocol is considered to be flexible, but there is a problem that the following cases that occur in the IP protocol cannot be handled. .
例えばEthernet(登録商標)フレームのペイロードがMPLSパケットであり、MPLSパケットのペイロードとしてEthernet(登録商標)フレームが転送されるという様に、L2プロトコルとL3プロトコルを自由な組合せで階層化することができない。すなわち、L2プロトコルとL3プロトコルを自由な組合せで用いたパケットの転送処理を行うことができない。 For example, the Ethernet (registered trademark) frame payload is an MPLS packet, and the Ethernet (registered trademark) frame is transferred as the payload of the MPLS packet, so that the L2 protocol and the L3 protocol cannot be hierarchized in a free combination. . That is, packet transfer processing using any combination of the L2 protocol and the L3 protocol cannot be performed.
また、同じラベル値を持つMPLSパケットの受信処理を、例えばEthernet(登録商標)フレームのペイロードがMPLSパケットである場合、Ethernet(登録商標)フレームのペイロードがIPパケットでそのIPパケットのペイロードがMPLSパケットである場合、Ethernet(登録商標)フレームのペイロードがMPLSパケットでそのMPLSパケットのペイロードがMPLSパケットである場合の様に、複数のプロトコル階層で実行することができない。 For example, when the payload of an Ethernet (registered trademark) frame is an MPLS packet, the payload of the Ethernet (registered trademark) frame is an IP packet, and the payload of the IP packet is an MPLS packet. , The payload of the Ethernet (registered trademark) frame is an MPLS packet, and the payload of the MPLS packet is an MPLS packet, so that it cannot be executed in a plurality of protocol layers.
また、このような複数のプロトコルを用いたパケットに対する技術として、例えばL2プロトコルとL3プロトコルの間のインタフェースを標準化し、任意のL2プロトコルとL3との間でデータ交換を行うものがある。これにより、1つのL3プロトコルの集合の要素とL3プロトコルの集合の要素の間で任意の組み合わせを可能とし、1つのL3プロトコルが複数のL2プロトコルと接続される(特許文献1参照)。 As a technique for a packet using such a plurality of protocols, for example, there is a technique for standardizing an interface between the L2 protocol and the L3 protocol and exchanging data between any L2 protocol and L3. Thereby, an arbitrary combination is possible between the elements of one L3 protocol set and the elements of the L3 protocol set, and one L3 protocol is connected to a plurality of L2 protocols (see Patent Document 1).
しかしながら、このような手法では、L3プロトコルの上にさらに別のL2/L3プロトコルが階層化されるようなケースには対応することができず、複数のプロトコルを用いて構成されたパケットに対してはパケット転送処理を行えない場合が発生する。 However, such a method cannot cope with a case where another L2 / L3 protocol is layered on top of the L3 protocol, and for a packet configured using a plurality of protocols. In some cases, packet transfer processing cannot be performed.
この発明は上記のような問題点を解決するためになされたもので、複数のプロトコルを用いて構成されたパケットに対しても確実にパケット転送処理を実現可能なパケット転送装置を得ることを目的としている。 The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a packet transfer apparatus capable of reliably realizing packet transfer processing even for packets configured using a plurality of protocols. It is said.
上記目的を達成するためこの発明にかかるパケット転送装置は、レイヤ2またはレイヤ3で使用されるプロトコルに従って受信したパケットの転送処理を実行する複数のパケット転送処理手段と、受信したパケットの属するプロトコルの種類と、該パケットのヘッダまたはペイロード部分とに基づいて該パケットの受信処理を実行するパケット転送処理手段を規定する受信処理担当情報を記憶したメモリとを備え、パケット転送処理手段は、パケットを受信した際に該パケットのプロトコルの種類及び該パケットのヘッダまたはペイロード部分と、受信処理担当情報と、に基づいて受信したパケットに対して次に受信処理を実行するパケット転送処理手段を決定することを特徴とする。
In order to achieve the above object, a packet transfer apparatus according to the present invention includes a plurality of packet transfer processing means for executing transfer processing of a received packet according to a protocol used in
この発明によれば、複数のパケット転送処理手段でレイヤ2またはレイヤ3で使用されるプロトコルに従ってパケットの転送処理を実行する場合に、パケット転送処理手段は、パケットを受信した際に該パケットのプロトコルの種類及び該パケットのヘッダまたはペイロード部分と、受信処理担当情報とに基づいて受信したパケットに対して次に受信処理を実行するパケット転送処理手段を決定する。
According to the present invention, when packet transfer processing is executed by a plurality of packet transfer processing means according to a protocol used in
これにより、パケットの受信処理において、受信パケット内容に従った形でパケット転送処理手段間の接続関係、具体的にはあるパケット転送処理手段の受信処理を行った後に、別のパケット転送処理手段の受信処理を行うという関係を明示的に指定することなく一義的に決定され、任意のパケット転送処理手段を組み合わせて受信処理が行われる。すなわち、L2プロトコルとL3プロトコルを自由な組合せで階層化して受信処理が行われる。 Thereby, in the packet reception processing, after the connection relation between the packet transfer processing means in accordance with the contents of the received packet, specifically, the reception processing of one packet transfer processing means is performed, another packet transfer processing means The relationship is determined unambiguously without explicitly specifying the relationship of performing reception processing, and reception processing is performed by combining arbitrary packet transfer processing means. That is, the reception process is performed by hierarchizing the L2 protocol and the L3 protocol in any combination.
なお、本発明においてパケットとは、Ethernet(登録商標)フレーム、MPLSパケット、IPパケットなど情報転送単位を総称するものである。したがって、パケットとは呼称の異なる情報転送単位、例えばEthernet(登録商標)フレーム、PoSフレーム等を含むものである。 In the present invention, a packet is a general term for an information transfer unit such as an Ethernet (registered trademark) frame, an MPLS packet, and an IP packet. Therefore, a packet includes an information transfer unit having a different name, such as an Ethernet (registered trademark) frame, a PoS frame, or the like.
この発明によれば、パケット転送処理手段は、パケットを受信した際に該パケットのプロトコルの種類及び該パケットのヘッダまたはペイロード部分と、受信処理担当情報とに基づいて受信したパケットに対して次に受信処理を実行するパケット転送処理手段を決定する。これにより、パケットの受信処理において、受信パケット内容に従った形でパケット転送処理手段間の接続関係、すなわち、あるパケット転送処理手段の受信処理を行った後に、別のパケット転送処理手段の受信処理を行うという関係を一義的に決定することができ、任意のパケット転送処理手段を組み合わせて受信処理を行うことが可能である。したがって、この発明によればパケット転送処理手段を柔軟に組み合わせることで、複数のプロトコルを用いたパケットに対して、所望のパケット転送処理を実現することができるという効果を奏する。 According to this invention, when the packet transfer processing means receives a packet, the packet transfer processing means performs the following on the packet received based on the protocol type of the packet, the header or payload portion of the packet, and the reception processing charge information: The packet transfer processing means for executing the reception process is determined. Thereby, in the packet reception processing, the connection relationship between the packet transfer processing means in accordance with the contents of the received packet, that is, after the reception processing of one packet transfer processing means is performed, the reception processing of another packet transfer processing means Can be uniquely determined, and reception processing can be performed by combining arbitrary packet transfer processing means. Therefore, according to the present invention, desired packet transfer processing can be realized for packets using a plurality of protocols by flexibly combining packet transfer processing means.
以下に添付図面を参照して、この発明にかかる転送の好適な実施の形態を詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲で適宜変更可能である。 Exemplary embodiments of transfer according to the present invention will be described below in detail with reference to the accompanying drawings. In addition, this invention is not limited to the following description, In the range which does not deviate from the summary of this invention, it can change suitably.
図1は、この発明の1実施形態にかかるパケット転送装置の要部ブロック図であり、パケットの転送処理を司る演算処理部周辺部を示したものである。この転送装置は、演算処理部1と、受信処理関係付けテーブル2と、送信処理関係付けテーブル3と、パケット転送処理機能ブロック固有データテーブル4とを有して構成されている。
FIG. 1 is a principal block diagram of a packet transfer apparatus according to an embodiment of the present invention, and shows a peripheral portion of an arithmetic processing unit that controls packet transfer processing. This transfer apparatus includes an
演算処理部1は、レイヤ2またはレイヤ3で使用されるプロトコルに従って受信したパケットの転送処理を実行するパケット転送処理手段である複数のパケット転送処理機能ブロックを有する演算処理部である。そして、パケット転送処理機能ブロックは、受信処理関係付けテーブル2と、送信処理関係付けテーブル3と、パケット転送処理機能ブロック固有データテーブル4とに示されるデータに基づき、任意のパケット転送処理機能ブロックと接続してパケット転送処理機能ブロックを所望の形に組み合わせたパケット転送処理を行う。
The
ここで、パケット転送処理機能ブロックとしては、例えばEthernet(登録商標)処理ブロック、PoS処理ブロック、IP処理ブロック、MPLS処理ブロックなどが挙げられる。 Here, examples of the packet transfer processing functional block include an Ethernet (registered trademark) processing block, a PoS processing block, an IP processing block, and an MPLS processing block.
受信処理関係付けテーブル2は、受信したパケットの属するプロトコルの種類と、該パケットのヘッダまたはペイロード部分とに基づいて該パケットの受信処理を実行するパケット転送処理機能ブロックを規定する受信処理担当情報であり、あるパケット転送処理機能ブロックでパケット受信処理を行った後に、次にどのパケット転送処理機能ブロックで受信処理を行うかを決定するために用いる情報を定義するテーブルである。図2に、受信処理関係付けテーブル2の構成例を示す。受信処理関係付けテーブル2には、図2に示すようにプロトコル及びパケットパターンと、このプロトコル及びパケットパターンの条件に対応して指定された受信処理担当パケット転送処理機能ブロックIDとが関係付けられて格納されている。 The reception processing association table 2 is reception processing person-in-charge information that defines a packet transfer processing functional block for executing reception processing of a packet based on the type of protocol to which the received packet belongs and the header or payload portion of the packet. There is a table that defines information used to determine which packet transfer processing function block to perform next after performing packet reception processing in a certain packet transfer processing function block. FIG. 2 shows a configuration example of the reception processing correlation table 2. In the reception processing correlation table 2, as shown in FIG. 2, the protocol and packet pattern are associated with the reception processing charge packet transfer processing function block ID specified corresponding to the protocol and packet pattern conditions. Stored.
例えばプロトコルがMPLSであり、パケットパターンがラベル値=1000である場合には、これに対応する受信処理担当パケット転送処理機能ブロックIDは500というように対応するIDが関連づけられて格納されている。 For example, if the protocol is MPLS and the packet pattern is label value = 1000, the corresponding ID corresponding to the reception processing packet transfer processing function block ID corresponding to 500 is stored in association with the corresponding ID.
送信処理関係付けテーブル3は、複数のパケット転送処理機能ブロックのうち一のパケット転送処理機能ブロックにおける送信処理後に次のパケット送信処理を実行するパケット転送処理機能ブロックを指定する次送信処理担当情報を定義するテーブルである。図3に、送信処理関係付けテーブル3の構成例を示す。送信処理関係付けテーブル3には、パケット転送処理機能ブロックIDと、次送信処理担当パケット転送処理機能ブロックIDとが相互に関係付けられて格納されている。次送信処理担当パケット転送処理機能ブロックは、あるパケット転送処理機能ブロックによりレイヤ1上へのパケットの送信処理が終了しない場合に、該パケットの次の転送処理を担当するパケット転送処理機能ブロックである。
The transmission processing association table 3 stores next transmission processing charge information for designating a packet transfer processing functional block for executing the next packet transmission processing after the transmission processing in one packet transfer processing functional block among the plurality of packet transfer processing functional blocks. A table to be defined. FIG. 3 shows a configuration example of the transmission processing correlation table 3. In the transmission processing correlation table 3, the packet transfer processing function block ID and the next transmission processing charge packet transfer processing function block ID are stored in relation to each other. The packet transfer processing function block in charge of the next transmission processing is a packet transfer processing function block in charge of the next transfer processing of the packet when the packet transmission processing on the
例えばパケット転送処理機能ブロックID=1に対応する次送信処理担当パケット転送処理機能ブロックIDは10、パケット転送処理機能ブロックID=10に対応する次送信処理担当パケット転送処理機能ブロックIDは12というように対応するIDが関連づけられて格納されている。 For example, the packet transmission processing function block ID corresponding to the next transmission processing corresponding to the packet transfer processing function block ID = 1 is 10, and the packet transmission processing function block ID corresponding to the next transmission processing corresponding to the packet transfer processing function block ID = 10 is 12. Are stored in association with each other.
このように、パケット送信処理を行うパケット転送処理機能ブロック間の接続関係を送信処理関係付けテーブル3に定義することで、あるパケット転送処理機能ブロックの次にどのパケット転送処理機能ブロックの送信処理を行うかを、任意の組合せで指定することが可能となる。 In this way, by defining the connection relationship between the packet transfer processing function blocks that perform packet transmission processing in the transmission processing correlation table 3, which packet transfer processing function block is transmitted next to a certain packet transfer processing function block. It is possible to specify in any combination what to do.
パケット転送処理機能ブロック固有データテーブル4は、各パケット転送処理機能ブロックで行うパケット転送処理に必要となるパラメータ情報、例えばIPSecの暗号化鍵値などを指定するパケット転送処理機能ブロック固有データテーブルである。図4に、パケット転送処理機能ブロック固有データテーブル4の構成例を示す。パケット転送処理機能ブロック固有データテーブル4には、図4に示すようにパケット転送処理機能ブロックIDと、パラメータ情報であるプロトコルID及び機能ブロック固有データとが格納されている。 The packet transfer processing function block specific data table 4 is a packet transfer processing function block specific data table for specifying parameter information necessary for packet transfer processing performed in each packet transfer processing function block, for example, an IPSec encryption key value. . FIG. 4 shows a configuration example of the packet transfer processing function block specific data table 4. The packet transfer processing function block unique data table 4 stores a packet transfer process function block ID, a protocol ID that is parameter information, and function block unique data as shown in FIG.
なお、上述した受信処理関係付けテーブル2、送信処理関係付けテーブル3及びパケット転送処理機能ブロック固有データテーブル4は、パケット転送装置に備えられたメモリに記憶されている。 The reception processing correlation table 2, the transmission processing correlation table 3, and the packet transfer processing function block specific data table 4 described above are stored in a memory provided in the packet transfer apparatus.
また、図5は、パケット転送処理機能ブロック間でパケットデータを受け渡す際に付与する共通ヘッダの一構成例である。この共通ヘッダは、演算処理部1内におけるパケット転送処理機能ブロック間の転送にのみ用いられる。
FIG. 5 is a configuration example of a common header added when packet data is transferred between packet transfer processing functional blocks. This common header is used only for transfer between packet transfer processing functional blocks in the
共通ヘッダ情報としては、例えば、図5に示すように、IP系プロトコル処理に必要となるNext Hop IPアドレス、プロトコル、TTL(Time To Live、生存期間値)、DiffServ(Differentiated Services、ディフサーブ)が格納されている。 As the common header information, for example, as shown in FIG. 5, the Next Hop IP address, protocol, TTL (Time To Live, lifetime value), DiffServ (Differential Services, Diffserv) necessary for IP protocol processing is stored. Has been.
このように、パケットに付与する共通ヘッダに、IP系プロトコル処理に必要となる、プロトコル、TTL値、DiffServ、Next Hop IPアドレスの情報を示しているので、送信処理を行うパケット転送処理機能ブロック内の処理で、送信対象パケットデータの内部構造を意識することなく送信処理を行うことが可能となる。 In this way, the common header given to the packet indicates the protocol, TTL value, DiffServ, Next Hop IP address information necessary for the IP protocol processing. With this process, it becomes possible to perform the transmission process without being aware of the internal structure of the packet data to be transmitted.
次に、以上のように構成されたパケット転送装置の動作について説明する。最初に受信処理動作について説明する。 Next, the operation of the packet transfer apparatus configured as described above will be described. First, the reception processing operation will be described.
(処理1)
演算処理部1では、パケットをレイヤ1から受信した場合に、受信パケットが図3に示す受信処理関係付けテーブル3に格納されたプロトコルとパケットパターンに示される条件の中のどの条件を満たすかをチェックする。そして、受信処理関係付けテーブル3において該当する条件が見つかった場合は、受信処理関係付けテーブル3に指定された、その条件に対応する受信処理担当パケット転送処理機能ブロックID(ここではID1とする)で受信パケットの受信処理を行うことを決定する。このときに、図5に示されるフォーマットの共通ヘッダを、受信パケットに付与する。
(Process 1)
In the
このように、受信パケットの受信処理時に、どのパケット転送処理機能ブロックで処理するかを、受信処理関係付けテーブル3の情報を元に決定する。この決定は、受信パケットのデータ内容にのみ依存するものである。 In this way, at the time of reception processing of a received packet, which packet transfer processing functional block is to be processed is determined based on the information in the reception processing association table 3. This determination depends only on the data content of the received packet.
これにより、パケットの受信処理については、パケット転送処理機能ブロック間の接続関係、すなわち、あるパケット転送処理機能ブロックの受信処理を行った後に、別のパケット転送処理機能ブロックの受信処理を行うという関係を明示的に指定することなく、受信パケット内容に従った形で、任意のパケット転送処理機能ブロックを組み合わせて受信処理を行うことが可能となる。 As a result, for the packet reception processing, the connection relationship between the packet transfer processing function blocks, that is, the reception processing of another packet transfer processing function block after the reception processing of one packet transfer processing function block is performed. It is possible to perform reception processing by combining arbitrary packet transfer processing function blocks in a form according to the contents of the received packet without explicitly designating.
(処理2)
ID=ID1のパケット転送処理機能ブロックは、パケット転送処理機能ブロックID=ID1のパケット転送処理機能ブロックで受信パケットの受信処理を行うために、ID1をキーとして、パケット転送処理機能ブロック固有データテーブル4を検索する。そして、パケット転送処理機能ブロックID=ID1のパケット転送処理機能ブロックでは、パケット転送処理機能ブロック固有データテーブル4に示されるパラメータ値を使用して受信処理を行う。
(Process 2)
The packet transfer processing functional block with ID = ID1 is a packet transfer processing functional block specific data table 4 using ID1 as a key to perform reception processing of the received packet with the packet transfer processing functional block with ID = ID1. Search for. In the packet transfer processing function block with the packet transfer processing function block ID = ID1, reception processing is performed using the parameter values shown in the packet transfer processing function block specific data table 4.
そして、その結果得られたパケットデータが、受信処理関係付けテーブル3に指定されるプロトコルとパケットパターンに示される条件の中のどの条件を満たすかをチェックする。そして、該当する条件が見つかった場合は、受信処理関係付けテーブル3に指定される受信処理担当パケット転送処理機能ブロックID(ID2とする)で受信パケットの受信処理を行うことを決定する。この際に、図5に示されるフォーマットの共通ヘッダを受信パケットに付与する。なお、受信処理においては、共通ヘッダのプロトコルには、転送先のプロトコルが入力される。 Then, the packet data obtained as a result is checked which of the conditions specified in the protocol and packet pattern specified in the reception processing association table 3 is satisfied. If a corresponding condition is found, it is determined to perform reception processing of the received packet with the reception processing charge packet transfer processing function block ID (ID2) specified in the reception processing association table 3. At this time, a common header having the format shown in FIG. 5 is added to the received packet. In the reception process, the transfer destination protocol is input as the protocol of the common header.
さらに、受信パケットにおける全ての受信処理を終了して送信処理を開始すると判断されるまで上述した処理2を繰り返す。
Further, the above-described
ここで、最終的な受信処理を行ったパケット転送処理機能ブロックにおいては送信処理を行うパケット転送処理機能ブロックID、すなわちパケットの送信先が受信処理の中で決定される。各パケット転送処理機能ブロックには、自身が最終受信処理ブロックである場合に、送信処理を開始するに際してのパケットの送信先を決定する機能が備えられている。 Here, in the packet transfer processing function block that has performed final reception processing, the packet transfer processing function block ID for performing transmission processing, that is, the packet transmission destination is determined in the reception processing. Each packet transfer processing function block has a function of determining a transmission destination of a packet when starting transmission processing when the packet transfer processing block itself is a final reception processing block.
例えば、IP処理ブロックには予め、自身が最終受信処理ブロックである場合にはIPパケットのフォワーディングテーブルを検索し、送信先インタフェースを決定する機能が備えられている。これにより、最終的な受信処理を行ったパケット転送処理機能ブロックがIP処理ブロックである場合には、該IP処理ブロックは、フォワーディングテーブルを検索して送信先インタフェースを決定し、送信先であるパケット転送処理機能ブロックを決定する。 For example, the IP processing block has a function of searching a forwarding table of an IP packet and determining a destination interface in advance when the IP processing block is the final reception processing block. As a result, when the packet transfer processing function block that has performed final reception processing is an IP processing block, the IP processing block searches a forwarding table to determine a destination interface, and a packet that is a destination Determine the transfer processing functional block.
次に送信処理動作について説明する。 Next, the transmission processing operation will be described.
(処理3)
最終的な受信処理を行ったパケット転送処理機能ブロックが決定した、送信処理を行うパケット転送処理機能ブロックのIDをID3とした場合、ID=ID3のパケット転送処理機能ブロックは、送信処理を行うパケット転送処理機能ブロックID(ID3)をキーとして、図4に示すパケット転送処理機能ブロック固有データテーブル4を検索し、パケット転送処理機能ブロック固有データテーブル4に示されるパラメータ値を読み出す。そして、ID=ID3のパケット転送処理機能ブロックは、このパラメータ値と、送信対象パケットに付与されている共通ヘッダに示される情報(プロトコル、TTL値、DiffServ値、 Next Hop IPアドレス)とを用いて、パケット転送処理を行う。
(Process 3)
When the ID of the packet transfer processing function block that performs transmission processing determined by the packet transfer processing function block that performed final reception processing is ID3, the packet transfer processing function block with ID = ID3 is a packet that performs transmission processing. Using the transfer processing function block ID (ID3) as a key, the packet transfer processing function block specific data table 4 shown in FIG. 4 is searched, and the parameter value shown in the packet transfer processing function block specific data table 4 is read. The packet transfer processing functional block with ID = ID3 uses this parameter value and information (protocol, TTL value, DiffServ value, Next Hop IP address) indicated in the common header given to the transmission target packet. Packet transfer processing is performed.
また、送信処理の一部として、送信対象パケットに付与されている共通ヘッダの更新も行う。ここで、共通ヘッダのプロトコルには、現在のパケット転送処理機能ブロックで処理しているプロトコルが入力される。 In addition, as part of the transmission process, the common header given to the transmission target packet is also updated. Here, the protocol processed by the current packet transfer processing function block is input as the protocol of the common header.
そして、ID=ID3のパケット転送処理機能ブロックにおいてパケットのレイヤ1上に送信処理が行われた場合は、送信処理を終了する。
When transmission processing is performed on the
(処理4)
上述した処理3でパケットのレイヤ1上への送信処理が終了しなかった場合は、次送信処理担当パケット転送処理機能ブロックIDでの送信処理を行う。例えば、処理3において、ID=ID3のパケット転送処理機能ブロックでは、ID3をキーとして、図2に示す送信処理関係付けテーブル3を検索し、送信処理関係付けテーブル3に示される次送信処理担当パケット転送処理機能ブロックID=ID4での送信処理を行うために、処理3の手順を実行する。
(Process 4)
If the transmission process on the
すなわち、ID=ID4のパケット転送処理機能ブロックでは、ID4をキーとして、図4に示すパケット転送処理機能ブロック固有データテーブル4を検索し、パケット転送処理機能ブロック固有データテーブル4に示されるパラメータ値を読み出す。そして、ID=ID4のパケット転送処理機能ブロックは、このパラメータ値と、送信対象パケットに付与されている共通ヘッダに示される情報(プロトコル、TTL値、DiffServ値、 Next Hop IPアドレス)とを用いて、パケット転送処理を行う。また、送信処理の一部として、送信対象パケットに付与されている共通ヘッダの更新も行う。ここで、共通ヘッダのプロトコルには、現在のパケット転送処理機能ブロックで処理しているプロトコルが入力される。 That is, in the packet transfer processing function block of ID = ID4, the packet transfer processing function block specific data table 4 shown in FIG. 4 is searched using ID4 as a key, and the parameter value shown in the packet transfer processing function block specific data table 4 is set. read out. The packet transfer processing functional block of ID = ID4 uses this parameter value and information (protocol, TTL value, DiffServ value, Next Hop IP address) indicated in the common header given to the transmission target packet. Packet transfer processing is performed. In addition, as part of the transmission process, the common header given to the transmission target packet is also updated. Here, the protocol processed by the current packet transfer processing function block is input as the protocol of the common header.
以上により、処理3でパケットのレイヤ1上への送信処理が終了しなかった場合には、送信処理関係付けテーブル3を検索することにより、簡便且つスムーズに次送信処理担当パケット転送処理機能ブロックに送信処理を行うことができる。そして、パケットのレイヤ1上の送信処理が終了するまで処理3を繰り返す。
As described above, when the transmission process of the packet on the
上述したようにこのパケット転送装置においては、受信パケットの受信処理時に、どのパケット転送処理機能ブロックで処理するかを、受信処理関係付けテーブル3の情報を元に決定する。そして、この決定は受信パケットのデータ内容にのみに依存している。 As described above, in this packet transfer apparatus, at the time of reception processing of a received packet, which packet transfer processing functional block is to be processed is determined based on information in the reception processing association table 3. This determination depends only on the data content of the received packet.
このため、パケットの受信処理については、パケット転送処理機能ブロック間の接続関係、すなわち、あるパケット転送処理機能ブロックの受信処理を行った後に、どのパケット転送処理機能ブロックで受信処理を行うかという関係を明示的に指定することなく、受信パケット内容に従った形で一義的に決定することができ、任意のパケット転送処理機能ブロックを組み合わせて受信処理を行うことが可能である。すなわち、L2プロトコルとL3プロトコルを自由な組合せで階層化して受信処理を行うことが可能である。 Therefore, for packet reception processing, the connection relationship between the packet transfer processing functional blocks, that is, the relationship in which packet transfer processing functional block performs the reception processing after performing the reception processing of a certain packet transfer processing functional block Can be determined uniquely in accordance with the contents of the received packet without explicitly specifying, and it is possible to perform reception processing by combining arbitrary packet transfer processing functional blocks. That is, it is possible to perform reception processing by hierarchizing the L2 protocol and the L3 protocol in any combination.
また、このパケット転送装置においては、パケット送信処理を行うパケット転送処理機能ブロック間の接続関係、すなわち、あるパケット転送処理機能ブロックが次にどのパケット転送処理機能ブロックにパケットを転送すればよいかという関係を送信処理関係付けテーブル3に定義している。したがって、この送信処理関係付けテーブル3を検索することにより、あるパケット転送処理機能ブロックの次にどのパケット転送処理機能ブロックで送信処理を行うか簡便且つスムーズに決定される。 In this packet transfer apparatus, the connection relationship between packet transfer processing function blocks that perform packet transmission processing, that is, to which packet transfer processing function block a packet transfer processing function block should transfer a packet next The relationship is defined in the transmission processing correlation table 3. Therefore, by searching the transmission processing correlation table 3, it is determined simply and smoothly which packet transfer processing functional block is to perform transmission processing next to a certain packet transfer processing functional block.
また、送信処理関係付けテーブル3に定義するパケット送信処理を行うパケット転送処理機能ブロック間の接続関係は、任意の組合せで指定することが可能である。すなわち、L2プロトコルとL3プロトコルを自由な組合せで階層化して送信処理を行うことが可能である。 Further, the connection relationship between the packet transfer processing functional blocks for performing the packet transmission processing defined in the transmission processing association table 3 can be specified in any combination. That is, it is possible to perform transmission processing by hierarchizing the L2 protocol and the L3 protocol in any combination.
そして、送信処理関係付けテーブル3に定義されるパケット転送処理機能ブロック間の接続関係は、アプリケーションによって自由に変更、追加することが可能である。これにより、パケット転送装置のハードやプログラム自体を変更することなく、多様な送信処理が可能なプロトコルスタックを作ることができる。 The connection relationship between the packet transfer processing function blocks defined in the transmission processing correlation table 3 can be freely changed and added by an application. Thereby, a protocol stack capable of various transmission processes can be created without changing the hardware of the packet transfer apparatus or the program itself.
また、パケットに付与する共通ヘッダとして、IP系プロトコル処理に必要となる、プロトコル、TTL値、DiffServ値、Next Hop IPアドレスの情報を示しているので、送信処理を行うパケット転送処理機能ブロック内の処理で、送信対象パケットデータの内部構造を意識することなくスムーズに送信処理を行うことが可能である。 In addition, the common header given to the packet indicates the protocol, TTL value, DiffServ value, and Next Hop IP address information necessary for IP protocol processing. In the process, it is possible to perform the transmission process smoothly without being aware of the internal structure of the transmission target packet data.
これらにより、送信処理について、パケット転送処理機能ブロック間の任意の接続を実現可能とされている。 Thus, any connection between the packet transfer processing function blocks can be realized for the transmission processing.
以上のことにより、このパケット転送装置においては、パケット転送処理機能ブロックを柔軟に組み合わせることで、複数のプロトコルを用いたパケットにおいても所望のパケット転送処理を実現することが可能となり、パケット転送処理における自由度の高い転送処理が可能である。 As described above, in this packet transfer apparatus, it is possible to realize a desired packet transfer process even in a packet using a plurality of protocols by combining packet transfer process functional blocks flexibly. Transfer processing with a high degree of freedom is possible.
以上のように、本発明にかかるパケット転送装置は、パケット通信を用いて情報の授受を行うあらゆる産業において有用である。 As described above, the packet transfer apparatus according to the present invention is useful in all industries that exchange information using packet communication.
1 演算処理部
2 受信処理関係付けテーブル
3 送信処理関係付けテーブル
4 パケット転送処理機能ブロック固有データテーブル
DESCRIPTION OF
Claims (6)
前記受信したパケットの属するプロトコルの種類と、該パケットのヘッダまたはペイロード部分とに基づいて該パケットの受信処理を実行するパケット転送処理手段を規定する受信処理担当情報を記憶したメモリと、
を備え、
前記パケット転送処理手段は、パケットを受信した際に該パケットのプロトコルの種類及び該パケットのヘッダまたはペイロード部分と、前記受信処理担当情報と、に基づいて前記受信したパケットに対して次に受信処理を実行するパケット転送処理手段を決定すること
を特徴とするパケット転送装置。 A plurality of packet transfer processing means for executing transfer processing of packets received according to a protocol used in Layer 2 or Layer 3;
A memory that stores reception processing charge information that defines packet transfer processing means for executing the reception processing of the packet based on the type of protocol to which the received packet belongs and the header or payload portion of the packet;
With
When the packet transfer processing means receives the packet, the packet transfer processing means then performs a reception process on the received packet based on the protocol type of the packet, the header or payload portion of the packet, and the reception processing charge information. And a packet transfer processing means for executing the step.
前記複数のパケット転送処理手段のうち一のパケット転送処理手段における送信処理後に次のパケット送信処理を実行するパケット転送処理手段を指定する次送信処理担当情報を記憶したメモリと、
を備え、
前記パケット転送処理手段は、該パケット転送処理手段に送信されたパケットに対して前記次送信処理担当情報に基づいてパケットの送信処理を実行すること
を特徴とするパケット転送装置。 A plurality of packet transfer processing means for executing transfer processing of packets received according to a protocol used in Layer 2 or Layer 3;
A memory storing next transmission processing charge information for designating a packet transfer processing means for executing a next packet transmission process after a transmission process in one of the plurality of packet transfer processing means;
With
The packet transfer processing unit, wherein the packet transfer processing unit executes a packet transmission process on the packet transmitted to the packet transfer processing unit based on the next transmission processing charge information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003291551A JP2005064803A (en) | 2003-08-11 | 2003-08-11 | Packet transfer apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003291551A JP2005064803A (en) | 2003-08-11 | 2003-08-11 | Packet transfer apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005064803A true JP2005064803A (en) | 2005-03-10 |
Family
ID=34369203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003291551A Pending JP2005064803A (en) | 2003-08-11 | 2003-08-11 | Packet transfer apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005064803A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014125636A1 (en) * | 2013-02-18 | 2014-08-21 | 日本電信電話株式会社 | Communication device or packet transfer method |
JP2016522627A (en) * | 2013-05-10 | 2016-07-28 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Packet processing method and apparatus |
-
2003
- 2003-08-11 JP JP2003291551A patent/JP2005064803A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014125636A1 (en) * | 2013-02-18 | 2014-08-21 | 日本電信電話株式会社 | Communication device or packet transfer method |
JP2016522627A (en) * | 2013-05-10 | 2016-07-28 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Packet processing method and apparatus |
US9882808B2 (en) | 2013-05-10 | 2018-01-30 | Huawei Technologies Co., Ltd. | Packet processing method and apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4000227B1 (en) | Network interworking with no cross-domain state | |
JP4547349B2 (en) | Network type routing mechanism | |
US10701190B2 (en) | Efficient parsing of optional header fields | |
WO2005031533A2 (en) | Model-based method and apparatus for determining mpls network properties | |
CN105723674A (en) | Methods for dynamically binding header field identifiers in a network control protocol | |
JP2005027311A (en) | Method and system for providing virtual protocol interlayer | |
JP2009530907A (en) | Multi-hop mesh network connection using MAC bridge | |
US7720003B2 (en) | Model-based method and apparatus for determining MPLS network properties | |
JP4248546B2 (en) | Apparatus and method for transferring MPLS multicast packet via Ethernet | |
JP6195014B2 (en) | COMMUNICATION SYSTEM, COMMUNICATION METHOD, RELAY DEVICE, AND COMMUNICATION PROGRAM | |
CN102571587A (en) | Method and equipment for forwarding messages | |
EP1835368A2 (en) | Programmable controller | |
JP2010193146A (en) | Communication apparatus, and communication system | |
JP2005064803A (en) | Packet transfer apparatus | |
CN110601982B (en) | Route transmission method and device and router | |
JP4599429B2 (en) | Communication system and communication method | |
JP2008109357A (en) | Packet transfer device and packet transfer method | |
CN105450527B (en) | The method and device for handling message, sending information, receiving information | |
CN114640623A (en) | Route processing method, device and equipment | |
JP7158826B2 (en) | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM AND COMMUNICATION CONTROL METHOD | |
JP2017098738A (en) | Control device, communication system, control method, and program | |
JP4443266B2 (en) | Packet update device | |
JP2004072160A (en) | Switching method and apparatus, and computer program | |
WO2023078031A1 (en) | Message sending method and apparatus | |
WO2024083219A1 (en) | Message processing method and apparatus, and device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060627 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080425 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080507 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080707 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081216 |