JP5219903B2 - URL filtering apparatus and URL filtering method - Google Patents

URL filtering apparatus and URL filtering method Download PDF

Info

Publication number
JP5219903B2
JP5219903B2 JP2009089423A JP2009089423A JP5219903B2 JP 5219903 B2 JP5219903 B2 JP 5219903B2 JP 2009089423 A JP2009089423 A JP 2009089423A JP 2009089423 A JP2009089423 A JP 2009089423A JP 5219903 B2 JP5219903 B2 JP 5219903B2
Authority
JP
Japan
Prior art keywords
packet
url
tcp
http
passage determination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009089423A
Other languages
Japanese (ja)
Other versions
JP2010244134A (en
Inventor
雅英 西川
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 JP2009089423A priority Critical patent/JP5219903B2/en
Publication of JP2010244134A publication Critical patent/JP2010244134A/en
Application granted granted Critical
Publication of JP5219903B2 publication Critical patent/JP5219903B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、URL(Uniform Resource Locator)のフィルタリングを行うURLフィルタリング装置およびURLフィルタリング方法に関する。   The present invention relates to a URL filtering apparatus and a URL filtering method for filtering URL (Uniform Resource Locator).

従来のURLフィルタリング方式の1つとして、HTTP(HyperText Transfer Protocol)プロキシサーバが、HTTPコネクションを中継する際に要求URLに基づいてフィルタリングする方式がある(たとえば、下記特許文献1、下記非特許文献1および下記非特許文献2参照)。この方式では、HTTPクライアントは、HTTPプロキシを使用するよう設定し、URLフィルタリング機能を付加したHTTPプロキシサーバを介してHTTPアクセスを実施する。また、HTTPプロキシは、HTTPメッセージの中継時に、メッセージからHTTPクライアントがアクセスを要求する要求URLを抽出し、URLフィルタリングを実行する。以下、このようにHTTPプロキシサーバを用いたURLフィルタリングをHTTPプロキシ方式とよぶこととする。   As one of conventional URL filtering methods, there is a method in which an HTTP (HyperText Transfer Protocol) proxy server performs filtering based on a request URL when relaying an HTTP connection (for example, Patent Document 1 below and Non-Patent Document 1 below). And the following non-patent document 2). In this method, the HTTP client is set to use an HTTP proxy, and performs HTTP access through an HTTP proxy server to which a URL filtering function is added. In addition, when the HTTP message is relayed, the HTTP proxy extracts a request URL that the HTTP client requests access from, and executes URL filtering. Hereinafter, URL filtering using an HTTP proxy server is referred to as an HTTP proxy method.

また、HTTPクライアントがHTTPプロキシを使用するよう設定していない場合でも、HTTPクライアント−HTTPサーバ間の中継経路上にHTTPプロキシサーバを設置してフィルタリングする方法がある(たとえば、下記非特許文献3参照)。この方式では、HTTPクライアントからHTTPサーバへのパケットの中継経路上のHTTPプロキシサーバが、そのパケットのTCP(Transmission Control Protocol)/IP(Internet Protocol)のアドレス・ポート番号を書き換える着NAPT(Network Address Port Translation)動作によりHTTPプロキシに着信させ、強制的にHTTPプロキシを経由する動作とする。そして、HTTPプロキシサーバが、URLフィルタリングを実行する。以下、このような方式を透過型プロキシ方式とよぶこととする。   Further, even when the HTTP client is not set to use the HTTP proxy, there is a method of filtering by installing an HTTP proxy server on the relay path between the HTTP client and the HTTP server (for example, see Non-Patent Document 3 below). ). In this method, an HTTP proxy server on a relay route of a packet from an HTTP client to an HTTP server rewrites a TCP (Transmission Control Protocol) / IP (Internet Protocol) address and port number of the received NAPT (Network Address Port The HTTP proxy is received by a (Translation) operation and is forced to go through the HTTP proxy. Then, the HTTP proxy server performs URL filtering. Hereinafter, such a method is referred to as a transparent proxy method.

上記の透過型プロキシ方式は、結局HTTPプロキシサーバを経由することでTCPを一旦終端する方式である。これに対し、HTTPプロキシサーバを経由せず、HTTPクライアント−HTTPサーバ間のTCPパケットの終端処理をせずにTCPパケット内のHTTP要求を直接参照し、要求URLを含むTCPパケットがフィルタリング対象で無い場合そのまま通過させ、フィルタリング対象である場合にはアクセス拒否応答を返すようにする方式も提案されている(たとえば、下記特許文献2参照)。   The above-described transparent proxy method is a method for terminating TCP once by going through an HTTP proxy server after all. On the other hand, the TCP packet including the request URL is not subject to filtering by directly referring to the HTTP request in the TCP packet without going through the HTTP proxy server and without terminating the TCP packet between the HTTP client and the HTTP server. In some cases, a method is also proposed in which the data is passed as it is and an access denial response is returned when filtering is performed (see, for example, Patent Document 2 below).

特開平11−242639号公報Japanese Patent Laid-Open No. 11-242639 特開2006−293708号公報JP 2006-293708 A “Squid:optimising Web Delivery”,http://www.squid-cache.org/“Squid: optimizing Web Delivery”, http://www.squid-cache.org/ “SquidGuard”,http://www.squidguard.org/“SquidGuard”, http://www.squidguard.org/ “squid による透過型プロキシ”,http://www.linux(登録商標).or.jp/JF/JFdocs/TransparentProxy.html“Transparent proxy with squid”, http: //www.linux (registered trademark) .or.jp / JF / JFdocs / TransparentProxy.html

しかしながら、上記従来のHTTPプロキシ方式では、HTTPクライアントがHTTPプロキシを使用する設定をしている場合に、HTTPプロキシサーバがURLフィルタリングを行う。したがって、HTTPクライアントがHTTPプロキシを使用する設定を行っていない場合にはURLフィルタリングを行うことができない、という問題がある。   However, in the conventional HTTP proxy method, the HTTP proxy server performs URL filtering when the HTTP client is set to use the HTTP proxy. Therefore, there is a problem that URL filtering cannot be performed when the HTTP client is not set to use the HTTP proxy.

また、上記従来の透過型プロキシ方式では、HTTPプロキシサーバがTCPセッションを一旦終端して、一方(HTTPクライアントまたはHTTPサーバ)からのHTTPメッセージ部のみを抽出し、もう片方(HTTPサーバまたはHTTPクライアント)へ中継する。そのため、HTTP層(L7)ではTCP層(L4)の処理を考慮せず簡便にURLの判定を実行できるという利点がある。一方で、TCPセッションの終端処理は複雑であり、一般的ソフトウェアによる処理が必要となる、という問題がある。また、2つのTCPセッションを一旦終端するために生じる処理、および、一方のTCPセッションから得たTCPメッセージをもう片方のTCPセッションに中継するために生じる処理が必要となるが、これらの処理は、複雑でありソフトウェアで実施する必要がある、という問題がある。   In the conventional transparent proxy method, the HTTP proxy server once terminates the TCP session, extracts only the HTTP message part from one (HTTP client or HTTP server), and the other (HTTP server or HTTP client). Relay to. Therefore, the HTTP layer (L7) has an advantage that URL determination can be easily performed without considering the processing of the TCP layer (L4). On the other hand, there is a problem that TCP session termination processing is complicated and requires processing by general software. Also, the processing that occurs to terminate two TCP sessions once and the processing that occurs to relay a TCP message obtained from one TCP session to the other TCP session are required. There is a problem that it is complicated and needs to be implemented in software.

近年アクセス回線の光化が進展しアクセス回線速度は向上しているが、URLフィルタリングを上記の従来の透過型プロキシ方式により実施すると、上述のように、URLフィルタリングの処理をソフトウェアで実行しなければならず、アクセス回線速度に応じた高いスループットを得ることが難しくなる、という問題がある。   In recent years, access line speed has been improved due to opticalization of access lines. However, if URL filtering is performed by the conventional transparent proxy method, URL filtering processing must be executed by software as described above. However, there is a problem that it becomes difficult to obtain a high throughput according to the access line speed.

一方、上述の従来のHTTPクライアント−HTTPサーバ間のTCPパケットを終端処理せずに、直接その内部のHTTPメッセージ部を直接参照し、URLフィルタリングを実施する方法では、TCPセッションを終端しないため、終端処理を省いた高速転送ができる可能性がある。しかし、URLフィルタリング処理でTCP層(L4)も考慮して処理する必要がある、という問題がある。   On the other hand, the above-described conventional HTTP client-HTTP server does not terminate the TCP packet, but directly refers to the internal HTTP message part and performs URL filtering, so the TCP session is not terminated. There is a possibility of high-speed transfer without processing. However, there is a problem that it is necessary to consider the TCP layer (L4) in the URL filtering process.

たとえば、この方法で、URLフィルタリング動作の対象となる要求URLを含むTCPパケットを検出した場合、URLフィルタリング判定処理のためにそのパケットを長期間保留すると、HTTPクライアントのTCPレイヤはそのパケットに関するACK応答をHTTPサーバから受信できない。このため、TCPレイヤの処理では、そのパケットが廃棄されたと判定しそのパケットを再送するとともに、輻輳回避動作により自身の送信レートを低下させ、TCPレベルのスループットが低下する可能性がある、という問題がある。   For example, when a TCP packet including a request URL subject to URL filtering operation is detected by this method, if the packet is held for a long time for the URL filtering determination process, the TCP layer of the HTTP client causes an ACK response related to the packet. Cannot be received from the HTTP server. For this reason, in the TCP layer processing, it is determined that the packet has been discarded, and the packet is retransmitted, and the own transmission rate is lowered by the congestion avoiding operation, and the TCP level throughput may be lowered. There is.

また、アクセス回線上に設置されるホームゲートウェイのような装置でURLフィルタリング動作を実現する場合、URLフィルタリング判定に使用するURLフィルタデータを装置内に持たせると、装置が備えるべきメモリ量・CPU処理能力などが増大してしまう。ホームゲートウェイのような装置では、ハードウェア資源が限られていることが多いため、このような装置で行う処理は要求URLを抽出する程度に留め、URLフィルタリングの判定処理は外部のサーバに委託して実施する方が効率的と考えられる。ところが、外部のサーバにURLフィルタリング判定を委託する場合、外部サーバとの間でパケットが往復するための遅延、外部サーバでのURL判定処理に伴う遅延、外部サーバが複数のクライアントからの処理を受け付ける場合それらの処理待ちに伴う遅延などが発生し、長期間応答が得られない可能性がある。その結果、外部のサーバにURLフィルタリング判定を委託する場合、TCPレベルのスループットが低下する可能性がある、という問題がある。   When URL filtering operation is realized by a device such as a home gateway installed on an access line, if the URL filter data used for URL filtering determination is provided in the device, the amount of memory that the device should have and CPU processing Ability will increase. Since devices such as home gateways often have limited hardware resources, the processing performed by such devices is limited to extracting the requested URL, and URL filtering determination processing is outsourced to an external server. It is considered more efficient to implement However, when entrusting URL filtering determination to an external server, a delay for a packet to and from the external server, a delay associated with URL determination processing at the external server, and the external server accept processing from multiple clients. In some cases, a delay or the like associated with waiting for such processing may occur, and a response may not be obtained for a long time. As a result, when entrusting URL filtering determination to an external server, there is a problem that TCP level throughput may be reduced.

本発明は、上記に鑑みてなされたものであって、URLフィルタリング処理を実行しつつ高いスループットを得ることができるURLフィルタリング装置およびURLフィルタリング方法を得ることを目的とする。   The present invention has been made in view of the above, and an object of the present invention is to provide a URL filtering apparatus and a URL filtering method capable of obtaining a high throughput while executing a URL filtering process.

上述した課題を解決し、目的を達成するために、本発明は、HTTPプロトコルを用いた通信を行うクライアントとサーバとの間で送受信されるパケットを中継するパケット転送手段と、前記クライアントから送信されるURLアクセス要求メッセージに基づいて、要求されるURLへのアクセスの可否の判定であるURL通過判定を行うURL通過判定手段と、所定のTCP層の処理を行うTCP層処理手段と、所定のTCP終端処理を行うTCP終端処理手段と、受信したパケットのHTTP構文解析を行うHTTP構文解析手段と、を備え、前記パケット転送手段は、TCP終端処理の開始が指示されてからそのTCP終端処理が終了するまでのTCP終端処理中に受信したパケットを前記TCP終端処理手段へ渡し、TCP終端処理中以外の期間に受信したパケットを前記TCP層処理手段へ渡し、前記TCP層処理手段は、前記パケット転送手段から受け取ったパケットのTCPデータ部を抽出するとともに、そのパケットを保持し、前記HTTP構文解析手段は、前記TCPデータ部に基づいて、前記TCP層処理手段に保持されているパケットがURLアクセス要求メッセージでないと判断した場合には、前記TCP層処理手段にそのパケットの送信許可を通知し、一方、URLアクセス要求メッセージであると判断した場合には、前記URL通過判定手段にそのURLアクセス要求メッセージのURL通過判定を依頼し、前記URL通過判定手段は、前記依頼に基づいてURL通過判定を実施し、URL通過判定結果がアクセス不可である場合には、TCP終端処理の開始を指示し、URL通過判定結果がアクセス可である場合には、前記TCP層処理手段に保持されたパケットの送信許可を通知し、前記TCP終端処理手段は、TCP終端処理の開始が指示されるとセッションを終了させるためのTCP終端処理を行い、TCP終端処理によって生成したパケットを前記パケット転送手段に出力し、前記TCP層処理手段は、送信許可が通知されたパケットを前記パケット転送手段に出力し、前記パケット転送手段は、前記TCP層処理手段から出力されたパケットおよび前記TCP終端処理手段から出力されたパケットをそれぞれのパケットの送信先に送信することを特徴とする。   In order to solve the above-described problems and achieve the object, the present invention provides a packet transfer means for relaying a packet transmitted and received between a client and a server that perform communication using the HTTP protocol, and a packet transmitted from the client. Based on the URL access request message, URL passage determination means for determining whether or not access to the requested URL is permitted, TCP layer processing means for performing processing of a predetermined TCP layer, and predetermined TCP A TCP termination processing unit that performs termination processing; and an HTTP syntax analysis unit that performs HTTP syntax analysis of a received packet. The packet transfer unit terminates the TCP termination processing after instructed to start the TCP termination processing. The packet received during the TCP termination processing until the end is passed to the TCP termination processing means, and the TCP termination processing is performed. The packet received during a period other than the above is passed to the TCP layer processing means, and the TCP layer processing means extracts the TCP data part of the packet received from the packet transfer means, holds the packet, and performs the HTTP parsing When the means determines that the packet held in the TCP layer processing means is not a URL access request message based on the TCP data part, the means notifies the TCP layer processing means of the transmission permission of the packet, On the other hand, when the URL access request message is determined, the URL passage determination unit requests the URL passage determination unit to determine the URL passage of the URL access request message. The URL passage determination unit performs the URL passage determination based on the request. If the URL passage determination result is inaccessible, TCP termination processing is performed. When the URL passage determination result is accessible, the TCP layer processing unit notifies the transmission permission of the packet held, and the TCP termination processing unit instructs the start of the TCP termination processing. Then, a TCP termination process for terminating the session is performed, a packet generated by the TCP termination process is output to the packet transfer unit, and the TCP layer processing unit transmits the packet notified of the transmission permission to the packet transfer unit. The packet transfer means transmits the packet output from the TCP layer processing means and the packet output from the TCP termination processing means to the destination of each packet.

この発明によれば、通常時は、TCP終端処理を行わず、受信パケットからHTTPデータを抽出し、HTTPデータにURLへのアクセス要求が含まれると判断した場合には、URLの通過/アクセス拒否の判定を実施し、アクセス拒否の判定結果であった場合にTCP終端処理を実施するようにしたので、高いスループットを得ることができる、という効果を奏する。   According to the present invention, normally, TCP termination processing is not performed, but HTTP data is extracted from the received packet, and if it is determined that the access request to the URL is included in the HTTP data, the URL pass / access denied In this case, the TCP termination process is performed when the result of the access refusal is determined, so that it is possible to obtain a high throughput.

以下に、本発明にかかるURLフィルタリング装置およびURLフィルタリング方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。   Embodiments of a URL filtering device and a URL filtering method according to the present invention will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.

実施の形態1.
図1は、本発明にかかるURLフィルタリング装置の実施の形態1の機能構成例を示す図である。図1に示すように本実施の形態のURLフィルタリング装置2は、一般的なパケットルーティング機能を有するパケット転送処理部11と、TCP層の処理を行うTCP層パケット処理部12と、HTTP構文解析処理部13と、要求URL通過判定処理部14と、HTTP応答作成処理部15と、TCP終端処理部16と、で構成される。また、URLフィルタリング装置2は、HTTPクライアントであるPC(Personal Computer)端末1と、HTTPサーバとしての機能を有するwebサーバ3と、URLアクセス制御サーバとしての機能を有するACS(Access Control Server)サーバ4と、に接続している。
Embodiment 1 FIG.
FIG. 1 is a diagram illustrating a functional configuration example of a first embodiment of a URL filtering apparatus according to the present invention. As shown in FIG. 1, the URL filtering device 2 of the present embodiment includes a packet transfer processing unit 11 having a general packet routing function, a TCP layer packet processing unit 12 that performs TCP layer processing, and an HTTP parsing process. A unit 13, a request URL passage determination processing unit 14, an HTTP response creation processing unit 15, and a TCP termination processing unit 16. The URL filtering device 2 includes a PC (Personal Computer) terminal 1 that is an HTTP client, a web server 3 that functions as an HTTP server, and an ACS (Access Control Server) server 4 that functions as a URL access control server. And connected to.

また、上り通信パケット通常経路21は、PC端末1−URLフィルタリング装置2間の上り方向の通常の通信時のパケットの経路を示し、下り通信パケット通常経路22は、URLフィルタリング装置2−PC端末1間の下り方向の通常の通信時のパケットの経路を示す。また、上り通信パケット終端経路23は、PC端末1−URLフィルタリング装置2間の上り方向の終端処理を行う場合のパケットの経路を示し、下り通信パケット終端経路24は、URLフィルタリング装置2−PC端末1間の下り方向の終端処理を行う場合のパケットの経路を示す。   The uplink communication packet normal path 21 indicates a packet path during normal communication in the uplink direction between the PC terminal 1 and the URL filtering apparatus 2, and the downlink communication packet normal path 22 indicates the URL filtering apparatus 2 -PC terminal 1. The packet path during normal communication in the downstream direction is shown. An upstream communication packet termination path 23 indicates a packet path when upstream termination processing is performed between the PC terminal 1 and the URL filtering apparatus 2, and a downstream communication packet termination path 24 indicates the URL filtering apparatus 2 -PC terminal. A packet path in the case of performing a termination process in the downlink direction between 1 is shown.

つづいて、本実施の形態の動作について説明する。まず、パケットの通過を許可する通過動作について説明する。図2は、本実施の形態のURLフィルタリング方法のうち、パケットの通過動作の一例を示すシーケンス図である。図2では、簡単のため、PC端末1を端末、URLフィルタリング装置2をHGW、WEBサーバ3をWEB、ACSサーバ4をACSとして記載している。   Next, the operation of the present embodiment will be described. First, a passing operation for allowing a packet to pass will be described. FIG. 2 is a sequence diagram illustrating an example of a packet passing operation in the URL filtering method according to the present embodiment. In FIG. 2, for the sake of simplicity, the PC terminal 1 is described as a terminal, the URL filtering device 2 as HGW, the WEB server 3 as WEB, and the ACS server 4 as ACS.

PC端末1がWEBサーバ3にHTTPによるアクセスを要求する場合、まず、3way-handshakeの処理として、PC端末1は、接続要求を意味するSYNパケットをURLフィルタリング装置2経由でWEBサーバ3に送信する(ステップS11,ステップS12)。WEBサーバ3は、接続許可を意味するACKパケットと接続要求のSYNパケットを組み合わせたパケットをURLフィルタリング装置2経由で端末1に送る(ステップS13,ステップS14)。PC端末1は、ACKパケットをURLフィルタリング装置2経由でWEBサーバ3に送り(ステップS15,ステップS16)、PC端末1−WEBサーバ3間のコネクションが確立される。   When the PC terminal 1 requests HTTP access to the WEB server 3, first, as a 3-way-handshake process, the PC terminal 1 transmits a SYN packet indicating a connection request to the WEB server 3 via the URL filtering device 2. (Step S11, Step S12). The WEB server 3 sends a packet, which is a combination of an ACK packet indicating connection permission and a SYN packet for connection request, to the terminal 1 via the URL filtering device 2 (steps S13 and S14). The PC terminal 1 sends an ACK packet to the WEB server 3 via the URL filtering device 2 (step S15, step S16), and a connection between the PC terminal 1 and the WEB server 3 is established.

この際、URLフィルタリング装置2のパケット転送処理部11は、ステップS11でPC端末1から受信したSYNパケットの着ポート番号が、あらかじめ規定されたHTTPサービスポート番号であることを確認し、上位プロトコルがHTTPであるTCPセッションの開始を検出する。ここで、パケット転送処理部11は、一般的なIPルータのIPスタックの機能、すなわちIPパケット転送処理機能と、HTTP/TCPパケットの抽出機能と、を持つこととする。パケット転送処理部11は、これ以降受信するパケットのプロトコル種別・IPアドレス・ポート番号に基づいてHTTPセッションに属するTCPパケットを判別し、判別したTCPパケットをTCP層パケット処理部12に通知することとする。   At this time, the packet transfer processing unit 11 of the URL filtering device 2 confirms that the destination port number of the SYN packet received from the PC terminal 1 in step S11 is the HTTP service port number specified in advance, and the higher level protocol is The start of a TCP session that is HTTP is detected. Here, the packet transfer processing unit 11 has a function of an IP stack of a general IP router, that is, an IP packet transfer processing function and an HTTP / TCP packet extraction function. The packet transfer processing unit 11 determines a TCP packet belonging to the HTTP session based on the protocol type, IP address, and port number of a packet to be received thereafter, and notifies the TCP layer packet processing unit 12 of the determined TCP packet. To do.

TCP層パケット処理部12は、ステップS11,ステップS15でそれぞれ送信されたパケットをパケット転送処理部11から受け取り、そのパケットが3way-handshakeのためのパケットであることを検出すると、そのまま(素通し処理)、転送するパケットとしてパケット転送処理部11に出力し、パケット転送処理部11がそのパケットをWEBサーバ3へ転送する(ステップS12,ステップS16)。また、ステップS13で送信されたパケットをパケット転送処理部11から受け取り、そのパケットが3way-handshakeのためのパケットであることを検出すると、そのまま、転送するパケットとしてパケット転送処理部11に出力し、パケット転送処理部11がそのパケットをPC端末1に転送する(ステップS14)。   When the TCP layer packet processing unit 12 receives the packets transmitted in step S11 and step S15 from the packet transfer processing unit 11 and detects that the packet is a packet for 3way-handshake, the TCP layer packet processing unit 12 continues (through processing). The packet to be transferred is output to the packet transfer processing unit 11, and the packet transfer processing unit 11 transfers the packet to the WEB server 3 (steps S12 and S16). When the packet transmitted in step S13 is received from the packet transfer processing unit 11 and detected that the packet is a packet for 3way-handshake, it is output as it is to the packet transfer processing unit 11 as a packet to be transferred. The packet transfer processing unit 11 transfers the packet to the PC terminal 1 (step S14).

このように、通常のパケットは、パケット転送処理部11からTCP層パケット処理部12を経由する上り通信パケット通常経路21および下り通信パケット通常経路22を経由する。   In this way, the normal packet passes through the uplink communication packet normal path 21 and the downlink communication packet normal path 22 that pass from the packet transfer processing unit 11 to the TCP layer packet processing unit 12.

ステップS11〜ステップS16の3way-handshake処理の後に、PC端末1は、アクセスを要求するHTTPメソッドおよびURLを含むHTTP/TCPパケットを送信する(ステップS17)。URLフィルタリング装置2は、以下に示すURL抽出処理を実施する(ステップS18)。   After the 3-way-handshake process in steps S11 to S16, the PC terminal 1 transmits an HTTP / TCP packet including an HTTP method requesting access and a URL (step S17). The URL filtering device 2 performs the URL extraction process shown below (step S18).

URL抽出処理としては、まず、URLフィルタリング装置2のパケット転送処理部11が、受信したHTTP/TCPパケットをTCPパケット層処理部12へ通知する。TCP層パケット処理部12は、HTTP/TCPパケットのデータ部からTCPデータ部をHTTPデータとして抽出し、抽出したHTTPデータをHTTP構文解析処理部13に通知する。また、このとき、TCP層パケット処理部12は、そのHTTP/TCPパケットを保持する。   As the URL extraction process, first, the packet transfer processing unit 11 of the URL filtering device 2 notifies the TCP packet layer processing unit 12 of the received HTTP / TCP packet. The TCP layer packet processing unit 12 extracts the TCP data part from the data part of the HTTP / TCP packet as HTTP data, and notifies the HTTP syntax analysis processing unit 13 of the extracted HTTP data. At this time, the TCP layer packet processing unit 12 holds the HTTP / TCP packet.

HTTP構文解析処理部13は、通知されたHTTPデータをHTTP構文フォーマットに従い構文解析(パース)処理を実行し、HTTPアクセス要求であるかを判定する。なお、HTTP構文解析処理部13は、各HTTP/TCPパケットに含まれるHTTPデータを全て順序どおりに連結し、TCPデータバイト列を完全に再生して構文解析を実施する処理としても良い。この場合、TCP層パケット処理部12は、受信したHTTP/TCPパケットの順序制御処理を行う。すなわち、受信したHTTP/TCPパケットの送信シーケンス番号をチェックし、欠落したパケットが無いかをチェックし、欠落している場合は、その欠落しているパケットが再送されるまで待ち合わせを行う。   The HTTP syntax analysis processing unit 13 performs syntax analysis (parsing) processing on the notified HTTP data in accordance with the HTTP syntax format, and determines whether the HTTP access request is received. Note that the HTTP syntax analysis processing unit 13 may be a process in which all HTTP data included in each HTTP / TCP packet is connected in order, and the TCP data byte sequence is completely reproduced to perform syntax analysis. In this case, the TCP layer packet processing unit 12 performs order control processing of the received HTTP / TCP packet. That is, the transmission sequence number of the received HTTP / TCP packet is checked to check if there is a missing packet. If there is a missing packet, the waiting is performed until the missing packet is retransmitted.

また、HTTP構文解析処理部13の処理は、もう少し処理を簡略化して、HTTPアクセス要求のメッセージ境界とTCPパケット中のTCPデータの境界が揃っていると仮定し、各HTTP/TCPパケット単位でHTTP構文解析を実施する処理としても良い。ただし、この場合、各HTTP/TCPパケットに完全なHTTP構文が含まれない場合、問題が発生する可能性がある。   Further, the processing of the HTTP parsing processing unit 13 is simplified a little more, assuming that the message boundary of the HTTP access request and the boundary of the TCP data in the TCP packet are aligned, and the HTTP per TCP packet unit is HTTP. It is good also as processing which carries out syntax analysis. However, in this case, a problem may occur if the complete HTTP syntax is not included in each HTTP / TCP packet.

つぎに、HTTP構文解析処理部13は、構文解析処理により受信したHTTP/TCPパケットがHTTPアクセス要求を含まないと判定した場合、または、受信したHTTP/TCPパケットに基づいてHTTPアクセス許可を判定するのが適当でないと判断した場合、そのHTTP/TCPパケットの送信許可をTCP層パケット処理部12に通知する。TCP層パケット処理部12は、保持しているHTTP/TCPパケットの送信許可の通知を受け取ると、そのパケットを送信するパケットとしてパケット転送処理部11に出力する。そして、パケット転送処理部11が、WEBサーバ3へそのパケットを転送する。たとえば、HTTPアクセス許可を判定するのが適当でないと判断する場合の一例として、各TCPパケットに完全なHTTP構文が含まれない場合がある。この場合、パケット転送処理部11は、完全なHTTP構文を構成する最後のTCPデータを含むTCPパケットを保持対象としても良い。   Next, when the HTTP syntax analysis processing unit 13 determines that the HTTP / TCP packet received by the syntax analysis processing does not include an HTTP access request, or determines the HTTP access permission based on the received HTTP / TCP packet. When it is determined that the transmission is not appropriate, the TCP layer packet processing unit 12 is notified of permission to transmit the HTTP / TCP packet. When the TCP layer packet processing unit 12 receives a notification of transmission permission of the retained HTTP / TCP packet, the TCP layer packet processing unit 12 outputs the packet to the packet transfer processing unit 11 as a packet to be transmitted. Then, the packet transfer processing unit 11 transfers the packet to the WEB server 3. For example, as an example of determining that it is not appropriate to determine HTTP access permission, there is a case where a complete HTTP syntax is not included in each TCP packet. In this case, the packet transfer processing unit 11 may hold the TCP packet including the last TCP data constituting the complete HTTP syntax.

一方、HTTP構文解析処理部13が、構文解析処理により受信したHTTP/TCPパケットがHTTPアクセス要求を含むと判定した場合、アクセスを要求するHTTPデータからURL部を抽出し、要求URL通過判定処理部14に抽出したURLを通知する。なお、図2では、HTTPアクセス要求を含むと判定した例を示している。要求URL通過判定処理部14は、通知されたURLを自装置が保持しているURL許可情報に基づいて判定し、通過許可と判定した場合は、パケットの送信許可をTCP層パケット処理部12に通知する。または、外部のACSサーバ4がURL通過判定を行う場合には、ACSサーバ4に問い合わせを行う。具体的には、たとえば、抽出したURL情報の判定を依頼するパケットを送信し(ステップS19)、ACSサーバ4が保持しているURL許可情報に基づいて判定する。そして、ACSサーバ4は、判定結果として許可となった場合はURL許可応答を返送する(ステップS20)。要求URL通過判定処理部14は、一定時間内にACSサーバ4からURLアクセス許可応答を受信した場合、パケットの送信許可をTCP層パケット処理部12に通知する。なお、ACSサーバ4を用いない場合には、ステップS19、S20を実施せず、上述のようにURLフィルタリング装置2内で判定を行う。   On the other hand, when the HTTP syntax analysis processing unit 13 determines that the HTTP / TCP packet received by the syntax analysis processing includes an HTTP access request, the HTTP syntax analysis processing unit 13 extracts a URL part from the HTTP data requesting access, and requests URL passage determination processing unit 14 notifies the extracted URL. FIG. 2 shows an example in which it is determined that an HTTP access request is included. The request URL passage determination processing unit 14 determines the notified URL based on the URL permission information held by the own device, and when the request URL passage determination unit 14 determines that the passage is permitted, the TCP layer packet processing unit 12 sends a packet transmission permission. Notice. Alternatively, when the external ACS server 4 performs URL passage determination, the ACS server 4 is inquired. Specifically, for example, a packet for requesting the determination of the extracted URL information is transmitted (step S19), and the determination is made based on the URL permission information held by the ACS server 4. Then, the ACS server 4 returns a URL permission response when it is permitted as a determination result (step S20). When the URL access permission response is received from the ACS server 4 within a predetermined time, the request URL passage determination processing unit 14 notifies the TCP layer packet processing unit 12 of packet transmission permission. When the ACS server 4 is not used, steps S19 and S20 are not performed, and the determination is performed in the URL filtering device 2 as described above.

そして、TCP層パケット処理部12は、保持しているHTTP/TCPパケットのうち送信許可されたパケットをWEBサーバ3に転送する(ステップS21)。その後は、後続パケットとして、WEBサーバ3からURLフィルタリング装置2経由でPC端末1にデータを送信するためのHTTP/TCPパケットが送信され(ステップS22,23)、PC端末1からURLフィルタリング装置2経由でWEBサーバ3にACKパケットが送信される(ステップS24,25)。以降、同様に、ステップS26〜ステップS33により、WEBサーバ3からPC端末1へのデータの送信とPC端末1からWEBサーバ3へのACKパケットの送信が繰り返され、PC端末1はHTTPアクセスを続行する。   Then, the TCP layer packet processing unit 12 transfers, to the WEB server 3, a packet that is permitted to be transmitted among the retained HTTP / TCP packets (step S21). After that, as a subsequent packet, an HTTP / TCP packet for transmitting data to the PC terminal 1 is transmitted from the WEB server 3 via the URL filtering device 2 (steps S22 and S23), and from the PC terminal 1 via the URL filtering device 2 Thus, an ACK packet is transmitted to the WEB server 3 (steps S24 and S25). Thereafter, similarly, in steps S26 to S33, data transmission from the WEB server 3 to the PC terminal 1 and transmission of an ACK packet from the PC terminal 1 to the WEB server 3 are repeated, and the PC terminal 1 continues the HTTP access. To do.

つぎに、パケットの通過を許可しない遮断動作について説明する。図3は、本実施の形態のURLフィルタリング方法のうち、パケットの遮断動作の一例を示すシーケンス図である。まず、図2で説明した通過動作の場合と同様に、ステップS11〜ステップS18が実施される。図2の通過動作の場合は、ステップS18のURL抽出処理により、要求URL通過判定処理部14が、通過許可と判定した場合を示したが、ここでは通過許可でない(アクセス拒否)と判定されたとする。   Next, a blocking operation that does not permit the passage of packets will be described. FIG. 3 is a sequence diagram illustrating an example of a packet blocking operation in the URL filtering method according to the present embodiment. First, similarly to the case of the passing operation described in FIG. 2, steps S11 to S18 are performed. In the case of the passage operation in FIG. 2, the request URL passage determination processing unit 14 has determined that the passage is permitted by the URL extraction processing in step S18, but here it is determined that the passage permission is not permitted (access denied). To do.

なお、外部のACSサーバ4がURL通過判定を行う場合には、上述のように、ステップS19、ステップS20を実施し、ステップS20で、アクセス拒否応答が送信される。   When the external ACS server 4 performs the URL passage determination, Steps S19 and S20 are performed as described above, and an access denial response is transmitted in Step S20.

要求URL通過判定処理部14は、自身がアクセス拒否と判定した場合、または、ACSサーバ4からアクセス拒否応答を一定時間内に受信した場合、HTTP応答作成処理部15へアクセス拒否の判定結果を通知するとともにTCP終端処理開始を指示する。HTTP応答作成処理部15は通知されたアクセス拒否に対応する応答メッセージ(403 forbiddenなど)を作成し、TCP終端処理部16にTCP終端処理の開始を通知するとともに応答メッセージを渡す。   The request URL passage determination processing unit 14 notifies the HTTP response creation processing unit 15 of the access rejection determination result when it determines that the access is denied or when it receives an access rejection response from the ACS server 4 within a predetermined time. And instructing the start of TCP termination processing. The HTTP response creation processing unit 15 creates a response message (403 forbidden or the like) corresponding to the notified access denial, notifies the TCP termination processing unit 16 of the start of the TCP termination processing, and passes the response message.

TCP終端処理部16は、TCP終端処理に必要な情報をTCP層パケット処理部12から収集し、PC端末1との通信の経路を上り通信パケット終端経路23に変更し、WEBサーバ3との通信を下り通信パケット終端経路24に変更する。そして、TCP終端処理部16は、クライアント側TCP終端処理を開始する(ステップS41)。まず、TCP終端処理部16は、HTTP応答作成処理部15が生成したアクセス拒否応答を示す応答メッセージ(403 forbidden)を含むHTTP/TCPパケットをPC端末1へ送信する(ステップS42)。そして、TCP終端処理部16は、クライアント側TCP終端処理として、FIN/ACKパケットをPC端末1に送信し(ステップS43)、PC端末1がFIN/ACKパケットを返送し(ステップS44)、さらに、TCP終端処理部16が、ACKパケットをPC端末1に送信する(ステップS45)。   The TCP termination processing unit 16 collects information necessary for TCP termination processing from the TCP layer packet processing unit 12, changes the communication path with the PC terminal 1 to the upstream communication packet termination path 23, and communicates with the WEB server 3. Is changed to the downlink communication packet termination path 24. Then, the TCP termination processing unit 16 starts client-side TCP termination processing (step S41). First, the TCP termination processing unit 16 transmits an HTTP / TCP packet including a response message (403 forbidden) indicating an access denial response generated by the HTTP response creation processing unit 15 to the PC terminal 1 (step S42). Then, as the client-side TCP termination processing, the TCP termination processing unit 16 transmits a FIN / ACK packet to the PC terminal 1 (step S43), and the PC terminal 1 returns the FIN / ACK packet (step S44). The TCP termination processing unit 16 transmits an ACK packet to the PC terminal 1 (step S45).

クライアント側終端処理の実施後、TCP終端処理部16は、サーバ側TCP終端処理を開始する(ステップS46)。そして、サーバ側TCP終端処理として、FIN/ACKパケットをWEBサーバ3に送信し(ステップS47)、WEBサーバ3がFIN/ACKパケットを返送し(ステップS48)、さらに、TCP終端処理部16が、ACKパケットをWEBサーバ3に送信する(ステップS49)。以上の処理により、PC端末1とWEBサーバ間のTCPセッションを遮断する。   After performing the client-side termination process, the TCP termination processing unit 16 starts the server-side TCP termination process (step S46). Then, as server-side TCP termination processing, the FIN / ACK packet is transmitted to the WEB server 3 (step S47), the WEB server 3 returns the FIN / ACK packet (step S48), and the TCP termination processing unit 16 An ACK packet is transmitted to the WEB server 3 (step S49). With the above processing, the TCP session between the PC terminal 1 and the WEB server is blocked.

つぎに、HTTPリダイレクト応答処理について説明する。図4は、本実施の形態のHTTPリダイレクト応答処理の手順の一例を示すシーケンス図である。ステップS11〜ステップS19の処理は、図2の通過動作の場合と同様である。ただし、ここでは、ACSサーバ4を用いる場合を示したが、ACSサーバ4を用いない場合に、ステップS18のURL抽出処理が所定の時間内に終了しない場合も同様である。   Next, HTTP redirect response processing will be described. FIG. 4 is a sequence diagram illustrating an example of a procedure of HTTP redirect response processing according to the present embodiment. The processes in steps S11 to S19 are the same as in the case of the passing operation in FIG. However, although the case where the ACS server 4 is used is shown here, the same applies to the case where the URL extraction process in step S18 does not end within a predetermined time when the ACS server 4 is not used.

PC端末1では、ステップS17でクセスを要求するHTTPメソッドおよびURLを含むHTTP/TCPパケットを送信してから所定の時間経過してもそのパケットに対する応答がなかった場合、タイムアウトのためそのパケットの再送が必要と判断し(ステップS51)、ステップS17で送信したパケットを再送する(ステップS52)。TCP層パケット処理部12は、パケット転送処理部11経由で受信したそのパケットが再送パケットであることを検出すると、URLの判定処理が遅延していると判断して、HTTP応答作成処理部15にリダイレクト処理を要求するリダイレクト処理要求を通知し、HTTP応答作成処理部15は、リダイレクトにより再度同一のURLにアクセスを要求するようなHTTP応答メッセージを生成する(ステップS53)。   If the PC terminal 1 does not respond to the packet even after a predetermined time has elapsed after transmitting the HTTP method and URL containing the HTTP method requesting access in step S17, the PC terminal 1 resends the packet due to timeout. Is retransmitted (step S52), and the packet transmitted in step S17 is retransmitted (step S52). When the TCP layer packet processing unit 12 detects that the packet received via the packet transfer processing unit 11 is a retransmission packet, the TCP layer packet processing unit 12 determines that the URL determination processing is delayed, and sends it to the HTTP response creation processing unit 15. Redirect processing request for requesting redirection processing is notified, and the HTTP response creation processing unit 15 generates an HTTP response message requesting access to the same URL again by redirection (step S53).

この際、たとえば、HTTP応答作成処理部15は、PC端末1が通常のHTML構文を解釈する場合には、再度同一のURLへのアクセスを要求するHTTP 302応答を含む応答メッセージを生成し、その際に、再度アクセスさせるURLを302応答で規定されるLocation:フィールドに記載する。また、PC端末1がHTML構文中に埋め込まれたスクリプトまたはプログラムを解釈可能であり、該スクリプトまたはプログラムに従い動作する場合、そのスクリプトまたはプログラムとしてPC端末1に一定時間後に再度同一URLへアクセスさせる動作を記述した内容を含む応答メッセージとしてもよい。なお、PC端末1がどのようなHTTP応答を解釈可能かの判定は、HTTP要求メッセージのオプションフィールドから判定することができる。   At this time, for example, when the PC terminal 1 interprets the normal HTML syntax, the HTTP response creation processing unit 15 generates a response message including an HTTP 302 response that requests access to the same URL again. At this time, the URL to be accessed again is described in the Location: field defined by the 302 response. In addition, when the PC terminal 1 can interpret a script or program embedded in the HTML syntax and operates according to the script or program, the PC terminal 1 accesses the same URL again after a certain time as the script or program. It is good also as a response message containing the content which described. Note that the determination of what kind of HTTP response the PC terminal 1 can interpret can be made from the option field of the HTTP request message.

つぎに、HTTP応答作成処理部15は、生成した応答メッセージとともに、TCP終端処理の開始をTCP終端処理部16に通知する。TCP終端処理部16は、その応答メッセージをPC端末1に送信し(ステップS54)、ステップS43〜ステップS45と同様にTCPセッションを切断するTCP終端処理を実施する(ステップS55〜ステップS57)。そして、WEBサーバ3側のTCP終端処理として、ステップS47〜ステップS49と同様にTCPセッションを切断するTCP終端処理を実施する(ステップS58〜ステップS60)。   Next, the HTTP response creation processing unit 15 notifies the TCP termination processing unit 16 of the start of the TCP termination processing together with the generated response message. The TCP termination processing unit 16 transmits the response message to the PC terminal 1 (step S54), and implements the TCP termination processing for disconnecting the TCP session as in steps S43 to S45 (steps S55 to S57). Then, as the TCP termination process on the WEB server 3 side, the TCP termination process for cutting the TCP session is performed in the same manner as in Steps S47 to S49 (Steps S58 to S60).

以上のように、TCPセッション切断後、PC端末1は、ステップS54で送信された応答メッセージに基づいて、リダイレクト処理としてステップS17で要求したURLと同一のURLへの再度アクセスを行うための処理を実行する(ステップS62)。そして、ステップS11〜ステップS17を再度実施する。   As described above, after the TCP session is disconnected, the PC terminal 1 performs a process for re-accessing the same URL as the URL requested in step S17 as a redirect process based on the response message transmitted in step S54. Execute (Step S62). And step S11-step S17 are implemented again.

一方、URLフィルタリング装置2は、PC端末1がリダイレクト処理を実行している間に、ステップS19で送信した判定依頼に対する応答を、ACSサーバ4から受信する(ステップS61)と、その判定結果をたとえばTCP層パケット処理部12が保持しておく。なお、ACSサーバ4に問い合わせをせずに、自身がURL判定を実施する場合には、要求URL通過判定処理部14が処理を終了し、処理結果をTCP層パケット処理部12に通知し、TCP層パケット処理部12がその結果を保持すればよい。   On the other hand, when the URL filtering device 2 receives a response to the determination request transmitted in step S19 from the ACS server 4 while the PC terminal 1 is executing the redirect process (step S61), the determination result is, for example, The TCP layer packet processing unit 12 holds it. When the URL itself is determined without making an inquiry to the ACS server 4, the request URL passage determination processing unit 14 terminates the process, notifies the TCP layer packet processing unit 12 of the processing result, and receives the TCP The layer packet processing unit 12 may hold the result.

TCP層パケット処理部12は、リダイレクト処理によるステップS17のパケットを受信すると、すでにそのパケットが要求するURLの判定結果を保持しているため、その結果に基づいて以降の処理を実施する。以降の処理は、図3の通過動作の判定後の処理、図4の遮断動作の判定後の処理と同様であるが、遮断判定の場合、たとえば、その結果が遮断判定であった場合には、アクセス拒否応答を含むHTTP/TCPパケット(たとえば、403 forbidden)を送信してもよい(ステップS64)。   When the TCP layer packet processing unit 12 receives the packet of step S17 by the redirect process, the TCP layer packet processing unit 12 already holds the determination result of the URL requested by the packet, and performs the subsequent processing based on the result. The subsequent processing is the same as the processing after the determination of the passing operation in FIG. 3 and the processing after the determination of the blocking operation in FIG. 4, but in the case of the blocking determination, for example, when the result is a blocking determination. Then, an HTTP / TCP packet (for example, 403 forbidden) including an access rejection response may be transmitted (step S64).

つぎに、本実施の形態のTCP終端処理について詳細に説明する。図5−1〜5−3は、図4のシーケンス図で送受信されるTCPパケットの送信シーケンス番号、ACKシーケンス番号、TCPメッセージ長の一例を示す図である。なお、図5−1では、3way-handshake処理とHTTP要求メッセージ(再送も含む)について、図5−2では、クライアント側のTCP終端処理について、図5−3では、サーバ側のTCP終端処理について示している。   Next, the TCP termination processing of this embodiment will be described in detail. 5A to 5C are diagrams illustrating an example of the transmission sequence number, the ACK sequence number, and the TCP message length of the TCP packet transmitted and received in the sequence diagram of FIG. 5A and FIG. 5B, a 3way-handshake process and an HTTP request message (including retransmission), FIG. 5B a client side TCP termination process, and FIG. 5C a server side TCP termination process. Show.

図5−1〜5−3では、左の欄から順に、図4のステップ番号、そのパケットの送信方向である方向、送信シーケンス番号、ACKシーケンス番号、TCPメッセージ長を示している。方向の欄では、クライアントであるPC端末1をCと表記し、WEBサーバ3をSと表記し、URLフィルタリング装置2をUと表記している。また、ISNcはPC端末1の初期シーケンス番号(Initial Sequence Number:以下ISN)であり、ISNsはWEBサーバ3の初期シーケンス番号である。   FIGS. 5A to 5C show, in order from the left column, the step number of FIG. 4, the direction that is the transmission direction of the packet, the transmission sequence number, the ACK sequence number, and the TCP message length. In the direction column, the PC terminal 1 that is a client is denoted as C, the WEB server 3 is denoted as S, and the URL filtering device 2 is denoted as U. Further, ISNc is an initial sequence number (hereinafter referred to as ISN) of the PC terminal 1, and ISNs is an initial sequence number of the WEB server 3.

なお、TCPでは、SYNビット・FINビットは、送信シーケンス番号を+1増加させるため、ここでは、便宜上TCPメッセージ長の欄に(1)として示している。   In the TCP, the SYN bit and the FIN bit increase the transmission sequence number by +1, and are shown as (1) in the TCP message length column for convenience here.

ステップS11〜ステップS17のTCPの3way-handshake処理の後、PC端末1は、要求URLを含むHTTP要求メッセージを送信し、また、ステップS52で再送する。TCP層パケット処理部12は、受信するメッセージ(パケット)の送信シーケンス番号、ACKシーケンス番号を監視している。   After the TCP 3-way-handshake process in steps S11 to S17, the PC terminal 1 transmits an HTTP request message including the request URL, and retransmits it in step S52. The TCP layer packet processing unit 12 monitors a transmission sequence number and an ACK sequence number of a received message (packet).

URLフィルタリング装置2が、TCP終端処理を開始する(ステップS55)と、TCP終端処理部16は、TCP層パケット処理部12からPC端末1−WEBサーバ3間で使用している最新の送信シーケンス番号およびACKシーケンス番号を取得する。つぎに、TCP終端処理部16は、ステップS54で送信する応答メッセージを送信する際の送信シーケンス番号およびACKシーケンス番号は、図5−1の最下段の情報に基づいて生成する。具体的には、送信シーケンス番号は、図5−1の最下段の値(ステップS17で送信されたメッセージの値)と同一とし、ACKシーケンス番号は、図5−1の最下段の値に再下段のTCPメッセージ長(HTTPr)を加えて生成する。このように、URLフィルタリング装置2とPC端末1間の通信では、TCPメッセージ長を考慮して、図5−2に示すようなACKシーケンス番号を生成する。   When the URL filtering device 2 starts TCP termination processing (step S55), the TCP termination processing unit 16 uses the latest transmission sequence number used between the TCP layer packet processing unit 12 and the PC terminal 1-WEB server 3. And ACK sequence number. Next, the TCP termination processing unit 16 generates a transmission sequence number and an ACK sequence number when transmitting the response message transmitted in step S54 based on the information at the bottom of FIG. Specifically, the transmission sequence number is the same as the lowest value in FIG. 5A (the value of the message transmitted in step S17), and the ACK sequence number is reset to the lowest value in FIG. It is generated by adding the lower TCP message length (HTTPr). Thus, in communication between the URL filtering device 2 and the PC terminal 1, an ACK sequence number as shown in FIG. 5-2 is generated in consideration of the TCP message length.

また、URLフィルタリング装置2とWEBサーバ3間の通信では、図5−3に示すように、図5−1の最下段の値と送信シーケンス番号、ACKシーケンス番号ともに、同一とする。   Further, in the communication between the URL filtering device 2 and the WEB server 3, as shown in FIG. 5-3, the lowest value in FIG. 5-1, the transmission sequence number, and the ACK sequence number are the same.

TCP終端処理部16は、上記のように、URLフィルタリング装置2とPC端末1間の送信シーケンス番号およびACKシーケンス番号と、URLフィルタリング装置2とWEBサーバ3間の送信シーケンス番号およびACKシーケンス番号と、を個別に管理する。   As described above, the TCP termination processing unit 16 transmits the transmission sequence number and the ACK sequence number between the URL filtering device 2 and the PC terminal 1, the transmission sequence number and the ACK sequence number between the URL filtering device 2 and the WEB server 3, Are managed individually.

なお、本実施の形態では、上述のリダイレクト応答処理を3way-handshake処理によりTCPセッションが確立された後の、最初のURLアクセス要求に対して実施する例を示したが、これに限らず、たとえば、HTTP1.1で記述されるHTTP keep-alive機能によってPC端末1から通知される、後続のHTTPのURL要求に対してもリダイレクト応答を返すようにしてもよい。   In the present embodiment, the example in which the above redirect response process is performed for the first URL access request after the TCP session is established by the 3way-handshake process is shown. A redirect response may also be returned for a subsequent HTTP URL request notified from the PC terminal 1 by the HTTP keep-alive function described in HTTP 1.1.

以上のように、本実施の形態では、URLフィルタリング装置2が、通常時は、TCP層パケット処理部12が、TCP終端処理を行わずに、HTTPデータを抽出し、HTTP構文解析処理部13がHTTPデータにURLへのアクセス要求が含まれると判断した場合には、要求URL通過判定処理部14がURLの通過/アクセス拒否の判定を実施し(または、ACSサーバ4からURLの判定の問い合わせを行い)、アクセス拒否の判定結果であった場合には、TCP終端処理を実施するようにした。そのため、通常処理時には、従来のHTTPプロキシ動作や透過型プロキシ動作で必要となるTCPセッション終端を行う必要がない。したがって、TCP終端処理をソフトウェア処理で実行することによるスループットの低下を回避し、アクセス回線速度に応じたTCPレベルスループットを提供できる。   As described above, in the present embodiment, the URL filtering device 2 normally extracts the HTTP data without performing the TCP termination processing, and the HTTP parsing processing unit 13 performs the TCP termination processing. When it is determined that the access request to the URL is included in the HTTP data, the request URL passage determination processing unit 14 determines the passage of the URL / rejects the access (or makes an inquiry about the URL determination from the ACS server 4). If the result is an access refusal determination result, TCP termination processing is performed. Therefore, at the time of normal processing, it is not necessary to perform TCP session termination that is necessary for the conventional HTTP proxy operation or transparent proxy operation. Accordingly, it is possible to avoid a decrease in throughput due to execution of TCP termination processing by software processing and to provide TCP level throughput corresponding to the access line speed.

また、一定時間内に要求URLに対する判定結果が得られない場合、新しいTCPセッションに張り替えるリダイレクト処理を実行するようにしている。このため、要求URLを含むTCPパケットの送信が長時間保留された場合も、TCPセッション切断の誤検出やTCPレベルスループットの低下を回避できる。また、TCPパケットの送信を長時間保留できるので、逆に要求URLに対して判定結果を応答するまでの時間を長くすることができる。   In addition, when a determination result for the request URL is not obtained within a certain time, a redirect process for replacing with a new TCP session is executed. For this reason, even when transmission of a TCP packet including a request URL is suspended for a long time, it is possible to avoid erroneous detection of TCP session disconnection and a decrease in TCP level throughput. Further, since transmission of a TCP packet can be held for a long time, it is possible to prolong the time until a determination result is responded to a request URL.

また、上記のように判定結果を応答するまでの時間を長くすることが可能なので、URLフィルタリング装置2が内部でURL判定を実施する場合に、装置の演算処理装置の処理能力が低い場合や比較対照するURL情報量が多い場合でも、URL判定を実施することができる。   In addition, since it is possible to lengthen the time until the determination result is responded as described above, when the URL filtering device 2 performs the URL determination internally, when the processing capability of the arithmetic processing unit of the device is low or compared Even when the amount of URL information to be compared is large, URL determination can be performed.

また、上記のように判定結果を応答するまでの時間を長くすることが可能なので、外部のACSサーバ4にURL判定を依頼する場合、判定を依頼されるACSサーバ4はURL判定結果を即座に応答する必要がなくなる。そのため、ACSサーバ4が、複数のURLフィルタリング装置からのURL判定要求を受け付ける場合、1台のACS4が、より多くのURLフィルタリング装置を収容できる。さらに、その結果、ACSサーバ4の提供者は、用意すべきACSサーバ数を削減でき、ACSサーバの機器コストや運用コストを削減することができる、という効果がある。   In addition, since it is possible to lengthen the time until the determination result is returned as described above, when the URL determination is requested to the external ACS server 4, the ACS server 4 that is requested to determine determines the URL determination result immediately. No need to respond. Therefore, when the ACS server 4 accepts URL determination requests from a plurality of URL filtering devices, one ACS 4 can accommodate more URL filtering devices. Further, as a result, there is an effect that the provider of the ACS server 4 can reduce the number of ACS servers to be prepared, and can reduce the equipment cost and operation cost of the ACS server.

実施の形態2.
図6は、本発明にかかるURLフィルタリング装置の実施の形態2の機能構成例を示す図である。図6に示すように本実施の形態のURLフィルタリング装置2aは、実施の形態1のURLフィルタリング装置2にネットワークプロセッサのようなハードウェアで固定的に転送処理を実行する固定転送処理部17を追加する以外は、実施の形態1のURLフィルタリング装置2と同様である。実施の形態1と同一の機能を有する構成要素は、実施の形態1と同一の符号を付して説明を省略する。
Embodiment 2. FIG.
FIG. 6 is a diagram illustrating a functional configuration example of the second embodiment of the URL filtering device according to the present invention. As shown in FIG. 6, the URL filtering device 2a of the present embodiment adds a fixed transfer processing unit 17 that executes a fixed transfer process with hardware such as a network processor to the URL filtering device 2 of the first embodiment. Except for this, it is the same as the URL filtering device 2 of the first embodiment. Components having the same functions as those of the first embodiment are denoted by the same reference numerals as those of the first embodiment, and description thereof is omitted.

本実施の形態では、実施の形態1に比べ、パケット転送に要するソフトウェア処理を軽減した処理を実施する。図6の下り通信パケット通常経路22aは、本実施の形態の下り方向の通常パケットの経路を示している。   In the present embodiment, processing that reduces software processing required for packet transfer is performed as compared with the first embodiment. The normal communication packet path 22a in FIG. 6 indicates the normal packet path in the downlink direction of the present embodiment.

つづいて、本実施の形態の動作について説明する。本実施の形態では、パケット転送処理部11は、上り方向パケットのみTCP層パケット処理部12に通知する。下り方向のパケットは、固定転送処理部17が、固定的な転送処理により転送処理を実施する。このため、本実施の形態ではパケット転送処理部11は、上り方向のパケットのみをシーケンス番号の監視対象とする。   Next, the operation of the present embodiment will be described. In the present embodiment, the packet transfer processing unit 11 notifies the TCP layer packet processing unit 12 of only the upstream packet. The fixed transfer processing unit 17 performs a transfer process on the downstream packet by a fixed transfer process. For this reason, in the present embodiment, the packet transfer processing unit 11 sets only the uplink packets as the sequence number monitoring targets.

すなわち、たとえば、実施の形態1のステップS13で受信したパケットは、固定転送処理部17が、固定的な処理によりPC端末1へ転送を実施する。上り方向のパケットについては、実施の形態1と同様の処理を実施する。   That is, for example, the fixed transfer processing unit 17 transfers the packet received in step S13 of the first embodiment to the PC terminal 1 by a fixed process. For upstream packets, the same processing as in the first embodiment is performed.

この構成では、図4を例にすると、TCP層パケット処理部12は、TCP終端処理の開始前に、送信シーケンス番号およびACKシーケンス番号をステップS11,ステップS15,ステップS52で送信されたパケットからしか得られない。しかし、TCP終端処理時の最初のPC端末1−URLフィルタリング装置2間の送信パケットであるステップS54で送信するパケットについて考えると、このパケットの送信時に必要とされる送信シーケンス番号およびACKシーケンス番号はステップS17またはステップS52で送信されたパケットから得られるため問題ない。また、TCP終端処理時の最初のURLフィルタリング装置2−WEBサーバ3間の送信パケットであるステップS58で送信するパケットについても同様である。   In this configuration, taking FIG. 4 as an example, the TCP layer packet processing unit 12 determines only the transmission sequence number and the ACK sequence number from the packets transmitted in steps S11, S15, and S52 before starting the TCP termination process. I can't get it. However, considering the packet transmitted in step S54, which is the first transmission packet between the PC terminal 1 and the URL filtering device 2 at the time of TCP termination processing, the transmission sequence number and ACK sequence number required at the time of transmission of this packet are There is no problem because it is obtained from the packet transmitted in step S17 or step S52. The same applies to the packet transmitted in step S58, which is a transmission packet between the first URL filtering device 2 and the WEB server 3 at the time of TCP termination processing.

なお、TCP終端処理開始後の処理は、上りパケットについても、実施の形態1と同様に下り通信パケット終端経路24の経路を経由する処理とする。以上説明した以外の本実施の形態の動作は実施の形態1と同様である。   Note that the processing after the start of the TCP termination processing is processing for the upstream packet via the downstream communication packet termination route 24 as in the first embodiment. The operations of the present embodiment other than those described above are the same as those of the first embodiment.

以上のように、本実施の形態では、通常の(TCP終端処理を行わない)上り方向のパケットは、実施の形態1と同様の処理とし、通常の下り方向のパケットは、固定転送処理部17が、ハードウェアによる固定的な処理により実施するようにした。そのため、下り方向のスループットを実施の形態1に比べ向上させることができる。   As described above, in the present embodiment, normal (without TCP termination processing) upstream packets are processed in the same manner as in the first embodiment, and normal downstream packets are processed by the fixed transfer processing unit 17. However, it was implemented by fixed processing by hardware. Therefore, it is possible to improve the downstream throughput as compared with the first embodiment.

実施の形態3.
図7は、本発明にかかるURLフィルタリング装置の実施の形態3の機能構成例を示す図である。図7に示すように本実施の形態のURLフィルタリング装置2bは、実施の形態2のURLフィルタリング装置2aのTCP終端処理部16をTCP簡易終端処理部16aに変更する以外は、実施の形態2のURLフィルタリング装置2aと同様である。実施の形態2と同一の機能を有する構成要素は、実施の形態2と同一の符号を付して説明を省略する。
Embodiment 3 FIG.
FIG. 7 is a diagram illustrating a functional configuration example of the third embodiment of the URL filtering device according to the present invention. As shown in FIG. 7, the URL filtering device 2b of the present embodiment is the same as that of the second embodiment except that the TCP termination processing unit 16 of the URL filtering device 2a of the second embodiment is changed to the TCP simple termination processing unit 16a. This is the same as the URL filtering device 2a. Components having the same functions as those of the second embodiment are denoted by the same reference numerals as those of the second embodiment, and description thereof is omitted.

図8は、本実施の形態のTCP終端処理手順の一例を示すシーケンス図である。まず、図4で説明した実施の形態1の動作と同様に、ステップS11〜ステップS19,ステップS52,S53の処理を実施する。そして、その後、TCP簡易終端処理部16aは、ステップS54と同様の処理により送信した応答メッセージとTCP終端処理としてのFIN/ACKとを含むパケットを送信し、このパケットがPC端末1に到着しなかったとする(ステップS71)。   FIG. 8 is a sequence diagram illustrating an example of a TCP termination processing procedure according to the present embodiment. First, similarly to the operation of the first embodiment described with reference to FIG. 4, the processes of steps S11 to S19, steps S52 and S53 are performed. After that, the TCP simple termination processing unit 16a transmits a packet including the response message transmitted by the same processing as in step S54 and FIN / ACK as the TCP termination processing, and this packet does not arrive at the PC terminal 1. (Step S71).

PC端末1は、ステップS52でパケットを送信してから所定の時間が経過してもそのパケットに対する応答が無い場合、タイムアウトによる再送処理を開始し、ステップS17で送信したパケットを再送する(ステップS73)。   If there is no response to the packet even after a predetermined time has elapsed since the packet was transmitted in step S52, the PC terminal 1 starts a retransmission process due to a timeout and retransmits the packet transmitted in step S17 (step S73). ).

