JP2005286833A - Packet filter apparatus and packet filter method - Google Patents

Packet filter apparatus and packet filter method Download PDF

Info

Publication number
JP2005286833A
JP2005286833A JP2004099810A JP2004099810A JP2005286833A JP 2005286833 A JP2005286833 A JP 2005286833A JP 2004099810 A JP2004099810 A JP 2004099810A JP 2004099810 A JP2004099810 A JP 2004099810A JP 2005286833 A JP2005286833 A JP 2005286833A
Authority
JP
Japan
Prior art keywords
data
packet
filtering
received
data storage
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
JP2004099810A
Other languages
Japanese (ja)
Inventor
Nobuyuki Tanazawa
伸行 棚沢
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.)
NEC Platforms Ltd
Original Assignee
NEC AccessTechnica Ltd
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 NEC AccessTechnica Ltd filed Critical NEC AccessTechnica Ltd
Priority to JP2004099810A priority Critical patent/JP2005286833A/en
Publication of JP2005286833A publication Critical patent/JP2005286833A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a packet filter apparatus and a packet filter method whereby data after filtering can be acquired without the need for a data processing side using received data to execute processing for data capturing in particular and without limiting a filtering object in particular. <P>SOLUTION: A filtering LSI 114 compares received data 122 sequentially stored in an FIFO memory 123 with an abort pattern stored in a filtering setting register 132 and deletes data coincident with the abort pattern. A timing generating circuit 124 generates a clock timing receivable by a CPU at a post stage (not shown) and gives data read in this timing from the FIFO memory in the older order to the CPU. Thus, it is not required for the CPU to receive a notice denoting the arrival of required data and to carry out the processing for extracting required data. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、不要なパケットを廃棄するパケットフィルタ装置およびパケットフィルタ方法に係わり、特に、通信ネットワークから送られてくるパケットから不要なものを廃棄してデータ処理側に渡すようにしたパケットフィルタ装置およびパケットフィルタ方法に関する。   The present invention relates to a packet filter device and a packet filter method for discarding unnecessary packets, and more particularly, a packet filter device for discarding unnecessary packets sent from a communication network and passing them to a data processing side. The present invention relates to a packet filter method.

インターネットやLAN(ローカルエリアネットワーク)等の通信ネットワークが巨大化し通信処理が高速化するにしたがって、多くのデータが通信ネットワークの利用者の利用の対象となってきている。そこで、たとえばルータを介してWAN(Wide Area Network)から送られてくるデータのうち不要なパケットを廃棄するパケットフィルタ装置がパケットの選別のために従来から各種提案されている。   As communication networks such as the Internet and LAN (local area network) become larger and communication processing speeds up, a lot of data has been targeted for use by users of communication networks. In view of this, for example, various packet filter devices for discarding unnecessary packets among data sent from a WAN (Wide Area Network) via a router have been proposed for packet selection.

たとえば、不必要なプロトコルタイプをプロトコルタイプ格納部に登録しておいて、受信したフレームのプロトコルタイプをプロトコルタイプ格納部に格納されたプロトコルタイプと比較し、不必要なプロトコルタイプのフレームの場合にはCPUに対して割込信号を送信しないようにする第1の提案が行われている(たとえば特許文献1参照)。具体的には、まず受信したデータがブロードキャストフレームであるかどうかを判別し、ブロードキャストフレームであった場合には、IEEE(Institute of Electrical and Electronics Engineers, Inc.)802.3仕様のフレームかDIX(DEC, Intel, Xerox)仕様のフレームかを判別し、IEEE802.3仕様のフレームであった場合にはプロトコルタイプフィールドをチェックして、これが受信フレームであれば受信することにしている。これ以外の場合にはこれらのフレームを廃棄することにしている。   For example, register an unnecessary protocol type in the protocol type storage, compare the protocol type of the received frame with the protocol type stored in the protocol type storage, and if the frame is an unnecessary protocol type Has made a first proposal not to send an interrupt signal to the CPU (see, for example, Patent Document 1). Specifically, it is first determined whether or not the received data is a broadcast frame. If the received data is a broadcast frame, a frame conforming to the IEEE (Institute of Electrical and Electronics Engineers, Inc.) 802.3 specification or DIX ( DEC, Intel, Xerox) frame, and if it is an IEEE 802.3 frame, the protocol type field is checked, and if it is a received frame, it is received. In other cases, these frames are discarded.

この第1の提案では1つ1つの受信データに対して幾つもの判別処理が必要である。また最終的にはプロトコルタイプでしかデータの判別を行うことができず、詳細なパケットのフィルタリングが不可能であるという問題がある。   In this first proposal, a number of discrimination processes are required for each received data. Finally, data can only be discriminated by protocol type, and there is a problem that detailed packet filtering is impossible.

