JP3584884B2 - フロー検出装置及びそれに用いるフロー検出方法 - Google Patents

フロー検出装置及びそれに用いるフロー検出方法 Download PDF

Info

Publication number
JP3584884B2
JP3584884B2 JP2001008372A JP2001008372A JP3584884B2 JP 3584884 B2 JP3584884 B2 JP 3584884B2 JP 2001008372 A JP2001008372 A JP 2001008372A JP 2001008372 A JP2001008372 A JP 2001008372A JP 3584884 B2 JP3584884 B2 JP 3584884B2
Authority
JP
Japan
Prior art keywords
flow
flow detection
information
hash function
packet
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.)
Expired - Fee Related
Application number
JP2001008372A
Other languages
English (en)
Other versions
JP2002217967A (ja
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2001008372A priority Critical patent/JP3584884B2/ja
Publication of JP2002217967A publication Critical patent/JP2002217967A/ja
Application granted granted Critical
Publication of JP3584884B2 publication Critical patent/JP3584884B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はフロー検出装置及びそれに用いるフロー検出方法に関し、特にIP(Internet Protocol)パケットネットワークにおけるQoS(Quality of Service)保証を実現するためのフロー検出に関する。
【0002】
【従来の技術】
一般的なIPパケットネットワークの構成例を図4に示す。図4において、IPパケットネットワークではPC(パーソナルコンピュータ)5から送られてきたパケットがノード(ルータ)6のセレクタ61によってキュー62−1〜61−nに分配され、各キュー62−1〜61−nからPC7,8へと送られる。上記のノード6でのパケット処理においては図示せぬフォワーディングテーブルを検索して送付先が決定されているが、このフォワーディングテーブル検索が主要なボトルネックとなっている。
【0003】
IPパケットのキャリアクラスのQoS保証を実現するにはフロー検出技術が必要である。フロー識別はIPパケット受信時のポリシング(流量監視)のトラヒック識別子、スイッチにおける優先クラス及びIPパケット出力時の帯域制御キュー番号を決定するために必要である。
【0004】
フローとはいくつかのユニークな情報を共有する一連のパケットである。ユニークな情報としては送信先IPアドレス/送信元IPアドレス、送信先TCP(Transmission Control Protocol)/UDP(User Datagram Protocol)ポート番号/送信元TCP/UDPポート番号、プロトコル種別、DSCP(Diffserv Code Point:IPヘッダ内Type of Serviceフィールドの一部)等がある。
【0005】
コネクションレスのIPネットワークでは、このフロー毎にQoSクラスを割当てており、フロー識別はIPレベルでQoSをサポートするための必須機能である。フロー識別することによって、IPパケット受信時のポリシング(流量監視)のトラヒック識別子、スイッチにおける優先クラス及びIPパケット出力時の帯域制御のキュー番号を決定することでQoSをサポートすることができる。
【0006】
従来のフロー検出方法の一例を図5に示す。図5において、従来のフロー検出方法ではフロー検出装置4と、フローテーブル格納メモリ3とが用いられている。フローテーブル格納メモリ3に登録されるフロー検出テーブルの一例を図6に示す。
【0007】
図6において、フロー検出テーブル31にはIPソースアドレス(IP SA)と、IPデスティネーションアドレス(IP DA)と、プロトコル(P)と、ソースポート番号(S Port)と、デスティネーションポート番号(D Port)と、プライオリティ(Priority)とが登録されている。
【0008】
IPパケットはIPヘッダ内の情報[ソースアドレス(SA)32bits、デスティネーションアドレス(DA)32bits、プロトコル(P)8bits]とTCP/UDP内の情報[ソースポート番号(SP)16bits、デスティネーションポート番号(DP)16bits]との合計104bitsから64Kのフローに識別されており、FminからFmaxまでの範囲のプライオリティ付けを行ったフロー番号Fが出力されている。
【0009】
【発明が解決しようとする課題】
上述した従来のフロー検出方法では、IPヘッダ内の情報とTCP/UDP内の情報とからIPパケットを64Kのフローに識別しており、FminからFmaxまでの範囲のプライオリティ付けを行ったフロー番号Fを出力しているので、CAM(Content Addressable Memory)等の大規模で高速かつ高価なメモリを必要とするという問題がある。
【0010】
そこで、本発明の目的は上記の問題点を解消し、メモリ容量を大幅に削減することができ、CAM等の高価なデバイスや低速なソフト処理によらずにフロー検出を行うことができるフロー検出装置及びそれに用いるフロー検出方法を提供することにある。
【0011】
【課題を解決するための手段】
本発明によるフロー検出装置は、IP(Internet Protocol)パケットのキャリアクラスのQoS(Quality of Service)保証を実現するために、いくつかのユニークな情報を共有する一連のパケットであるフローを検出するフロー検出装置であって、検出対象の全てのフローに対して互いに異なる値をとるようなハッシュ関数の計算値を計算するハッシュ関数処理手段と、前記ハッシュ関数の計算値を使用するフロー番号と前記フロー各々に設定されたプライオリティを格納するフロー検出テーブルを備え、前記フロー検出テーブルを参照してフロー検出を行っている。
【0012】
本発明によるフロー検出方法は、IP(Internet Protocol)パケットのキャリアクラスのQoS(Quality of Service)保証を実現するために、いくつかのユニークな情報を共有する一連のパケットであるフローを検出するフロー検出方法であって、検出対象の全てのフローに対して互いに異なる値をとるようなハッシュ関数の計算値を計算しておき、前記ハッシュ関数の計算値を使用するフロー番号と前記フロー各々に設定されたプライオリティを格納するフロー検出テーブルを参照してフロー検出を行っている。
【0013】
すなわち、IPパケットのキャリアクラスのQoS(Quality of Service)保証を実現するにはフロー検出技術が必要である。フロー識別はIP(Internet Protocol)パケット受信時のポリシング(流量監視)のトラヒック識別子、スイッチにおける優先クラス及びIPパケット出力時の帯域制御キュー番号を決定するために必要である。
【0014】
本発明は検出対象のすべてのフローに対して互いに異なる値をとるようなハッシュ関数fを計算しておき、このハッシュ関数fの計算値をフロー番号Fとして使用している。これによって、メモリ容量を大幅に削減することが可能となるため、CAM等の高価なデバイスや低速なソフト処理によらずにフロー検出を行うことが可能となる。
【0015】
【発明の実施の形態】
次に、本発明の一実施例について図面を参照して説明する。図1は本発明の一実施例によるフロー検出装置の構成を示すブロック図である。図1において、フロー検出装置1はハッシュ関数fによる計算を行うハッシュ関数処理部11を備え、ハッシュ計算後フローテーブル格納メモリ2を参照してフロー検出を行う。
【0016】
ここで、フローとはいくつかのユニークな情報を共有する一連のパケットである。ユニークな情報としては送信先IPアドレス/送信元IPアドレス、送信先TCP(Transmission Control Protocol)/UDP(User Datagram Protocol)ポート番号/送信元TCP/UDPポート番号、プロトコル種別、DSCP(Diffserv Code Point:IPヘッダ内Type of Serviceフィールドの一部)等がある。また、ハッシュ関数fは検出対象の全てのフローに対して互いに異なる値をとるようなハッシュ関数である。
【0017】
図2は図1のハッシュ計算後フローテーブル格納メモリ2に登録されるハッシュ関数計算後のフロー検出テーブルの一例を示す図である。図2において、ハッシュ関数計算後のフロー検出テーブル21はフロー番号F(1〜10,11〜20,100〜200,50〜70,・・・)と、プライオリティ(Priority)(QoS#1,QoS#2,QoS#20,QoS#4)とが記憶されている。
【0018】
ここで、フロー番号Fとしては上記のハッシュ関数fの計算値を使用しており、検出対象の全てのフローに対して互いに異なる値をとるようなハッシュ関数fはIPヘッダ内の情報[ソースアドレス(SA:Source Address)、デスティネーションアドレス(DA:Destination Address)、プロトコル(P:Protocol)]と、TCP/UDP内の情報[ソースポート番号(SP:Source Port)、デスティネーションポート番号(DP:Destination Port)]とから予め計算されている。
【0019】
例えば、上記のIPヘッダ内の情報及びTCP/UDP内の情報は合計で104bitsであるが、この104bitsをハッシュ関数fによって16bitsに計算することで、ハッシュ計算後フローテーブル格納メモリ2を64K分に削減することが可能となる。
【0020】
図示せぬスケジューラは上述したフロー番号Fをキュー番号として、WFQ(Weighted Fair Queuing)を行う。ここで、WFQとは複数のキューがある場合、各キューに割当てられた帯域や優先度に応じてキューに重み付けを設定するとともに、パケットのサイズも考慮して、どのキューのパケットから送出するかを決定するキューイングアルゴリズムである。
【0021】
上述したハッシュ関数fの選び方としては、“Practical minimail perfect hash functions for large databases”[Edward A.FOX,Lenwood S.Heath,Qi Fan Chen and Amjad M.Daoud;Commun.ACM35,1(Jan.1992),Pages105−121]、“A faster algorithm for constructing minimal perfect hash functions”(Edward A.FOX,Qi Fan Chen and LenwoodS.Heath;Proceedings of the Fifteenth Annual International ACM SIGIR conference on Research and development in information retrieval,1992,Pages266−273)等に記載された方法がある。
【0022】
図3は図1のハッシュ計算後フローテーブル格納メモリ2のハッシュ関数fによるメモリ容量削減のイメージを示す図である。図3において、大規模なフローテーブル格納メモリ3(その内容については図6を参照)がハッシュ関数fによってハッシュ計算後フローテーブル格納メモリ2となり、そのメモリ容量を大幅に削減することができる。
【0023】
本発明の一実施例の利点としてはメモリ容量を大幅に削減することが可能となるため、CAM等の高価なデバイスや低速なソフト処理によらずにフロー検出を行うことができる。
【0024】
しかしながら、問題点として、登録されていないIPパケットのフロー検出時に、ハッシュ関数を計算した場合、本来割当てたいプライオリティ付けに当てはまらず、違うプライオリティに割当てられる可能性があるが、これについてはレアケースとしている。
【0025】
【発明の効果】
以上説明したように本発明によれば、いくつかのユニークな情報を共有する一連のパケットであるフローを検出する際に用いかつフロー各々に設定されたプライオリティを格納するフロー検出テーブルのフロー番号として、検出対象の全てのフローに対して互いに異なる値をとるようなハッシュ関数の計算値を使用することによって、メモリ容量を大幅に削減することができ、CAM等の高価なデバイスや低速なソフト処理によらずにフロー検出を行うことができるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例によるフロー検出装置の構成を示すブロック図である。
【図2】図1のハッシュ計算後フローテーブル格納メモリに登録されるハッシュ関数計算後のフロー検出テーブルの一例を示す図である。
【図3】図1のハッシュ計算後フローテーブル格納メモリのハッシュ関数fによるメモリ容量削減のイメージを示す図である。
【図4】従来のIPパケットネットワークの構成例を示すブロック図である。
【図5】従来のフロー検出装置の構成を示すブロック図である。
【図6】図5のフローテーブル格納メモリに登録されるフロー検出テーブルの一例を示す図である。
【符号の説明】
1 フロー検出装置
2 ハッシュ計算後フローテーブル格納メモリ
3 フローテーブル格納メモリ
11 ハッシュ関数処理部
21 ハッシュ関数計算後のフロー検出テーブル

Claims (8)

  1. IP(Internet Protocol)パケットのキャリアクラスのQoS(Quality of Service)保証を実現するために、いくつかのユニークな情報を共有する一連のパケットであるフローを検出するフロー検出装置であって、検出対象の全てのフローに対して互いに異なる値をとるようなハッシュ関数の計算値を計算するハッシュ関数処理手段と、前記ハッシュ関数の計算値を使用するフロー番号と前記フロー各々に設定されたプライオリティを格納するフロー検出テーブルを有し、前記フロー検出テーブルを参照してフロー検出を行うことを特徴とするフロー検出装置。
  2. 前記プライオリティは、前記IPパケットのQoS保証を示すことを特徴とする請求項1記載のフロー検出装置。
  3. 前記ハッシュ関数fの計算値は、IPヘッダ内の情報とTCP(Transmission Control Protocol)内の情報とから予め計算することを特徴とする請求項1または請求項2記載のフロー検出装置。
  4. 前記IPヘッダ内の情報は、少なくともソースアドレスとデスティネーションアドレスとプロトコルとからなり、
    前記TCP/UDP内の情報は、少なくともソースポート番号とデスティネーションポート番号とからなることを特徴とする請求項3記載のフロー検出装置。
  5. IP(Internet Protocol)パケットのキャリアクラスのQoS(Quality of Service)保証を実現するために、いくつかのユニークな情報を共有する一連のパケットであるフローを検出するフロー検出方法であって、検出対象の全てのフローに対して互いに異なる値をとるようなハッシュ関数の計算値を計算しておき、前記ハッシュ関数の計算値を使用するフロー番号と前記フロー各々に設定されたプライオリティを格納するフロー検出テーブルを参照してフロー検出を行うことを特徴とするフロー検出方法。
  6. 前記プライオリティは、前記IPパケットのQoS保証を示すことを特徴とする請求項5記載のフロー検出方法。
  7. 前記ハッシュ関数fの計算値は、IPヘッダ内の情報とTCP(Transmission Control Protocol)内の情報とから予め計算するようにしたことを特徴とする請求項5または請求項6記載のフロー検出方法。
  8. 前記IPヘッダ内の情報は、少なくともソースアドレスとデスティネーションアドレスとプロトコルとからなり、
    前記TCP/UDP内の情報は、少なくともソースポート番号とデスティネーションポート番号とからなることを特徴とする請求項7記載のフロー検出方法。
JP2001008372A 2001-01-17 2001-01-17 フロー検出装置及びそれに用いるフロー検出方法 Expired - Fee Related JP3584884B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001008372A JP3584884B2 (ja) 2001-01-17 2001-01-17 フロー検出装置及びそれに用いるフロー検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001008372A JP3584884B2 (ja) 2001-01-17 2001-01-17 フロー検出装置及びそれに用いるフロー検出方法

Publications (2)

Publication Number Publication Date
JP2002217967A JP2002217967A (ja) 2002-08-02
JP3584884B2 true JP3584884B2 (ja) 2004-11-04

Family

ID=18876003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001008372A Expired - Fee Related JP3584884B2 (ja) 2001-01-17 2001-01-17 フロー検出装置及びそれに用いるフロー検出方法

Country Status (1)

Country Link
JP (1) JP3584884B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1302645C (zh) * 2003-05-26 2007-02-28 华为技术有限公司 网络处理器系统端口捆绑中实现流量均担的方法
JP4068545B2 (ja) * 2003-10-24 2008-03-26 日本電信電話株式会社 パケット受信方法および装置
US9203728B2 (en) * 2011-03-09 2015-12-01 lxia Metadata capture for testing TCP connections
US8837483B2 (en) * 2011-04-11 2014-09-16 Alcatel Lucent Mapping private and public addresses

Also Published As

Publication number Publication date
JP2002217967A (ja) 2002-08-02

Similar Documents

Publication Publication Date Title
US9813339B2 (en) Filtering and route lookup in a switching device
US7953885B1 (en) Method and apparatus to apply aggregate access control list/quality of service features using a redirect cause
US8665892B2 (en) Method and system for adaptive queue and buffer control based on monitoring in a packet network switch
US8125904B2 (en) Method and system for adaptive queue and buffer control based on monitoring and active congestion avoidance in a packet network switch
US7133400B1 (en) System and method for filtering data
US7321591B2 (en) Methods and systems for providing differentiated quality of service in a communications system
US6650644B1 (en) Method and apparatus for quality of service translation
US6510509B1 (en) Method and apparatus for high-speed network rule processing
US8630294B1 (en) Dynamic bypass mechanism to alleviate bloom filter bank contention
US6868065B1 (en) Method and apparatus for implementing a quality of service policy in a data communications network
WO2006083965A2 (en) System and method for efficient traffic processing
US8854961B1 (en) Integrated circuit for network stress testing
US7418001B2 (en) Router for scheduling packet and method therefor
US7864776B2 (en) Method and equipment for making a routing decision dependent on a quality-of-service class
US6850513B1 (en) Table-based packet classification
JP2002124990A (ja) ポリシ実行スイッチ
US20070053290A1 (en) Packet attribute based prioritization
JP3584884B2 (ja) フロー検出装置及びそれに用いるフロー検出方法
KR20050049864A (ko) 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법
JP4340646B2 (ja) 通信処理回路、通信処理方法
US20040057433A1 (en) Methods and systems for prioritizing packets of data in a communications system
Ertemalp et al. Using dynamic buffer limiting to protect against belligerent flows in high-speed networks
US7573889B1 (en) Systems and methods for efficient buffering and metering of high-speed flows
Maki et al. Hierarchically aggregated fair queueing (HAFQ) for per-flow fair bandwidth allocation
EP1161851B1 (en) Method and apparatus for providing fair traffic scheduling among aggregated internet protocol flows

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040413

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040517

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: 20040713

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040726

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20070813

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20080813

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080813

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090813

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090813

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100813

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110813

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110813

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120813

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130813

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees