JP2005064803A - Packet transfer apparatus - Google Patents

Packet transfer apparatus Download PDF

Info

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
Application number
JP2003291551A
Other languages
Japanese (ja)
Inventor
Tetsushi Matsuda
哲史 松田
Daisuke Takita
大介 滝田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003291551A priority Critical patent/JP2005064803A/en
Publication of JP2005064803A publication Critical patent/JP2005064803A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To obtain a package transfer apparatus which can surely perform a packet transfer processing even for a packet constituted by using a plurality of protocols. <P>SOLUTION: The package transfer apparatus includes a plurality of packet transfer processing means for performing the transfer processing of the packet received according to a protocol used in a layer 2 or a layer 3; and a memory for storing receiving processing responsible information for defining the package transfer processing means for performing the receiving processing of the packet based on a type of the protocol to which the received packet belongs, a header or the packet or a payload part. The packet transfer processing means decides the packet transfer processing means for succeedingly performing the receiving processing to the received packet based on the type of the protocol of the packet, the header of the packet or the payload part, and the receiving processing responsible information when the packet is received. <P>COPYRIGHT: (C)2005,JPO&NCIPI

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 layer 2 protocol to layer 2 There is a configuration having a processing block and a PoS processing block, and having an IP processing block and an MPLS processing block for performing packet transfer processing of the layer 3 protocol in layer 3.

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 layer 1 is received and processed by the Ethernet (registered trademark) processing block, and it is determined from the protocol information indicated in the Ethernet (registered trademark) frame header that the layer 3 protocol is IP. Pass the processed packet to the processing block and request reception processing.

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 layer 1.

特開平5−63749号公報(第2頁−第6頁)JP-A-5-63749 (pages 2 to 6)

しかし、従来の方式では、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 layer 2 or layer 3, and a protocol to which the received packet belongs. A memory storing reception processing information for defining packet transfer processing means for executing reception processing of the packet based on the type and the header or payload portion of the packet, and the packet transfer processing means receives the packet Determining the packet transfer processing means for executing the next reception process on the received packet based on the protocol type of the packet and the header or payload portion of the packet and the reception processing charge information. Features.

この発明によれば、複数のパケット転送処理手段でレイヤ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 layer 2 or layer 3, the packet transfer processing means receives the packet protocol when receiving the packet. Next, the packet transfer processing means for executing the reception process on the received packet is determined based on the type of packet, the header or payload portion of the packet, and the reception processing charge information.

これにより、パケットの受信処理において、受信パケット内容に従った形でパケット転送処理手段間の接続関係、具体的にはあるパケット転送処理手段の受信処理を行った後に、別のパケット転送処理手段の受信処理を行うという関係を明示的に指定することなく一義的に決定され、任意のパケット転送処理手段を組み合わせて受信処理が行われる。すなわち、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 arithmetic processing unit 1, a reception processing correlation table 2, a transmission processing correlation table 3, and a packet transfer processing functional block specific data table 4.

演算処理部1は、レイヤ2またはレイヤ3で使用されるプロトコルに従って受信したパケットの転送処理を実行するパケット転送処理手段である複数のパケット転送処理機能ブロックを有する演算処理部である。そして、パケット転送処理機能ブロックは、受信処理関係付けテーブル2と、送信処理関係付けテーブル3と、パケット転送処理機能ブロック固有データテーブル4とに示されるデータに基づき、任意のパケット転送処理機能ブロックと接続してパケット転送処理機能ブロックを所望の形に組み合わせたパケット転送処理を行う。   The arithmetic processing unit 1 is an arithmetic processing unit having a plurality of packet transfer processing function blocks which are packet transfer processing means for executing transfer processing of received packets in accordance with a protocol used in layer 2 or layer 3. The packet transfer processing function block is based on the data shown in the reception process association table 2, the transmission process association table 3, and the packet transfer processing function block specific data table 4, The packet transfer processing is performed by connecting and combining the packet transfer processing function blocks in a desired form.

ここで、パケット転送処理機能ブロックとしては、例えば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 layer 1 is not completed by a certain packet transfer processing function block. .

例えばパケット転送処理機能ブロック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 arithmetic processing unit 1.

共通ヘッダ情報としては、例えば、図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 arithmetic processing unit 1, when a packet is received from the layer 1, which condition among the conditions indicated in the protocol and the packet pattern stored in the reception processing association table 3 shown in FIG. To check. If a corresponding condition is found in the reception processing association table 3, the reception processing charge packet transfer processing function block ID corresponding to the condition specified in the reception processing association table 3 (herein referred to as ID1). To decide to perform reception processing of the received packet. At this time, a common header having the format shown in FIG. 5 is added to the received packet.

このように、受信パケットの受信処理時に、どのパケット転送処理機能ブロックで処理するかを、受信処理関係付けテーブル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 processing 2 is repeated until it is determined that all reception processing in the received packet is finished and transmission processing is started.

ここで、最終的な受信処理を行ったパケット転送処理機能ブロックにおいては送信処理を行うパケット転送処理機能ブロック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 packet layer 1 in the packet transfer processing functional block with ID = ID3, the transmission processing ends.