そこで、比較用のアドレスを登録したルックアップテーブルを用意しておき、パケットのヘッダ情報から取り出したアドレスとの間で比較処理を行って、これに完全にマッチングした通信データのみの取り込みを許可するようにしたパケットフィルタ装置が第2の提案として提案されている(たとえば特許文献2参照)。また、フィルタ条件を複数に分割して保存しておき、それぞれをパケットの一部分と比較し、これらの結果からパケットの取捨選択を行うようにする第3の提案も行われている(たとえば特許文献3参照)。
特開平11−275149号公報(第0016、第0017段落、図4) 特開2001−230813号公報(第0036段落、図4) 特開2001−69173号公報(第0043段落、図3)
Therefore, a lookup table in which addresses for comparison are registered is prepared, a comparison process is performed with the address extracted from the header information of the packet, and only the communication data that completely matches this is allowed to be captured. Such a packet filter device has been proposed as a second proposal (see, for example, Patent Document 2). There is also a third proposal in which the filter condition is divided into a plurality of parts and stored, each of which is compared with a part of the packet, and the packet is selected from these results (for example, Patent Documents). 3).
Japanese Patent Laid-Open No. 11-275149 (paragraphs 0016 and 0017, FIG. 4) Japanese Patent Laying-Open No. 2001-230813 (paragraph 0036, FIG. 4) Japanese Patent Laying-Open No. 2001-69173 (paragraph 0043, FIG. 3)

図4は、このうちの第2の提案によるパケットフィルタ装置の概要を表わしたものである。通信データ201はレジスタ部202に保持され、比較用のアドレスを登録したルックアップテーブル203の内容と比較される。そして、通信データ201がルックアップテーブル203に格納されたデータのいずれかと一致すると、マッチング処理が完了した旨の信号がマッチング論理回路204に送出される。マッチング論理回路204はこれを受けてデータ処理を行うデータ処理部205に対して、着信した通信データの取り込みを許可する信号を出力するようになっている。   FIG. 4 shows an outline of the packet filter device according to the second proposal. The communication data 201 is held in the register unit 202 and compared with the contents of the lookup table 203 in which a comparison address is registered. When the communication data 201 matches any of the data stored in the lookup table 203, a signal indicating that the matching process is completed is sent to the matching logic circuit 204. In response to this, the matching logic circuit 204 outputs a signal permitting the reception of incoming communication data to the data processing unit 205 that performs data processing.

この第2の提案のパケットフィルタ装置では、ルックアップテーブル203にMAC(Media Access Control)アドレスおよびTCP(Transmission Control Protocol)ヘッダのデータを格納するので、これらのデータについてのみのフィルタリングが可能となっている。したがって、通信ネットワークを流れる多様なデータに対して有効にフィルタリングを行うことができないという問題がある。また、この第2の提案ではレジスタ部202でアドレスのマッチングが終了すると、その結果がマッチング論理回路204に送出され、マッチング論理回路204がデータ処理部205に対して通信データの取り込みを許可する信号を送出する。したがって、データ処理部205側は通信データの取り込みを許可する信号が到来するのを監視し、この信号が到来したときにこれを取り込む処理を行う必要がある。   In the second proposed packet filter device, MAC (Media Access Control) address and TCP (Transmission Control Protocol) header data are stored in the look-up table 203, so that only the data can be filtered. Yes. Therefore, there is a problem that filtering cannot be effectively performed on various data flowing through the communication network. In the second proposal, when the address matching is completed in the register unit 202, the result is sent to the matching logic circuit 204, and the matching logic circuit 204 allows the data processing unit 205 to accept the communication data. Is sent out. Therefore, it is necessary for the data processing unit 205 side to monitor the arrival of a signal permitting the capture of communication data and perform a process of capturing this signal when it arrives.

第3の提案では、比較対象のアドレスやプロトコルが一致したときにその判定結果を通知するようにしている。したがって、図4に示した第2の提案と同様にデータ処理部側では判定結果が通知されるのを待機して、通知があったら対象となるデータをその格納部から取り出す処理が必要とされる。   In the third proposal, when the comparison target address or protocol matches, the determination result is notified. Therefore, like the second proposal shown in FIG. 4, the data processing unit waits for the determination result to be notified, and if there is a notification, processing for extracting the target data from the storage unit is required. The

先に示した第1の提案では、必要とするデータの到来を判別するまでの処理をCPU以外の回路で行い、必要とするデータが到来した時点でCPUに割り込みを掛けるようにして、受信したデータから必要なデータを振り分ける処理からCPUを開放している。しかしながら、第2および第3の提案では、CPUの処理の更なる低減を図ることができず、必要なデータが受信されたことの通知を待機して、通知があったときにこれを取り込む処理をCPU側が必要とする。   In the first proposal shown above, the processing up to the determination of the arrival of the necessary data is performed by a circuit other than the CPU, and when the necessary data arrives, the CPU is interrupted and received. The CPU is freed from the process of distributing necessary data from the data. However, in the second and third proposals, it is impossible to further reduce the processing of the CPU, and a process of waiting for a notification that necessary data has been received and capturing the notification when the notification is received Is required on the CPU side.