TCP簡易終端処理部16aは、ステップS73で送信されたパケットを受信すると、ステップS71で送信したパケットと同様のパケットを再送する(ステップS74)。そして、今後は、PC端末1が、ステップS74で送信したパケットを受信し、FIN/ACKパケットを送信し(ステップS75)、TCP簡易終端処理部16aは、ステップS75で送信されたパケットを受信すると、ACKパケットを送信する(ステップS76)。   When receiving the packet transmitted in step S73, the TCP simple termination processing unit 16a retransmits the same packet as the packet transmitted in step S71 (step S74). In the future, the PC terminal 1 receives the packet transmitted in step S74, transmits a FIN / ACK packet (step S75), and the TCP simple termination processing unit 16a receives the packet transmitted in step S75. The ACK packet is transmitted (step S76).

実施の形態1のTCP終端処理部16の場合、たとえば、ステップS71で送信したパケットに対する応答が所定の時間内に到着しない場合には、自身がタイムアウトを判断し、パケットを再送する。これに対し、本実施の形態のTCP簡易終端処理部16aは、このように、自身の送信パケットのタイムアウトの監視はせず、通信相手からパケットを受信した場合にその応答となるTCPパケットを送信するように簡略化している。   In the case of the TCP termination processing unit 16 according to the first embodiment, for example, when a response to the packet transmitted in step S71 does not arrive within a predetermined time, it determines a timeout and retransmits the packet. On the other hand, the TCP simple termination processing unit 16a according to the present embodiment does not monitor the timeout of its own transmission packet in this way, and transmits a TCP packet as a response when receiving a packet from the communication partner. It is simplified as you do.

