JP2006222821A - Packet transfer device - Google Patents
Packet transfer device Download PDFInfo
- Publication number
- JP2006222821A JP2006222821A JP2005035403A JP2005035403A JP2006222821A JP 2006222821 A JP2006222821 A JP 2006222821A JP 2005035403 A JP2005035403 A JP 2005035403A JP 2005035403 A JP2005035403 A JP 2005035403A JP 2006222821 A JP2006222821 A JP 2006222821A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- bandwidth
- user
- type
- packets
- 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.)
- Granted
Links
- 238000012546 transfer Methods 0.000 title claims description 31
- 230000005540 biological transmission Effects 0.000 claims description 12
- 238000000034 method Methods 0.000 abstract description 18
- 238000005498 polishing Methods 0.000 abstract 1
- 238000012544 monitoring process Methods 0.000 description 54
- 238000009825 accumulation Methods 0.000 description 36
- 239000008186 active pharmaceutical agent Substances 0.000 description 19
- 238000012545 processing Methods 0.000 description 17
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 12
- 230000008569 process Effects 0.000 description 7
- 229920000331 Polyhydroxybutyrate Polymers 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 239000003550 marker Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000007493 shaping process Methods 0.000 description 4
- 101710154778 Thymidylate synthase 1 Proteins 0.000 description 3
- 230000002411 adverse Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 239000012536 storage buffer Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、ネットワークに流入するパケットの流量を監視して、契約に適合しないパケットを廃棄するポリシング方法およびこれに基いたネットワーク監視方法およびパケット転送装置に関する。 The present invention relates to a policing method for monitoring a flow rate of a packet flowing into a network and discarding a packet that does not conform to a contract, and a network monitoring method and a packet transfer apparatus based on the policing method.
インターネットの普及に伴い、従来一般的であった通常のWeb閲覧のデータに加えて、VoIP(Voice over IP)、ストリーム転送をはじめとするリアルタイム系アプリケーションのデータや、ビジネス用途のミッションクリティカルデータ等の高い通信品質を要求するアプリケーションデータもIPネットワーク上で通信されるようになってきている。このため、IPネットワーク上で通信品質を制御する技術の一つとして、インターネット技術の標準化団体IETF(Internet Engineering Task Fore)においてDiffserv(Differentiated Services)が標準化されており(非特許文献1、2参照)、ネットワークを構成するルータ、スイッチ等のネットワークノードに広く実装されている。
Diffservを実装しているネットワークノード(DS-compliant node)では、アプリケーション毎の通信品質要求を満たすために各種のPHB(Per-Hop-Behavior)と呼ばれる転送処理を実行することができる。PHBの種別には、最低帯域を保証して低遅延の完全優先転送を提供するEF(Expedited Forwarding)、複数のクラスをもち、クラス毎に相対的な優先転送を提供するAF(Assured Forwarding)、そしてベストエフォートでの転送を提供するBE(Best Effort)がある。アプリケーション毎に適用するPHBとして例えば、低遅延を厳しく求められるVoIPにはEFを、VoIP以外で通信品質を要求するアプリケーションには、アプリケーション毎に求められる遅延および廃棄率特性に応じたクラスのAFを、そしてWeb閲覧のように通信品質の要求が高くないアプリケーションにはBEを適用することにより、アプリケーション毎の品質要求を満たすことができる。
上述の各種PHBを実現するため、DS-compliant nodeはDiffservの構成要素として規定されているClassifier、Meter、Marker、Dropper、Shaperを所持する(非特許文献2参照)。以上の構成要素から成るDiffservの機能ブロックの構成を、図1に示す。
図1に示した処理の流れに沿って、Diffservの機能ブロックにおけるパケット処理の流れを説明する。DS-compliant node108のDiffserv機能ブロック107に入力した入力パケットに対しては、まず各種PHBのうちいずれのPHBを適用すべきか判定することが必要である。入力パケット毎にいずれのPHBを適用すべきかという分類は、Diffservに基づいて共通のポリシーで運用されるネットワーク(DSドメイン)の管理者がパケットのヘッダ内容に対応して予め定義しておく必要があり、この分類定義はClassifierに登録される。この分類定義に従って、Classifier101にて入力パケットのヘッダ内容がいずれのPHBの分類定義に一致するか識別し、パケットの分類を行う。以下、Classifierにて入力パケットのヘッダ内容に基づいて分類されたパケットの各集合をフロー、フローに分類するための定義をフロー定義と呼ぶ。
Along with the spread of the Internet, in addition to the data of normal web browsing that has been common in the past, real-time application data such as VoIP (Voice over IP) and stream transfer, mission critical data for business use, etc. Application data that requires high communication quality is also being communicated over IP networks. For this reason, Diffserv (Differentiated Services) is standardized by the Internet Engineering Standards Organization IETF (Internet Engineering Task Fore) as one of the technologies for controlling communication quality on IP networks (see Non-Patent
In a network node (DS-compliant node) that implements Diffserv, various kinds of transfer processes called PHB (Per-Hop-Behavior) can be executed in order to satisfy the communication quality requirement for each application. The type of PHB includes EF (Expedited Forwarding) that guarantees minimum bandwidth and provides low-latency full priority forwarding, AF (Assured Forwarding) that has multiple classes and provides relative priority forwarding for each class, And there is BE (Best Effort) which provides the best effort transfer. For example, PHB to be applied for each application is EF for VoIP that requires strict low delay, and for applications that require communication quality other than VoIP, AF of a class corresponding to the delay and discard rate characteristics required for each application. By applying BE to applications that do not require high communication quality, such as Web browsing, quality requirements for each application can be met.
In order to realize the various PHBs described above, the DS-compliant node possesses Classifier, Meter, Marker, Dropper, and Shaper defined as Diffserv components (see Non-Patent Document 2). FIG. 1 shows the structure of a Diffserv functional block composed of the above components.
The flow of packet processing in the Diffserv functional block will be described along the flow of processing shown in FIG. For an input packet input to the Diffserv
次にMarker102では、Classifier101にて分類されたフロー毎に適用されるPHBに対応するDSCP(Differentiated Services Code Point)が与えられる。この処理をMarkingと呼ぶ。DSCPとはIPヘッダ中のType of Service(IPv6ではTraffic Class)の上位6bitであり、DSドメイン内でPHBを識別するために用いられる。各種PHBに推奨されるDSCPの値は各々、EFは非特許文献3、AFは非特許文献4、BEは非特許文献1で規定されている。
Next, in
DSドメインの管理者と、DSドメインを利用して通信を行うユーザとの間でトラフィックプロファイルを契約している場合には、Meter103にてユーザ毎のトラフィックの帯域、バースト量等の流量を計測し、各ユーザとの契約に適合している(in-profile)か、適合していないか(out-of-profile)を判定する。EFを適用されるパケットがout-of-profileとなった場合には、当該パケットはDropper104にて廃棄され、AFを適用されるパケットがout-of-profileとなった場合には、Marker102にて廃棄率のより高いクラスに再Markingされる。なお、以上のMeter103、Marker102、Dropper104を合わせて、Policer106と呼ばれる流量監視機構を構成する。Policer106において計測する流量と、out-of-profileとなった場合にDropper104にて廃棄するか否かの設定、およびout-of-profileとなっても廃棄しなかった場合に再MarkingされるDSCPの値に関する定義をPolicer定義と呼ぶ。
When a traffic profile is contracted between a DS domain administrator and a user who communicates using the DS domain, the
Diffserv機能ブロックの最終段に位置するShaper105では、Marker102により与えられたDSCPが指示するPHBに相当する転送処理を実行する。一般的にShaper105は、図2に示すようにパケットを蓄積する複数のキュー201-i(i=1〜6)と、複数のキュー201-iのうちいずれのキューからパケットを送信するかを判定するスケジューラ202から構成されており、EF用のキュー201-1とAF用のキュー201-2、201-3、201-4、201-5、BE用のキュー201-6は独立に所持している。複数のキューの間には送信制御に関する優先関係があり、EF用のキュー201-1として最優先キューを割り当てることにより、低遅延の完全優先転送を実現できる。BE用のキュー201-6には最低優先キューを割り当て、AFの各クラス用のキュー201-2、201-3、201-4、201-5には、各クラス間の優先関係に一致した順序で優先キューを割り当てることにより、各種のPHBに対応した転送処理を実現できる。
The Shaper 105 located at the last stage of the Diffserv function block executes a transfer process corresponding to the PHB indicated by the DSCP given by the
スケジューラ202は、最優先キューにパケットが蓄積されている限り最優先キューに蓄積されているパケットを最優先で送信すると判定するため、その間は他のキューからはパケットが送信されなくなってしまう。その結果、他のキューに蓄積されるパケットは遅延が増大したり、キュー長が増加してキューからパケットが溢れてしまうことにより廃棄が発生したりしてしまうといった悪影響を無制限に被ってしまう。この、EFトラフィックによる他のPHBへの無制限な悪影響を防止するためには、EFトラフィックの帯域を適当な値以下に制限することが必要であり、非特許文献3ではこの制限帯域と許容するバースト量の値をDSドメインの管理者が設定可能となっていなければならないと定められている。また、非特許文献3ではEFトラフィックに対して最低帯域を保証することも定められているので、制限帯域は最低帯域以上の値とする必要がある。
Since the
以下では、ユーザ毎にトラフィックプロファイルを契約しているDSドメインにおいて、最優先キューを割り当てられたEFとBEを適用されるフローを制御しようとする場合について考える。なおAFを適用されるフローが混在している場合にも、以下に示す課題は同様に発生する。 In the following, a case will be considered where control is performed for a flow to which EF and BE to which the highest priority queue is assigned is applied in a DS domain in which a traffic profile is contracted for each user. Even when flows to which AF is applied are mixed, the following problems similarly occur.
図3に示すように、n個のユーザ網302-1〜302-n に接続されたDSドメイン301での通信を考える。DSドメイン301はn個のユーザ網302-1〜302-nとの間で帯域とバースト量に関するトラフィックプロファイルを契約している。更に、各ユーザ網302-1〜302-nから送信されるトラフィックに対しては、アプリケーション毎に適用するPHBが予め定義されており、EFを適用されるパケットとBEを適用されるパケットの両方が送信され得るものとする。
各ユーザ網302-1〜302-nからの入力トラフィックは全て、DS-compliant nodeであるDSノード108-1に送信され、DSノード108-1内のDiffserv機能ブロック107にて帯域制御と、PHBに応じた転送処理が実行される。以下に、Diffserv機能ブロック107における処理の流れの概要を説明する。
DSノード108-1への全ての入力トラフィックに対してまず、Diffserv機能ブロック107内のClassifier101にてパケットの分類が行われる。例えば、IPヘッダ中の送信元のIPアドレスをチェックすることでパケットを送信したユーザを識別でき、更にトランスポート層のTCPヘッダ、あるいはUDPヘッダの送信元ポート番号をチェックすることで、アプリケーションを識別することができる。
Consider communication in the
All input traffic from each of the user networks 302-1 to 302-n is transmitted to the DS node 108-1, which is a DS-compliant node, and bandwidth control and PHB are performed by the Diffserv
For all input traffic to the DS node 108-1, the
Classifier101にて識別されたユーザ情報に基づいて、Policer106にてユーザ毎の流量監視を実行し、out-of-profileとなった場合にはDropper104にて当該パケットを廃棄する。廃棄されなかったパケットに対しては、Classifier101にて識別されたアプリケーション情報に基づいて、当該パケットに対し適用すべきPHBに対応するDSCPがMarker102にて与えられる。このDSCPに基づいて、当該パケットはShaper105で適用すべきPHBに割り当てられたキュー210-iに蓄積され、スケジューラ202による送信判定の結果、PHBに対応した適当な転送処理が実行される。
ここで、DSノード108-1に求められる帯域制御について述べる。DSノード108-1におけるPolicer106では、上述したようにユーザ間の帯域干渉を防止してユーザ毎に契約された帯域を提供するため、ユーザ毎のトラフィックの流量を監視し、これがユーザ毎の契約帯域を超過した場合には当該パケットをDropper104にて廃棄することにより帯域制限することが必要である。冒頭でも説明した通り、EF以外のPHBに対する無制限な悪影響を防止するために、EFトラフィックに対しても適当な制限帯域で帯域制限をかけることが必要である。特定のユーザによるEF用の最優先キューの占有を防止するためには、EFトラフィックに対する帯域制限はユーザ毎にも実行するのが望ましい。即ち、ユーザ毎のEFトラフィックの流量、即ちユーザ毎かつアプリケーション毎の流量を監視し、これを帯域制限することもまた、必要である。以上に述べたユーザ毎の帯域制限と、ユーザ毎かつアプリケーション毎の帯域制限を共に実現する上での課題について以下に説明する。
ユーザiのトラフィックの制限帯域をMi、ユーザiかつアプリケーションjのパケットとして構成されるユーザiのEFトラフィックの制限帯域をmi(Mi≧mi)とする。図4に示すように、Classifier101に「ユーザiかつアプリケーションj」というフロー定義401-1を登録して、これに対するPolicer定義402-1を「制限帯域miで帯域制限」と定義する。また、「ユーザi」というフロー定義401-2を登録して、これに対するPolicer定義402-2を「制限帯域Miで帯域制限」と定義する。なお、通常Classifierに登録されるフロー定義は図5のようなリストの形をとっており、登録された順序に従って上位のフロー定義1 501-1から順番にパケットのヘッダ内容と一致するか識別され、一致した時点で一致比較の処理を終了する。従って、リスト中にパケットのヘッダ内容と一致するフロー定義が複数ある場合でも、そのうち最上位に登録されているフロー定義のみ一致すると識別される。従って、図4の例では「ユーザiかつ、アプリケーションj以外」のフローだけがフロー定義401-2「ユーザi」に一致し、「ユーザiかつアプリケーションj」のフローはフロー定義401-2「ユーザi」には一致しないと識別される。従って、Policer定義402-2によってMiに帯域制限されるのは、「ユーザiかつ、アプリケーションj以外」のフローだけである。「ユーザiかつアプリケーションj」のフローは、Policer定義402-2によるMiの帯域制限を受けず、Policer定義402-1によるmiの帯域制限だけを受ける。「ユーザiかつ、アプリケーションj以外」のフローはMiに帯域制限され、「ユーザiかつアプリケーションj」のフローはmiに帯域制限されるので、これらのフローを合わせた「ユーザi」のフローとしての制限帯域はMi+miとなってしまい、本来の制限帯域であるMiを超過してしまうという課題がある。
Based on the user information identified by the
Here, the bandwidth control required for the DS node 108-1 will be described. The
The limited bandwidth of user i's traffic is M i , and the limited bandwidth of user i's EF traffic configured as a packet of user i and application j is m i (M i ≧ m i ). As shown in FIG. 4, to register the flow definition 401-1 "user i and Application j" in Classifier101, the Policer definition 402-1 to this is defined as "band-limited by band limit m i". Further, defined as register the flow definition 401-2 "user i", "band-limited by band limit M i" the Policer definition 402-2 to this. Note that the flow definition registered in the Classifier usually takes the form of a list as shown in Fig. 5, and it is identified whether it matches the packet header contents in order from the upper flow definition 1501-1 according to the registered order. The match comparison process is terminated at the time of matching. Therefore, even when there are a plurality of flow definitions that match the packet header content in the list, only the flow definition registered at the top is identified as matching. Therefore, in the example of FIG. 4, only the flow of “user i and application j” matches the flow definition 401-2 “user i”, and the flow of “user i and application j” is the flow definition 401-2 “user i”. i ”is identified as not matching. Therefore, what is band-limited to M i by Policer definition 402-2 is only flow of the "user i and non-application j". Flow of the "user i and Application j" is not subject to band limitation M i by Policer definition 402-2 receives only band limitation m i by Policer definition 402-1. "User i and non-application j" flow is band-limited to M i, the flow of "Since user i and Application j" flow is band-limited to m i, the sum of these flows "user i" The limited bandwidth becomes M i + m i , which exceeds the original limited bandwidth M i .
次に上述の課題を回避するため、図6に示すように「ユーザiかつ、アプリケーションj以外」のフローに対し適用される制限帯域から予め超過分のmiを差し引いて、Policer定義402-3「制限帯域Mi−miで帯域制限」と設定する方法について考える。この場合、「ユーザi」のフローとしての制限帯域をMi、「ユーザiかつアプリケーションj」のフローの制限帯域をmiとすることができる。しかしこの場合には、「ユーザiかつ、アプリケーションj以外」のフローの制限帯域がMi−miに抑えられてしまうので、「ユーザiかつアプリケーションj」のフローが通信されていない場合の「ユーザi」のフローとしても制限帯域Mi−miとなってしまう。従って、「ユーザiかつアプリケーションj」の未使用帯域を有効に活用することができず、DSドメイン301としてユーザiが契約した契約帯域を十分に提供することができないという課題がある。
For the next to avoid the above problem, "the user i and non-application j" as shown in FIG. 6 by subtracting the previously excess of m i from restrictions apply band to flow, Policer definition 402-3 Consider a method of setting “bandwidth limit with limited band M i −m i ”. In this case, it is possible to "user i" limited band M i as a flow, a restricted band of the flow of the "user i and Application j" m i. However, in this case, the limited bandwidth of the flow of “user i and other than application j” is limited to M i −m i , so that the flow of “user i and application j” is not communicated. The flow of the user “i” also becomes the limited bandwidth M i −m i . Therefore, there is a problem that the unused bandwidth of “user i and application j” cannot be used effectively, and the contract bandwidth contracted by user i as
上述の課題を解決するため本発明のポリシング方法では、あるフローのパケットの流量を制限する際に、当該フローのうち一部のフローだけの流量を更に制限することを特徴とする。更に、あるフローのパケットの流量である全帯域と、前記特定種類のパケットのうち一部のパケットのみの流量である一部帯域とを各々パケットの送信元であるユーザと契約されている場合に、
前記あるフローのパケットのうち一部のパケットが流入したときの全帯域が契約に適合しない場合であっても、一部帯域が契約に適合している場合には当該パケットを廃棄しないことを特徴とする。
In order to solve the above-described problem, the policing method of the present invention is characterized in that when the flow rate of a packet of a certain flow is limited, the flow rate of only a part of the flow is further limited. Further, when the entire bandwidth that is the flow rate of a packet of a certain flow and the partial bandwidth that is the flow rate of only some of the specific types of packets are contracted with the user who is the source of the packet, respectively. ,
Even if the entire bandwidth when a part of the packets of a certain flow flows does not conform to the contract, the packet is not discarded if the partial bandwidth conforms to the contract. And
[発明が解決しようとする課題]の欄において述べた、DSドメイン301内のDSノード108-1における帯域制御の問題が、本発明によっていかに解決されるかを以下に説明する。まず、図4に示されたClassifierとPolicerの関係は、図7のように変更される。図7では図4の制御に加えて、「制限帯域Miで帯域制限」というPolicer定義402-2を「ユーザiかつアプリケーションj」というフロー定義401-1と「ユーザi」というフロー定義401-2の両方に適用するため、フロー定義401-1に対してもPolicer定義402-2を適用することを示す矢印701が追加されている。図4の制御では、「ユーザiかつアプリケーションj」のフローはフロー定義401-2「ユーザi」には一致しないので、Policer定義402-2によってMiに帯域制限されるのは、「ユーザiかつ、アプリケーションj以外」のフローだけであった。しかし図7の制御では、「ユーザiかつアプリケーションj」のフローに対してもPolicer定義402-2が適用されるので、「ユーザi」のフロー全てがMiに帯域制限される。これによって、あるフローのパケットの流量を制限する際に、当該フローのうち一部のフローだけの流量を更に制限することが可能となる。
しかし、この制御だけでは「ユーザiかつアプリケーションj」のフローが過剰に帯域制限されてしまう問題があることを、次に説明する。
The following explains how the present invention solves the problem of bandwidth control in the DS node 108-1 in the
However, it will be described next that there is a problem that the bandwidth of “user i and application j” is excessively limited by this control alone.
図8に、DSノード108-1への入力帯域の例として、「ユーザiかつアプリケーションj以外」のフローの入力帯域801と、「ユーザiかつアプリケーションj」のフローの入力帯域802を示す。初め、「ユーザiかつアプリケーションj以外」のフローがPolicer定義402-2による制限帯域Miを超過する入力帯域801で入力し、その後時刻tからユーザiかつアプリケーションj」のフローがPolicer定義402-1による制限帯域miを満たす入力帯域802で入力する。「ユーザiかつアプリケーションj以外」のフローの入力帯域は、制限帯域Miを超過するのでPolicer定義402-2に不適合と判定され、図9に示すようにPolicer106による帯域制限後の「ユーザiかつアプリケーションj以外」のフローの帯域901は制限帯域Miに抑えられ、制限帯域Miを有効に使い切っている。このとき「ユーザiかつアプリケーションj」のパケットが入力すると、「ユーザiかつアプリケーションj」のパケットに対するPolicer定義402-1には適合であっても、「ユーザi」のパケットとしては制限帯域Miを既に使い切っているので、Policer定義402-2には不適合と判定されてしまう。図10に示すように、あるフローのパケットの流量である全帯域と、あるフローのパケットのうち一部のパケットのみの流量である一部帯域とのいずれかに不適合と判定されたパケットを廃棄する制御を行っている場合には、「ユーザiかつアプリケーションj」のパケットはPolicer定義402-1に適合しているにも関わらず廃棄されてしまう。その結果、「ユーザiかつアプリケーションj」のパケットは、当該フローに対する制限帯域以内の帯域で入力された場合であっても必ずしも制限帯域分の帯域を提供されずなくなってしまう。即ち、EFトラフィックを制限帯域以内で入力した場合であっても、必ずしも完全優先転送されず廃棄されてしまうので、EFトラフィックとしての最低帯域も必ずしも保証できなくなってしまう。
FIG. 8 shows an
非特許文献3では、EFトラフィックとしての最低帯域を保証することが定められている。EFトラフィックが制限帯域内で入力した場合にはこれを廃棄せず必ず完全優先転送するものとすれば、EFトラフィックの制限帯域分を固定的な帯域として割り当てることができるので、最低帯域を保証することも可能となる。そのためには図11に示すように、あるフローのパケットのうち一部のパケットのみの流量である一部帯域に適合と判定されたパケットに対しては、あるフローのパケットの流量である全帯域に不適合と判定された場合であっても当該パケットを廃棄しない制御が必要となる。この制御により、上述の「ユーザiかつアプリケーションj」のパケットは、当該フローに対する制限帯域以内の帯域で入力された場合であれば必ず制限帯域分の帯域を提供される。即ち、EFトラフィックを制限帯域以内で入力した場合には、廃棄されず必ず完全優先転送されるので、EFトラフィックとしての最低帯域を保証することができる。
なお上述の制御では、あるフローの全帯域に不適合と判定された場合であっても当該パケットを廃棄しない場合があるため、この制御だけでは当該フローの全帯域に対する制限帯域を定常的に超過してしまう。この問題を回避するため、全帯域に不適合と判定されたが一部帯域には適合と判定されて廃棄されなかったパケットが使用した分の、全帯域に対する超過帯域を管理する。そして、後続の到着パケットに対してこの超過帯域分を解消するように帯域制限の処理を制御する必要がある。パケットが到着する度に、前回パケットが到着してからの経過時間を考慮した上でこの超過帯域を再計算する。再計算された超過帯域が正の値である場合は、全帯域に対する超過帯域分がまだ解消されていない。そこで、超過帯域が正の値である場合に到着したパケットに対して、一部帯域が契約されておりかつこれに適合している場合を除き、到着パケットを廃棄する。これにより、全帯域から超過帯域を差し引きした帯域値で帯域制限がなされる。その結果、一部帯域を保証すると共に超過帯域を解消して、全帯域に対する制限帯域を定常的に超過することのないように制御できる。Policer106内のMeter103における本制御の詳細な実施例は、「発明を実施するための最良の形態」の欄にて説明する。
In the above-described control, even if it is determined that the packet does not conform to the entire bandwidth of a certain flow, the packet may not be discarded. End up. In order to avoid this problem, the excess bandwidth for the entire bandwidth is managed by the amount of use of a packet that was determined to be incompatible with the entire bandwidth but was determined to be incompatible with some bandwidth and was not discarded. Then, it is necessary to control the bandwidth limiting process so as to eliminate the excess bandwidth for subsequent arrival packets. Each time a packet arrives, this excess bandwidth is recalculated taking into account the time elapsed since the previous packet arrived. If the recalculated excess bandwidth is a positive value, the excess bandwidth for the entire bandwidth has not yet been resolved. Therefore, the received packet is discarded unless a part of the bandwidth is contracted and conforms to the packet that arrives when the excess bandwidth is a positive value. As a result, the bandwidth is limited by the bandwidth value obtained by subtracting the excess bandwidth from the entire bandwidth. As a result, it is possible to guarantee that a part of the band is guaranteed and the excess band is eliminated, so that the limit band for the entire band is not constantly exceeded. A detailed example of this control in the
図8に示されたDSノード108-1への入力帯域に対して本制御を実施した際の、Policer106による帯域制限後の「ユーザiかつアプリケーションj以外」のフローの帯域1201と、「ユーザiかつアプリケーションj」のフローの帯域1202の時間変化を、図12に示す。時刻tから「ユーザiかつアプリケーションj」のフローが制限帯域miを満たす入力帯域802で入力し始めると、本制御を実施するPolicer106は「ユーザiかつアプリケーションj」のパケットを全て適合と判定して転送する。この結果、「ユーザiかつアプリケーションj」のフローが使用する帯域が帯域1202である。一方この間、「ユーザiかつアプリケーションj以外」のフローは、Mi−帯域1202の帯域1201に帯域制限される。最終的に帯域1202がmiで帯域制限されるようになると、Mi−miが「ユーザiかつアプリケーションj以外」のフローが使用する帯域1201となり、「ユーザi」のフローとしては帯域1201と帯域1202合わせてMiに帯域制限される。
When this control is performed on the input band to the DS node 108-1 shown in FIG. 8, the
ネットワークに流入するパケットの流量を制限するポリシングにおいて、特定種類のパケットの流量を制限する際に、前記特定種類のパケットのうち一部のパケットのみの流量を更に制限することができる。
更に特定種類のパケットの流量である全帯域と、前記特定種類のパケットのうち一部のパケットのみの流量である一部帯域とを各々パケットの送信元であるユーザと契約されている場合に、前記特定種類のパケットのうち一部のパケットが流入したときの全帯域が契約に適合しない場合であっても、一部帯域が契約に適合している場合には当該パケットを廃棄しないことにより、一部帯域を最低帯域として保証することができる。
ポリシングによるネットワーク監視方法では、シェーピングのようにパケットを遅延させるのではなく、廃棄することによってパケットの使用する帯域が契約に適合するよう制御する。従って、パケットを遅延させるためのキューを構成するメモリ資源を必要としないため、前述の帯域制御をシェーピングによって実現しようとする場合と比較すると、本発明のポリシング方法の方がより低コストに実現することができる。
また、シェーピングではキューにおける遅延時間の計算や、パケットを送信するキューの選択を実行するスケジューリングが処理を高速化する上でのネックとなる。従って、前述の帯域制御をシェーピングによって実現しようとする場合と比較すると、本発明のポリシング方法の方が処理をより高速化することができ、高速回線に適用する上で有利である。
In policing for limiting the flow rate of packets flowing into the network, when limiting the flow rate of a specific type of packet, it is possible to further limit the flow rate of only a part of the specific type of packet.
Furthermore, when the user who is the transmission source of each packet contracts the entire bandwidth that is the flow rate of the specific type packet and the partial bandwidth that is the flow rate of only some of the specific type packets, Even if the entire bandwidth when some of the specific types of packets flow in does not conform to the contract, if the partial bandwidth conforms to the contract, by not discarding the packet, A partial band can be guaranteed as the minimum band.
In the network monitoring method based on policing, the bandwidth used by the packet is controlled so as to conform to the contract by discarding rather than delaying the packet as in shaping. Therefore, since the memory resource that constitutes the queue for delaying the packet is not required, the policing method of the present invention can be realized at a lower cost than the case where the above-described bandwidth control is realized by shaping. be able to.
In addition, in shaping, scheduling for calculating a delay time in a queue and selecting a queue for transmitting a packet becomes a bottleneck in speeding up the processing. Therefore, the policing method according to the present invention can speed up the processing compared with the case where the above-described bandwidth control is realized by shaping, and is advantageous in applying to a high-speed line.
本発明のポリシング方法において、前記特定種類のパケットの例としてこれをユーザ毎のパケットとし、前記特定種類のパケットのうち一部のパケットの例としてこれをネットワーク内のパケット中継装置における最優先キューに蓄積されるパケット、あるいはネットワーク内で最優先に転送されるパケットとすることによってユーザ毎のパケットの流量を制限する際に、ユーザ毎のパケットのうち最優先に処理されるパケットの流量を更に制限することができる。また、ユーザ毎のパケットのうち最優先に処理されるパケットに契約された一部帯域を最低帯域として保証することができる。また、ユーザ毎のパケットのうち最優先に処理されるパケットが流れていない場合には、ユーザ毎のパケットのうち最優先に処理されるパケット以外のパケットがユーザ毎のパケットに契約された全帯域を有効に使い切ることができる。 In the policing method of the present invention, this is a packet for each user as an example of the specific type of packet, and this is used as a top priority queue in a packet relay apparatus in the network as an example of a part of the specific type of packet. When limiting the flow rate of packets for each user by setting the packets to be accumulated or transferred with the highest priority in the network, the flow rate of packets processed with the highest priority among the packets for each user is further limited. can do. In addition, it is possible to guarantee a partial bandwidth contracted with a packet to be processed with the highest priority among the packets for each user as the lowest bandwidth. In addition, in the case where a packet that is processed with the highest priority among the packets for each user does not flow, the entire bandwidth in which packets other than the packet that is processed with the highest priority among the packets for each user are contracted with the packets for each user. Can be used up effectively.
また、前記特定種類のパケットの他の例としてこれをユーザ毎のパケットとし、前記特定種類のパケットのうち一部のパケットの例としてこれをDiffservにおけるEF-PHBを適用されるパケットとする。この場合には、ユーザ毎のパケットの流量を制限する際に、ユーザ毎のパケットのうちEFを適用されるパケットの流量を更に制限することができる。また、ユーザ毎のパケットのうちEFを適用されるパケットに契約された一部帯域を最低帯域として保証することができる。また、ユーザ毎のパケットのうちEFを適用されるパケットが流れていない場合には、ユーザ毎のパケットのうちEFを適用されないパケットがユーザ毎のパケットに契約された全帯域を有効に使い切ることができる。 Further, as another example of the specific type of packet, this is a packet for each user, and as an example of a part of the specific type of packet, this is a packet to which EF-PHB in Diffserv is applied. In this case, when the flow rate of packets for each user is limited, the flow rate of packets to which EF is applied among the packets for each user can be further limited. In addition, it is possible to guarantee a partial bandwidth contracted to a packet to which EF is applied among packets for each user as a minimum bandwidth. In addition, if packets that apply EF out of packets for each user do not flow, packets that do not apply for EF among packets for each user can effectively use the entire bandwidth contracted for packets for each user. it can.
また、前記特定種類のパケットの他の例として、前記特定種類のパケットのうち一部のパケットが、ネットワーク内の輻輳状態に応じて送信するパケットの流量を制御する輻輳制御を伴わずに送信されるパケットであり、その他の前記特定種類のパケットが輻輳制御を伴って送信されるパケットである場合には、ユーザ毎のパケットの流量を制限する際に、輻輳制御を伴わないパケットの流量を更に制限することによって、輻輳制御を伴って送信されるパケットの流量が輻輳制御を伴わないパケットの流量によって無制限に制限されてしまうことを防止できる。 As another example of the specific type packet, some of the specific type packets are transmitted without congestion control for controlling the flow rate of packets to be transmitted according to the congestion state in the network. And when the other specific type packet is a packet transmitted with congestion control, the flow rate of the packet without congestion control is further increased when the flow rate of the packet for each user is limited. By limiting, it is possible to prevent the flow rate of packets transmitted with congestion control from being unlimitedly limited by the flow rate of packets not involving congestion control.
また、前記特定種類のパケットの他の例として、トランスポート層のプロトコルにUDPまたはTCPを用いて通信しているユーザ毎のパケットを考え、前記特定種類のパケットのうち一部のパケットの例としてこれをトランスポート層のプロトコルがUDPであるUDPパケットとする。この場合には、ユーザ毎のパケットの流量を制限する際に、ユーザ毎のパケットのうちUDPパケットの流量を更に制限することができる。また、ユーザ毎のパケットのうちUDPパケットに契約された一部帯域を最低帯域として保証することができる。また、ユーザ毎のパケットのうちUDPパケットが流れていない場合には、ユーザ毎のパケットのうちトランスポート層のプロトコルがTCPであるTCPパケットがユーザ毎のパケットに契約された全帯域を有効に使い切ることができる。 Further, as another example of the specific type packet, a packet for each user communicating using UDP or TCP as a transport layer protocol is considered, and as an example of a part of the specific type packet, This is a UDP packet whose transport layer protocol is UDP. In this case, when the flow rate of packets for each user is restricted, the flow rate of UDP packets among the packets for each user can be further restricted. Further, it is possible to guarantee a partial bandwidth contracted with the UDP packet among the packets for each user as the minimum bandwidth. In addition, when no UDP packet flows among the packets for each user, the TCP packet whose transport layer protocol is TCP among the packets for each user effectively uses the entire bandwidth contracted for the packet for each user. be able to.
まず、本発明を適用したパケット転送装置の構成概要を、図13を用いて説明する。パケット転送装置600は、パケットが入力するN個の入力回線610-i(i=1〜N)と、パケットの受信処理を行なうパケット受信回路620-iと、ルーティング処理部630と、パケットをスイッチングするパケット中継処理手段640と、出力回線毎の帯域監視部650-j(j=1〜M)と、廃棄制御部660-jと、送信処理を行なうパケット送信回路670-jと、パケットが出力されるN個の出力回線680-jから構成される。
First, a configuration outline of a packet transfer apparatus to which the present invention is applied will be described with reference to FIG. The packet transfer apparatus 600 switches N packets, N input lines 610-i (i = 1 to N) to which packets are input, a packet reception circuit 620-i that performs packet reception processing, and a
図14は、本発明が想定するネットワークにおけるパケットのフォーマットの一例を示す。パケットはヘッダ部710とデータ部720から構成される。ヘッダ部710は送信元IPアドレス(Source IP address:以下「SIP」と称する。)711と、宛先IPアドレス(Destination IP address:以下「DIP」と称する。)712と、送信元ポート(Source PORT:以下「SPORT」と称する。)713と、宛先ポート(Destination PORT:以下「DPORT」と称する。)714とから構成される。また、データ部720はユーザデータ721から構成される。ヘッダ部710には、前記情報以外にも生存時間(TTL:Time to Live)等の情報も格納されているが、前記情報と同様に後述の処理を実行できる。 FIG. 14 shows an example of a packet format in the network assumed by the present invention. The packet includes a header part 710 and a data part 720. The header portion 710 includes a source IP address (Source IP address: hereinafter referred to as “SIP”) 711, a destination IP address (Destination IP address: hereinafter referred to as “DIP”) 712, and a source port (Source PORT: Hereinafter, it is comprised of a destination port (Destination Port: hereinafter referred to as “DPORT”) 714. The data portion 720 includes user data 721. In addition to the above information, information such as time to live (TTL) is also stored in the header section 710, but the processing described below can be executed in the same manner as the above information.
図15は、本発明を適用したパケット転送装置600内部におけるパケットのフォーマットの一例を示す。パケット転送装置600内部のパケットのフォーマットには、IPネットワークのパケットのフォーマットに内部ヘッダ810が加わる。内部ヘッダ810はパケットが入力した回線の識別子である入力回線番号811と、パケットが出力される回線の識別子である出力回線番号812と、パケットのバイト長を表すパケット長813と、帯域監視の結果指示された廃棄制御部660-jにおけるパケット蓄積FIFO665-jに対する蓄積・廃棄を指示する蓄積廃棄指示814と、パケット蓄積FIFO665-jに対するキューイング優先度815とから構成される。 FIG. 15 shows an example of a packet format inside the packet transfer apparatus 600 to which the present invention is applied. The internal header 810 is added to the format of the packet in the packet transfer apparatus 600 in addition to the packet format of the IP network. The internal header 810 includes an input line number 811 that is an identifier of a line to which a packet is input, an output line number 812 that is an identifier of a line to which the packet is output, a packet length 813 that indicates the byte length of the packet, and a result of bandwidth monitoring The instructed discard control unit 660-j includes an accumulation / discard instruction 814 for instructing accumulation / discard for the packet accumulation FIFO 665-j, and a queuing priority 815 for the packet accumulation FIFO 665-j.
次に、本発明を適用したパケット転送装置の動作概要を、図13を用いて説明する。パケット転送装置600の入力回線610-iからパケットが入力すると、パケット受信回路620-iは内部ヘッダ810を付加し、パケットのバイト長を計算した上でパケット長813(単位はByte)に書き込む。更に、パケットが入力した入力回線610-iを入力回線番号811に書き込み、ルーティング処理部630へパケットを送信する。尚、この時点では出力回線番号812は無意味な値となっている。ルーティング処理部630は、パケットを受信するとDIP712
に基づいてパケットを出力する回線680-jを判定し、出力回線680-jの回線番号jを出力回線番号812に書き込みパケット中継処理手段640に送信する。パケット中継処理手段640は出力回線番号812に従ってパケットをスイッチングし、出力回線毎の帯域監視部650-jに送信する。
帯域監視部650-jは、SIP711に基づいてパケットの属するユーザを検出し、更にSPORT713またはDPORT714に基づいてアプリケーション種別を検出し、各アプリケーション毎の帯域監視と各ユーザの帯域監視を行ない、アプリケーション毎に契約された最低帯域を必ず保証すると共に、更にアプリケーション毎の帯域制限とユーザ毎の帯域制限を行う。この帯域監視部650-jの詳細動作については後述する。帯域監視されたパケットに対して、帯域監視の結果指示された図16の廃棄制御部660-jにおけるパケット蓄積FIFO665-jに対する蓄積・廃棄の指示を蓄積廃棄指示814に、パケット蓄積FIFO665-jに対するキューイング優先度をキューイング優先度815に書き込み、廃棄制御部660-jに送信する。
廃棄制御部660-jに送信されたパケットは、一旦一時蓄積バッファ662-jに蓄積される。帯域監視部650-jから送信されたパケットの蓄積廃棄指示814に基づき、「廃棄」と指示された場合には、一時蓄積バッファ662-jからパケット蓄積FIFO665-jにパケットを送信しない。そして、「廃棄」と判定されたパケットの次に廃棄制御部660-jに到着したパケットの情報を上書きする。「蓄積」と指示された場合には、キューイング優先度毎閾値蓄積手段661-jからキューイング優先度815に対するパケット蓄積FIFO665-jの閾値を参照して、この閾値とFIFOカウンタ664-jの値を比較する。この閾値がFIFOカウンタ664-jより大きい場合には、「蓄積」と判定してパケットをパケット蓄積FIFO665-jに送信すると共に、FIFOカウンタ664-jの値に1加算する。閾値がFIFOカウンタ664-j以下の場合には、「廃棄」と判定してパケットをパケット蓄積FIFO665-jに送信せず、FIFOカウンタ664-jの値に加算しない。そして、「廃棄」と判定されたパケットの次に廃棄制御部660-jに到着したパケットの情報を上書きする。
パケット出力制御部666-jはパケット蓄積FIFO665-jに蓄積した順番に回線帯域でパケットを送信するようにパケット送信起動信号667-jを送信し、この信号を受信したパケット蓄積FIFO665-jはパケット送信回路670-jへパケットを送信する。また、FIFOカウンタ665-jは前記パケット送信起動信号667-jを受信するとFIFOカウンタ665-jから1減算する。本発明では、パケット出力制御部666-jは回線帯域でパケットを送信するようにパケット送信起動信号667-jを送信するが、ネットワーク運用者によって設定された回線帯域以下の帯域(例えば、回線帯域の半分)で送信しても良い。パケット送信回路670-jへ送信されたパケットは、内部ヘッダ810を外されて出力回線680-jへ送信される。
Next, an outline of the operation of the packet transfer apparatus to which the present invention is applied will be described with reference to FIG. When a packet is input from the input line 610-i of the packet transfer apparatus 600, the packet receiving circuit 620-i adds an internal header 810, calculates the byte length of the packet, and writes the packet length 813 (unit is Byte). Further, the input line 610-i to which the packet is input is written in the input line number 811 and the packet is transmitted to the
The line 680-j that outputs the packet is determined based on the above, and the line number j of the output line 680-j is written to the output line number 812 and transmitted to the packet relay processing means 640. The packet
Bandwidth monitoring unit 650-j detects the user to which the packet belongs based on SIP 711, further detects the application type based on SPORT713 or DPORT714, performs bandwidth monitoring for each application and bandwidth monitoring for each user, In addition to guaranteeing the minimum bandwidth contracted to, the bandwidth limitation for each application and the bandwidth limitation for each user are further performed. Detailed operation of the bandwidth monitoring unit 650-j will be described later. For the packet whose bandwidth has been monitored, the storage / discard instruction 814 for the packet storage FIFO 665-j in the discard control unit 660-j in FIG. The queuing priority is written into the queuing priority 815 and transmitted to the discard control unit 660-j.
The packet transmitted to the discard control unit 660-j is temporarily stored in the temporary storage buffer 662-j. When “discard” is instructed based on the packet storage / discard instruction 814 transmitted from the bandwidth monitoring unit 650-j, the packet is not transmitted from the temporary storage buffer 662-j to the packet storage FIFO 665-j. Then, the information of the packet that has arrived at the discard control unit 660-j after the packet determined to be “discard” is overwritten. When “accumulation” is instructed, the threshold accumulation unit 661-j for each queuing priority refers to the threshold of the packet accumulation FIFO 665-j for the queuing priority 815, and this threshold and the FIFO counter 664-j Compare values. When this threshold value is larger than the FIFO counter 664-j, it is determined as “accumulation” and the packet is transmitted to the packet accumulation FIFO 665-j, and 1 is added to the value of the FIFO counter 664-j. When the threshold value is equal to or smaller than the FIFO counter 664-j, it is determined as “discard” and the packet is not transmitted to the packet accumulation FIFO 665-j and is not added to the value of the FIFO counter 664-j. Then, the information of the packet that has arrived at the discard control unit 660-j after the packet determined to be “discard” is overwritten.
The packet output control unit 666-j transmits a packet transmission start signal 667-j so that the packets are transmitted in the line bandwidth in the order stored in the packet storage FIFO 665-j. The packet is transmitted to the transmission circuit 670-j. When receiving the packet transmission activation signal 667-j, the FIFO counter 665-j subtracts 1 from the FIFO counter 665-j. In the present invention, the packet output control unit 666-j transmits the packet transmission activation signal 667-j so as to transmit the packet in the line bandwidth. However, the packet output control unit 666-j transmits a packet below the line bandwidth set by the network operator (for example, the line bandwidth Half of the above). The packet transmitted to the packet transmission circuit 670-j is removed from the internal header 810 and transmitted to the output line 680-j.
次に、帯域監視部650-jの詳細動作について説明する。帯域監視アルゴリズムとしてリーキーバケットアルゴリズムを、IPの可変長パケットに拡張した帯域監視アルゴリズムを使用する。リーキーバケットアルゴリズムはある深さを持った穴の空いた漏れバケツのモデルで、バケツに水が入っている間は監視帯域で水は漏れ続け、パケット入力時にはこのパケットのバイト長分の水が注ぎ込まれる。パケットの到着揺らぎを許容するためにバケツに深さを持ち、バケツが溢れないうちは入力パケットは遵守と、溢れると違反と判定される。 Next, a detailed operation of the bandwidth monitoring unit 650-j will be described. As a bandwidth monitoring algorithm, a bandwidth monitoring algorithm that extends the leaky bucket algorithm to IP variable-length packets is used. The leaky bucket algorithm is a model of a leaky bucket with a hole with a certain depth, and water continues to leak in the monitoring band while water is in the bucket, and when the packet is input, water for the byte length of this packet is poured It is. The bucket has a depth to allow the arrival fluctuation of the packet, and it is determined that the input packet is compliant and the packet is violated as long as the bucket does not overflow.
図17に帯域監視部650-jのブロック図を示す。帯域監視部650-jは、フロー検出部と、フロー毎帯域監視テーブル制御部と、フロー毎バケツ蓄積量判定部と、フロー毎帯域監視結果判定部と、フローグループ検出部と、フローグループ帯域監視テーブル制御部と、フローグループバケツ蓄積量判定部と、フローグループ帯域監視結果判定部と、監視結果総合判定部とから構成される。フロー毎帯域監視テーブルのフォーマットを図18に、フローグループ帯域監視テーブルのフォーマットを図19に示す。11-1〜11-6は各々、ユーザAのサービスA1からユーザBのサービスB3に対応するサービス毎帯域監視エントリ、12-1はユーザ、12-2はユーザBのユーザ帯域監視エントリである。THRはバケツの深さ、POLRは監視帯域、TSは前回パケット到着時刻、CNTはバケツに蓄積されている水量を示すバケツ蓄積量、TOSCは遵守時のサービス識別子、QCは遵守時のキューイング優先度、DROPは違反時の「廃棄」または「蓄積」の指示を示す。フロー検出部はフロー毎帯域監視をするためにパケットヘッダ内の情報のうちSIP711によりフロー識別子を判定する。フロー毎帯域監視テーブル制御部は、前記フロー識別子に対応するフロー毎帯域監視エントリを参照し、帯域監視に必要なTHR、POLR、TS、CNT、TOSC、QC、DROPのパラメタを読み出して、各々THR蓄積手段、POLR蓄積手段、TS蓄積手段、CNT蓄積手段、TOSC蓄積手段、QC蓄積手段、DROP蓄積手段に蓄積する。以下では、フローがサービスA1のパケットであり、フローグループがユーザAのパケットである場合を説明する。 FIG. 17 shows a block diagram of the bandwidth monitoring unit 650-j. The bandwidth monitoring unit 650-j includes a flow detection unit, a per-flow bandwidth monitoring table control unit, a per-bucket accumulation amount determination unit, a per-flow bandwidth monitoring result determination unit, a flow group detection unit, and a flow group bandwidth monitoring. A table control unit, a flow group bucket accumulation amount determination unit, a flow group bandwidth monitoring result determination unit, and a monitoring result comprehensive determination unit are configured. The format of the bandwidth monitoring table for each flow is shown in FIG. 18, and the format of the flow group bandwidth monitoring table is shown in FIG. Reference numerals 11-1 to 11-6 are bandwidth monitoring entries for each service corresponding to the service A1 to the service B3 of the user A, 12-1 is a user, and 12-2 is a user bandwidth monitoring entry of the user B. THR is the bucket depth, POLR is the monitoring bandwidth, TS is the previous packet arrival time, CNT is the amount of water stored in the bucket, TOSC is the service identifier for compliance, QC is the queuing priority for compliance DROP indicates “discard” or “accumulate” instructions at the time of violation. The flow detection unit determines a flow identifier based on SIP 711 in the information in the packet header in order to monitor the bandwidth for each flow. The per-flow bandwidth monitoring table control unit reads the THR, POLR, TS, CNT, TOSC, QC, and DROP parameters necessary for bandwidth monitoring by referring to the per-flow bandwidth monitoring entry corresponding to the flow identifier, and each THR Accumulation means, POLR accumulation means, TS accumulation means, CNT accumulation means, TOSC accumulation means, QC accumulation means, DROP accumulation means. Hereinafter, a case where the flow is a packet of service A1 and the flow group is a packet of user A will be described.
フロー毎バケツ蓄積量判定部では、パケット入力直前のバケツの水量を判定する。まず、バケツ蓄積量判定回路は現時刻をカウントするタイマーの値とTS蓄積手段のTS-A1との差分を計算し、バケツに水が前回蓄積されてから経過した経過時間を計算する。次に経過時間にPOLR蓄積手段内のPOLR-A1を乗じて、バケツに水が前回蓄積されてから漏れた水の量を計算する。更に、CNT蓄積手段内のCNT-A1からバケツ内水量減少量を減算して、パケットが入力する直前の水量であるバケツ蓄積量を判定する。前記バケツ蓄積量の正負を判定し、判定結果が負の場合にはバケツ蓄積量を0に修正する。
フロー毎監視結果判定部の監視結果判定回路は、入力パケットのパケット長に相当する水がバケツに入るか否かを判定する。まず、前記のバケツ蓄積量にパケット長を加算して、これをTHR蓄積手段内のTHR-A1と大小比較する。バケツ蓄積量+パケット長がTHR-A1よりも大なるときは、パケット長に相当する水を入力した場合にバケツが溢れてしまうので、入力パケットを違反パケットと判定して、この判定結果を監視結果総合判定部に送信する。バケツ蓄積量+パケット長がTHR-A1以下のときは入力パケットを遵守パケットと判定し、この判定結果を監視結果総合判定部に送信する。
フローグループバケツ蓄積量判定部でも、フローグループ帯域監視テーブルから同様にして読み出したパラメタに対し同様の処理を繰り返し、判定結果を監視結果総合判定部に送信する。
監視結果総合判定部では、フロー毎の判定結果とフローグループ毎の判定結果に基づいて、このパケットに対する蓄積廃棄指示814、キューイング優先度815、サービス識別子713を判定して、これらを廃棄制御部660-jに送信する。サービス毎の判定結果が「遵守」のパケットに対しては、蓄積指示となりTOSC-A1、QC-A1を廃棄制御部660-jに送信する。「違反」の場合は廃棄される。
更に、フロー毎帯域監視の判定結果が「遵守」であった場合、バケツ蓄積量+パケット長を新たなバケツ蓄積量CNT-A1として、現時刻のタイマーの値を新たなTS-A1としてフロー毎帯域監視テーブル制御部に送信し、次の入力パケットに対してフロー毎帯域監視テーブルを読み出す前にユーザA1のフロー毎帯域監視エントリに書き込む。同様に、フローグループ帯域監視の判定結果が「遵守」であった場合にも新たなCNT-A、TS-Aをフローグループ帯域監視テーブルに書き込む。更に、フローグループ帯域監視の判定結果が「違反」であった場合にも、フロー毎帯域監視結果が「遵守」であれば、新たなCNT-A、TS-Aを超過帯域分を示す超過帯域情報としてフローグループ帯域監視テーブルに書き込む。
The per-flow bucket accumulation amount determination unit determines the amount of water in the bucket immediately before packet input. First, the bucket accumulation amount determination circuit calculates the difference between the value of the timer that counts the current time and TS-A1 of the TS accumulation means, and calculates the elapsed time that has elapsed since the previous accumulation of water in the bucket. Next, multiply the elapsed time by POLR-A1 in the POLR accumulator to calculate the amount of water that has leaked since the previous accumulation of water in the bucket. Further, the bucket water amount decrease amount is subtracted from the CNT-A1 in the CNT accumulation means to determine the bucket accumulation amount which is the amount of water just before the packet is input. Whether the bucket accumulation amount is positive or negative is determined. If the determination result is negative, the bucket accumulation amount is corrected to zero.
The monitoring result determination circuit of the monitoring result determination unit for each flow determines whether or not water corresponding to the packet length of the input packet enters the bucket. First, the packet length is added to the bucket accumulation amount, and this is compared with the THR-A1 in the THR accumulation means. When the amount of accumulated bucket + packet length is longer than THR-A1, the bucket overflows when water equivalent to the packet length is input, so the input packet is judged as a violation packet and the result of this judgment is monitored. It transmits to a result comprehensive determination part. When the bucket accumulation amount + packet length is equal to or less than THR-A1, the input packet is determined as a compliant packet, and the determination result is transmitted to the monitoring result comprehensive determination unit.
The flow group bucket accumulation amount determination unit also repeats the same processing for parameters read in the same manner from the flow group bandwidth monitoring table, and transmits the determination result to the monitoring result comprehensive determination unit.
Based on the determination result for each flow and the determination result for each flow group, the monitoring result comprehensive determination unit determines an accumulation discard instruction 814, a queuing priority 815, and a
Furthermore, if the judgment result of bandwidth monitoring for each flow is “Compliance”, the bucket accumulation amount + packet length is set as the new bucket accumulation amount CNT-A1, and the current timer value is set as the new TS-A1 for each flow. The data is transmitted to the bandwidth monitoring table control unit and written in the bandwidth monitoring entry for each user A1 before reading the bandwidth monitoring table for each next input packet. Similarly, when the determination result of the flow group bandwidth monitoring is “Compliance”, new CNT-A and TS-A are written in the flow group bandwidth monitoring table. Furthermore, even if the judgment result of the flow group bandwidth monitoring is “Violation”, if the bandwidth monitoring result for each flow is “Compliance”, the new CNT-A and TS-A indicate the excess bandwidth indicating the excess bandwidth. Information is written in the flow group bandwidth monitoring table.
図20に帯域監視アルゴリズムのフローチャートを示す。13の処理、即ちフロー毎帯域監視判定結果が「遵守」であった場合に、新たなCNT-A、TS-Aを超過帯域分を示す超過帯域情報としてフローグループ帯域監視テーブルに書き込む。
以上説明した本発明により、ネットワークに流入するパケットの流量を制限するポリシングにおいて、特定種類のパケットの流量を制限する際に、前記特定種類のパケットのうち一部のパケットのみの流量を更に制限することができる。
更に特定種類のパケットの流量である全帯域と、前記特定種類のパケットのうち一部のパケットのみの流量である一部帯域とを各々パケットの送信元であるユーザと契約されている場合に、前記特定種類のパケットのうち一部のパケットが流入したときの全帯域が契約に適合しない場合であっても、一部帯域が契約に適合している場合には当該パケットを廃棄しないことにより、一部帯域を最低帯域として保証することができる。
FIG. 20 shows a flowchart of the bandwidth monitoring algorithm. If the result of 13 processing, that is, the per-flow bandwidth monitoring determination result is “Compliance”, the new CNT-A and TS-A are written in the flow group bandwidth monitoring table as excess bandwidth information indicating the excess bandwidth.
According to the present invention described above, in policing for limiting the flow rate of packets flowing into the network, when limiting the flow rate of a specific type of packet, the flow rate of only a part of the specific type packet is further limited. be able to.
Furthermore, when the user who is the transmission source of each packet contracts the entire bandwidth that is the flow rate of the specific type packet and the partial bandwidth that is the flow rate of only some of the specific type packets, Even if the entire bandwidth when some of the specific types of packets flow in does not conform to the contract, if the partial bandwidth conforms to the contract, by not discarding the packet, A partial band can be guaranteed as the minimum band.
Claims (7)
一定時間内に受信する第一の種類のパケットの量が予め定められた第一の量を超過するか否かの判定と、上記第一の種類のパケットのうちさらに一部の第二の種類のパケットの量が予め定められた第二の量を超過するか否かの判定を行い、上記二つの判定の結果に基づいて、該パケットを廃棄するか否かを決定する制御部を備えたパケット転送装置。 A transmission / reception unit for receiving packets;
A determination as to whether or not the amount of the first type packet received within a predetermined time exceeds a predetermined first amount, and a part of the second type of the first type packet A control unit that determines whether or not the amount of packets exceeds a predetermined second amount and determines whether to discard the packets based on the results of the two determinations Packet transfer device.
受信したパケットが第一の種類かつ第二の種類のパケットであって、さらに、上記第一の量を超過する場合であっても、上記第二の量を超過しない場合には、該受信したパケットを廃棄しないことを特徴とするパケット転送装置。 The packet transfer apparatus according to claim 1, wherein
If the received packet is of the first type and the second type and further exceeds the first amount, it does not exceed the second amount. A packet transfer apparatus characterized by not discarding a packet.
上記制御部は、
受信したパケットの入力回線番号、出力回線番号、パケットヘッダ内のアドレス情報、該パケットの用途を識別する情報、または該パケットの優先度を識別する情報のうち少なくともいずれか一つの情報に基づいて、該受信したパケットが上記第一の種類および上記第二の種類に属するか否かを識別することを特徴とするパケット転送装置。 The packet transfer apparatus according to claim 1, wherein
The control unit
Based on at least one of the input line number of the received packet, the output line number, the address information in the packet header, the information identifying the use of the packet, or the information identifying the priority of the packet, A packet transfer apparatus for identifying whether or not the received packet belongs to the first type and the second type.
上記第一の種類のパケットは、特定ユーザのパケットであって、
上記第二の種類のパケットは、上記特定ユーザのパケットであり、かつネットワーク内で優先的に転送されるパケットであることを特徴とするパケット転送装置。 The packet transfer apparatus according to claim 1, wherein
The first type of packet is a packet of a specific user,
The second type of packet is a packet of the specific user, and is a packet that is preferentially transferred in the network.
上記第一の種類のパケットは、特定ユーザのパケットであって、
上記第二の種類のパケットは、上記特定のユーザのパケットであり、かつDiffserv (Differentiated Services)におけるEF-PHB (Expedited Forwarding-Per Hop Behavior)に基づいて転送されるパケットであることを特徴とするパケット転送装置。 The packet transfer apparatus according to claim 1, wherein
The first type of packet is a packet of a specific user,
The second type packet is a packet of the specific user and is a packet forwarded based on EF-PHB (Expedited Forwarding-Per Hop Behavior) in Diffserv (Differentiated Services). Packet transfer device.
上記第一の種類のパケットは、特定ユーザのパケットであって、
上記第一の種類のパケットのうち上記第二の種類以外のパケットは、上記特定のユーザのパケットであり、かつネットワーク内の輻輳状態に応じて送信するパケットの流量を制御して転送されるパケットであり、
上記第二の種類のパケットは、上記特定のユーザのパケットであり、かつ上記パケットの流量の制御を受けずに転送されるパケットであることを特徴とするパケット転送装置。 The packet transfer apparatus according to claim 1, wherein
The first type of packet is a packet of a specific user,
Packets other than the second type of the first type packet are packets of the specific user and are transferred by controlling the flow rate of packets to be transmitted according to the congestion state in the network. And
The packet transfer apparatus, wherein the second type packet is a packet of the specific user and is transferred without being controlled by the flow rate of the packet.
上記第一の種類のパケットは、特定ユーザのパケットであって、
上記第二の種類のパケットは、上記特定ユーザのパケットであり、かつトランスポート層のプロトコルがUDP (User Datagram Protocol)のパケットであることを特徴とするパケット転送装置。
The packet transfer apparatus according to claim 1, wherein
The first type of packet is a packet of a specific user,
The packet transfer apparatus according to claim 2, wherein the second type packet is a packet of the specific user and a packet of a transport layer protocol is UDP (User Datagram Protocol).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005035403A JP4500701B2 (en) | 2005-02-14 | 2005-02-14 | Packet transfer device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005035403A JP4500701B2 (en) | 2005-02-14 | 2005-02-14 | Packet transfer device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006222821A true JP2006222821A (en) | 2006-08-24 |
JP4500701B2 JP4500701B2 (en) | 2010-07-14 |
Family
ID=36984816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005035403A Active JP4500701B2 (en) | 2005-02-14 | 2005-02-14 | Packet transfer device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4500701B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010093410A (en) * | 2008-10-06 | 2010-04-22 | Alaxala Networks Corp | Packet relay apparatus |
CN112600762A (en) * | 2020-12-09 | 2021-04-02 | 西安邮电大学 | Dynamic flow distribution method for accelerating EF service forwarding |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004266389A (en) * | 2003-02-28 | 2004-09-24 | Matsushita Electric Ind Co Ltd | Method and circuit for controlling packet transfer |
-
2005
- 2005-02-14 JP JP2005035403A patent/JP4500701B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004266389A (en) * | 2003-02-28 | 2004-09-24 | Matsushita Electric Ind Co Ltd | Method and circuit for controlling packet transfer |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010093410A (en) * | 2008-10-06 | 2010-04-22 | Alaxala Networks Corp | Packet relay apparatus |
US8355329B2 (en) | 2008-10-06 | 2013-01-15 | Alaxala Networks Corporation | Packet relay device |
CN112600762A (en) * | 2020-12-09 | 2021-04-02 | 西安邮电大学 | Dynamic flow distribution method for accelerating EF service forwarding |
CN112600762B (en) * | 2020-12-09 | 2023-01-10 | 西安邮电大学 | Dynamic flow distribution method for accelerating EF service forwarding |
Also Published As
Publication number | Publication date |
---|---|
JP4500701B2 (en) | 2010-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8427946B2 (en) | Providing a quality of service for various classes of service for transfer of electronic data packets | |
US7917648B2 (en) | Self-adaptive scheduling method and network element | |
US8284789B2 (en) | Methods and apparatus for providing dynamic data flow queues | |
US8264957B1 (en) | Control of preemption-based beat-down effect | |
Zoriđ et al. | Fairness of scheduling algorithms for real-time traffic in DiffServ based networks | |
Parra et al. | Quality of Service over IPV6 and IPV4 | |
JP4500701B2 (en) | Packet transfer device | |
JP4087279B2 (en) | BAND CONTROL METHOD AND BAND CONTROL DEVICE THEREOF | |
Martínez et al. | Performance assessment of diffserv and intserv services in qos on an academic network using ns2 | |
Ziviani et al. | Evaluating the expedited forwarding of voice traffic in a differentiated services network | |
Giacomazzi et al. | Transport of TCP/IP traffic over assured forwarding IP-differentiated services | |
Chaudhuri | Design and implementation of a differentiated service based qos model for real-time interactive traffic on constrained bandwidth ip networks | |
JP4342395B2 (en) | Packet relay method and apparatus | |
Liakopoulos et al. | QoS experiences in native IPv6 networks | |
Serenato et al. | MPLS backbones and QoS enabled networks interoperation | |
Baraković et al. | Traffic performances improvement using DiffServ and MPLS networks | |
Lipu et al. | Quality of service model selection criteria and traffic controlling algorithm of a native IP Network for telecommunication services | |
Wang et al. | Design and implementation of diffserv routers in opnet | |
Kaur et al. | Implementation of Differential Services Based on Priority, Token Bucket, and Round Robin Algorithms | |
Hamad et al. | Performance Assessment of QoS metrics in Software Defined Networking using Floodlight Controller | |
Gennaoui et al. | Investigation and comparison of MPLS QoS solution and differentiated services QoS solutions | |
JP2004193975A (en) | Method of discarding packet and packet switching device | |
Kaulgud | IP Quality of Service: Theory and best practices | |
Castro et al. | Improving NGN with QoS Strategies | |
Haryantho | Strategien zur Paketverarbeitung bei Dienstgüte-Unterstützung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071121 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100129 |
|
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: 20100406 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100419 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130423 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4500701 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140423 Year of fee payment: 4 |
|
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 |