JP6197586B2 - 通信装置及び通信方法 - Google Patents

通信装置及び通信方法 Download PDF

Info

Publication number
JP6197586B2
JP6197586B2 JP2013230148A JP2013230148A JP6197586B2 JP 6197586 B2 JP6197586 B2 JP 6197586B2 JP 2013230148 A JP2013230148 A JP 2013230148A JP 2013230148 A JP2013230148 A JP 2013230148A JP 6197586 B2 JP6197586 B2 JP 6197586B2
Authority
JP
Japan
Prior art keywords
frame
connection
buffer
transmission instruction
instruction information
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
JP2013230148A
Other languages
English (en)
Other versions
JP2015091022A (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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2013230148A priority Critical patent/JP6197586B2/ja
Publication of JP2015091022A publication Critical patent/JP2015091022A/ja
Application granted granted Critical
Publication of JP6197586B2 publication Critical patent/JP6197586B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

通信装置及び通信方法に関し、例えば、ATM(Asynchronous Transfer Mode)網とMPLS(Multi−Protocol Label Switching)網との間の通信を中継するための、インターワーク装置に適用し得る。
ATMセルについて、イーサネット(登録商標)を用いたMPLS網(以下、「MPLS/イーサネット網」とも呼ぶ)で中継するためのインターワーク装置(ゲートウェイ)は、ITU−TY.1411/RFC4717で標準化されている。上述のインターワーク装置では、具体的には、ATMコネクション(VPC (Virtual Path Connection)/VCC (Virtual Channel Connection))をMPLSのLSP(Label Switched Path)に収容させ、ATMセルをMPLSフレームにカプセル化/デカプセル化し、MPLS/イーサネット網に接続する。
ATMインタフェースと、イーサネットインタフェースとの間でメディア変換を行う従来技術としては、例えば、特許文献1の記載技術がある。
特開2007−184681号公報
ところで、特許文献1の記載技術を用いて、ATMセルをイーサネットフレーム(MPLSのフレーム)に変換するインターワーク装置を実現する場合、図10に示すように、1個のイーサネットフレームには、複数個(N個)のATMセルをマッピング(ATMセル多重)することが出来る。この場合、Nが大きいほど、主情報(ATMセル)に対するイーサネットヘッダの占める割合が低くなるため、伝送効率は良くなるが、Nセル到着毎にカプセル化するため、遅延時間が大きくなる。
そのため、従来技術を用いて、上述のインターワーク装置を実現したとき、例えば、図10に示すように、1個のイーサネットフレームに複数個(N個)のATMセルをマッピング(ATMセル多重)する際に以下のような課題があった。
従来技術を用いて上述のインターワーク装置を実現した場合の第1の課題としては、カプセル化バッファのオーバフロー対策がある。1個のイーサネットフレームに複数個(N個)のATMセルをマッピングする場合、カプセル化バッファには、最低N個のATMセルを一時保存する必要がある。一方、ATMコネクションの速度は、低速(例えば64kbit/s)から高速(例えば135Mbit/s)まで様々ある。そのため、従来技術を用いて上述のインターワーク装置を実現する場合、各種速度のコネクションを多数インターワークするためには、多数のコネクションで順次カプセル化し、イーサネットフレームを送信する間に、高速コネクションでカプセル化バッファがオーバフローしないように、カプセル化バッファに一定以上セルが蓄積した場合は即時カプセル化(イーサネットフレーム送信)、もしくはオーバフローしないだけの十分な容量のカプセル化バッファを実装する必要があった。
また、従来技術を用いて上述のインターワーク装置を実現した場合の第2の課題としては、ATMセルの装置内滞留がある。上述のインターワーク装置において、ATMセルは非同期に送受信されるため、1個のイーサネットフレームに複数個(N個)のATMセルをマッピングする場合、端末側からATMセルをN個未満受信し、その後、しばらくATMセルを受信しない場合が考えられる。この場合、上述のインターワーク装置では、N個そろうまでカプセリングしないのでは、エンドエンド端末間で考えると、ATMセルの大幅な遅延や、セル損失が発生したのと同様にみえ、端末の上位プロトコルにおける通信タイムアウト検出等が危惧される問題があった。
さらに、従来技術を用いて上述のインターワーク装置を実現した場合の第3の課題としては、無瞬断でのATMセル多重数変更が困難であるという問題がある。従来技術を用いて上述のインターワーク装置を実現した場合、サービス提供中、イーサ網の使用効率状況により、1個のイーサネットフレームにマッピングするATMセル数を変更する際、エンドユーザの通信に影響なく、無瞬断で変更できることが望ましい。しかしながら、従来、上述のインターワーク装置を実現する際に、無瞬断でこのような変更を行う技術は確立されていない。
以上のような問題点に鑑みて、第1のプロトコルに従った第1のフレーム(例えば、ATMセル)を受信し、第2のプロトコルに従った第2のフレーム(例えば、MPLS/イーサネットフレーム)に、受信した複数の第1のフレームを挿入して送出する際に、通信品質劣化を抑制する通信装置及び通信方法が望まれている。
第1の本発明の通信装置は、(1)第1のプロトコルに従った第1のフレームを受信し、第2のプロトコルに従った第2のフレームに、受信した複数の第1のフレームを挿入して送出する通信装置において、(2)第1のプロトコルに基づく1つのコネクションに対応する第1のフレームを保留するバッファを、コネクションごとに備えるバッファ手段と、(3)上記バッファ手段が備えるそれぞれのバッファに保留された第1のフレームを管理するためのポインタ情報を、上記バッファごとに管理するポインタ情報管理手段と、
コネクションごとに、第2のフレームに挿入する第1のフレーム数を示す多重数を管理する多重数管理手段と、(4)第1のフレームを受信時に、当該第1のフレームに対応するコネクションのポインタ情報に基づいて、当該コネクションのバッファに保留されている第1のフレーム数を確認し、当該バッファに保留されている第1のフレーム数が、当該コネクションに対応する多重数以上の場合、当該バッファに保留されている第1のフレームを、当該コネクションに対応する多重数読出して、読出した第1のフレームを第2のフレームに挿入して送出させることを指示するためのフレーム送信指示情報を生成するフレーム送信指示情報生成手段と、(5)上記フレーム送信指示情報生成手段が生成したフレーム送信指示情報の待ち行列を管理する待ち行列管理手段と、(6)上記待ち行列管理手段で管理しているフレーム送信指示情報を取得し、取得したフレーム送信指示情報に基づいたバッファから、取得したフレーム送信指示情報に基づいた多重数の第1のフレームを取得して、取得した第1のフレームを挿入した第2のフレームを生成して送出するフレーム送出手段とを有することを特徴とする。
第2の本発明は、第1のプロトコルに従った第1のフレームを受信し、第2のプロトコルに従った第2のフレームに、受信した複数の第1のフレームを挿入して送出する通信装置が行う通信方法において、(1)バッファ手段、ポインタ情報管理手段、多重数管理手段、フレーム送信指示情報生成手段、待ち行列管理手段、及びフレーム送出手段を有し、(2)上記バッファ手段は、第1のプロトコルに基づく1つのコネクションに対応する第1のフレームを保留するバッファをコネクションごとに備え、それらのバッファを用いてコネクションごとの第1のフレームを保留し、(3)上記ポインタ情報管理手段は、上記バッファ手段が備えるそれぞれのバッファに保留された第1のフレームを管理するためのポインタ情報を、上記バッファごとに管理し、(4)上記多重数管理手段は、コネクションごとに、第2のフレームに挿入する第1のフレーム数を示す多重数を管理し、(5)上記フレーム送信指示情報生成手段は、第1のフレームを受信時に、当該第1のフレームに対応するコネクションのポインタ情報に基づいて、当該コネクションのバッファに保留されている第1のフレーム数を確認し、当該バッファに保留されている第1のフレーム数が、当該コネクションに対応する多重数以上の場合、当該バッファに保留されている第1のフレームを、当該コネクションに対応する多重数読出して、読出した第1のフレームを第2のフレームに挿入して送出させることを指示するためのフレーム送信指示情報を生成し、(6)上記待ち行列管理手段は、上記フレーム送信指示情報生成手段が生成したフレーム送信指示情報の待ち行列を管理し、(7)上記フレーム送出手段は、上記待ち行列管理手段で管理しているフレーム送信指示情報を取得し、取得したフレーム送信指示情報に基づいたバッファから、取得したフレーム送信指示情報に基づいた多重数の第1のフレームを取得して、取得した第1のフレームを挿入した第2のフレームを生成して送出することを特徴とする。
第1のプロトコルに従った第1のフレームを受信し、第2のプロトコルに従った第2のフレームに、受信した複数の第1のフレームを挿入して送出する際に、通信品質劣化を抑制する通信装置を提供することができる。
実施形態に係るインターワーク装置を構成するカプセル化部及びデカプセル化部の機能的構成について示したブロック図である。 実施機体に係るインターワーク装置を備えた通信システムの全体構成について示したブロック図である。 実施形態に係るインターワーク装置で管理されるコネクションのポインタ情報の構成例について示したブロック図である。 実施形態に係るインターワーク装置のカプセル化部のライト制御の動作について示したブロック図である。 実施形態に係るインターワーク装置のカプセル化部のタイムアウト制御の動作について示したブロック図である。 実施形態に係るインターワーク装置のカプセル化部の動作例について示したイミングチャート図である。 実施形態のインターワーク装置のカプセル化部の動作について示した説明図である。 実施形態に係るインターワーク装置のデカプセル化部のライト制御の動作について示したブロック図である。 実施形態に係るインターワーク装置のデカプセル化部のリード制御の動作について示したブロック図である。 実施形態に係るインターワーク装置でATMセルをMPLS/イーサネットフレームにカプセル化する際のフレーム構成について示した説明図である。
(A)主たる実施形態
以下、本発明による通信装置及び通信方法の実施形態を、図面を参照しながら詳述する。以下では、本発明の通信装置及び通信方法について、インターワーク装置に適用した場合の例について説明する。
(A−1)実施形態の構成
図2は、この実施形態のインターワーク装置1を用いて構成された通信システムの全体構成を示すブロック図である。
図2に示す通信システムには、2台のインターワーク装置1(1−1、1−2)が配置されている。インターワーク装置1−1、1−2の間は、MPLS/イーサネット中継網Nにより中継されている。そして、インターワーク装置1−1、1−2には、それぞれ複数のATM通信装置2が接続されている。各インターワーク装置1は、ATM網(ATM通信装置2)と、MPLS/イーサネット中継網Nとの間のメディア変換を行う機能を担っている。なお、各インターワーク装置1の配下に接続されるATM通信装置2の数や、各ATM通信装置2のATMレイヤ以上のレイヤの構成については限定されないものである。
図2に示す通信システムでは、ATM網の区間(各ATM通信装置2から、インターワーク装置1までの区間)はATMのVPC/VCC上でATMセルによるデータ搬送が行われる。また、図2に示す通信システムでは、MPLS/イーサネット網の区間(インターワーク装置1−1、1−2の間の区間)では、MPLSのLSP上でイーサネットフレーム(MPLS/イーサネットのヘッダが付与されたイーサネットフレーム、以下、「MPLS/イーサネットフレーム」とも呼ぶ)によるデータ搬送が行われる。そして、このMPLS/イーサネットフレームには、1又は複数のATMセルがカプセリングされることになる。
次に、図1、図2を用いて、インターワーク装置1(1−1、1−2)の内部構成について説明する。なお、ここでは、インターワーク装置1−1、1−2は、いずれも図1のブロック図を用いて示すことができる構成となっているものとして説明する。
図2に示すように、インターワーク装置1は、ATM網(ATM通信装置2)から受信した1又は複数のATMセル(入力セルInC)をMPLS/イーサネットフレーム(出力フレームOutF)にカプセル化する処理を行いMPLS/イーサネット中継網Nに送出する処理を行うカプセル化部10と、MPLS/イーサネット中継網Nから受信したMPLS/イーサネットフレーム(ATMセルがカプセル化された入力フレームInF)から抽出(デカプセル化)したATMセル(出力セルOutC)を対応するATM通信装置2(対応するVPC/VCC)に送出する処理を行うデカプセル化部20を有している。
図1(a)は、カプセル化部10の機能的構成について示したブロック図であり、図1(b)はデカプセル化部20の機能的構成について示したブロック図である。
まず、図1(a)を用いて、カプセル化部10の内部構成について説明する。
図1(a)に示すように、カプセル化部10は、セルバッファ部101、ポインタ格納メモリ102、読出しコネクションキュー103、多重数レジスタ104、タイマレジスタ105、セル未到着タイマ106、ライト制御部107、及びリード制御部108を有している。
セルバッファ部101は、コネクション毎に論理分割されたセルバッファを有するものである。セルバッファ部101の待ち行列制御(キュー)の方式については限定されないものであるが、ここでは、各コネクションに対応するセルバッファでFIFO(First−In First−Out)が採用されるものとする。セルバッファ部101は、コネクションごとに、複数の入力セルInCをバッファリング(保留)して、1つの出力フレームOutFにカプセル化して送出する処理を行うものである。セルバッファ部101は、ライト制御部107及びリード制御部108の制御に基づいて、入力セルInCのセルバッファへの書込み(ライト制御処理)及び、セルバッファの入力セルInCを複数読出して出力フレームOutFとして送出する処理(リード制御処理)を行う。
なおインターワーク装置1では、VPI(VP Identifire)及びVCI(VC Identifire)の組み合わせごとに1つのコネクションが認識されるものとする。また、インターワーク装置1では、各コネクションについてコネクション識別子として、コネクション番号が付与されているものとして説明する。以下では、各コネクションのコネクション番号をCN_0、CN_1、CN_2…CN_nと表すものとして説明する。なお、CN_m+1=(CN_m)+1(mは0〜nのいずれか)であるものとする。例えばCN_1=(CN_0)+1となる。仮にCN_0=0とすれば、CN_1=1、CN_2、…、CN_n=nとなる。
ポインタ格納メモリ102は、セルバッファ部101の各コネクションに係るポインタ情報PDを格納するポインタ格納メモリである。図1では、コネクション番号CN_0〜CN_nのそれぞれのコネクションに、それぞれポインタ情報PD−0〜PD−nが対応するものとして説明している。
ポインタ情報PDは、対応するコネクションに係るセルバッファに係る各ポインタ(セルバッファ上のメモリアドレス)を示している。セルバッファ部101では、コネクションごとに所定数のセルが蓄積可能な巡回的な構造(リングバッファ構造)のセルバッファが確保されているものとする。また、ポインタ情報PDを構成する各ポインタアドレスでは、1単位(1メモリアドレスごと)で1つの入力セルInCのデータが格納できるものとして説明する。なお、この実施形態において、セルバッファの構造及びポインタ情報の構成は限定されないものである。
ポインタ情報PDの内部構成は、例えば、図3のようにライトポインタWP、リードポインタRP、及び出力セルポインタOPを有する構成となっている。
ライトポインタWPは、当該セルバッファのライトポインタ(次に供給される入力セルInCのデータを書込むアドレスを示すポインタ)として機能するものである。当該セルバッファに新たな入力セルInCが書き込まれる度にライトポインタWPのアドレスがインクリメント(1加算)される。
リードポインタRPは、当該セルバッファのリードポインタ(最後に読みだされた入力セルInCのデータが格納されているアドレスを示すポインタ)として機能するものである。なお、当該セルバッファについて1つも入力セルInCの読み出しがおこなわれていない場合には、RPには、初期値(例えば「0」)が設定されるものとする。そして、この実施形態では、RP=WP+1である場合、当該セルバッファはフル状態で、これ以上新たな入力セルInCを追加できない状態を示すことになるものとする。
出力セルポインタOPは、当該セルバッファ部101に書き込まれた入力セルInCのうち、読出しコネクションキュー103でカプセル化出力を指示伝達したセルを識別するためのポインタである。例えば、RP=0、WP=3の状態で、OP=3が設定された場合、当該コネクションに係るセルバッファの1〜3のアドレスに対応する計3つのセルについてカプセル化が指示されたことを示すことになる。
読出しコネクションキュー103は、ライト制御部107からリード制御部108へリード制御処理の対象となるコネクションの情報(以下、「送信指示コネクション情報」と呼ぶ)を伝達する際の待ち行列を管理するものである。読出しコネクションキュー103には、優先度に応じて、高優先キュー103aと低優先キュー103bの二段階のキューが配置されているものとして説明する。
多重数レジスタ104はコネクション毎にカプセル化するセル数(以下、「多重数N」とも呼ぶものとする)を設定するレジスタである。
セル未到着タイマ106は、コネクション毎に入力セルInCが未到着となっている期間を監視するセル未到着タイマとして機能するものである。
タイマレジスタ105は、コネクション毎にカプセル化のタイムアウト時間の設定値(コネクションごとのセル未到着タイマ106によるタイマ値に対応するタイムアウト時間)を保持するためのレジスタである。なおコネクションごとに設定するタイマレジスタ105の値は任意の値とすることができる。
ライト制御部107は、主としてセルバッファのライト制御処理を行うものである。ライト制御部107の詳細動作については後述する動作説明において説明する。
リード制御部108は、主としてセルバッファのリード制御処理を行うものである。リード制御部108の詳細動作については、後述する動作説明において説明する。
次に、図1(b)を用いて、デカプセル化部20の内部構成について説明する。
デカプセル化部20は、セルバッファ201、ライト制御部202、及びリード制御部203を有している。なお、デカプセル化部20については、種々のインターワーク装置と同様の構成を適用することができるため、図1(b)の構成に限定されるものではない。
セルバッファ201は、入力フレームInFが供給される度に、当該入力フレームInFからATMセルを抽出して、出力セルOutCを保留(バッファリング)し、対応するVPC/VCCから、出力セルOutCとして送出する。
セルバッファ201は、ライト制御部202及びリード制御部203の制御に基づいて、入力セルInF及び出力セルOutCの処理を行う。
ライト制御部202は、セルバッファ201のライト制御処理を行うものである。
リード制御部203は、セルバッファ201リード制御処理を行うものである。
(A−2)実施形態の動作
次に、以上のような構成を有するこの実施形態の各インターワーク装置1の動作を説明する。
まず、インターワーク装置1のカプセル化部10の動作について、図4〜図6のフローチャートを用いて説明する。図4〜図6は、それぞれ、タイムアウトに伴うライト制御、及び出力フレームOutFの出力に伴うリード制御について説明している。
まず、カプセル化部10で、入力セルInCが入力された場合にライト制御部107の制御に基づいて実行されるライト制御について図4のフローチャートを用いて説明する。図4のフローチャートの処理は、インターワーク装置1(カプセル化部10)に入力セルInC入力が供給される毎に実施される。
まず、カプセル化部10で、入力セルInCが供給されたものとする(S101)。
そして、ライト制御部107により、その入力セルInCのヘッダを構成する入力セル情報(少なくとも、セルヘッダのVPI/VCIを含む情報)が取得され、ライト制御部107で入力セルInCに係るコネクションが識別処理(VPI及びVCIの組み合わせに対応するコネクション番号の検出処理)が行われる。ここでは、ライト制御部107には、予め、コネクション番号ごとのVPI及びVCIの組み合わせが登録されているものとして説明する。そして、ライト制御部107は、ポインタ格納メモリ102から、当該コネクション番号のポインタ情報(RP/WP/OP)を読出す(S102)。
そして、ライト制御部107は、当該コネクションに割当てられたセルバッファ部101上の領域がフル(満杯)であるか否かを確認(例えば、RP=WP+1であるか否かにより確認)する(S103)。
上述のステップS103で当該コネクションに係るセルバッファがフル状態と判断された場合、ライト制御部107は、今回供給された入力セルInCをセルバッファ部101に書き込まずに廃棄するようにセルバッファ部101を制御して(S104)、当該入力セルInCの処理を終了し、次の入力セルInCの到来まで待機する。
上述のステップS103で当該コネクションに係るセルバッファがフル状態でないと判断された場合(例えば、RP≠WP+1の場合)、ライト制御部107は、セルバッファ部201を制御して、当該入力セルInCを当該コネクションのセルバッファに書込ませる。さらに、ライト制御部107は、セル未到着タイマ106に、当該コネクションのタイマ値のリセット(例えば、タイマ値を0に設定)を実行させる。またこのとき、ライト制御部107は、ポインタ格納メモリ102を制御して、当該コネクションのポインタ情報PDを構成するWP更新(例えば、WP=WP+1とするインクメント処理)を実行させる。さらにこのとき、ライト制御部107は、多重数レジスタ104から当該コネクションの多重数Nをリードする(S105)。
そして、ライト制御部107は、読み込んだ、当該コネクションの多重数Nと、当該コネクションについてセルバッファで蓄積された入力セルInCの数Xと比較し、蓄積された入力セルInCの数が、多重数N未満であるか否かを判定する(S106)。
ライト制御部107は、例えば、WP+1<OP+Nを満たす場合、XがN未満であると判断できる。なおこの場合、X=WP+1−OPで表すことができる。ここでWP+1はS105におけるWP更新後のWPを意味する。
そして、蓄積された入力セルInCの数Xが、当該コネクションの多重数N未満の場合、ライト制御部107は、当該入力セルInCの処理を終了して、次の入力セルInCの到来まで待機する。
一方、蓄積された入力セルInCの数Xが、当該コネクションの多重数N以上の場合、(例えば、WP+1≧OP+Nの場合、ここでWP+1はS105におけるWP更新後のWPを意味する)、ライト制御部107は、当該コネクションで蓄積している入力セルInCについて、優先度の高い高優先キュー103a又は、高優先キュー103aよりも優先度の低い低優先キュー103bのいずれに所属させるかを判定する。さらに、ライト制御部107は、読出しコネクションキュー103(判定結果に応じた優先度のキュー)に、当該コネクションを加えるための送信指示コネクション情報を書込むための制御処理を行う。また、ライト制御部107は、ポインタ格納メモリ102に、当該コネクションに係るポインタ情報PDのOP更新(例えば、OP=OP+Nと更新)をするための制御を行い(S107)、当該入力セルInCの入力に伴う処理を終了する。
次に、上述のステップS107で、ライト制御部107が、当該コネクションで、蓄積している入力セルInCについて、高優先キュー又は低優先キューのいずれに所属させるかを判定する処理の具体例について説明する。例えば、以下に示すように、当該コネクションに係るWPとRPを用いた閾値判定処理を適用するようにしてもよい。具体的には、例えば、当該コネクションに係るWP、RP、及び多重数Nを用いて、WP+1−RP≧2Nが成立する場合に当該コネクションについて高優先キューと判定し、2N>WP+1−RP≧Nが成立する場合に当該コネクションについて低優先キューと判定するようにしてもよい。
次に、セル未到着タイマ106でタイムアウトが発生した場合にカプセル化部10で実行される処理について図5のフローチャートを用いて説明する。なお、図5のフローチャートの処理は、入力セルInCの入力(到来)タイミングとは無関係に実行される。
ライト制御部107は、起動すると、管理中の各コネクションについて巡回的に、監視処理(確認処理を行う)。具体的には、ライト制御部107は、タイムアウト監視用のコネクション番号(コネクション番号CN_mのコネクション)を選択し、当該コネクション番号に対応するタイマレジスタ105の設定値、およびセル未到着タイマ106のカウンタ値を読込む処理を行う(S201)。
そして、ライト制御部107は、読込んだセル未到着タイマ106のカウンタ値と、タイマレジスタ105の設定値とを比較し(S202)、「セル未到着タイマ106のカウンタ値≧タイマレジスタ105の設定値」が成立する場合後述するステップS204から動作し、そうでない場合は、後述するステップS203から動作する。
上述のステップS202で、「セル未到着タイマ106のカウンタ値≧タイマレジスタ105の設定値」が成立しない場合、ライト制御部107は、当該コネクション番号に対応するセル未到着タイマ106のカウンタ値を更新(例えば、セル未到着タイマ106のカウンタ値をインクリメント(1加算)する更新)を実行する(S203)。
一方上述のステップS302で、「セル未到着タイマ106のカウンタ値≧タイマレジスタ105の設定値」が成立する場合、ライト制御部107は、当該コネクション番号に対応するセル未到着タイマ106のカウンタ値をクリアする処理(例えば「0」に更新する処理)を行う。また、ライト制御部107は、ポインタ格納メモリ102から、当該コネクション番号に対応するポインタ情報PD(RP/WP/OP)を読み出し、蓄積された入力セルInC(当該コネクション番号の入力セルInC)について、高優先キュー又は低優先キューのいずれに所属するかを判定する処理を行う。なお、ライト制御部107が行うこの判定処理は、上述のステップS107と同様の処理を適用することができるため詳しい説明を省略する。ただし、セルバッファへの書込みがないため、WP+1をWPに読替えて処理を行う。さらに、ライト制御部107は、読出しコネクションキュー103(判定結果に応じた優先度のキュー)に、当該コネクションを加えるための送信指示コネクション情報(例えば、コネクション番号及び多重数を含む情報)を書込むための制御を行う。このとき、送信指示コネクション情報に書込まれる多重数をN’とした場合、例えば、N’=WP−OPとする必要がある。ここでN’はタイムアウトにより送出されるセル数を示し、通常当初の多重数N(多重数レジスタ104に設定された多重数N)より小さい値(N>N’)となる。
また、ライト制御部107は、ポインタ格納メモリ102に、当該コネクションに係るポインタ情報PDのOP更新(例えば、OP=OP+N’と更新)をするための制御を行う(S204)。
上述のステップS203又はS204の処理が完了すると、ライト制御部202は、タイムアウト監視用のコネクション番号を更新(例えば、CN_m=(CN_m)+1とするインクリメント)して(S205)、上述のステップS201の処理に戻って動作する。
次に、カプセル化部10で、リード制御部108等により行われるリード制御処理(出力フレームOutFの送出処理)について図6のフローチャートを用いて説明する。
リード制御部108は、読出しコネクションキュー103(高優先キュー103a、低優先キュー103b)の状態監視を行う(S301、S302)
リード制御部108は、高優先キュー103aが空でない場合、高優先キュー103aの待ち行列に所属する送信指示コネクション情報の処理を行うために後述するステップS303の処理に移行する。また、リード制御部108は、高優先キュー103aが空で、かつ低優先キュー103bが空でない場合は、低優先キュー103bの待ち行列に所属する送信指示コネクション情報の処理を行うために後述するステップS303の処理に移行する。さらに、リード制御部108は、高優先キュー103a及び低優先キュー103bのいずれもが空の場合には、上述のステップS301の処理に戻って、読出しコネクションキュー103(高優先キュー103a、低優先キュー103b)の状態監視を継続する。
そして、リード制御部108は、高優先キュー103a又は低優先キュー103bのいずれかの所属する送信指示コネクション情報の処理を実行すると決定した場合、その送信指示コネクション情報(コネクション番号、及び多重数Nを)を、高優先キュー103a又は低優先キュー103bから取得する。また、リード制御部108は、読み出した送信指示コネクション情報に含まれるコネクション番号をもとにポインタ格納メモリ102から、当該コネクション番号のポインタ情報PD(ライトポインタWP、リードポインタRP)を読み出して、当該コネクション番号のセルバッファの状態を確認する。さらに、リード制御部108は、当該コネクション番号のセルバッファが空の場合(例えば、RP=WPの場合)、特にリード制御処理(出力フレームOutFを読み出して送出する処理)は行わずに、ステップS303の処理を終了して、上述のステップS301に戻って動作する。さらにまた、リード制御部108は、当該コネクション番号のセルバッファが空でない場合(例えば、RP≠WPの場合)、セルバッファ部101に、当該コネクション番号に対応するセルバッファから1つの入力セルInCを読み出させ(FIFOの順序に基づいて読み出させ)、当該コネクション番号のリードポインタRPの更新処理(例えば、RP=RP+1とするインクリメントの処理)を行うように制御処理を行う。このように、リード制御部108は、セルバッファ部101を制御して、当該コネクション番号の入力セルInCを多重数N分読み出させて、1つの出力フレームOutFに挿入させる処理を行い、出力フレームOutFの生成後に、当該出力フレームOutFを送出(MPLS/イーサネット中継網N)させる処理を行う(S303)。1つの出力フレームOutFの送出処理を行った後、リード制御部108は、上述のステップS301の処理に戻って、動作する。
次に、カプセル化部10が、図4〜図6のフローチャートに従って動作した場合の具体的な動作例について、図7のタイミングチャートを用いて説明する。
図7では、任意のコネクション番号のコネクションについて、入力セルInCが到来したタイミングと出力フレームOutFが生成・送出するタイミング、及びポインタ情報(ライトポインタWP、リードポインタRP、出力セルポインタOP)の遷移について示している。また、ここでは、当該コネクションの多重数Nとして3が設定されているものとする。
図7では、タイミングT101の時点で、3つの入力セルInCが当該コネクションのセルバッファに格納され、多重数Nに達するため、1つの出力フレームOutFが生成・送出されている。その後、タイミングT102までの間に、当該コネクションについて2つの入力セルInCが到着している。そして、タイミングT102からタイミングT103までの間当該コネクションについて入力セルInCが到着せず、タイミングT103の時点で、セル未到着タイマ106がタイマレジスタ105の設定値(タイムアウト時間)に達したものとする。この時点で、多重数N(=3)未満の2つの入力セルInCしか、当該コネクションのセルバッファに蓄積されていないが、カプセル化部10は当該コネクションについてタイムアウトを検出し、2つの入力セルInCだけを挿入した出力フレームOutFを生成・送出する処理を行うことになる。
次に、インターワーク装置1を構成するデカプセル化部20の動作について、図8、図9のフローチャートを用いて説明する。図8、図9は、それぞれ、デカプセル化部20によるライト処理(入力フレームInFの入力に伴う処理)、及び、ライト処理(出力セルOutCの出力処理)について示している。
まず、デカプセル化部20で、入力フレームInFが入力された場合にライト制御部202の制御に基づいて実行されるライト制御について図8のフローチャートを用いて説明する。図8のフローチャートの処理は、インターワーク装置1(デカプセル化部20)に入力フレームInFが供給される毎に実行される。
まず、デカプセル化部20では、セルバッファ部201に、1つの入力フレームInFが供給されたものとする(S401)。
そして、ライト制御部202により、当該入力フレームInFに含まれるセル数が取得されたものとする(S402)。ライト制御部202で、入力フレームInFに含まれるセル数を取得する方法については限定されないものであるが、例えば、入力フレームInFのイーサネットフレーム長さを取得することにより、当該入力フレームInFに含まれるセル数が把握できる。ATMのセルは固定長であるため、入力フレームInFのフレーム長さに基づいて、当該入力フレームInFに含まれるセルの数(多重数)を取得することができる。
次に、ライト制御部202は、セルバッファ部201がフル状態であるか否か(空き領域の有無)を確認する(S403)。
セルバッファ部201がフル状態の場合、ライト制御部202は、当該入力フレームInFからのセルの読み出しを中止して廃棄(S404)し、後述するステップS406の処理に移行する。
一方、セルバッファ部201がフル状態でない場合、ライト制御部202は、当該入力フレームInに挿入されている未書込のセル(未だセルバッファ部201でバッファリングしていないセル)を1つ書き込んで、バッファリング(保持)するようにセルバッファ部201を制御する(S405)。
そして、ライト制御部202は、当該入力フレームInに挿入された全てのセルについてセルバッファ部201にバッファリングしたか(ステップS402で取得した多重数の回数ステップS403の処理を実行したか)を確認する(S406)。ライト制御部202は、当該入力フレームInに挿入された全ての入力フレームInFについてセルバッファ部201にバッファリングしたと確認した場合、当該入力フレームInFの処理を終了し、そうでない場合には、上述のステップS403に戻ってセルバッファ部201がフル状態であるか否か(空き領域の有無)を確認する。
次に、デカプセル化部20で、リード制御部203等により行われライト処理(入力フレームInFから抽出された出力セルOutCの出力処理)について図9のフローチャートを用いて説明する。
リード制御部203は、起動するとセルバッファ部201の空き状態を監視し(S501)、空き状態でない場合のみ、セルバッファ部201からセルを読み出して出力セルOutC(対応するコネクションのセル)として送出する(S502、S503)という処理を繰り返す。
(A−3)実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
インターワーク装置1のカプセル化部10では、読出しコネクションキュー103を搭載し、ポインタ格納メモリ102でコネクション毎にポインタ情報(RP/WP/OP)を管理している。また、ライト制御部107では、セルバッファ(セルバッファ部101)での入力セルInC蓄積状態を識別している。さらに、ライト制御部107は、カプセル化する入力セルInCに係る送信指示コネクション情報(コネクション番号及び多重数Nを含む情報)を読み出し、読出しコネクションキュー103を介して、リード制御部108に伝達している。これにより、インターワーク装置1では、例えば、リード制御部108が、コネクション毎にポインタ格納メモリ102を順次スキャンして、カプセル化可能なセルを検出する方法に比べ、カプセル化処理(出力フレームOutF生成)の低遅延化、およびレイテンシ低下によるセルバッファの容量削減といった効果を奏することができる。
インターワーク装置1のカプセル化部10では、読出しコネクションキュー103、タイマレジスタ105及びセル未到着タイマ106を搭載している。そして、カプセル化部10では、ポインタ格納メモリ102でコネクション毎にポインタ情報PD(RP/WP/OP)を管理している。また、ライト制御部107が、コネクション毎に順次タイマレジスタ105とセル未到着タイマ106を比較し、タイムアウト検出時にタイムアウトした当該コネクションの入力セルInC数を識別している。さらに、ライト制御部107が、カプセル化する送信指示コネクション情報(コネクション番号及び多重数N)を読出しコネクションキュー103でリード制御部108に伝達することで、ATMセルが多重数N未満で滞留した場合にもセル出力が可能となり、装置内のセル滞留を防ぐという効果を奏する。
インターワーク装置1のカプセル化部10では、ライト制御部107及び読出しコネクションキュー103を実装している。そして、ライト制御部107では、カプセル化する入力セルInCに係る送信指示コネクション情報(コネクション番号及び多重数N)を読出しコネクションキュー103を介してリード制御部108に伝達している。これにより、カプセル化部10では、多重数Nおよびタイムアウト値の設定値変更をセル入力時もしくはタイムアウト検出時に正規化可能となり、また、デカプセル化部20において、コネクション毎の多重数N設定値とは無関係に、受信した入力フレームInFから多重数Nを抽出し、1セル毎にセルバッファに書き込んでいる。これにより、インターワーク装置1では、サービス提供中でも無瞬断に多重数Nおよびタイムアウト値の設定値変更できるという効果を奏する。
(B)他の実施形態
本発明は、上記の実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
(B−1)上記の実施形態では、セルバッファ部101はコネクション毎に論理分割されたセルFIFOとして説明したが、セル入出力時に単位セルバッファをハント/リリースする共通セルバッファを用いてもよい。
(B−2)上記の実施形態では、入力セルInCのコネクション識別のため、セルヘッダのVPI/VCIを使用すると説明したが、これに限定するものではない。
(B−3)ポインタ格納メモリ102の管理情報の一部をOP(出力セルポインタ)として説明したが、セルバッファ内の未出力セル数を管理可能な情報であれば良い。
(B−4)上記の実施形態において、読出しコネクションキュー103は高優先キューと低優先キューの2クラスで説明したが、優先度のクラス数を限定するものではない。
また、上記の実施形態のカプセル化部10では、コネクション毎にタイムアウトを検出するように説明したが、コネクション毎ではなく、複数コネクション毎、もしくはコネクション全体に対してまとめてタイムアウトを検出しても良い。
さらに、上記の実施形態のカプセル化部10では、コネクション毎に順次タイムアウト判定(セル未到着タイマ106のクリア/更新を含む)するように説明したが、コネクション毎の順次処理ではなく、複数コネクション同時にタイムアウト判定しても良い。
(B−5)上記の実施形態のカプセル化部10では、タイムアウト検出時に、閾値判定による高優先キュー103a/低優先キュー103bの選択処理をするよう説明したが、タイムアウト検出時はセル滞留していないものと判断して優先度の判定処理を省略し、低優先キュー103bを固定的に選択しても良い。このように、上記の実施形態のカプセル化部10では、タイムアウト検出時に、どの優先度のキューを適用するかを限定するものでもない。
また、上記の実施形態のカプセル化部10では、高優先キュー103a又は低優先キュー103bを選択する閾値判定論理を説明したが、特に限定するものではない。
(B−6)上記の実施形態のカプセル化部10では、タイマレジスタ105、およびセル未到着タイマ106の最小設定値、最大設定値、設定値の詳細については説明していないが、各値にどのような値を設定するかは限定されないものである。
(B−7)上記の実施形態のデカプセル化部20を構成するライト制御部202で、入力フレームInFのイーサネットフレーム長をカウントして得た多重ATMセル数から入力セルの多重数Nを識別するように説明したが、入力フレームInFのヘッダオプションフィールドを構成するlengthを用いるようにしてもよい。
(B−8)上記の実施形態では本発明の通信装置をインターワーク装置に適用する例について説明したが、入力されたATMセルをイーサネットフレームに変換して送出する処理を行う他の装置(例えば、ルータやL3スイッチ等)に適用するようにしてもよい。
また、上記の実施形態では、本発明のインターワーク装置(通信装置)は、入力されたATMセルを、MPLS/イーサネットフレームに変換して送出する装置として説明したが、MPLS/イーサネットフレームではなく単なるイーサネットフレーム(特にMPLSに対応していないイーサネットのフレーム)として送出するようにしてもよい。
1、1−1、1−2…インターワーク装置、N…MPLS/イーサネット中継網、10…カプセル化部、101…セルバッファ部、102…ポインタ格納メモリ、103…読出しコネクションキュー、103a…高優先キュー、103b…低優先キュー、104…多重数レジスタ、105…タイマレジスタ、106…セル未到着タイマ、107…ライト制御部、108…リード制御部、InC…入力セル、OutF…出力フレーム、PD…ポインタ情報、WP…ライトポインタ、RP…リードポインタ、OP…出力セルポインタ、InF…入力フレーム、OutC…出力セル、20…デカプセル化部、201…セルバッファ部、202…ライト制御部、203…リード制御部。

Claims (4)

  1. 第1のプロトコルに従った第1のフレームを受信し、第2のプロトコルに従った第2のフレームに、受信した複数の第1のフレームを挿入して送出する通信装置において、
    第1のプロトコルに基づく1つのコネクションに対応する第1のフレームを保留するバッファを、コネクションごとに備えるバッファ手段と、
    上記バッファ手段が備えるそれぞれのバッファに保留された第1のフレームを管理するためのポインタ情報を、上記バッファごとに管理するポインタ情報管理手段と、
    コネクションごとに、第2のフレームに挿入する第1のフレーム数を示す多重数を管理する多重数管理手段と、
    第1のフレームを受信時に、当該第1のフレームに対応するコネクションのポインタ情報に基づいて、当該コネクションのバッファに保留されている第1のフレーム数を確認し、当該バッファに保留されている第1のフレーム数が、当該コネクションに対応する多重数以上の場合、当該バッファに保留されている第1のフレームを、当該コネクションに対応する多重数読出して、読出した第1のフレームを第2のフレームに挿入して送出させることを指示するためのフレーム送信指示情報を生成するフレーム送信指示情報生成手段と、
    上記フレーム送信指示情報生成手段が生成したフレーム送信指示情報の待ち行列を管理する待ち行列管理手段と、
    上記待ち行列管理手段で管理しているフレーム送信指示情報を取得し、取得したフレーム送信指示情報に基づいたバッファから、取得したフレーム送信指示情報に基づいた多重数の第1のフレームを取得して、取得した第1のフレームを挿入した第2のフレームを生成して送出するフレーム送出手段と
    を有することを特徴とする通信装置。
  2. 上記待ち行列管理手段は、優先度に応じた複数段階の待ち行列を備え、
    上記フレーム送信指示情報生成手段は、コネクションごとにバッファに保留されてる第1のフレーム数に応じた優先度を決定して、当該コネクションに係るフレーム送信指示情報を決定した優先度に応じた待ち行列に供給し、
    上記フレーム送出手段は、優先度の高い待ち行列のフレーム送信指示情報を優先的に処理する
    ことを特徴とする請求項1に記載の通信装置。
  3. コネクションごとに、第1のフレームが未到着の期間を計時する未到着計時手段をさらに備え、
    上記フレーム送信指示情報生成手段は、上記未到着計時手段で、所定期間以上第1のフレームが未到着となっているコネクションに対応するバッファに保留されている第1のフレームを読出し、読出した第1のフレームを第2のフレームに挿入して送出させることを指示するためのフレーム送信指示情報を生成する
    ことを特徴とする請求項1又は2に記載の通信装置。
  4. 第1のプロトコルに従った第1のフレームを受信し、第2のプロトコルに従った第2のフレームに、受信した複数の第1のフレームを挿入して送出する通信装置が行う通信方法において、
    バッファ手段、ポインタ情報管理手段、多重数管理手段、フレーム送信指示情報生成手段、待ち行列管理手段、及びフレーム送出手段を有し、
    上記バッファ手段は、第1のプロトコルに基づく1つのコネクションに対応する第1のフレームを保留するバッファをコネクションごとに備え、それらのバッファを用いてコネクションごとの第1のフレームを保留し、
    上記ポインタ情報管理手段は、上記バッファ手段が備えるそれぞれのバッファに保留された第1のフレームを管理するためのポインタ情報を、上記バッファごとに管理し、
    上記多重数管理手段は、コネクションごとに、第2のフレームに挿入する第1のフレーム数を示す多重数を管理し、
    上記フレーム送信指示情報生成手段は、第1のフレームを受信時に、当該第1のフレームに対応するコネクションのポインタ情報に基づいて、当該コネクションのバッファに保留されている第1のフレーム数を確認し、当該バッファに保留されている第1のフレーム数が、当該コネクションに対応する多重数以上の場合、当該バッファに保留されている第1のフレームを、当該コネクションに対応する多重数読出して、読出した第1のフレームを第2のフレームに挿入して送出させることを指示するためのフレーム送信指示情報を生成し、
    上記待ち行列管理手段は、上記フレーム送信指示情報生成手段が生成したフレーム送信指示情報の待ち行列を管理し、
    上記フレーム送出手段は、上記待ち行列管理手段で管理しているフレーム送信指示情報を取得し、取得したフレーム送信指示情報に基づいたバッファから、取得したフレーム送信指示情報に基づいた多重数の第1のフレームを取得して、取得した第1のフレームを挿入した第2のフレームを生成して送出する
    ことを特徴とする通信方法。
JP2013230148A 2013-11-06 2013-11-06 通信装置及び通信方法 Active JP6197586B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013230148A JP6197586B2 (ja) 2013-11-06 2013-11-06 通信装置及び通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013230148A JP6197586B2 (ja) 2013-11-06 2013-11-06 通信装置及び通信方法

Publications (2)

Publication Number Publication Date
JP2015091022A JP2015091022A (ja) 2015-05-11
JP6197586B2 true JP6197586B2 (ja) 2017-09-20

Family

ID=53194372

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013230148A Active JP6197586B2 (ja) 2013-11-06 2013-11-06 通信装置及び通信方法

Country Status (1)

Country Link
JP (1) JP6197586B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3153432B2 (ja) * 1994-03-31 2001-04-09 株式会社日立製作所 セル多重化装置
US7420983B2 (en) * 2003-03-13 2008-09-02 Alcatel Lucent Dynamic assignment of re-assembly queues
JP4864461B2 (ja) * 2006-01-04 2012-02-01 株式会社日立製作所 Atmコンバータ
JP5880022B2 (ja) * 2011-12-22 2016-03-08 沖電気工業株式会社 伝送システム、送信装置、受信装置、送信プログラム及び受信プログラム

Also Published As

Publication number Publication date
JP2015091022A (ja) 2015-05-11

Similar Documents

Publication Publication Date Title
JP3866425B2 (ja) パケットスイッチ
US5917828A (en) ATM reassembly controller and method
US8576713B2 (en) Traffic generator with priority flow control
US5379295A (en) Cross-connect system for asynchronous transfer mode
US8520529B2 (en) Reordering network traffic
JP2000151633A5 (ja)
JP2006262517A (ja) ネットワークキングシステム
JPH05219098A (ja) フレーム変換方法及び装置
JP5115066B2 (ja) パケット伝送方法及び装置
JP2001127766A (ja) ラインインターフェース装置、及び、パケット交換機
JP2003338837A (ja) パケット通信システムにおける通信品質保証方法及び転送遅延保証機能付きパケット通信装置
US9065764B2 (en) Method, apparatus and system for maintaining quality of service QoS
JPWO2004066570A1 (ja) ネットワークスイッチ装置およびネットワークスイッチ方法
JP3632229B2 (ja) Atm交換装置
CN101026549A (zh) 在交换机体系结构中的功率降低
US6721310B2 (en) Multiport non-blocking high capacity ATM and packet switch
EP1172974A2 (en) Method and apparatus for packet reassembly in a communication switch
JP4652314B2 (ja) イーサoamスイッチ装置
US7203198B2 (en) System and method for switching asynchronous transfer mode cells
JP6197586B2 (ja) 通信装置及び通信方法
US20030072268A1 (en) Ring network system
US20100138554A1 (en) Interfacing with streams of differing speeds
US20050081003A1 (en) Apparatus and method for efficient data storage in a digital logic device
JP3416156B2 (ja) 種々の優先度のバーチャルコネクションを介して情報セルを伝送する方法および回路装置
JP3848962B2 (ja) パケット交換機およびセル転送制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160816

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170608

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170807

R150 Certificate of patent or registration of utility model

Ref document number: 6197586

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150