そして、TCP簡易終端処理部16aは、サーバ側のTCP終端処理として、FIN/ACKパケットを送信し、このパケットがWEBサーバ3に所定の時間内に到着しなかったとする(ステップS77)。WEBサーバ3は、所定の時間が経過してもURLフィルタリング処理装置2bからパケットが送信されない場合、再送が必要であると判断し(ステップS78)、ACKパケットを再送する(ステップS79)。   Then, it is assumed that the TCP simple termination processing unit 16a transmits a FIN / ACK packet as TCP termination processing on the server side, and this packet has not arrived at the WEB server 3 within a predetermined time (step S77). If the URL filtering processing device 2b does not transmit a packet even after a predetermined time has elapsed, the WEB server 3 determines that retransmission is necessary (step S78), and retransmits the ACK packet (step S79).

TCP簡易終端処理部16aは、WEBサーバ3からACKパケットを受信した場合には、ステップS77で送信したパケットが到着していないと判断し、ステップS77で送信したFIN/ACKパケットを再送する(ステップS80)。そして、WEBサーバ3が、URLフィルタリング装置2bへFIN/ACKパケットを送信し(ステップS81)、URLフィルタリング装置2bのTCP簡易終端処理部16aは、ACKパケットをWEBサーバ3へ送信する(ステップS82)。   When receiving the ACK packet from the WEB server 3, the TCP simple termination processing unit 16a determines that the packet transmitted in Step S77 has not arrived, and retransmits the FIN / ACK packet transmitted in Step S77 (Step S77). S80). Then, the WEB server 3 transmits a FIN / ACK packet to the URL filtering device 2b (step S81), and the TCP simple termination processing unit 16a of the URL filtering device 2b transmits an ACK packet to the WEB server 3 (step S82). .