そこで本発明の目的は、フィルタリングの対象を特に限定することなく、しかも受信したデータを使用するデータ処理側が特別にデータ取り込みのための処理を行う必要なく、フィルタリング後のデータを取得することのできるパケットフィルタ装置およびパケットフィルタ方法を提供することにある。   Therefore, an object of the present invention is to specifically acquire data after filtering without specifically limiting the object of filtering and without requiring a data processing side that uses received data to perform special data acquisition processing. A packet filter device and a packet filter method are provided.

請求項1記載の発明では、(イ)受信したパケットを順次その受信した順序で格納する受信データ格納手段と、(ロ)この受信データ格納手段に格納されたパケットの中で所定のデータ処理側が必要とするものと不要なものを選り分けるフィルタリング用データを格納したフィルタリング用データ格納手段と、(ハ)このフィルタリング用データ格納手段に格納されたフィルタリング用データを受信データ格納手段に格納された各パケットにおける該当箇所を比較して一致の有無を判別する比較手段と、(ニ)この比較手段の比較結果から前記した所定のデータ処理側が不要とするパケットを受信データ格納手段から削除する不要パケット削除手段と、(ホ)データ処理側の使用するクロックタイミングを生成するタイミング生成手段と、(へ)このタイミング生成手段で生成したクロックタイミングで、受信データ格納手段から時間的に古いパケットから順に読み出してデータ処理側に送出するパケット送出手段とをパケットフィルタ装置に具備させる。   According to the first aspect of the present invention, (a) received data storage means for sequentially storing received packets in the order of reception, and (b) a predetermined data processing side among the packets stored in the received data storage means Filtering data storage means storing filtering data for selecting necessary and unnecessary ones, and (c) filtering data stored in the filtering data storage means stored in the received data storage means. Comparing means for comparing the corresponding portions in the packet to determine whether or not there is a match, and Means, (e) timing generation means for generating clock timing to be used on the data processing side, and ( ) This clock timing generated by the timing generation unit, received from the temporally older packets from the data storage means is read in order to and a packet sending means for sending the data processing side packet filter device.

すなわち請求項1記載の発明では、受信したパケットを、たとえば先入れ先出しメモリからなる受信データ格納手段に時系列で格納し、不要な受信データを削除した状態で、データ処理側の使用するクロックタイミングでこれをデータ処理側に送出するようにしている。したがって、データ処理側では、特別にデータ取り込みのための処理を行う必要なく、これら必要とするデータを取得することができる。   That is, according to the first aspect of the present invention, the received packet is stored in time series in the reception data storage means including, for example, a first-in first-out memory, and unnecessary reception data is deleted, and this is performed at the clock timing used by the data processing side. Is sent to the data processing side. Therefore, on the data processing side, it is possible to acquire the necessary data without performing a special data acquisition process.

請求項5記載の発明では、(イ)受信したパケットを順次その受信した順序で所定の受信データ格納手段に格納する受信データ格納ステップと、(ロ)この受信データ格納ステップで受信データ格納手段に格納された各パケットから所定のデータ処理側が不要とするものを削除する廃棄ステップと、(ハ)この廃棄ステップで削除されなかったそれぞれのパケットを前記した所定のデータ処理側の使用するクロックタイミングで、受信データ格納手段から格納順に読み出して、データ処理側に送出するパケット送出ステップとをパケットフィルタ方法に具備させる。   According to the fifth aspect of the present invention, (a) a received data storage step for sequentially storing received packets in a predetermined received data storage means in the order of reception, and (b) the received data storage means at the received data storage step A discard step for deleting a packet that is not required by the predetermined data processing side from each stored packet; and (c) a clock timing used by the predetermined data processing side for each packet that has not been deleted by the discard step. The packet filtering method includes a packet transmission step of reading from the received data storage means in the order of storage and transmitting to the data processing side.

すなわち請求項5記載の発明では、受信したパケットを、受信データ格納手段に時系列で格納し、不要な受信データを削除した状態で、データ処理側の使用するクロックタイミングでこれをデータ処理側に送出することにしたので、データ処理側では、特別にデータ取り込みのための処理を行う必要なく、これら必要とするデータを取得することができる。   That is, in the invention according to claim 5, the received packet is stored in the reception data storage means in time series, and unnecessary reception data is deleted, and this is sent to the data processing side at the clock timing used by the data processing side. Since the data is sent out, the data processing side can acquire the necessary data without performing a special data acquisition process.

以上説明したように本発明によれば、受信したパケットを、受信データ格納手段に時系列で格納し、不要なパケットを削除した状態で、データ処理側の使用するクロックタイミングでこれをデータ処理側に送出することにしたので、データの選別だけでなくデータの取り出しについてもデータ処理側の負担をなくすことができ、データの処理速度の低下を招いたりせず、より高速のCPUを使用する必要性がなくなる。また、データ処理側は、不要な受信データを削除した状態で受信したデータの順にデータを取得できるので、順序が狂ったデータを受信することによる不都合を解消することができる。   As described above, according to the present invention, received packets are stored in the received data storage means in time series, and unnecessary packets are deleted, and this is processed at the clock timing used by the data processing side. Therefore, it is possible to eliminate the burden on the data processing side not only for data selection but also for data extraction, and it is necessary to use a higher-speed CPU without reducing the data processing speed. Sex is lost. Moreover, since the data processing side can acquire data in the order of the received data in a state where unnecessary received data is deleted, the inconvenience due to receiving out-of-order data can be solved.

