説明

フレーム転送装置及び帯域制御方法

【課題】フラグメント化されたフレームの送出間隔の広がりを抑制し、フレームの遅延を低減する。
【解決手段】受信したフレームを他のフレーム転送装置に転送するフレーム転送装置であって、受信したフレームのフレーム長を計測する計測部と、前記計測されたフレームが所定長より長い場合、受信したフレームを前記所定長以下のフレームに分割するフラグメント部と、前記分割されたフレームを格納するキューと、予め設定された帯域に応じて、前記分割されたフレームを前記キューから出力するタイミングを制御する帯域制御部と、を備え、前記帯域制御部は、前記分割されたフレームと、分割されていないフレームとを識別し、前記分割されたフレームが連続して送出されるように帯域制御処理を切り替える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フレーム転送装置に関し、特に、フラグメントによって分割された複数フレームを転送する帯域を制御する方式に関する。
【背景技術】
【0002】
ネットワーク技術の発展に伴う通信量の増加により様々な問題が発生している。その中には、通信データの遅延やロスなどの帯域不足による問題があり、通信網の帯域を制御する必要性がある。帯域制御の一つの方法としてトラフィックシェーピング方式がある。トラフィックシェーピングとは、帯域制御対象のトラフィックが、予め設定された帯域を超えない様に、その帯域に応じた時間間隔でフレームをフレーム転送装置から出力することによって帯域を制御する方法である。
【0003】
通常のイーサネット(MAC:Media Access Control)フレームのフレーム長は64〜1518バイトとなる(イーサネットは登録商標、以下同じ)。MACフレームは、フレームの送信から12バイト以上の間隔をあけて次のフレームを送信するように規定されており、このアイドル間隔はIFG(Inter Frame Gap)と呼ばれる。このため、フレーム長が短くなるとフレーム長に対しIFGの割合が増えるため伝送効率が低下する。そこで、ネットワークの伝送効率を向上させるために、フレーム長が1518バイトを超えるジャンボフレームが提案された。ジャンボフレームを使用すると、一度に送信できるデータサイズが大きくなり、通常フレームよりもIFGの割合を減らすことができるため、伝送効率を向上することができる。
【0004】
しかし、ジャンボフレームは規格化されたものではないため、ジャンボフレーム対応装置と非対応装置が混在するネットワークにおいて問題が生じる。すなわち、ジャンボフレームに対応していないネットワークを経由してクライアント装置から他のクライアント装置にジャンボフレームを送信する場合、ジャンボフレーム非対応ネットワークの入口のエッジノード(フレーム転送装置)にてフレームが廃棄される問題がある。
【0005】
これを解決する技術として、IETF RFC4623(非特許文献2)やITU−T Y.1415(非特許文献3)で規定されるフラグメント化技術がある。フラグメント化とは、大きなフレームをネットワーク内で対応可能な最大MTU以下に分割して送信する技術である。例えば、ジャンボフレーム非対応のネットワークのエッジノードに、このフラグメント化技術を適用し、ジャンボフレームをネットワークが許容する最大MTU以下のフレームに分割することによって、ジャンボフレーム非対応のネットワークにおいてフレーム転送を可能とする。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】IEEE802.3
【非特許文献2】IETF RFC4623
【非特許文献3】ITU−T Y.1415
【発明の概要】
【発明が解決しようとする課題】
【0007】
前述した通り、ネットワークBは、ジャンボフレーム非対応のネットワークであり、前述したフラグメント化機能を有する必要があるため、エッジノード200−3にジャンボフレームが入力された場合、フラグメント化により分割されたフレームに対しトラフィックシェーピングが行われる。
【0008】
しかし、前述のフラグメントと帯域制御(トラフィックシェーピング)の両方の機能を有する装置が、フラグメント化されたフレームに対してトラフィックシェーピングを行うと、フラグメント化された後続のフレームの送信が遅くなり、遅延が生じる問題がある。これは、元々一つのフレームをフラグメント化によって分割し、それぞれのフレームに対しトラフィックシェーピングを行うことによって、制御帯域に応じてフレームの送出間隔が広がるためである。フレーム間隔が広がるに従って、フレームの到着が遅延するため、フラグメント化されたフレームを組み立てるまでの時間が長くなり、遅延が発生する。
【0009】
例えば、従来のトラフィックシェーピングにおいて、一つのフレームをフラグメント化によって複数のフレームに分割した場合、図10(A)に示すように、分割されたフレーム毎に設定帯域に応じた時間間隔でフレーム転送装置から出力されるため、図10(B)のようにフレームの先頭が送出されてから、フレームの最後が送出されるまでの間隔が、元のフレームに比べて広くなる。受信側の装置では最終フラグメントフレーム(図10(B)のa1'''フレーム)を待たないとフレームを組み立てることができないため、結果としてフラグメントフレームを組み立てる際、図10(C)に示すように信号フレームの遅延による影響が生じる問題があった。
【0010】
すなわち、受信したフレームを他の装置に転送するフレーム転送装置(エッジノード)が、フラグメント及び帯域制御(トラフィックシェーピング)の両方に対応している場合、フラグメント化によって分割されたフレームにトラフィックシェーピングを行うと、分割されたフレームの送出間隔が広がるため、遅延が生じる問題がある。
【0011】
本発明は、フレーム転送装置から送出される、フラグメント化されたフレーム送出間隔の広がりを抑制し、フレームの遅延を低減することを目的とする。
【課題を解決するための手段】
【0012】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、受信したフレームを他のフレーム転送装置に転送するフレーム転送装置であって、受信したフレームのフレーム長を計測する計測部と、前記計測されたフレームが所定長より長い場合、受信したフレームを前記所定長以下のフレームに分割するフラグメント部と、前記分割されたフレームを格納するキューと、予め設定された帯域に応じて、前記分割されたフレームを前記キューから出力するタイミングを制御する帯域制御部と、を備え、前記帯域制御部は、前記分割されたフレームと、分割されていないフレームとを識別し、前記分割されたフレームが連続して送出されるように帯域制御処理を切り替えることを特徴とする。
【発明の効果】
【0013】
本発明の代表的な実施の形態によれば、フレーム転送装置からフレームが送出される間隔の広がりを抑制し、フレームの遅延を低減することができる。
【図面の簡単な説明】
【0014】
【図1】ジャンボフレーム対応装置と非対応装置で構成されたネットワークの一例を示す図である。
【図2】イーサネットフレームフォーマットを示す図である。
【図3】フラグメントを説明する図である。
【図4】トラフィックシェーピングを説明する図である。
【図5】リーキーバケットによるトラフィックシェーピングを説明する図である。
【図6】本発明の実施形態のフレーム転送装置の構成を示すブロック図である。
【図7】本発明の実施形態によるトラフィックシェーピング方法のフローチャートである。
【図8】本発明の実施形態におけるジャンボフレームのフラグメント化を説明する図である。
【図9】本発明の実施形態による効果を説明する図である。
【図10】フラグメントフレームのトラフィックシェーピングを説明する図である。
【発明を実施するための形態】
【0015】
以下、実施形態について図面を用いて説明する。
【0016】
図1は、本発明の実施形態のネットワークの構成を示す図である。
【0017】
図1に示すネットワークは、ジャンボフレーム対応装置と非対応装置とを含む。具体的には、ネットワークには、クライアント装置100−1からクライアント装置100−2の間に、ジャンボフレーム対応のネットワークA(所定byte長以上のフレームに対応する最大伝送単位(MTU:Maximum Transmission Unit)を備えるネットワーク、すなわち、プリアンブル部を除く通信回線のMTUが1518byte超のネットワーク)、ジャンボフレーム非対応のネットワークB(所定Byte長未満のフレームに対応する最大伝送単位を備えるネットワーク。プリアンブル部を除く通信回線のMTUが1518byte以下の意味)、及び、ジャンボフレーム対応のネットワークCが含まれ、各ネットワークは同一の伝送規格によって繋がっている。
【0018】
図2(A)は、通常のイーサネット(MAC)フレームフォーマットを示す。イーサネットフレームは、MACフレームが開始することを示すプリアンブル8バイトと、データの送信先のMACアドレスを示す宛先アドレス(DA)6バイトと、データの送信元のMACアドレスを示す送信元アドレス(SA)6バイトと、フレーム長またはプロトコルタイプを表す2バイトのType/Lengthと、送信データ領域(data)46〜1500バイトと、MACフレームの宛先アドレス(DA)からdataまでの範囲についてチェックサム計算を行った結果が格納されるFCSの4バイトを含む。通常、プリアンブルを除いた部分が有効フレーム範囲であり、フレーム長は64〜1518バイトとなる。
【0019】
図2(B)は、ジャンボフレームのフォーマットを示す。ジャンボフレームは、通常フレームと同じフォーマットで、フレーム長がIEEE802.3(非特許文献1)において規定される1518バイト以上のMACフレームである。
【0020】
前述したように、ジャンボフレーム非対応のネットワークBでも、ジャンボフレームを伝送する技術として、フラグメント化技術がある。
【0021】
図3は、本発明の実施形態のフレーム転送装置200−3に入力されるフレームのフラグメントフォーマットの例である。
【0022】
フラグメント処理において、ジャンボフレーム300は、先頭フラグメントフレーム301、中間フラグメントフレーム302及び最終フラグメントフレーム303に分割される。入力されるフレーム長をL[byte]、等間隔に分割されるフラグメント長の設定値をA[byte]、最終フラグメント長をb[byte]とする。フラグメント化された各フレームには、フラグメント化されたことを識別するためのヘッダが付与される。このフラグメント技術を使用すると、ネットワーク上のフレーム転送装置のMTUを満たす長さでフレームを分割でき、ジャンボフレーム非対応の装置でもジャンボフレームを送信することができる。
【0023】
図1に示すネットワークにおいては、ジャンボフレーム非対応ネットワークBのエッジノード200−3に流入するトラフィックに対してトラフィックシェーピングが適用され、分割されたフレームがネットワークBに出力される。
【0024】
図4は、本発明の実施形態に適用されるトラフィックシェーピング方法の概念を示す。
【0025】
トラフィックシェーピングとは、入力されたフレームをキュー401に一旦格納し、トラフィックシェーピング制御部(402)にて、設定された帯域に応じた時間間隔でフレームを装置から出力することによって帯域を制御する技術である。トラフィックシェーピングの実現方法としてリーキーバケットがある。
【0026】
図5は、リーキーバケットによる帯域計測及びトラフィックシェーピングの概念を示す。
【0027】
リーキーバケットを実現する方法の1例としてダウンカウンタを用いる方法がある。装置からフレームa1を出力する際に、フレーム長X[byte]分だけ帯域計測部のダウンカウンタに加算し、設定帯域に応じた値で、定期的にカウンタ値を減算(この傾きが設定帯域に相当)して、カウント値が0より大きい場合は、フレーム(a2)をメモリ内で待機させ、カウントが0になったときに次のフレームa2を出力することによってフレーム間隔を調整し、帯域を制御する。
【0028】
図6は、本発明の実施形態のフレーム転送装置(エッジノード)の構成を示すブロック図である。
【0029】
エッジノード200−3は、フレーム長を計測するフレーム長計測部800、入力されたフレームを所定の長さに分割するフラグメント実行部801、送信されるフレームが一時的に格納されるキュー802、及び、送出帯域を制御するトラフィックシェーピング制御部803を有する。トラフィックシェーピング制御部803は、フレームを解析するフレーム解析部804、フレーム解析結果に応じて送出帯域を測定する帯域計測部805、及び、フレーム送信を指示する送信制御部806を有する。
【0030】
また、エッジノード200−3は、プログラムを実行するプロセッサと、プロセッサで実行されるプログラムやデータを格納するメモリとを有する。このプロセッサが所定のプログラムを実行することによって、前述した各部が機能する。なお、各部の全部又は一部をファームウェア又はハードウェアによって実装してもよい。
【0031】
図7は、本発明の実施形態によるトラフィックシェーピング方法のフローチャートである。
【0032】
エッジノード200−3にフレームが入力されると、まず、フレーム長計測部800が、入力されたフレームのフレーム長を計測し(701)、フラグメント化が必要か否かを判定する(702)。そして、フラグメント化が必要であると判定された場合、フラグメント実行部801が、入力されたフレームを所定の長さに分割し(703)、フラグメント化されたフレームであることを識別するための情報(例えば、先頭フラグメントフレーム識別子、中間フラグメントフレーム識別子、最終フラグメントフレーム識別子)をヘッダに付与する(704)。
【0033】
フレーム解析部804は、フラグメント実行部801から出力されたフラグメント情報を参照して、帯域制御に用いるフレーム長を生成し、帯域計測部805に出力する。すなわち、フレーム解析部804は、フラグメント実行部801から出力されたフレームがフラグメント化されたフレームであるか否か(705)、さらに、フラグメント化されたフレームが先頭フラグメントフレームであるか否か(706)を判定する。
【0034】
その結果、フラグメント実行部801から出力されたフレームが先頭フラグメントフレームである場合(ステップ705でYes、ステップ706でYes)、フラグメント前のフレーム長を出力し、フラグメント対象外のフレームの場合(ステップ705でNo)、フレーム計測部800によって計測されたフレーム長を出力する。
【0035】
フレーム解析部804は、フラグメント実行部801から出力されたフレーム長情報と、フラグメント実行部801によってヘッダに付与されたフラグメント情報とを解析し、フレーム解析結果に応じて、帯域計測部805における帯域計測方法、及び、送信制御部806におけるフレーム送信指示方法を切り替える。
【0036】
次に、ステップ705からステップ709の処理を具体的に説明する。
【0037】
フレーム解析部804が、フラグメント実行部801から出力されたフレームが先頭フラグメントフレームであると判定し(ステップ706でYes)、且つ、帯域計測部805は制御帯域内であると判定した場合(すなわち、帯域計測部805内の帯域計測回路であるダウンカウンタが”0”である場合)、送信制御部806は、キュー802にフレーム送信を指示し、送信されるフレームのフレーム長を帯域計測部805に通知する(707)。帯域計測部805は、通知されたフレーム長を帯域計測部805内のダウンカウンタに加算する。この時、加算されるフレーム長は、フラグメント化前のフレーム長である。なお、帯域計測部805が、制御帯域外であると判定した場合(すなわち、帯域計測部805内のダウンカウンタが”0”より大きい場合)、制御帯域内と判定されるまでフレーム送信指示の出力を待ち、制御帯域内と判定された後に前述と同様の処理を行う。
【0038】
一方、フレーム解析部804が、フラグメント実行部801から出力されたフレームが中間フラグメントフレーム又は最終フラグメントフレームであると判定した場合(ステップ706でNo)、帯域計測部805の制御帯域内外かの判定にかかわらず(帯域計測部805内のダウンカウンタ値によらず)、送信制御部806からキュー802に直ちにフレームを送信するように指示する(708)。このフレーム送信指示によって、最低間隔のIFG(例えば、規格上最短の12バイト)がフレーム間に挿入されて、フレームが連続して送信される(708)。この場合、帯域計測部805内のダウンカウンタにはフレーム長を加算しない。
【0039】
さらに、フレーム解析部804が、フラグメント実行部801から出力されたフレームがフラグメント化されていないフレームであると判定し(ステップ705でNo)、且つ、帯域計測部805が、制御帯域内であると判定した場合、送信制御部806は、キュー802にフレーム送信を指示し、帯域計測部805内のダウンカウンタにフレーム長を加算する。この場合に加算されるフレーム長は、フレーム長計測部800によって計測されたフレーム長である。帯域計測部805が、制御帯域外であると判定した場合(すなわち、帯域計測部805内のダウンカウンタが”0”より大きい場合)、制御帯域内と判定されるまでフレーム送信指示の出力を待ち、制御帯域内と判定された後に前述と同様の処理を行う。
【0040】
次に、図8、図9を用いて本実施形態の効果を説明する。図8(A)に示すジャンボフレームが送信された場合、ジャンボフレーム非対応のネットワークでは、図8(B)に示すように、ジャンボフレームが、先頭フラグメントフレームA、中間フラグメントフレームをB及び最終フラグメントフレームをCにフラグメント化されて、トラフィックシェーピングがされる。
【0041】
図9(A)は、従来のトラフィックシェーピング方法によってフレーム転送装置から出力されるフレーム列を示し、図9(B)は、本実施の形態のトラフィックシェーピング方法によってフレーム転送装置から出力されるフレーム列を示す。
【0042】
図9(A)に示すように、従来のトラフィックシェーピング方法によると、フラグメント化されたフレームは所定の間隔で送信される。一方、本実施形態のトラフィックシェーピング方法によると、図9(B)に示すように、フラグメント化されたフレームを分割前の一つのフレーム長として連続して送出するようなトラフィックシェーピングを行う。これによって、フラグメント化されたフレームの送出間隔を狭くすることができ、フレーム転送装置から送出されるフレームの間隔が広がることを抑え、受信側でのフレーム組み立て時の遅延を低減することができる。
【0043】
受信側のフレーム転送装置は、最終フラグメントフレームの受信時点から、フラグメント化されたフレームの組み立てを開始する。このため、本実施の形態のトラフィックシェーピング方法(図9(B))によると、従来のトラフィックシェーピング方法(図9(A))と比較して、最終フラグメントフレームが早く送出されるので、受信側のフレーム転送装置でフレームを組み立てが終了するまでの時間の遅延を低減できる。
【0044】
本発明の代表的な実施の形態によれば、フラグメント化されたフレームであるか否か、さらに、フラグメント化された先頭フレームであるか否かによって、帯域制御処理を切り替えるので、フラグメント化されたフレームは個々にシェーピングされずにフレーム転送装置から出力することができる。
【0045】
また、フラグメント化された先頭フレームを分割前の一つのフレーム長としてトラフィックシェーピングを行い、後続のフラグメント化されたフレームは、規格上の最低間隔(12バイトのIFG)を保ちつつフレーム転送装置から出力することによって、フラグメント化されたフレームの送出間隔が広がることを抑え、フレームの転送遅延の増大を抑制することができる。特に、トラフィックシェーピングによって、フラグメント化されたフレームの送出間隔が広がり遅延が増大するが、本実施形態では、フラグメント化されたフレームを分割前の一つのフレーム長としてトラフィックシェーピングするので、帯域が狭いネットワークにおいても、遅延を抑制することができる点で有利である。
【符号の説明】
【0046】
100 クライアント装置
200 エッジノード
300 ジャンボフレーム
301 先頭フラグメントフレーム
302 中間フラグメントフレーム
303 最終フラグメントフレーム
400 フレーム長計測部
401 キュー
402 トラフィックシェーピング制御部
800 フレーム長計測部
801 フラグメント実行部
802 キュー
803 トラフィックシェーピング制御部
804 フレーム解析部
805 帯域計測部
806 送信制御部

【特許請求の範囲】
【請求項1】
受信したフレームを他のフレーム転送装置に転送するフレーム転送装置であって、
受信したフレームのフレーム長を計測する計測部と、
前記計測されたフレームが所定長より長い場合、受信したフレームを前記所定長以下のフレームに分割するフラグメント部と、
前記分割されたフレームを格納するキューと、
予め設定された帯域に応じて、前記分割されたフレームを前記キューから出力するタイミングを制御する帯域制御部と、を備え、
前記帯域制御部は、
前記分割されたフレームと、分割されていないフレームとを識別し、
前記分割されたフレームが連続して送出されるように帯域制御処理を切り替えることを特徴とするフレーム転送装置。
【請求項2】
前記帯域制御部は、前記分割されたフレームを分割前の一つのフレーム長として送信タイミングを制御することを特徴とする請求項1に記載のフレーム転送装置。
【請求項3】
前記帯域制御部は、
前記分割されていないフレームには、当該フレームのフレーム長によって送信タイミングを制御する通常の帯域制御を実行し、
前記分割されたフレームのうち先頭フレームには、分割前のフレーム長によって帯域制御を実行し、
前記分割されたフレームのうち中間フレーム及び最終フレームには、帯域制御を行わず直ちに当該フレームを送出するように制御することを特徴とする請求項2に記載のフレーム転送装置。
【請求項4】
前記帯域制御部は、前記フレームを送出する回線の帯域が小さければ、前記分割されていないフレームの送信間隔が長くなるように制御することを特徴とする請求項3に記載のフレーム転送装置。
【請求項5】
第1のフレーム転送装置から第2のフレーム転送装置に転送されるフレームの帯域を制御する方法であって、
前記各フレーム転送装置は、受信したフレームのフレーム長を計測する計測部と、前記計測されたフレームが所定長より長い場合、受信したフレームを前記所定長以下のフレームに分割するフラグメント部と、前記分割されたフレームを格納するキューと、予め設定された帯域に応じて、前記分割されたフレームを前記キューから出力するタイミングを制御する帯域制御部と、を備え、
前記方法は、
前記帯域制御部が、前記分割されたフレームと、分割されていないフレームとを識別し、
前記帯域制御部が、前記分割されたフレームが連続して送出されるように帯域制御処理を切り替えることを特徴とする帯域制御方法。
【請求項6】
前記方法は、前記帯域制御部が、分割されたフレームを分割前の一つのフレーム長として送信タイミングを制御することを特徴とする請求項5に記載の帯域制御方法。
【請求項7】
前記方法は、
前記帯域制御部が、前記分割されていないフレームには、当該フレームのフレーム長によって送信タイミングを制御する通常の帯域制御を実行し、
前記帯域制御部が、前記分割されたフレームのうち先頭フレームには、分割前のフレーム長によって帯域制御を実行し、
前記帯域制御部が、前記分割されたフレームのうち中間フレーム及び最終フレームには、帯域制御を行わず直ちに当該フレームを送出するように制御することを特徴とする請求項6に記載の帯域制御方法。
【請求項8】
前記方法は、前記帯域制御部が、前記フレームを送出する回線の帯域が小さければ、前記分割されていないフレームの送信間隔が長くなるように制御することを特徴とする請求項7に記載の帯域制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−120079(P2012−120079A)
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願番号】特願2010−270103(P2010−270103)
【出願日】平成22年12月3日(2010.12.3)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】