以上説明した以外の本実施の形態の動作は実施の形態2と同様である。なお、本実施の形態では、実施の形態2のURLフィルタリング装置2aのTCP終端処理部16をTCP簡易終端処理部16aに替えた構成としているが、実施の形態1のURLフィルタリング装置2のTCP終端処理部16をTCP簡易終端処理部16aに替え、上述のTCP簡易終端処理部16aの処理を実施するようにしてもよい。   The operations of the present embodiment other than those described above are the same as those of the second embodiment. In this embodiment, the TCP termination processing unit 16 of the URL filtering device 2a of the second embodiment is replaced with the TCP simple termination processing unit 16a. However, the TCP termination of the URL filtering device 2 of the first embodiment is used. The processing unit 16 may be replaced with the TCP simple termination processing unit 16a, and the process of the TCP simple termination processing unit 16a may be performed.

以上のように、本実施の形態では、TCP簡易終端処理部16aは、通信相手(PC端末1またはWEBサーバ3)からTCPパケットを受信した場合にその応答となるTCPパケットを送信するようにした。このため、通常のTCP終端処理で必要になる再送タイマ処理や輻輳回避などの複雑なTCP処理動作を実施することなく、TCPセッションを終端することができる。そのため、実施の形態1、2に比べ、TCP簡易終端処理部16aの処理を軽減することができる。   As described above, in this embodiment, when the TCP simple termination processing unit 16a receives a TCP packet from a communication partner (PC terminal 1 or WEB server 3), the TCP packet serving as a response is transmitted. . For this reason, a TCP session can be terminated without performing complicated TCP processing operations such as retransmission timer processing and congestion avoidance that are required in normal TCP termination processing. Therefore, compared with the first and second embodiments, the processing of the TCP simple termination processing unit 16a can be reduced.