以下実施例につき本発明を詳細に説明する。   Hereinafter, the present invention will be described in detail with reference to examples.

図1は、本発明の一実施例におけるパケット処理装置の構成を表わしたものである。このパケット処理装置100は、図示しないルータを介して通信ケーブル101でWAN(Wide Area Network)と接続した宅内接続装置102と、他の通信ケーブル103で宅内接続装置102と接続されたセットボックス(STB)104を備えており、宅内接続装置102は更に他の通信ケーブル105によってLAN(Local Area Network)と接続されている。ここで、各通信ケーブル101、103、105は、“100base−TX”あるいは“10base−T”と呼ばれる100メガビット/秒あるいは10メガビット/秒の通信速度のケーブルが使用されている。また、本実施例ではWAN側に図示しないマルチキャストによるテレビジョン放送局が存在し、所定のチャンネル数のテレビジョン番組を組み込んだパケットが、ビデオオンデマンド(VOD)等によって宅内接続装置102に配信されるようになっている。これらのテレビジョン番組のストリーミングはLAN側への送信を不要とするもので、宅内接続装置102は後に説明するようにセットボックス104側にのみストリーミングが送られるようなフィルタ処理を行う。宅内接続装置102には更に、電子メールやホームページのコンテンツを表わしたデータ等の各種のパケットも送信されてきており、これらのうちの宅内接続装置102側でフィルタがかけられなかったものがLAN側に送られるようになっている。   FIG. 1 shows the configuration of a packet processing apparatus according to an embodiment of the present invention. The packet processing device 100 includes a home connection device 102 connected to a WAN (Wide Area Network) via a communication cable 101 via a router (not shown), and a set box (STB) connected to the home connection device 102 via another communication cable 103. ) 104, and the in-home connection device 102 is further connected to a LAN (Local Area Network) by another communication cable 105. Here, as the communication cables 101, 103, and 105, cables having a communication speed of 100 megabits / second or 10 megabits / second called “100base-TX” or “10base-T” are used. In this embodiment, there is a multicast television broadcast station (not shown) on the WAN side, and a packet incorporating a television program of a predetermined number of channels is distributed to the in-home connection device 102 by video on demand (VOD) or the like. It has become so. The streaming of these television programs does not require transmission to the LAN side, and the in-home connection apparatus 102 performs a filtering process so that the streaming is sent only to the set box 104 side, as will be described later. Various types of packets such as data representing e-mail and homepage contents have also been transmitted to the in-home connection device 102. Of these, those that were not filtered by the in-home connection device 102 are those on the LAN side. To be sent to.

このようなフィルタリング機能を果たす宅内接続装置102は、2つの通信ケーブル101、103と接続されたWAN側スイッチングハブ(SW−HUB)111と、通信ケーブル105と接続されたLAN(Local Area Network)側スイッチングハブ112の2つのスイッチングハブを備えている。WAN側スイッチングハブ111は、2つの通信ケーブル101、103を内部的にL2(layer 2:データリンク層)レベルで共通接続しており、これによりセットボックス104はWANとL2レベルで接続されている。また、WAN側スイッチングハブ111は、MII(媒体独立インタフェース:Media Independent Interface)113を介してフィルタリング用LSI(Large Scale Integration)114と接続されている。また、LAN側スイッチングハブ112はMII115を介してCPU(Central Processing Unit;中央演算処理ユニット)116と接続されている。CPU116は更に他のMII117および制御バス118を介してフィルタリング用LSI114と接続されている。また、MII113、117は、イーサネット(登録商標)によるパケット通信が行われるようになっている。   The home connection device 102 that performs such a filtering function includes a WAN switching hub (SW-HUB) 111 connected to two communication cables 101 and 103, and a LAN (Local Area Network) side connected to the communication cable 105. Two switching hubs of the switching hub 112 are provided. The WAN side switching hub 111 internally connects the two communication cables 101 and 103 at the L2 (layer 2: data link layer) level, and the set box 104 is connected to the WAN at the L2 level. . The WAN-side switching hub 111 is connected to a filtering LSI (Large Scale Integration) 114 via an MII (Media Independent Interface) 113. The LAN side switching hub 112 is connected to a CPU (Central Processing Unit) 116 via the MII 115. The CPU 116 is further connected to the filtering LSI 114 via another MII 117 and a control bus 118. The MIIs 113 and 117 are adapted to perform packet communication using Ethernet (registered trademark).