(処理4)
上述した処理3でパケットのレイヤ1上への送信処理が終了しなかった場合は、次送信処理担当パケット転送処理機能ブロックIDでの送信処理を行う。例えば、処理3において、ID=ID3のパケット転送処理機能ブロックでは、ID3をキーとして、図2に示す送信処理関係付けテーブル3を検索し、送信処理関係付けテーブル3に示される次送信処理担当パケット転送処理機能ブロックID=ID4での送信処理を行うために、処理3の手順を実行する。
(Process 4)
If the transmission process on the layer 1 of the packet is not completed in the process 3 described above, the transmission process is performed with the packet transfer process function block ID in charge of the next transmission process. For example, in the process 3, the packet transfer processing functional block with ID = ID3 searches the transmission process correlation table 3 shown in FIG. 2 using ID3 as a key, and performs the next transmission process charge packet shown in the transmission process correlation table 3 In order to perform transmission processing with the transfer processing function block ID = ID4, the procedure of processing 3 is executed.

すなわち、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 layer 1 is not completed in the process 3, by searching the transmission process relation table 3, the packet transfer process function block in charge of the next transmission process can be simply and smoothly. Transmission processing can be performed. Then, process 3 is repeated until the transmission process on the layer 1 of the packet is completed.

上述したようにこのパケット転送装置においては、受信パケットの受信処理時に、どのパケット転送処理機能ブロックで処理するかを、受信処理関係付けテーブル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.

本発明にかかるパケット転送装置における演算処理部の周辺部を示した要部ブロック図である。It is the principal part block diagram which showed the peripheral part of the arithmetic processing part in the packet transmission apparatus concerning this invention. 本実施の形態にかかるパケット転送装置の受信処理関連付けテーブルの一構成例を示した構成図である。It is the block diagram which showed the example of 1 structure of the reception process correlation table of the packet transfer apparatus concerning this Embodiment. 本実施の形態にかかるパケット転送装置の送信処理関連付けテーブルの一構成例を示した構成図である。It is the block diagram which showed the example of 1 structure of the transmission process correlation table of the packet transfer apparatus concerning this Embodiment. 本実施の形態にかかるパケット転送装置のパケット転送処理機能ブロック固有データテーブルの一構成例を示した構成図である。It is the block diagram which showed the example of 1 structure of the packet transfer process functional block specific data table of the packet transfer apparatus concerning this Embodiment. パケット転送処理機能ブロック間でパケットデータを受け渡す際に付与する、共通ヘッダの一構成例を示す構成図である。It is a block diagram which shows one structural example of a common header provided when transferring packet data between packet transfer processing functional blocks.

符号の説明Explanation of symbols

1 演算処理部
2 受信処理関係付けテーブル
3 送信処理関係付けテーブル
4 パケット転送処理機能ブロック固有データテーブル
DESCRIPTION OF SYMBOLS 1 Arithmetic processing part 2 Reception process correlation table 3 Transmission process correlation table 4 Packet transfer process functional block specific data table

Claims (6)

レイヤ2またはレイヤ3で使用されるプロトコルに従って受信したパケットの転送処理を実行する複数のパケット転送処理手段と、
前記受信したパケットの属するプロトコルの種類と、該パケットのヘッダまたはペイロード部分とに基づいて該パケットの受信処理を実行するパケット転送処理手段を規定する受信処理担当情報を記憶したメモリと、
を備え、
前記パケット転送処理手段は、パケットを受信した際に該パケットのプロトコルの種類及び該パケットのヘッダまたはペイロード部分と、前記受信処理担当情報と、に基づいて前記受信したパケットに対して次に受信処理を実行するパケット転送処理手段を決定すること
を特徴とするパケット転送装置。
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.
前記パケット転送処理手段は、前記受信したパケットに前記複数種のパケット転送処理手段間で共通の共通ヘッダを付与した状態で前記転送処理部内における前記パケット転送処理手段間でパケットの受け渡しを行うことを特徴とする請求項1に記載のパケット転送装置。   The packet transfer processing unit performs packet transfer between the packet transfer processing units in the transfer processing unit in a state where a common header common to the plurality of types of packet transfer processing units is added to the received packet. The packet transfer apparatus according to claim 1, wherein: 前記共通ヘッダが、パケットのプロトコル、生存期間値、ディフサーブ、ネクストホップIPアドレスを含むことを特徴とする請求項2に記載のパケット転送装置。   The packet transfer apparatus according to claim 2, wherein the common header includes a packet protocol, a lifetime value, a differential serve, and a next hop IP address. レイヤ2またはレイヤ3で使用されるプロトコルに従って受信したパケットの転送処理を実行する複数のパケット転送処理手段と、
前記複数のパケット転送処理手段のうち一のパケット転送処理手段における送信処理後に次のパケット送信処理を実行するパケット転送処理手段を指定する次送信処理担当情報を記憶したメモリと、
を備え、
前記パケット転送処理手段は、該パケット転送処理手段に送信されたパケットに対して前記次送信処理担当情報に基づいてパケットの送信処理を実行すること
を特徴とするパケット転送装置。
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.
前記転送処理部は、前記受信したパケットに前記複数種のパケット転送処理手段間で共通の共通ヘッダを付与した状態で前記転送処理部内における前記パケット転送処理手段間でパケットの受け渡しを行うことを特徴とする請求項4に記載のパケット転送装置。   The transfer processing unit transfers packets between the packet transfer processing units in the transfer processing unit in a state where a common header common to the plurality of types of packet transfer processing units is added to the received packet. The packet transfer apparatus according to claim 4. 前記共通ヘッダが、パケットのプロトコル、生存期間値、ディフサーブ、ネクストホップIPアドレスを含むことを特徴とする請求項5に記載のパケット転送装置。   6. The packet forwarding apparatus according to claim 5, wherein the common header includes a packet protocol, a lifetime value, a differential serve, and a next hop IP address.
JP2003291551A 2003-08-11 2003-08-11 Packet transfer apparatus Pending JP2005064803A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (3)

* Cited by examiner, † Cited by third party
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