以上のように、本発明にかかるURLフィルタリング装置およびURLフィルタリング方法は、URLのフィルタリングを行う通信システムに有用であり、特に、高いスループットを実現する通信システムに適している。   As described above, the URL filtering device and the URL filtering method according to the present invention are useful for communication systems that perform URL filtering, and are particularly suitable for communication systems that achieve high throughput.

本発明にかかるURLフィルタリング装置の実施の形態1の機能構成例を示す図である。It is a figure which shows the function structural example of Embodiment 1 of the URL filtering apparatus concerning this invention. 実施の形態1のパケットの通過動作の一例を示すシーケンス図である。6 is a sequence diagram illustrating an example of a packet passing operation according to the first embodiment. FIG. 実施の形態1のパケットの遮断動作の一例を示すシーケンス図である。6 is a sequence diagram illustrating an example of a packet blocking operation according to the first embodiment. FIG. 実施の形態1のHTTPリダイレクト応答処理の手順の一例を示すシーケンス図である。6 is a sequence diagram illustrating an example of a procedure of HTTP redirect response processing according to the first embodiment. FIG. TCPパケットの送信シーケンス番号、ACKシーケンス番号、TCPメッセージ長の一例を示す図である。It is a figure which shows an example of the transmission sequence number of a TCP packet, an ACK sequence number, and a TCP message length. TCPパケットの送信シーケンス番号、ACKシーケンス番号、TCPメッセージ長の一例を示す図である。It is a figure which shows an example of the transmission sequence number of a TCP packet, an ACK sequence number, and a TCP message length. TCPパケットの送信シーケンス番号、ACKシーケンス番号、TCPメッセージ長の一例を示す図である。It is a figure which shows an example of the transmission sequence number of a TCP packet, an ACK sequence number, and a TCP message length. 実施の形態2のURLフィルタリング装置の機能構成例を示す図である。6 is a diagram illustrating a functional configuration example of a URL filtering device according to a second embodiment. FIG. 実施の形態3のURLフィルタリング装置の機能構成例を示す図である。FIG. 10 is a diagram illustrating a functional configuration example of a URL filtering apparatus according to a third embodiment. 実施の形態3のTCP終端処理手順の一例を示すシーケンス図である。FIG. 10 is a sequence diagram illustrating an example of a TCP termination processing procedure according to the third embodiment.

1 PC端末
2,2a,2b URLフィルタリング装置
3 WEBサーバ
4 ACSサーバ
11 パケット転送処理部
12 TCP層パケット処理部
13 HTTP構文解析処理部
14 要求URL通過判定処理部
15 HTTP応答作成処理部
16 TCP終端処理部
16a TCP簡易終端処理部
17 固定転送処理部
21 上り通信パケット通常経路
22,22a 下り通信パケット通常経路
23 上り通信パケット終端経路
24 下り通信パケット終端経路
DESCRIPTION OF SYMBOLS 1 PC terminal 2, 2a, 2b URL filtering apparatus 3 WEB server 4 ACS server 11 Packet transfer process part 12 TCP layer packet process part 13 HTTP parsing process part 14 Request URL passage determination process part 15 HTTP response preparation process part 16 TCP termination | terminus Processing Unit 16a TCP Simple Termination Processing Unit 17 Fixed Transfer Processing Unit 21 Uplink Communication Packet Normal Path 22, 22a Downlink Communication Packet Normal Path 23 Uplink Communication Packet Termination Path 24 Downlink Communication Packet Termination Path

Claims (14)