このような構成の宅内接続装置102は、ビデオオンデマンド等によってセットボックス104に送られるストリーミングデータを、WAN側スイッチングハブ111およびMII113を経由してフィルタリング用LSI114に入力することになる。フィルタリング用LSI114は、CPU116からあらかじめ与えられるフィルタリングの対象となるデータを用いて、LAN側に不要となるデータを廃棄し、従来行われていたCPUによる不要パケットの廃棄処理を不要とすることでCPU116の負荷を軽減している。フィルタリングの終了したデータは、MII117、115およびLAN側スイッチングハブ112を経てLAN側の図示しないパーソナルコンピュータ等の情報処理装置側に送られることになる。   The home connection apparatus 102 having such a configuration inputs streaming data sent to the set box 104 by video on demand or the like to the filtering LSI 114 via the WAN side switching hub 111 and the MII 113. The filtering LSI 114 discards unnecessary data on the LAN side using the data to be filtered that is given in advance from the CPU 116, and eliminates unnecessary packet discarding processing performed by the CPU. To reduce the load. The filtered data is sent to the information processing apparatus side such as a personal computer (not shown) on the LAN side via the MII 117 and 115 and the LAN side switching hub 112.

図2は、本実施例のフィルタリング用LSIの要部を表わしたものである。フィルタリング用LSI114には、図1に示したWAN側スイッチングハブ111からクロック121とデータ122が送られてくる。このうちのクロック121は、FIFO(First In First Out:先入れ先出し)メモリ123およびタイミング生成回路124に供給されると共に、CPU(図1参照)116側に伝送される。データ122は、パケットごとにその特定ビット列(以下、比較用ビット列という。)がFIFOメモリ123の入力側に順次供給される。FIFOメモリ123の出力側にはタイミング生成回路124が配置されている。タイミング生成回路124は、WAN側から送られてきたPHY(physical layer)のクロック121の遅延等による位相のずれを補正してCPU116(図1)が受信できるクロックタイミングを作成する。このようにしてFIFOメモリ123から順次読み出されたデータ126はMII117によってCPU116側に送られることになる。   FIG. 2 shows a main part of the filtering LSI of this embodiment. A clock 121 and data 122 are sent to the filtering LSI 114 from the WAN switching hub 111 shown in FIG. Of these, the clock 121 is supplied to a FIFO (First In First Out) memory 123 and a timing generation circuit 124 and is transmitted to the CPU (see FIG. 1) 116 side. For the data 122, a specific bit string (hereinafter referred to as a comparison bit string) is sequentially supplied to the input side of the FIFO memory 123 for each packet. A timing generation circuit 124 is disposed on the output side of the FIFO memory 123. The timing generation circuit 124 corrects a phase shift caused by a delay of a PHY (physical layer) clock 121 sent from the WAN side and creates a clock timing that can be received by the CPU 116 (FIG. 1). Thus, the data 126 sequentially read from the FIFO memory 123 is sent to the CPU 116 side by the MII 117.

ところで、フィルタリング用LSI114にはCPUインタフェース127が設けられており、アドレスバス128、データバス129および制御信号線130を通じてCPU116とのインタフェースをとるようになっている。CPUインタフェース127にはフィルタリング用設定レジスタ132が接続されており、ここにはフィルタリングによって廃棄するそれぞれのパケットの特定ビット列からなるパターン(以下、廃棄パターンと称する。)が格納されるようになっている。コンパレータ133は、フィルタリング用設定レジスタ132に格納されているそれぞれの廃棄パターンとFIFOメモリ123に格納されている比較用ビット列を比較するようになっている。そして、いずれかの廃棄パターンに一致する比較用ビット列が存在した場合には、その比較用ビット列を含むパケットがFIFOメモリ123から削除されることで不要パケットの廃棄処理が行われることになる。   Incidentally, the filtering LSI 114 is provided with a CPU interface 127 so as to interface with the CPU 116 through the address bus 128, the data bus 129 and the control signal line 130. A filtering setting register 132 is connected to the CPU interface 127, and a pattern (hereinafter referred to as a discard pattern) made up of a specific bit string of each packet discarded by filtering is stored therein. . The comparator 133 compares each discard pattern stored in the filtering setting register 132 with the comparison bit string stored in the FIFO memory 123. If there is a comparison bit string that matches any one of the discard patterns, a packet including the comparison bit string is deleted from the FIFO memory 123, and unnecessary packets are discarded.

図3は、一例としてIPヘッダにおけるFIFOメモリに格納される比較用ビット列を表わしたものである。同図(a)は、アドレス資源を32ビットで管理しているIPV4によるIP(Internet Protocol)ヘッダの比較用ビット列の位置を示している。比較用ビット列141Aは、IPV4によるIPヘッダ142の先頭から16バイト分だけスキップした箇所から始まる32ビットのデスティネーション(destination)アドレスが相当する。すなわちFIFOメモリ123は送られてきたデータ122がIPV4によるIPヘッダ142であると判別された場合には、その32ビットのデスティネーションアドレスを比較用ビット列141Aとして取り込む。 FIG. 3 shows a comparison bit string stored in the FIFO memory in the IP header as an example. FIG. 4A shows the position of a comparison bit string in an IP (Internet Protocol) header based on IPV 4 that manages address resources in 32 bits. Comparison bit sequence 141A corresponds is 32-bit destination (destination) address beginning from where it Skips 16 bytes from the beginning of the IP header 142 by IPV 4. That is, when it is determined that the sent data 122 is an IP header 142 based on IPV 4 , the FIFO memory 123 fetches the 32-bit destination address as a comparison bit string 141A.