HTTPプロトコルを用いた通信を行うクライアントとサーバとの間で送受信されるパケットを中継するパケット転送手段と、
前記クライアントから送信されるURLアクセス要求メッセージに基づいて、要求されるURLへのアクセスの可否の判定であるURL通過判定を行うURL通過判定手段と、
所定のTCP層の処理を行うTCP層処理手段と、
所定のTCP終端処理を行うTCP終端処理手段と、
受信したパケットのHTTP構文解析を行うHTTP構文解析手段と、
を備え、
前記パケット転送手段は、TCP終端処理の開始が指示されてからそのTCP終端処理が終了するまでのTCP終端処理中に受信したパケットを前記TCP終端処理手段へ渡し、TCP終端処理中以外の期間に受信したパケットを前記TCP層処理手段へ渡し、
前記TCP層処理手段は、前記パケット転送手段から受け取ったパケットのTCPデータ部を抽出するとともに、そのパケットを保持し、
前記HTTP構文解析手段は、前記TCPデータ部に基づいて、前記TCP層処理手段に保持されているパケットがURLアクセス要求メッセージでないと判断した場合には、前記TCP層処理手段にそのパケットの送信許可を通知し、一方、URLアクセス要求メッセージであると判断した場合には、前記URL通過判定手段にそのURLアクセス要求メッセージのURL通過判定を依頼し、
前記URL通過判定手段は、前記依頼に基づいてURL通過判定を実施し、URL通過判定結果がアクセス不可である場合には、TCP終端処理の開始を指示し、URL通過判定結果がアクセス可である場合には、前記TCP層処理手段に保持されたパケットの送信許可を通知し、
前記TCP終端処理手段は、TCP終端処理の開始が指示されるとセッションを終了させるためのTCP終端処理を行い、TCP終端処理によって生成したパケットを前記パケット転送手段に出力し、
前記TCP層処理手段は、送信許可が通知されたパケットを前記パケット転送手段に出力し、
前記パケット転送手段は、前記TCP層処理手段から出力されたパケットおよび前記TCP終端処理手段から出力されたパケットをそれぞれのパケットの送信先に送信することを特徴とするURLフィルタリング装置。
Packet transfer means for relaying packets transmitted and received between a client and a server that perform communication using the HTTP protocol;
URL passage determination means for performing URL passage determination, which is determination of whether or not access to the requested URL is possible based on a URL access request message transmitted from the client;
TCP layer processing means for processing a predetermined TCP layer;
TCP termination processing means for performing predetermined TCP termination processing;
HTTP parsing means for performing HTTP parsing of the received packet;
With
The packet transfer means passes the packet received during the TCP termination process from the start of the TCP termination process until the end of the TCP termination process to the TCP termination process means, and in a period other than during the TCP termination process. Pass the received packet to the TCP layer processing means,
The TCP layer processing means extracts the TCP data part of the packet received from the packet transfer means and holds the packet,
If the HTTP syntax analysis unit determines that the packet held in the TCP layer processing unit is not a URL access request message based on the TCP data part, the TCP layer processing unit allows the packet transmission permission. On the other hand, if it is determined that it is a URL access request message, the URL access determination means is requested to determine the URL access request message for URL passing,
The URL passage determination means performs URL passage determination based on the request, and when the URL passage determination result is inaccessible, instructs the start of TCP termination processing, and the URL passage determination result is accessible. In the case, the transmission permission of the packet held in the TCP layer processing means is notified,
The TCP termination processing means performs TCP termination processing for terminating a session when an instruction to start TCP termination processing is given, and outputs a packet generated by the TCP termination processing to the packet transfer means,
The TCP layer processing means outputs a packet notified of transmission permission to the packet transfer means,
The URL filtering apparatus, wherein the packet transfer unit transmits the packet output from the TCP layer processing unit and the packet output from the TCP termination processing unit to a transmission destination of each packet.
HTTPプロトコルを用いた通信を行うクライアントとサーバとの間で送受信されるパケットを中継するパケット転送手段と、
前記クライアントから送信されるURLアクセス要求メッセージに基づいて、要求されたURLを含ませたURL判定依頼を、URLへのアクセスの可否の判定であるURL通過判定を実施する外部装置へ送信し、その応答として、前記外部装置から判定結果を取得するURL通過判定手段と、
所定のTCP層の処理を行うTCP層処理手段と、
所定のTCP終端処理を行うTCP終端処理手段と、
受信したパケットのHTTP構文解析を行うHTTP構文解析手段と、
を備え、
前記パケット転送手段は、TCP終端処理の開始が指示されてからそのTCP終端処理が終了するまでのTCP終端処理中に受信したパケットを前記TCP終端処理手段へ渡し、TCP終端処理中以外の期間に受信したパケットを前記TCP層処理手段へ渡し、
前記TCP層処理手段は、前記パケット転送手段から受け取ったパケットのTCPデータ部を抽出するとともに、そのパケットを保持し、
前記HTTP構文解析手段は、前記TCPデータ部に基づいて、前記TCP層処理手段に保持されているパケットがURLアクセス要求メッセージでないと判断した場合には、前記TCP層処理手段にそのパケットの送信許可を通知し、一方、URLアクセス要求メッセージであると判断した場合には、前記URL通過判定手段にそのURLアクセス要求メッセージのURL通過判定を依頼し、
前記URL通過判定手段は、前記依頼に基づいて前記URLアクセス要求メッセージに含まれるURLを含ませたURL判定依頼を前記外部装置へ送信し、その依頼に対する応答としてURL通過判定結果を取得し、URL通過判定結果がアクセス不可である場合には、TCP終端処理の開始を指示し、URL通過判定結果がアクセス可である場合には、前記TCP層処理手段に保持されたパケットの送信許可を通知し、
前記TCP終端処理手段は、TCP終端処理の開始が指示されるとセッションを終了させるためのTCP終端処理を行い、TCP終端処理によって生成したパケットを前記パケット転送手段に出力し、
前記TCP層処理手段は、送信許可が通知されたパケットを前記パケット転送手段に出力し、
前記パケット転送手段は、前記TCP層処理手段から出力されたパケットおよび前記TCP終端処理手段から出力されたパケットをそれぞれのパケットの送信先へ送信することを特徴とするURLフィルタリング装置。
Packet transfer means for relaying packets transmitted and received between a client and a server that perform communication using the HTTP protocol;
Based on the URL access request message transmitted from the client, a URL determination request including the requested URL is transmitted to an external device that performs URL passage determination, which is determination of whether or not the URL can be accessed, and In response, URL passage determination means for acquiring a determination result from the external device;
TCP layer processing means for processing a predetermined TCP layer;
TCP termination processing means for performing predetermined TCP termination processing;
HTTP parsing means for performing HTTP parsing of the received packet;
With
The packet transfer means passes the packet received during the TCP termination process from the start of the TCP termination process until the end of the TCP termination process to the TCP termination process means, and in a period other than during the TCP termination process. Pass the received packet to the TCP layer processing means,
The TCP layer processing means extracts the TCP data part of the packet received from the packet transfer means and holds the packet,
If the HTTP syntax analysis unit determines that the packet held in the TCP layer processing unit is not a URL access request message based on the TCP data part, the TCP layer processing unit allows the packet transmission permission. On the other hand, if it is determined that it is a URL access request message, the URL access determination means is requested to determine the URL access request message for URL passing,
The URL passage determination means transmits a URL determination request including the URL included in the URL access request message to the external device based on the request, acquires a URL passage determination result as a response to the request, When the passage determination result is inaccessible, the TCP termination processing is instructed. When the URL passage determination result is accessible, the transmission permission of the packet held in the TCP layer processing means is notified. ,
The TCP termination processing means performs TCP termination processing for terminating a session when an instruction to start TCP termination processing is given, and outputs a packet generated by the TCP termination processing to the packet transfer means,
The TCP layer processing means outputs a packet notified of transmission permission to the packet transfer means,
The URL filtering apparatus, wherein the packet transfer unit transmits the packet output from the TCP layer processing unit and the packet output from the TCP termination processing unit to a transmission destination of each packet.
HTTPプロトコルを用いた通信を行うクライアントとサーバとの間で送受信されるパケットを中継するパケット転送手段と、
前記クライアントから送信されるURLアクセス要求メッセージに基づいて、要求されたURLへのアクセスの可否の判定であるURL通過判定を行うURL通過判定手段と、
所定のTCP層の処理を行うTCP層処理手段と、
所定のTCP終端処理を行うTCP終端処理手段と、
受信したパケットのHTTP構文解析を行うHTTP構文解析手段と、
所定の転送処理を行う簡易転送手段と、
を備え、
前記パケット転送手段は、TCP終端処理の開始が指示されてからそのTCP終端処理が終了するまでのTCP終端処理中に受信したパケットを前記TCP終端処理手段へ渡し、TCP終端処理中以外の期間に前記クライアントから受信したパケットを前記TCP層処理手段へ渡し、
前記TCP層処理手段は、前記パケット転送手段から受け取ったパケットのTCPデータ部を抽出するとともに、そのパケットを保持し、
前記HTTP構文解析手段は、前記TCPデータ部に基づいて、前記TCP層処理手段に保持されているパケットがURLアクセス要求メッセージでないと判断した場合には、前記TCP層処理手段にそのパケットの送信許可を通知し、一方、URLアクセス要求メッセージであると判断した場合には、前記URL通過判定手段にそのURLアクセス要求メッセージのURL通過判定を依頼し、
前記URL通過判定手段は、前記依頼に基づいてURL通過判定を実施し、URL通過判定結果がアクセス不可である場合には、TCP終端処理の開始を指示し、URL通過判定結果がアクセス可である場合には、前記TCP層処理手段に保持されたパケットの送信許可を通知し、
前記TCP終端処理手段は、TCP終端処理の開始が指示されるとセッションを終了させるためのTCP終端処理を行い、TCP終端処理によって生成したパケットを前記パケット転送手段に出力し、
前記TCP層処理手段は、送信許可が通知されたパケットを前記パケット転送手段に出力し、
前記パケット転送手段は、前記TCP層処理手段から出力されたパケットおよび前記TCP終端処理手段から出力されたパケットをそれぞれのパケットの送信先に送信し、
前記簡易転送手段は、TCP終端処理中以外の期間に前記サーバから受信したパケットを前記クライアントへ転送することを特徴とするURLフィルタリング装置。
Packet transfer means for relaying packets transmitted and received between a client and a server that perform communication using the HTTP protocol;
URL passage determination means for performing URL passage determination, which is determination of whether or not access to the requested URL is possible based on a URL access request message transmitted from the client;
TCP layer processing means for processing a predetermined TCP layer;
TCP termination processing means for performing predetermined TCP termination processing;
HTTP parsing means for performing HTTP parsing of the received packet;
Simple transfer means for performing a predetermined transfer process;
With
The packet transfer means passes the packet received during the TCP termination process from the start of the TCP termination process until the end of the TCP termination process to the TCP termination process means, and in a period other than during the TCP termination process. Pass the packet received from the client to the TCP layer processing means,
The TCP layer processing means extracts the TCP data part of the packet received from the packet transfer means and holds the packet,
If the HTTP syntax analysis unit determines that the packet held in the TCP layer processing unit is not a URL access request message based on the TCP data part, the TCP layer processing unit allows the packet transmission permission. On the other hand, if it is determined that it is a URL access request message, the URL access determination means is requested to determine the URL access request message for URL passing,
The URL passage determination means performs URL passage determination based on the request, and when the URL passage determination result is inaccessible, instructs the start of TCP termination processing, and the URL passage determination result is accessible. In the case, the transmission permission of the packet held in the TCP layer processing means is notified,
The TCP termination processing means performs TCP termination processing for terminating a session when an instruction to start TCP termination processing is given, and outputs a packet generated by the TCP termination processing to the packet transfer means,
The TCP layer processing means outputs a packet notified of transmission permission to the packet transfer means,
The packet transfer means transmits the packet output from the TCP layer processing means and the packet output from the TCP termination processing means to the destination of each packet,
The URL filtering device, wherein the simple transfer means transfers a packet received from the server to a client during a period other than during TCP termination processing.
HTTPプロトコルを用いた通信を行うクライアントとサーバとの間で送受信されるパケットを中継するパケット転送手段と、
前記クライアントから送信されるURLアクセス要求メッセージに基づいて、そのメッセージで要求されたURLを含ませたURL判定依頼を、URLへのアクセスの可否の判定であるURL通過判定を実施する外部装置へ送信し、その応答として、前記外部装置から判定結果を取得するURL通過判定手段と、
所定のTCP層の処理を行うTCP層処理手段と、
所定のTCP終端処理を行うTCP終端処理手段と、
受信したパケットのHTTP構文解析を行うHTTP構文解析手段と、
所定の転送処理を行う簡易転送手段と、
を備え、
前記パケット転送手段は、TCP終端処理の開始が指示されてからそのTCP終端処理が終了するまでのTCP終端処理中に受信したパケットを前記TCP終端処理手段へ渡し、TCP終端処理中以外の期間に前記クライアントから受信したパケットを前記TCP層処理手段へ渡し、
前記TCP層処理手段は、前記パケット転送手段から受け取ったパケットのTCPデータ部を抽出するとともに、そのパケットを保持し、
前記HTTP構文解析手段は、前記TCPデータ部に基づいて、前記TCP層処理手段に保持されているパケットがURLアクセス要求メッセージでないと判断した場合には、前記TCP層処理手段にそのパケットの送信許可を通知し、一方、URLアクセス要求メッセージであると判断した場合には、前記URL通過判定手段にそのURLアクセス要求メッセージのURL通過判定を依頼し、
前記URL通過判定手段は、前記依頼に基づいて前記URLアクセス要求メッセージに含まれるURLを含ませたURL判定依頼を前記外部装置へ送信し、その依頼に対する応答としてURL通過判定結果を取得し、URL通過判定結果がアクセス不可である場合には、TCP終端処理の開始を指示し、URL通過判定結果がアクセス可である場合には、前記TCP層処理手段に保持されたパケットの送信許可を通知し、
前記TCP終端処理手段は、TCP終端処理の開始が指示されるとセッションを終了させるためのTCP終端処理を行い、TCP終端処理によって生成したパケットを前記パケット転送手段に出力し、
前記TCP層処理手段は、送信許可が通知されたパケットを前記パケット転送手段に出力し、
前記パケット転送手段は、前記TCP層処理手段から出力されたパケットおよび前記TCP終端処理手段から出力されるパケットをそれぞれのパケットの送信先に送信し、
前記簡易転送手段は、TCP終端処理中以外の期間に前記サーバから受信したパケットを前記クライアントへ転送することを特徴とするURLフィルタリング装置。
Packet transfer means for relaying packets transmitted and received between a client and a server that perform communication using the HTTP protocol;
Based on the URL access request message transmitted from the client, a URL determination request including the URL requested by the message is transmitted to an external device that performs URL passage determination, which is determination of whether or not access to the URL is possible. In response, URL passage determination means for acquiring a determination result from the external device;
TCP layer processing means for processing a predetermined TCP layer;
TCP termination processing means for performing predetermined TCP termination processing;
HTTP parsing means for performing HTTP parsing of the received packet;
Simple transfer means for performing a predetermined transfer process;
With
The packet transfer means passes the packet received during the TCP termination process from the start of the TCP termination process until the end of the TCP termination process to the TCP termination process means, and in a period other than during the TCP termination process. Pass the packet received from the client to the TCP layer processing means,
The TCP layer processing means extracts the TCP data part of the packet received from the packet transfer means and holds the packet,
If the HTTP syntax analysis unit determines that the packet held in the TCP layer processing unit is not a URL access request message based on the TCP data part, the TCP layer processing unit allows the packet transmission permission. On the other hand, if it is determined that it is a URL access request message, the URL access determination means is requested to determine the URL access request message for URL passing,
The URL passage determination means transmits a URL determination request including the URL included in the URL access request message to the external device based on the request, acquires a URL passage determination result as a response to the request, When the passage determination result is inaccessible, the TCP termination processing is instructed. When the URL passage determination result is accessible, the transmission permission of the packet held in the TCP layer processing means is notified. ,
The TCP termination processing means performs TCP termination processing for terminating a session when an instruction to start TCP termination processing is given, and outputs a packet generated by the TCP termination processing to the packet transfer means,
The TCP layer processing means outputs a packet notified of transmission permission to the packet transfer means,
The packet transfer means transmits the packet output from the TCP layer processing means and the packet output from the TCP termination processing means to the destination of each packet,
The URL filtering device, wherein the simple transfer means transfers a packet received from the server to a client during a period other than during TCP termination processing.
前記TCP終端処理を前記クライアントに対するセッションと前記サーバに対するセッションとの2つに分割して実施することを特徴とする請求項1〜4のいずれか1つに記載のURLフィルタリング装置。   The URL filtering apparatus according to claim 1, wherein the TCP termination process is divided into two sessions, a session for the client and a session for the server. HTTP応答を生成するHTTP応答手段、
をさらに備え、
前記TCP層処理手段は、前記クライアントから送信されたURLアクセス要求メッセージのパケットが再送パケットであると判断した場合は、そのセッションを終了させるためのTCP終端処理の開始を指示するとともに、前記クライアントに再度同一URLへのアクセスの要求を行わせるための応答であるリダイレクト応答の生成を指示し、
前記HTTP応答手段は、前記指示に基づいてリダイレクト応答を生成し、生成したリダイレクト応答を前記クライアントに送信することを特徴とする請求項1〜5のいずれか1つに記載のURLフィルタリング装置。
HTTP response means for generating an HTTP response;
Further comprising
If the TCP layer processing means determines that the URL access request message packet transmitted from the client is a retransmission packet, the TCP layer processing means instructs the client to start a TCP termination process to end the session, and Instructing the generation of a redirect response, which is a response for requesting access to the same URL again,
The URL filtering device according to claim 1, wherein the HTTP response unit generates a redirect response based on the instruction, and transmits the generated redirect response to the client.
前記TCP層処理手段は、前記URL通過判定結果を保持することとし、前記再送パケットに対応するURLのURL通過判定結果を保持している場合は、保持しているURL通過判定結果を、その再送パケットに対するURL通過判定結果とすることを特徴とする請求項6に記載のURLフィルタリング装置。   The TCP layer processing means holds the URL passage determination result. When the URL passage determination result of the URL corresponding to the retransmission packet is held, the held URL passage determination result is retransmitted. The URL filtering apparatus according to claim 6, wherein the URL filtering determination result is a URL passage determination result for the packet. 前記リダイレクト応答を「HTTP 302」応答とし、前記「HTTP 302」応答のLocationフィールドに前記URLアクセス要求メッセージでアクセスを要求されたURLを含ませることを特徴とする請求項6または7に記載のURLフィルタリング装置。   8. The URL according to claim 6, wherein the redirect response is an “HTTP 302” response, and a URL requested to be accessed by the URL access request message is included in a Location field of the “HTTP 302” response. 9. Filtering device. 前記リダイレクト応答のHTTPデータ部に、所定の時間経過後に前記URLアクセス要求メッセージでアクセスを要求されたURLへ再度アクセスを要求する動作を、前記クライアントが解釈可能なスクリプトまたはプログラムで記述することを特徴とする請求項6または7に記載のURLフィルタリング装置。   In the HTTP data part of the redirect response, an operation for requesting access again to the URL requested to be accessed by the URL access request message after a lapse of a predetermined time is described by a script or program interpretable by the client. The URL filtering device according to claim 6 or 7. 前記リダイレクト応答を、HTTP1.1で記述されるHTTP keep-alive機能によって前記クライアントから通知される後続のURLアクセス要求セッッセージに対してもリダイレクト応答を返すことを特徴とする請求項6〜9のいずれか1つに記載のURLフィルタリング装置。   10. The redirect response is also returned to a subsequent URL access request message notified from the client by an HTTP keep-alive function described in HTTP 1.1. The URL filtering apparatus as described in any one. 前記TCP終端処理を、前記クライアントまたは前記サーバから所定のパケットを受信した際にその応答となるパケットを送信する処理、とすることを特徴とする請求項1〜10のいずれか1つに記載のURLフィルタリング装置。   The said TCP termination process is a process which transmits the packet used as the response when a predetermined packet is received from the said client or the said server, It is any one of Claims 1-10 characterized by the above-mentioned. URL filtering device. 前記TCP終端処理手段は、受信したパケットの応答パケットのACKシーケンス番号を、その受信したパケットのACKシーケンス番号にTCPデータ長を加算した値とすることを特徴とする請求項11に記載のURLフィルタリング装置。   12. The URL filtering according to claim 11, wherein the TCP termination processing means sets the ACK sequence number of the response packet of the received packet as a value obtained by adding the TCP data length to the ACK sequence number of the received packet. apparatus. HTTPプロトコルを用いた通信を行うクライアントとサーバとの間で送受信されるパケットを中継するパケット転送手段と、前記クライアントから送信されるURLアクセス要求メッセージに基づいて、要求されたURLへのアクセスの可否の判定であるURL通過判定を行うURL通過判定手段と、を備えるURLフィルタリング装置におけるURLフィルタリング方法であって、
前記パケット転送手段が、TCP終端処理の開始が指示されてからそのTCP終端処理が終了するまでのTCP終端処理中に受信したパケットをTCP終端処理対象とし、TCP終端処理中以外の期間に受信したパケットをTCP層処理対象とするパケット判別ステップと、
TCP層処理対象のパケットのTCPデータ部を抽出するとともに、そのパケットを保持するTCP層処理ステップと、
前記TCPデータ部に基づいて、前記TCP層処理ステップで保持されたパケットがURLアクセス要求メッセージでないと判断した場合には、そのパケットの送信許可を通知し、一方、URLアクセス要求メッセージであると判断した場合には、前記URL通過判定手段にそのURLアクセス要求メッセージのURL通過判定を依頼するHTTP構文解析ステップと、
前記URL通過判定手段が、前記依頼に基づいてURL通過判定を実施し、URL通過判定結果がアクセス不可である場合には、TCP終端処理の開始を指示し、URL通過判定結果がアクセス可である場合には、前記TCP層処理ステップにて保持されたパケットの送信許可を通知するURL通過判定ステップと、
TCP終端処理の開始が指示されるとセッションを終了させるためのTCP終端処理を行い、TCP終端処理によって生成したパケットを前記パケット転送手段に出力するTCP終端処理ステップと、
送信許可が通知されたパケットを前記パケット転送手段に出力する送信許可パケット出力ステップと、
前記パケット転送手段が、前記TCP層処理ステップの実行により出力されたパケットおよび前記TCP終端処理ステップの実行により出力されたパケットをそれぞれのパケットの送信先に送信する送信ステップと、
を含むことを特徴とするURLフィルタリング方法。
Packet transfer means for relaying packets transmitted and received between a client and a server that perform communication using the HTTP protocol, and whether or not the requested URL can be accessed based on a URL access request message transmitted from the client A URL filtering method in a URL filtering device comprising:
The packet transfer means sets the packet received during the TCP termination process from the start of the TCP termination process to the end of the TCP termination process as a TCP termination process target, and received during a period other than during the TCP termination process A packet discrimination step for processing a packet as a TCP layer; and
A TCP layer processing step for extracting a TCP data portion of a packet subject to TCP layer processing and holding the packet;
If it is determined that the packet held in the TCP layer processing step is not a URL access request message based on the TCP data part, the transmission permission of the packet is notified, while it is determined that the packet is a URL access request message. If so, an HTTP syntax analysis step for requesting the URL passage determination means to make a URL passage determination of the URL access request message;
The URL passage determination means performs URL passage determination based on the request, and when the URL passage determination result is inaccessible, instructs the start of TCP termination processing, and the URL passage determination result is accessible. A URL passage determination step for notifying the transmission permission of the packet held in the TCP layer processing step;
A TCP termination process step of performing a TCP termination process for terminating a session when an instruction to start a TCP termination process is given, and outputting a packet generated by the TCP termination process to the packet transfer means;
A transmission permission packet output step of outputting a packet notified of transmission permission to the packet transfer means;
The packet transfer means transmits a packet output by execution of the TCP layer processing step and a packet output by execution of the TCP termination processing step to a transmission destination of each packet;
URL filtering method characterized by including these.
HTTPプロトコルを用いた通信を行うクライアントとサーバとの間で送受信されるパケットを中継するパケット転送手段と、前記クライアントから送信されるURLアクセス要求メッセージに基づいて、そのメッセージで要求されたURLを含ませたURL判定依頼を、URLへのアクセスの可否の判定であるURL通過判定を実施する外部装置へ送信し、その応答として、前記外部装置から判定結果を取得するURL通過判定手段と、を備えるURLフィルタリング装置におけるURLフィルタリング方法であって、
前記パケット転送手段が、TCP終端処理の開始が指示されてからそのTCP終端処理が終了するまでのTCP終端処理中に受信したパケットをTCP終端処理対象とし、TCP終端処理中以外の期間に受信したパケットをTCP層処理対象とするパケット判別ステップと、
TCP層処理対象のパケットのTCPデータ部を抽出するとともに、そのパケットを保持するTCP層処理ステップと、
前記TCPデータ部に基づいて、前記TCP層処理ステップで保持されたパケットがURLアクセス要求メッセージでないと判断した場合には、そのパケットの送信許可を通知し、一方、URLアクセス要求メッセージであると判断した場合には、前記URL通過判定手段にそのURLアクセス要求メッセージのURL通過判定を依頼するHTTP構文解析ステップと、
前記URL通過判定手段が、前記依頼に基づいて前記URLアクセス要求メッセージに含まれるURLを含ませたURL判定依頼を前記外部装置へ送信し、その依頼に対する応答としてURL通過判定結果を取得し、URL通過判定結果がアクセス不可である場合には、TCP終端処理の開始を指示し、URL通過判定結果がアクセス可である場合には、前記TCP層処理ステップにて保持されたパケットの送信許可を通知するURL通過判定ステップと、
TCP終端処理の開始が指示されるとセッションを終了させるためのTCP終端処理を行い、TCP終端処理によって生成したパケットを前記パケット転送手段に出力するTCP終端処理ステップと、
送信許可が通知されたパケットを前記パケット転送手段に出力する送信許可パケット出力ステップと、
前記パケット転送手段が、前記TCP層処理ステップの実行により出力されたパケットおよび前記TCP終端処理ステップの実行により出力されたパケットをそれぞれのパケットの送信先に送信する送信ステップと、
を含むことを特徴とするURLフィルタリング方法。
Based on a URL access request message transmitted from the client, a packet transfer means for relaying a packet transmitted / received between a client and a server that perform communication using the HTTP protocol, and the URL requested by the message is included. A URL passage determination means for transmitting the received URL determination request to an external device that performs URL passage determination, which is determination of whether or not access to the URL is possible, and obtaining a determination result from the external device as a response thereto. A URL filtering method in a URL filtering device,
The packet transfer means sets the packet received during the TCP termination process from the start of the TCP termination process to the end of the TCP termination process as a TCP termination process target, and received during a period other than during the TCP termination process A packet discrimination step for processing a packet as a TCP layer; and
A TCP layer processing step for extracting a TCP data portion of a packet subject to TCP layer processing and holding the packet;
If it is determined that the packet held in the TCP layer processing step is not a URL access request message based on the TCP data part, the transmission permission of the packet is notified, while it is determined that the packet is a URL access request message. If so, an HTTP syntax analysis step for requesting the URL passage determination means to make a URL passage determination of the URL access request message;
The URL passage determination means transmits a URL determination request including the URL included in the URL access request message to the external device based on the request, acquires a URL passage determination result as a response to the request, When the passage determination result is inaccessible, the start of the TCP termination process is instructed. When the URL passage determination result is accessible, the transmission permission of the packet held in the TCP layer processing step is notified. A URL passage determination step,
A TCP termination process step of performing a TCP termination process for terminating a session when an instruction to start a TCP termination process is given, and outputting a packet generated by the TCP termination process to the packet transfer means;
A transmission permission packet output step of outputting a packet notified of transmission permission to the packet transfer means;
The packet transfer means transmits a packet output by execution of the TCP layer processing step and a packet output by execution of the TCP termination processing step to a transmission destination of each packet;
URL filtering method characterized by including these.
JP2009089423A 2009-04-01 2009-04-01 URL filtering apparatus and URL filtering method Active JP5219903B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009089423A JP5219903B2 (en) 2009-04-01 2009-04-01 URL filtering apparatus and URL filtering method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009089423A JP5219903B2 (en) 2009-04-01 2009-04-01 URL filtering apparatus and URL filtering method

Publications (2)

Publication Number Publication Date
JP2010244134A JP2010244134A (en) 2010-10-28
JP5219903B2 true JP5219903B2 (en) 2013-06-26

Family

ID=43097114

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009089423A Active JP5219903B2 (en) 2009-04-01 2009-04-01 URL filtering apparatus and URL filtering method

Country Status (1)

Country Link
JP (1) JP5219903B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5624973B2 (en) 2011-11-04 2014-11-12 株式会社日立製作所 Filtering device
JP5749673B2 (en) * 2012-03-12 2015-07-15 西日本電信電話株式会社 Packet transfer device
JP5764511B2 (en) * 2012-03-13 2015-08-19 西日本電信電話株式会社 URL filtering device
JP5797597B2 (en) * 2012-03-29 2015-10-21 西日本電信電話株式会社 Relay device
WO2016117776A1 (en) * 2015-01-23 2016-07-28 주식회사 플랜티넷 Router-based harmful site blocking system and method therefor
RU2599949C1 (en) * 2015-04-16 2016-10-20 Федеральное государственное бюджетное учреждение науки Институт автоматики и электрометрии Сибирского отделения Российской академии наук (ИАиЭ СО РАН) Method of filtering http packets stream based on internet resource requests post analysis and filtration device for its implementation
KR102001814B1 (en) * 2016-12-27 2019-07-19 한국인터넷진흥원 A method and apparatus for detecting malicious scripts based on mobile device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3250512B2 (en) * 1998-02-24 2002-01-28 日本電気株式会社 Proxy server
JP4284248B2 (en) * 2004-08-20 2009-06-24 日本電信電話株式会社 Application service rejection attack prevention method, system, and program
JP2006293708A (en) * 2005-04-11 2006-10-26 Nec Access Technica Ltd System, method, and program for contents access control

Also Published As

Publication number Publication date
JP2010244134A (en) 2010-10-28

Similar Documents

Publication Publication Date Title
JP5219903B2 (en) URL filtering apparatus and URL filtering method
US9832169B2 (en) Method and system for communicating over a segmented virtual private network (VPN)
EP1333642B1 (en) Method and system for integrating performance enhancing functions in a virtual private network (VPN)
US7389533B2 (en) Method and system for adaptively applying performance enhancing functions
EP1443731A2 (en) Method and system for providing security in performance enhanced network
EP1443713A2 (en) Method and system for utilizing virtual private network (VPN) connections in a performance enhanced network
Shen et al. On TCP-based SIP server overload control
EP2202935B1 (en) Method and device for processing data in a network
US8543807B2 (en) Method and apparatus for protecting application layer in computer network system
JP6444988B2 (en) Communication system using HTTP
TWI701920B (en) Packet transmission method and system thereof
JP2017118545A5 (en)
KR20220007696A (en) Fire-and-forget offload mechanism for network-based services
JPWO2007039942A1 (en) Terminal device, server device, and command device
CN1898649A (en) Preventing network reset denial of service attacks
CN114465742B (en) Network security protection method and protection equipment
JP4285101B2 (en) Real-time data communication system, real-time data communication apparatus, and real-time data communication method
JP3648211B2 (en) Packet relay program, packet relay device, and recording medium
EP3107352A1 (en) Information transfer method and apparatus
JP5147819B2 (en) Application layer protection method and apparatus for computer network system
CN114553446B (en) Network security protection method and protection equipment
Völker et al. The Search of the Path MTU with QUIC
US20220030011A1 (en) Demand management of sender of network traffic flow
Goerzen Introduction to Client/Server Networking

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130305

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5219903

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250