一方、同図(b)は、IPV4と比較してアドレス空間の増大等の改良を施したIPV6によるIPヘッダの比較用ビット列の位置を示している。比較用ビット列141Bは、IPV6によるIPヘッダ143の先頭から24バイト分だけスキップした箇所から始まる128ビットのデスティネーション(destination)アドレスが相当する。すなわちFIFOメモリ123は送られてきたデータ122がIPV6によるIPヘッダ143であると判別された場合には、その128ビットのデスティネーションアドレスを比較用ビット列141Bとして取り込むことになる。 On the other hand, FIG. 4B shows the position of the comparison bit string of the IP header by IPV 6 in which the address space is improved as compared with IPV 4 . Comparison bit string 141B corresponds 128-bit destination (destination) addresses starting skipped location only 24 bytes from the head of the IP header 143 by IPV 6. That is, when it is determined that the transmitted data 122 is the IP header 143 based on IPV 6 , the FIFO memory 123 takes in the 128-bit destination address as the comparison bit string 141B.

フィルタリング用設定レジスタ132には、廃棄の対象となるこのようなIPV4、IPV6の廃棄パターンだけでなく、その他のプロトコルについての廃棄パターンも必要に応じて格納される。たとえば、ホストのグループへの参加、脱退やマルチキャストルータ間でグループに関する情報の交換をする際のプロトコルとしてのIGMP(Internet Group Management Protocol)や、IPV6内のプロトコルエラーを制御するプロトコルとしてのICMPV6(Internet Control Message Protocol for IPV6)あるいはあるフレームがどのVLAN(Virtual Local Area Network)に対するものなのかを判別するためにイーサネット(登録商標)フレームにタグをつけたVLAN−TAG(Tagged VLAN)等についての廃棄パターンが格納されていてもよい。 The filtering setting register 132 stores not only such discard patterns of IPV 4 and IPV 6 to be discarded, but also discard patterns for other protocols as necessary. For example, ICMPv6 6 participation in a group of hosts, or IGMP as protocol when the exchange of information about the groups between withdrawal and the multicast router (Internet Group Management Protocol), a protocol for controlling a protocol error of IPV 6 (Internet Control Message Protocol for IPV 6 ) or VLAN-TAG (Tagged VLAN) with a tag attached to an Ethernet (registered trademark) frame in order to determine which VLAN (Virtual Local Area Network) a certain frame belongs to The discard pattern may be stored.

IGMPの場合には、タイプ(type)やグループ(group)アドレスのフィールドが存在するので、そのフィールドを比較用ビット列として廃棄パターンと比較することでフィルタリングが可能である。また、ICMPV6の場合には、タイプのフィールドが存在するので、これを比較用ビット列として廃棄パターンと比較することができる。これらの2つの場合は、LAN側で行われるデータ通信に加えたくない場合に、廃棄パターンの登録が行われる。VLANモードで通信を行うような場合には、IPアドレスの代わりにVLAN−TAGを廃棄パターンとしてフィルタリング用設定レジスタ132に登録しておくことで、タグの一致によるフィルタリングが可能になる。 In the case of IGMP, there are fields of type (type) and group (group) address. Therefore, filtering is possible by comparing these fields with a discard pattern as a comparison bit string. In the case of ICMPV 6 , there is a type field, which can be compared with a discard pattern as a comparison bit string. In these two cases, the discard pattern is registered when it is not desired to add to the data communication performed on the LAN side. When communication is performed in the VLAN mode, by registering VLAN-TAG as a discard pattern in the filtering setting register 132 instead of the IP address, filtering based on matching of tags can be performed.

コンパレータ133は、FIFOメモリ123に格納されているそれぞれの比較用ビット列の中に廃棄パターンのいずれかと一致するものがあれば、これらに対応するデータ122をパケット単位で削除することになる。したがって、たとえば前記したテレビジョン放送局からマルチキャストパケット等のパケットデータが送られてきた場合、これらのIPアドレスをCPU116(図1)が事前にフィルタリング用設定レジスタ132に登録しておくことで、これらをすべてFIFOメモリ123から削除することができる。   The comparator 133 deletes the data 122 corresponding to each of the comparison bit strings stored in the FIFO memory 123 in units of packets if there is a match with any of the discard patterns. Therefore, for example, when packet data such as a multicast packet is sent from the above-mentioned television broadcasting station, the CPU 116 (FIG. 1) registers these IP addresses in the filtering setting register 132 in advance. Can be deleted from the FIFO memory 123.

以上、実施例ではWAN側スイッチングハブ111からLAN側スイッチングハブ112の方向に流れるデータについてのフィルタリングを説明したが、この逆にLAN側スイッチングハブ112からWAN側スイッチングハブ111方向に流れるデータについては、特にフィルタリング処理は行わない。   As described above, in the embodiment, the filtering for the data flowing in the direction from the WAN side switching hub 111 to the LAN side switching hub 112 has been described. On the contrary, the data flowing in the direction from the LAN side switching hub 112 to the WAN side switching hub 111 is described. In particular, no filtering process is performed.

なお、FIFOメモリ123の以上説明したような制御は、専用の制御手段によるソフトウェア処理で行ってもよいし、ハードウェアで行うことも可能である。   Note that the control as described above of the FIFO memory 123 may be performed by software processing by a dedicated control unit, or may be performed by hardware.

また、実施例ではFIFOメモリ123にデータ122の比較用ビット列を順次格納して、削除の対象とならなかったものを古い順にタイミング生成回路124に送出することにしたが、これに限るものではない。たとえば、RAM(ランダム・アクセス・メモリ)にそれぞれパケット単位のデータを順番が分かるように書き込んで、これらについて廃棄パターンと一致するものは削除あるいは新たなパケット単位のデータの上書きを行うようにして、タイミング生成回路124の指示するタイミングで古いものからパケット単位にデータ126を読み出すようにしてもよい。順番の代わりに、格納時刻情報が付記されるようになっていてもよい。   In the embodiment, the comparison bit string of the data 122 is sequentially stored in the FIFO memory 123, and the data not to be deleted is sent to the timing generation circuit 124 in the oldest order. However, the present invention is not limited to this. . For example, data in units of packets is written in RAM (Random Access Memory) so that the order can be understood, and those that match the discard pattern are deleted or overwritten with new data in units of packets. The data 126 may be read in units of packets from the oldest at the timing indicated by the timing generation circuit 124. The storage time information may be appended instead of the order.

更に、フィルタリング用設定レジスタ132にフィルタリングで透過するパケットのデータを格納し、これに一致するもの以外はFIFOメモリ123等の受信データ格納手段から削除して、残ったものを受信データ格納手段から読み出すようにしてもよい。   Further, packet data that is transmitted through filtering is stored in the filtering setting register 132, and data other than those that match are deleted from the received data storage means such as the FIFO memory 123, and the remaining data is read from the received data storage means. You may do it.

本発明の一実施例におけるパケット処理装置の構成を表わしたブロック図である。It is a block diagram showing the structure of the packet processing apparatus in one Example of this invention. 本実施例のフィルタリング用LSIの要部を表わしたブロック図である。It is a block diagram showing the principal part of the LSI for filtering of a present Example. 本実施例でIPヘッダにおけるFIFOメモリに格納される比較用ビット列を表わした説明図である。It is explanatory drawing showing the bit string for a comparison stored in the FIFO memory in an IP header in a present Example. 従来の第2の提案によるパケットフィルタ装置の概要を表わしたブロック図である。It is a block diagram showing the outline | summary of the packet filter apparatus by the 2nd conventional proposal.

符号の説明Explanation of symbols

100 パケット処理装置
102 宅内接続装置
104 セットボックス
111 WAN側スイッチングハブ
112 LAN側スイッチングハブ
114 フィルタリング用LSI
116 CPU
122 データ
123 FIFOメモリ
124 タイミング生成回路
132 フィルタリング用設定レジスタ
133 コンパレータ
DESCRIPTION OF SYMBOLS 100 Packet processing apparatus 102 In-home connection apparatus 104 Set box 111 WAN side switching hub 112 LAN side switching hub 114 Filtering LSI
116 CPU
122 Data 123 FIFO Memory 124 Timing Generation Circuit 132 Filtering Setting Register 133 Comparator

Claims (5)

受信したパケットを順次その受信した順序で格納する受信データ格納手段と、
この受信データ格納手段に格納されたパケットの中で所定のデータ処理側が必要とするものと不要なものを選り分けるフィルタリング用データを格納したフィルタリング用データ格納手段と、
このフィルタリング用データ格納手段に格納された前記フィルタリング用データを前記受信データ格納手段に格納された各パケットにおける該当箇所を比較して一致の有無を判別する比較手段と、
この比較手段の比較結果から前記所定のデータ処理側が不要とするパケットを前記受信データ格納手段から削除する不要パケット削除手段と、
前記データ処理側の使用するクロックタイミングを生成するタイミング生成手段と、
このタイミング生成手段で生成したクロックタイミングで、前記受信データ格納手段から時間的に古いパケットから順に読み出してデータ処理側に送出するパケット送出手段
とを具備することを特徴とするパケットフィルタ装置。
Received data storage means for sequentially storing received packets in the received order;
Filtering data storage means for storing filtering data for selectively selecting what is required by the predetermined data processing side among the packets stored in the received data storage means,
Comparison means for comparing the filtering data stored in the filtering data storage means with each other in each packet stored in the received data storage means to determine whether there is a match;
Unnecessary packet deletion means for deleting from the received data storage means a packet that the predetermined data processing side does not need from the comparison result of the comparison means;
Timing generating means for generating clock timing used by the data processing side;
A packet filter device comprising: packet sending means for reading out from the received data storage means in order from the oldest packet at the clock timing generated by the timing generation means and sending it to the data processing side.
前記受信データ格納手段は先入れ先出しメモリで構成され、受信されたパケットのうちの前記フィルタリング用データに対応する位置のデータが順に格納されることを特徴とする請求項1記載のパケットフィルタ装置。   2. The packet filter device according to claim 1, wherein the received data storage means is constituted by a first-in first-out memory, and data at positions corresponding to the filtering data among received packets is sequentially stored. 前記受信データ格納手段はランダム・アクセス・メモリで構成され、格納順序あるいは格納時間を表わしたデータとそれぞれのパケットが格納されることを特徴とする請求項1記載のパケットフィルタ装置。   2. The packet filter device according to claim 1, wherein said received data storage means is constituted by a random access memory, and stores data indicating the storage order or storage time and each packet. 前記フィルタリング用データ格納手段には、所定のセットボックス側に送り込まれ前記所定のデータ処理側では不要とするストリーミングデータを特定するフィルタリング用データが少なくとも不要パケットを表わすフィルタリング用データの一部として格納されていることを特徴とする請求項1記載のパケットフィルタ装置。   In the filtering data storage means, filtering data that is sent to a predetermined set box side and specifies streaming data that is unnecessary on the predetermined data processing side is stored as at least a part of filtering data that represents an unnecessary packet. The packet filter device according to claim 1, wherein 受信したパケットを順次その受信した順序で所定の受信データ格納手段に格納する受信データ格納ステップと、
この受信データ格納ステップで受信データ格納手段に格納された各パケットから所定のデータ処理側が不要とするものを削除する廃棄ステップと、
この廃棄ステップで削除されなかったそれぞれのパケットを前記所定のデータ処理側の使用するクロックタイミングで、前記受信データ格納手段から格納順に読み出して、データ処理側に送出するパケット送出ステップ
とを具備することを特徴とするパケットフィルタ方法。
A received data storage step of sequentially storing received packets in a predetermined received data storage means in the received order;
A discarding step for deleting what is not needed by the predetermined data processing side from each packet stored in the reception data storage means in this reception data storage step;
A packet sending step of reading each packet that has not been deleted in the discarding step from the received data storage means in the order of storage at the clock timing used by the predetermined data processing side and sending it to the data processing side A packet filtering method characterized by the above.
JP2004099810A 2004-03-30 2004-03-30 Packet filter apparatus and packet filter method Pending JP2005286833A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004099810A JP2005286833A (en) 2004-03-30 2004-03-30 Packet filter apparatus and packet filter method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004099810A JP2005286833A (en) 2004-03-30 2004-03-30 Packet filter apparatus and packet filter method

Publications (1)

Publication Number Publication Date
JP2005286833A true JP2005286833A (en) 2005-10-13

Family

ID=35184731

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004099810A Pending JP2005286833A (en) 2004-03-30 2004-03-30 Packet filter apparatus and packet filter method

Country Status (1)

Country Link
JP (1) JP2005286833A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017175257A (en) * 2016-03-22 2017-09-28 日本電信電話株式会社 Device, method and program for communication channel control

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017175257A (en) * 2016-03-22 2017-09-28 日本電信電話株式会社 Device, method and program for communication channel control

Similar Documents

Publication Publication Date Title
US9727508B2 (en) Address learning and aging for network bridging in a network processor
US7890672B2 (en) Data processing apparatus and data transfer method
US7787442B2 (en) Communication statistic information collection apparatus
US6728213B1 (en) Selective admission control in a network device
US7187687B1 (en) Pipeline method and system for switching packets
US6754211B1 (en) Method and apparatus for wire speed IP multicast forwarding
US9755947B2 (en) Hierarchical self-organizing classification processing in a network switch
US6574240B1 (en) Apparatus and method for implementing distributed layer 3 learning in a network switch
US6798788B1 (en) Arrangement determining policies for layer 3 frame fragments in a network switch
US20060140130A1 (en) Mirroring in a network device
WO2008003218A1 (en) Method, apparatus and system for information transmitting between devices in ethernet
US11271711B2 (en) Communication control device, communication control method, network switch, route control method, and communication system
WO2004019561A1 (en) Frame transfer method and node in ethernet(r)
WO2022206405A1 (en) Bierv6 message processing method, and device and system
JP2005286833A (en) Packet filter apparatus and packet filter method
US8625619B2 (en) Domain gateway control system and method thereof
JP4377033B2 (en) Data transfer control method and apparatus
KR102568754B1 (en) Bierv6 packet forwarding method, device, and system
JP2010153944A (en) Communication system, receiver, transmitter and communication method
JP4261992B2 (en) Information data transmission / reception device and transmission / reception method
JP2006180246A (en) Ip packet processor
JP4443266B2 (en) Packet update device
JP2004336437A (en) Circuit and system for video image receiving
JP2003046566A (en) Packet-processing unit and method
JP2011024165A (en) Address retrieval processing circuit

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070213

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070710