イーサネット(登録商標)のインタフェース速度の高速化が、通信需要の増大とともに進んでいる。1リンク当たり1Mb/sクラスの低速なインタフェースから、1リンク当たり100Gb/sクラスの高速なインタフェースまで、通信回線の高速化の需要とともに多様な速度のインタフェースが標準化された。
将来の通信回線の高速化の需要に対応するため、マルチレーン伝送システムが検討されている(非特許文献1参照)。マルチレーン伝送システムは、並列に配線された複数の伝送路(マルチレーン)にクライアントデータを割り当てることによって、通信回線の高速化を実現する。
図7は、マルチレーン伝送システムの通信方式の概要を示す図である。マルチレーン伝送システムでは、伝送路データ生成部200は、1台以上のクライアント装置100のクライアントデータを、1本以上の伝送路300を介して、伝送路データ分離部400に転送する。クライアント装置100のクライアントデータの伝送速度は、クライアント装置100ごとに異なっていてもよい(例えば、10Gb/s〜100Gb/s)。伝送路300では、一律な伝送速度(例えば、100Gb/s)で転送される。伝送路300の本数は、クライアント装置100の台数や、クライアントデータの伝送速度には依存しない。
送信装置(送信ノード)の伝送路データ生成部200は、クライアント装置100−1〜100−5のクライアントデータを、固定長のデータブロックに分割する。伝送路データ生成部200は、予め定められた方法でクライアントデータのデータブロックを多重化する。同じクライアント装置100のクライアントデータのデータブロックは、複数の伝送路300に分散されてもよい。
伝送路データ生成部200は、ブロックマッピング情報を伝送路300ごとに生成する。ブロックマッピング情報とは、伝送路データにおけるデータブロックの配置(マッピング)を表す情報である。データブロックの配置は、伝送路データの先頭を基準としたブロック位置と、クライアントデータの先頭を基準としたブロック位置との対応関係によって表される。ブロック位置の対応関係は任意である。伝送路データ生成部200は、一定数のデータブロックを伝送路300−1〜300−3に割り当てることによって、伝送路300ごとに伝送路データを生成する。
伝送路データ(主信号)における、クライアントデータのデータブロック(以下、「クライアントデータブロック」という。)の列には、オーバーヘッドデータブロックが定期的に挿入される。オーバーヘッドデータブロックは、ブロックマッピング情報を格納することが可能である。伝送路データ生成部200は、ブロックマッピング情報を含むオーバーヘッドデータブロックと伝送路データのクライアントデータブロックの列とを、周期的に受信装置に送信する。
なお、マルチレーン伝送システムを制御するネットワーク制御装置は、ブロックマッピング情報を生成してもよい。マルチレーン伝送システムを制御するネットワーク制御装置は、ブロックマッピング情報を送信装置及び受信装置に送信してもよい。
受信装置(受信ノード)の伝送路データ分離部400は、複数の伝送路300の伝送路データを、ブロック単位で分離多重する。伝送路データ分離部400は、分離多重された伝送路データとブロックマッピング情報とに基づいて、クライアントデータを復元する。
図8は、従来のマルチレーン伝送システムの構成の第1例を示す図である。図8では、マルチレーン伝送システムは、送信装置(送信ノード)と、受信装置(受信ノード)とを備える。送信装置は、伝送路データにおけるクライアントデータブロックの列に挿入されたオーバーヘッドデータブロック(オーバーヘッド領域)を用いて、ブロックマッピング情報を受信装置に送信する。
図8では、送信装置は、複数のブロック分割部と、複数のバッファメモリと、伝送路データ生成部200と、複数のオーバーヘッド挿入部とを備える。ブロック分割部は、クライアントデータをクライアント装置から取得する。ブロック分割部は、クライアントデータを固定長の複数のクライアントデータブロックに分割する。ブロック分割部は、複数のクライアントデータブロックを、送信装置のバッファメモリに記憶させる。これによって、送信装置のバッファメモリは、クライアント装置ごとのクライアントデータの伝送速度の違いを吸収することができる。
伝送路データ生成部200は、伝送路300のクロックに同期して、クライアントデータブロックをバッファメモリから取得する。伝送路データ生成部200は、定められたブロック位置にクライアントデータブロックを配置することによって、伝送路データを生成する。
オーバーヘッド挿入部は、オーバーヘッドデータブロックにブロックマッピング情報を格納する。オーバーヘッド挿入部は、伝送路データを用いてブロックマッピング情報を受信装置に通知する場合、伝送路データにおけるクライアントデータブロックの列にオーバーヘッドデータブロックを挿入する。オーバーヘッド挿入部は、クライアントデータブロックの列とオーバーヘッドデータブロックとを含む伝送路データを受信装置に送信する。
受信装置は、複数のオーバーヘッド分離部と、伝送路データ分離部400と、複数のバッファメモリと、複数のブロック結合部とを備える。オーバーヘッド分離部は、伝送路データのデータブロック同士を分離する。オーバーヘッド分離部は、オーバーヘッドデータブロックからブロックマッピング情報を抽出する。
伝送路データ分離部400は、伝送路データのデータブロック同士を分離する。伝送路データ分離部400は、ブロックマッピング情報に基づいて、クライアントデータブロックの列を復元する。伝送路データ分離部400は、宛先のクライアント装置ごとに、受信装置のバッファメモリにクライアントデータのブロックの列を記憶させる。ブロック結合部は、クライアントデータブロックの列を結合することによって、クライアントデータを復元する。
図9は、ブロックマッピング情報を格納したオーバーヘッドデータブロックを示す図である。オーバーヘッドデータブロックは、ブロックマッピング情報を格納する。オーバーヘッドデータブロックは、制御情報を更に格納してもよい。伝送路データには、ブロック位置が定められている。伝送路データにおいて、6個のクライアントデータブロックごとに1個のオーバーヘッドデータブロックが挿入される。
図9の上段に示すように、データブロックのデータ長が十分な長さである場合、1個のオーバーヘッドデータブロックは、6個のクライアントデータブロックのブロック位置に関するブロックマッピング情報を格納することができる。図9の下段に示すように、データブロックのデータ長が十分な長さでない場合、1個のオーバーヘッドデータブロックは、マルチフレーム構成に基づいて、1個のクライアントデータブロックのブロック位置に関するブロックマッピング情報を格納することができる。
受信装置は、周期的に取得したオーバーヘッドデータブロックから、ブロックマッピング情報を周期的に抽出する。受信装置は、ブロックマッピング情報に基づいて、伝送路データからクライアントデータを復元することができる。
伝送路データ生成部200は、伝送路の帯域に関係なく、伝送速度の異なる複数のクライアントデータを複数の伝送路300に割り当てる。これによって、伝送路データ生成部200は、例えば10Gb/sのクライアントデータに、100GBASE−Rの一部を、サブレートとして割り当てることができる。
伝送路データ生成部200は、100GBASE−Rのイーサネット(登録商標)の3本の伝送路300を論理的に束ねることによって、300Gb/sの通信を実行する。これによって、伝送路データ生成部200は、物理インタフェースの余剰帯域を、他のトラフィックに無駄なく割り当てることができる。伝送路データ生成部200は、単一の伝送速度の伝送路300を統一的に用いることによって、コストを削減することができる。
図10は、伝送路データの切り替え手順を示すシーケンス図である。図10では、現用系伝送路データは、現用系のブロックマッピング情報に基づく3個のクライアントデータブロックから構成される伝送路データである。図10では、予備系伝送路データは、予備系のブロックマッピング情報に基づく3個のクライアントデータブロックから構成される伝送路データである。
伝送路データ生成部200は、オーバーヘッドデータブロックに基づいて、現用系のブロックマッピング情報と予備系のブロックマッピング情報とを記憶する。伝送路データ分離部400は、オーバーヘッドデータブロックに基づいて、現用系のブロックマッピング情報と予備系のブロックマッピング情報とを記憶する。
伝送路データ生成部200は、現用系伝送路データ及び予備系伝送路データを生成する。図10では、現用系伝送路データは、アクティブ状態となっているデータ(a,b,c)である。予備系伝送路データは、スタンバイ状態となっているデータ(d,e,f)である。現用系伝送路データ及び予備系伝送路データについて、アクティブ状態及びスタンバイ状態が任意のタイミングで切り替えられることによって、伝送路データの構成は変更される。
送信装置は、現用系伝送路データ又は予備系伝送路データのいずれがアクティブ状態であるかを示す制御情報をオーバーヘッドデータブロックに格納する。受信装置は、現用系伝送路データ又は予備系伝送路データのうちアクティブ状態である伝送路データを、制御情報に基づいて選択する。受信装置は、選択された伝送路データのクライアントデータブロックに格納されたブロックマッピング情報に基づいて、クライアントデータを復元する。
送信装置は、現用系伝送路データから予備系伝送路データに伝送路データを切り替える場合、予備系伝送路データを示す制御情報を送信してから、予備系伝送路データを送信する。受信装置は、予備系伝送路データを示す制御情報に基づいて、予備系のブロックマッピング情報を選択する。受信装置は、予備系のブロックマッピング情報に基づいて、予備系伝送路データからクライアントデータを復元する。これによって、現用系伝送路データはスタンバイ状態となる。予備系伝送路データはアクティブ状態となる。
図10では、送信装置は、現用系伝送路データを示す制御情報を送信する前に、現用系伝送路データをデータ(g,h,i)に変更する。送信装置は、予備系伝送路データから現用系伝送路データに伝送路データを切り替える場合、現用系伝送路データを示す制御情報を送信してから、現用系伝送路データを送信する。図10では、送信装置は、伝送路データの送信を中断することなく、現用系伝送路データと予備系伝送路データとを切り替えることができる。送信装置は、現用系伝送路データのクライアントデータブロックを、予備系伝送路データの任意のブロック位置に配置してもよい。
図11は、伝送路データの送信方法の例を示す図である。伝送路データ生成部200は、クライアントデータを、クライアント装置ごとに取得する。図11では、伝送路データ生成部200は、クライアントデータブロック「A1」〜「A3」を含むクライアントデータを取得する。伝送路データ生成部200は、クライアントデータブロック「B1」及び「B2」を含むクライアントデータを取得する。伝送路データ生成部200は、クライアントデータブロック「C1」及び「C2」を含むクライアントデータを取得する。
図11では、送信装置の伝送路データ生成部200は、クライアントデータブロック「A1」、「B2」、「C1」及び「C2」を含む伝送路データを、伝送路300−1を介して伝送路データ分離部400に送信する。送信装置の伝送路データ生成部200は、クライアントデータブロック「A2」、「A3」及び「B1」を含む伝送路データを、伝送路300−2を介して伝送路データ分離部400に送信する。
図12は、伝送路データの切替方法の例を示す図である。送信装置の伝送路データ生成部200は、現用系伝送路データを生成する。伝送路データの切替の前において、現用系伝送路データはアクティブ状態である。以下、クライアントデータブロックが割り当てられずに空きとなっているブロック位置を「空きブロック位置」という。伝送路データの切替の前において、伝送路300−2を介して送信される現用系伝送路データのブロック位置「4」は、空きブロック位置である。
送信装置の伝送路データ生成部200は、予備系伝送路データを生成する。予備系伝送路データは、現用系伝送路データと異なる。予備系伝送路データでは、伝送路300−1を介して送信される伝送路データのクライアントデータブロック「A1」は、伝送路300−2を介して送信される伝送路データのブロック位置「4」に配置されている。伝送路データの切替の前において、予備系伝送路データはスタンバイ状態である。
送信装置の伝送路データ生成部200は、予備系伝送路データのブロックマッピング情報を伝送路データ分離部400が取得した場合、伝送路300−1及び300−2においてアクティブ状態となる伝送路データを、現用系伝送路データから予備系伝送路データに切り替える。伝送路データ分離部400は、伝送路300−1及び300−2においてアクティブ状態となる伝送路データを、現用系伝送路データから予備系伝送路データに切り替える。
これによって、従来のマルチレーン伝送システムのデータブロック配置変更装置(送信装置及び受信装置)は、伝送路300−1を介して送信される伝送路データのブロック位置「1」に配置されているクライアントデータブロック「A1」を、伝送路300−2を介して送信される伝送路データのブロック位置「4」に配置することができる。
図13は、従来のマルチレーン伝送システムの構成の第2例を示す図である。図13では、マルチレーン伝送システムは、伝送路データ生成部200と、伝送路データ分離部400とを備える。ネットワーク制御装置600は、現用系伝送路データ又は予備系伝送路データを示す制御情報を、送信装置及び受信装置に送信する。図13では、オーバーヘッドデータブロックは、ブロックマッピング情報を格納しなくてもよい。ネットワーク制御装置600は、ブロックマッピング情報を送信装置及び受信装置に送信する。
本発明の実施形態について、図面を参照して詳細に説明する。
(第1実施形態)
図1は、マルチレーン伝送システム10の構成の例を示す図である。マルチレーン伝送システム10は、複数の伝送路を介してクライアントデータを送信するシステムである。マルチレーン伝送システム10は、送信装置20と、伝送路30−1〜30−M(Mは、2以上の整数)と、受信装置40とを備える。マルチレーン伝送システム10は、ネットワーク制御装置70を更に備えてもよい。ネットワーク制御装置70は、送信装置20又は受信装置40に含まれてもよい。
クライアント装置50−n(nは、1以上N以下の整数。Nは、1以上の整数。)は、送信装置20と伝送路30−1〜30−Mと受信装置40とを介して、クライアントデータをクライアント装置60−nに送信する。以下、Nは、一例として3である。
送信装置20(送信ノード)は、クライアントデータに基づく伝送路データを、伝送路30−1〜30−Mを介して受信装置40に送信するための通信装置である。送信装置20は、伝送路30−1〜30−Mを介して、クライアントデータを受信装置40に送信する。送信装置20は、ブロックマッピング情報を含むオーバーヘッドデータブロックを、受信装置40に送信してもよい。以下、伝送路30−1〜30−Mに共通する事項については、符号の一部を省略して「伝送路30」と表記する。以下、Mは、一例として2である。
送信装置20は、ブロック分割部21−1〜21−Nと、バッファメモリ22−1〜22−Nと、伝送路データ生成部23と、ブロック複製部24と、オーバーヘッド挿入部25とを備える。
ブロック分割部21と伝送路データ生成部23とブロック複製部24とオーバーヘッド挿入部25とのうち一部または全部は、例えば、CPU(Central Processing Unit)等のプロセッサが、記憶部に記憶されたプログラムを実行することにより機能するソフトウェア機能部である。また、これらの機能部のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)等のハードウェア機能部であってもよい。
以下、クライアント装置50−1のクライアントデータの伝送速度(伝送レート)と、クライアント装置50−2のクライアントデータの伝送速度と、クライアント装置50−3のクライアントデータの伝送速度とは、異なっていてもよい。
ブロック分割部21−nは、クライアントデータをクライアント装置50−nから取得する。ブロック分割部21は、クライアントデータを固定長の複数のクライアントデータブロックに分割する。ブロック分割部21は、複数のクライアントデータブロックを、バッファメモリ22−nに記憶させる。
バッファメモリ22は、磁気ハードディスク装置や半導体記憶装置等の不揮発性の記憶媒体(非一時的な記録媒体)を有する記憶装置を用いて構成される。バッファメモリ22は、例えば、RAM(Random Access Memory)やレジスタなどの揮発性の記憶媒体を有していてもよい。バッファメモリ22は、複数のクライアントデータブロックを記憶する。これによって、バッファメモリ22は、クライアント装置50ごとのクライアントデータの伝送速度の違いを吸収することができる。
伝送路データ生成部23は、伝送路30のクロックに同期して、クライアントデータブロックをバッファメモリから取得する。伝送路データ生成部23は、ブロックマッピング情報を生成する。伝送路データ生成部23は、生成したブロックマッピング情報において定められたブロック位置にクライアントデータブロックを配置することによって、伝送路30ごとに伝送路データを生成する。
ブロック複製部24は、生成された伝送路データのクライアントデータブロックのうち任意のクライアントデータブロックを、任意の伝送路30の伝送路データにおける任意の空きブロック位置に複製する。
オーバーヘッド挿入部25(送信部)は、オーバーヘッドデータブロックにブロックマッピング情報を格納する。オーバーヘッド挿入部25は、伝送路データを用いてブロックマッピング情報を受信装置40に通知する場合、伝送路データにおけるクライアントデータブロックの列に、オーバーヘッドデータブロックを挿入する。オーバーヘッド挿入部25は、クライアントデータブロックの列とオーバーヘッドデータブロックとを含む伝送路データを、受信装置40に送信する。
伝送路30−1〜30−3は、送信装置20と受信装置40との間に並列に配線された通信回線である。伝送路30は、例えば、光ファイバである。伝送路30は、例えば、同軸ケーブルでもよい。伝送路30は、クライアントデータに基づいて生成された伝送路データを送信する。
受信装置40(受信ノード)は、クライアントデータに基づく伝送路データを、伝送路30−1〜30−3を介して送信装置20から取得するための通信装置である。受信装置40は、ブロックマッピング情報に基づいて、クライアントデータを伝送路データから復元する。受信装置40は、伝送路データに基づいて復元したクライアントデータを、クライアント装置60−1〜60−Nに送信する。なお、受信装置40は、伝送路30−1〜30−3を介して、通信データを送信装置20に送信してもよい。
受信装置40は、オーバーヘッド分離部41−1〜41−Mと、伝送路データ分離部42と、ブロック破棄部43と、バッファメモリ44−1〜44−Nと、ブロック結合部45−1〜45−Nとを備える。オーバーヘッド分離部41と伝送路データ分離部42とブロック結合部45とのうち一部または全部は、例えば、CPU等のプロセッサが、記憶部に記憶されたプログラムを実行することにより機能するソフトウェア機能部である。また、これらの機能部のうち一部または全部は、LSIやASIC等のハードウェア機能部であってもよい。
オーバーヘッド分離部41は、伝送路データからオーバーヘッドデータブロックを分離する。オーバーヘッド分離部41は、伝送路データのオーバーヘッドデータブロックからブロックマッピング情報を抽出する。
伝送路データ分離部42は、伝送路データのクライアントデータブロック同士を分離する。伝送路データ分離部42(ブロック列生成部)は、伝送路30を介して、ブロックマッピング情報を取得する。伝送路データ分離部42は、ブロックマッピング情報に基づいて、クライアントデータブロックの列を生成する。伝送路データ分離部42は、伝送路30を介して、更新されたブロックマッピング情報を取得する。伝送路データ分離部42は、更新されたブロックマッピング情報に基づいて、クライアントデータブロックの列を生成する。
ブロック破棄部43は、オーバーヘッド分離部41によってオーバーヘッドデータブロックが分離された伝送路データを、伝送路30ごとに取得する。ブロック破棄部43は、異なる伝送路30を介して送信された複数の伝送路データにおいて内容が同じであるクライアントデータブロックがある場合、いずれかのクライアントデータブロックを破棄する。ブロック破棄部43は、内容が同じであるクライアントデータブロックが破棄された残りのクライアントデータブロックの列を、宛先のクライアント装置60ごとにバッファメモリ44に記憶させる。
バッファメモリ44は、磁気ハードディスク装置や半導体記憶装置等の不揮発性の記憶媒体(非一時的な記録媒体)を有する記憶装置を用いて構成される。バッファメモリ44は、例えば、RAMやレジスタなどの揮発性の記憶媒体を有していてもよい。
ブロック結合部45は、クライアントデータブロックの列を結合することによって、クライアントデータを復元する。ブロック結合部45−nは、復元したクライアントデータをクライアント装置60−nに送信する。
ネットワーク制御装置70は、サーバ装置等の情報処理装置である。ネットワーク制御装置70は、送信装置20及び受信装置40の間の通信を制御する。ネットワーク制御装置70は、制御チャネルを介して、送信装置20及び受信装置40と通信する。
図2は、伝送路データの送信方法の例を示す図である。伝送路データ生成部23は、クライアントデータを、クライアント装置50ごとに取得する。図2では、伝送路データ生成部23は、クライアントデータブロック「A1」〜「A3」を含むクライアントデータを、クライアント装置50−1から取得する。伝送路データ生成部23は、クライアントデータブロック「B1」及び「B2」を含むクライアントデータを、クライアント装置50−2から取得する。伝送路データ生成部23は、クライアントデータブロック「C1」及び「C2」を含むクライアントデータを、クライアント装置50−3から取得する。
図2では、任意の時刻t0において、伝送路データ生成部23は、クライアントデータブロック「A1」、「B2」、「C1」及び「C2」を含む現用系伝送路データを、伝送路30−1を介して伝送路データ分離部42に送信する。任意の時刻t0において、伝送路データ生成部23は、クライアントデータブロック「A2」、「A3」及び「B1」を含む現用系伝送路データを、伝送路30−2を介して伝送路データ分離部42に送信する。
図2では、一例として、ブロック複製部24は、伝送路30−1の伝送路データにおけるクライアントデータブロック「A1」の複製である複製データブロック「A1」を、伝送路30−2の伝送路データにおける空きブロック位置「4」に配置する。具体的には、ブロック複製部24は、伝送路30−1の伝送路データにおけるクライアントデータブロック「A1」の複製である複製データブロック「A1」を、伝送路30−2の伝送路データにおける空きブロック位置「4」に配置する。さらに、ブロック複製部24は、伝送路30−1の伝送路データにおけるクライアントデータブロック「A1」を、伝送路30−1の伝送路データにおけるブロック位置「1」から削除する。
図3は、伝送路データの切替方法の例を示すシーケンス図である。図3では、予備系伝送路データは、現用系伝送路データと異なる。予備系伝送路データでは、伝送路30−1を介して送信される伝送路データのクライアントデータブロック「A1」は、伝送路30−2を介して送信される伝送路データのブロック位置「4」に配置されている。したがって、図3では、伝送路30−1の伝送路データは、クライアントデータブロック「A1」の配置元(複製元)の伝送路データである。伝送路30−2の伝送路データは、クライアントデータブロック「A1」の配置先(複製先)の伝送路データである。
図3に示す時刻t0から時刻t1前について説明する。
伝送路30−1における現用系伝送路データは、アクティブ状態である。伝送路30−2における現用系伝送路データは、アクティブ状態である。伝送路30−1における予備系伝送路データは、スタンバイ状態である。伝送路30−2における予備系伝送路データは、スタンバイ状態である。
送信装置20の伝送路データ生成部23は、伝送路30−1におけるクライアントデータブロック「A1」、「C1」、「B2」及び「C2」を含む現用系伝送路データを、現用系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−1における現用系伝送路データのブロック位置「1」に、クライアントデータブロック「A1」を配置する。
送信装置20の伝送路データ生成部23は、伝送路30−2におけるクライアントデータブロック「B1」、「A2」及び「A3」を含む現用系伝送路データを、現用系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−2における現用系伝送路データのブロック位置「4」を、空きブロックにする。
送信装置20の伝送路データ生成部23は、伝送路30−1におけるクライアントデータブロック「C1」、「B2」及び「C2」を含む予備系伝送路データを、予備系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−1における予備系伝送路データのブロック位置「1」を、空きブロックにする。
送信装置20の伝送路データ生成部23は、伝送路30−2におけるクライアントデータブロック「B1」、「A2」、「A3」及び「A1」を含む予備系伝送路データを、予備系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−2における予備系伝送路データのブロック位置「4」に、クライアントデータブロック「A1」の複製である複製データブロック「A1」を配置する。
伝送路データ生成部23は、現用系のブロックマッピング情報を受信装置40が取得している場合、クライアントデータブロック「A1」、「C1」、「B2」及び「C2」を含む現用系伝送路データを、伝送路30−1を介して受信装置40に送信する。受信装置40の伝送路データ分離部42は、クライアントデータブロック「A1」、「C1」、「B2」及び「C2」を含む現用系伝送路データを、伝送路30−1を介して送信装置20から取得する。
伝送路データ生成部23は、現用系のブロックマッピング情報を受信装置40が取得している場合、クライアントデータブロック「B1」、「A2」及び「A3」を含む現用系伝送路データを、伝送路30−2を介して受信装置40に送信する。受信装置40の伝送路データ分離部42は、クライアントデータブロック「B1」、「A2」及び「A3」を含む現用系伝送路データを、伝送路30−2を介して送信装置20から取得する。
図3に示す時刻t1から時刻t3前について説明する。
伝送路30−1における現用系伝送路データは、アクティブ状態である。伝送路30−2における現用系伝送路データは、スタンバイ状態である。伝送路30−1における予備系伝送路データは、スタンバイ状態である。伝送路30−2における予備系伝送路データは、アクティブ状態である。
送信装置20の伝送路データ生成部23は、伝送路30−1におけるクライアントデータブロック「A1」、「C1」、「B2」及び「C2」を含む現用系伝送路データを、現用系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−1における現用系伝送路データのブロック位置「1」に、クライアントデータブロック「A1」を配置する。
送信装置20の伝送路データ生成部23は、伝送路30−2におけるクライアントデータブロック「B1」、「A2」及び「A3」を含む現用系伝送路データを、現用系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−2における現用系伝送路データのブロック位置「4」を、空きブロックにする。
送信装置20の伝送路データ生成部23は、伝送路30−1におけるクライアントデータブロック「C1」、「B2」及び「C2」を含む予備系伝送路データを、予備系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−1における予備系伝送路データのブロック位置「1」を、空きブロックにする。
送信装置20の伝送路データ生成部23は、伝送路30−2におけるクライアントデータブロック「B1」、「A2」、「A3」及び「A1」を含む予備系伝送路データを、予備系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−2における予備系伝送路データのブロック位置「4」に、クライアントデータブロック「A1」の複製である複製データブロック「A1」を配置する。
伝送路データ生成部23は、現用系のブロックマッピング情報を受信装置40が取得している場合、クライアントデータブロック「A1」、「C1」、「B2」及び「C2」を含む現用系伝送路データを、伝送路30−1を介して受信装置40に送信する。受信装置40の伝送路データ分離部42は、クライアントデータブロック「A1」、「C1」、「B2」及び「C2」を含む現用系伝送路データを、伝送路30−1を介して送信装置20から取得する。
伝送路データ生成部23は、図1に示すネットワーク制御装置70が送信した伝送路データ切替命令に応じて、伝送路30−1を介して送信する伝送路データを現用系伝送路データから予備系伝送路データに切り替える。伝送路データ切替命令とは、伝送路データを切り替えるための命令である。
伝送路データ生成部23は、予備系のブロックマッピング情報を受信装置40が取得している場合、クライアントデータブロック「B1」、「A2」、「A3」及び「A1」を含む予備系伝送路データを、伝送路30−2を介して受信装置40に送信する。受信装置40の伝送路データ分離部42は、クライアントデータブロック「B1」、「A2」、「A3」及び「A1」を含む予備系伝送路データを、伝送路30−2を介して送信装置20から取得する。
図3に示す時刻t1から時刻t3前において、クライアントデータブロック「A1」は、伝送路30−1と伝送路30−2とにおいて重複して送信されるデータブロックである。以下、異なる伝送路において内容が重複している(同一である)クライアントデータブロックのうち破棄される対象のクライアントデータブロックを「破棄データブロック」という。
伝送路データ分離部42は、伝送路30−2を介して送信された破棄データブロック「A1」を、図1に示すネットワーク制御装置70が送信したデータブロック破棄命令に応じて、時刻t1から時刻t2前において破棄する。データブロック破棄命令とは、重複して送信された複数のデータブロックのうち破棄する対象のデータブロックを指示するための命令である。伝送路データ分離部42は、図1に示すネットワーク制御装置70が送信した破棄データブロック切替命令に応じて、時刻t1から時刻t3前における任意の時刻t2において破棄データブロックを切り替える。破棄データブロック切替命令とは、重複して送信された複数のデータブロックのうち破棄する対象を切り替えるための命令である。伝送路データ分離部42は、時刻t2から時刻t3前において、伝送路30−1を介して送信された破棄データブロック「A1」を破棄する。
図3に示す時刻t3以降について説明する。
伝送路30−1における現用系伝送路データは、スタンバイ状態である。伝送路30−2における現用系伝送路データは、スタンバイ状態である。伝送路30−1における予備系伝送路データは、アクティブ状態である。伝送路30−2における予備系伝送路データは、アクティブ状態である。
送信装置20の伝送路データ生成部23は、伝送路30−1におけるクライアントデータブロック「A1」、「C1」、「B2」及び「C2」を含む現用系伝送路データを、現用系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−1における現用系伝送路データのブロック位置「1」に、クライアントデータブロック「A1」を配置する。
送信装置20の伝送路データ生成部23は、伝送路30−2におけるクライアントデータブロック「B1」、「A2」及び「A3」を含む現用系伝送路データを、現用系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−2における現用系伝送路データのブロック位置「4」を、空きブロックにする。
送信装置20の伝送路データ生成部23は、伝送路30−1におけるクライアントデータブロック「C1」、「B2」及び「C2」を含む予備系伝送路データを、予備系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−1における予備系伝送路データのブロック位置「1」を、空きブロックにする。
送信装置20の伝送路データ生成部23は、伝送路30−2におけるクライアントデータブロック「B1」、「A2」、「A3」及び「A1」を含む予備系伝送路データを、予備系のブロックマッピング情報に基づいて生成する。伝送路データ生成部23は、伝送路30−2における予備系伝送路データのブロック位置「4」に、クライアントデータブロック「A1」の複製である複製データブロック「A1」を配置する。
伝送路データ生成部23は、受信装置40が破棄データブロックの切替を完了した場合、クライアントデータブロック「C1」、「B2」及び「C2」を含む予備系伝送路データを、伝送路30−1を介して受信装置40に送信する。受信装置40の伝送路データ分離部42は、クライアントデータブロック「C1」、「B2」及び「C2」を含む予備系伝送路データを、伝送路30−1を介して送信装置20から取得する。
伝送路データ生成部23は、受信装置40が破棄データブロックの切替を完了した場合、クライアントデータブロック「B1」、「A2」、「A3」及び「A1」を含む予備系伝送路データを、伝送路30−2を介して受信装置40に送信する。受信装置40の伝送路データ分離部42は、クライアントデータブロック「B1」、「A2」、「A3」及び「A1」を含む予備系伝送路データを、伝送路30−2を介して送信装置20から取得する。
したがって、図3に示す予備系伝送路データでは、クライアントデータブロック「A1」が配置されるブロック位置は、現用系伝送路データと比較して、伝送路30−1における伝送路データのブロック位置から、伝送路30−2における伝送路データのブロック位置に変更されている。
図4は、ネットワーク制御装置70による伝送路データの切替方法の例を示すシーケンス図である。時刻t0において、送信装置20は、伝送路30−1を介して、現用系伝送路データを受信装置40に送信する(ステップS101)。時刻t0において、送信装置20は、伝送路30−2を介して、現用系伝送路データを受信装置40に送信する(ステップS102)。
時刻t0から時刻t1前において、ネットワーク制御装置70は、伝送路30−2を介して現用系伝送路データを送信している送信装置20に、伝送路データ切替命令を送信する(ステップS103)。時刻t0から時刻t1前において、ネットワーク制御装置70は、伝送路30−2を介して現用系伝送路データを取得している受信装置40に、データブロック破棄替命令を送信する(ステップS104)。
時刻t1において、送信装置20は、伝送路データ切替命令に基づいて、伝送路30−2を介して予備系伝送路データを受信装置40に送信する(ステップS105)。時刻t1から時刻t2前において、受信装置40は、データブロック破棄替命令に基づいて、破棄データブロックを破棄する。時刻t1から時刻t2前において、ネットワーク制御装置70は、破棄データブロック切替命令を受信装置40に送信する(ステップS106)。
時刻t2において、受信装置40は、破棄データブロック切替命令に基づいて、伝送路30−2におけるクライアントデータブロックから伝送路30−1におけるクライアントデータブロックに破棄データブロックを切り替える(ステップS107)。時刻t2から時刻t3前において、ネットワーク制御装置70は、伝送路30−1を介して現用系伝送路データを送信している送信装置20に、伝送路データ切替命令を送信する(ステップS108)。時刻t3において、送信装置20は、伝送路データ切替命令に基づいて、伝送路30−1を介して予備系伝送路データを受信装置40に送信する(ステップS109)。
なお、ステップS103及びステップS108では、ネットワーク制御装置70は、伝送路30ごとに伝送路データ切替命令を送信している。ネットワーク制御装置70は、データブロックの配置が異なる伝送路にまたがって変更されない現用系伝送路データ及び予備系伝送路データを同一内容にしておくことによって、複数の伝送路30についてまとめて伝送路データ切替命令を送信してもよい。
以上のように、第1実施形態のマルチレーン伝送システム10(データブロック配置変更装置)は、送信装置20と、伝送路30と、受信装置40とを備える。送信装置20は、ブロック分割部21と、伝送路データ生成部23と、ブロック複製部24と、オーバーヘッド挿入部25とを有する。受信装置40は、ブロック破棄部43と、ブロック結合部45とを備える。ブロック分割部21は、クライアントデータを複数のデータブロックに分割する。伝送路データ生成部23は、複数のデータブロックを含む伝送路データを伝送路ごとに生成する。ブロック複製部24は、伝送路データにおけるデータブロックの配置を異なる伝送路30にまたがって変更する場合、配置元の伝送路データのデータブロックを複製し、複製したデータブロックを配置先の伝送路データのデータブロックに配置する。オーバーヘッド挿入部25は、伝送路データを伝送路30ごとに受信装置40に送信する。ブロック破棄部43は、複製されたデータブロックを含む伝送路データ取得した場合、異なる伝送路において同一内容である複数のデータブロックのうち一部のデータブロックを破棄する。ブロック結合部45は、破棄されずに残ったデータブロックを結合して、クライアントデータを復元する。
これによって、第1実施形態のマルチレーン伝送システム10(データブロック配置変更装置)異なる伝送路にまたがってクライアントデータブロックの配置を変更した場合でも、クライアントデータブロックを欠損させないようにすることが可能となる。
第1実施形態のデータブロック配置変更装置は、クライアントデータの帯域変更に応じて、伝送路データの構成を動的に変更することができる。第1実施形態のデータブロック配置変更装置は、伝送路30における伝送データの伝送品質の劣化に応じて、伝送路30を計画的に切り替えることができる。第1実施形態のデータブロック配置変更装置は、クライアントデータの収容状況に応じて、伝送路30を計画的に切り替えることができる。第1実施形態のデータブロック配置変更装置は、クライアントデータブロックの欠損が許されない通信サービスでも、異なる伝送路にまたがってクライアントデータブロックを配置換えすることができる。
(第2実施形態)
第2実施形態では、送信装置20がブロックマッピング情報を用いて破棄データブロックのブロック位置情報を受信装置40に通知する点が、第1実施形態と相違する。第2実施形態では、第1実施形態との相違点についてのみ説明する。
図5は、伝送路データ及びブロックマッピング情報の例を示す図である。図3から図5では、伝送路30−2における現用系伝送路データのブロック位置「1」のクライアントデータブロックは、「B1」である。伝送路30−2における現用系伝送路データのブロック位置「2」のクライアントデータブロックは、「A2」である。伝送路30−3における現用系伝送路データのブロック位置「2」のクライアントデータブロックは、「A3」である。伝送路30−2における現用系伝送路データのブロック位置「4」のクライアントデータブロックは、空きブロックである。
伝送路30−2における現用系伝送路データのブロックマッピング情報(現用系のブロックマッピング情報)では、ブロック位置と、クライアントデータブロックと、破棄フラグとが対応付けられている。破棄フラグとは、破棄する対象のクライアントデータブロックを示すフラグ情報である。破棄データブロックであるクライアントデータブロックのブロック位置に対応付けられた破棄フラグの値は、1である。破棄データブロックでないクライアントデータブロックのブロック位置に対応付けられた破棄フラグの値は、0である。
図3、図4及び図5では、伝送路30−2における予備系伝送路データのブロック位置「1」のクライアントデータブロックは、「B1」である。伝送路30−2における予備系伝送路データのブロック位置「2」のクライアントデータブロックは、「A2」である。伝送路30−2における予備系伝送路データのブロック位置「3」のクライアントデータブロックは、「A3」である。伝送路30−2における予備系伝送路データのブロック位置「4」のクライアントデータブロックは、破棄データブロック「A1」である。図3及び図4に示す時刻t1から時刻t2前では、伝送路30−2における予備系伝送路データの複製データブロック「A1」は、破棄データブロックである。
伝送路30−2における予備系伝送路データのブロックマッピング情報(予備系のブロックマッピング情報)では、ブロック位置と、クライアントデータブロックと、破棄フラグとが対応付けられている。ブロック破棄部43は、破棄フラグの値が1であるクライアントデータブロックを、破棄データブロックとして破棄する。
図6は、送信装置による伝送路データの切替方法の例を示すシーケンス図である。時刻t0において、送信装置20は、伝送路30−1を介して、現用系のブロックマッピング情報と現用系伝送路データとを受信装置40に送信する。伝送路30−1における現用系のブロックマッピング情報は、破棄フラグ「0」を含む(ステップS201)。
時刻t0において、送信装置20は、伝送路30−2を介して、現用系のブロックマッピング情報と現用系伝送路データとを受信装置40に送信する。伝送路30−2における現用系のブロックマッピング情報は、破棄フラグ「0」を含む(ステップS202)。
時刻t0から時刻t1前において、ネットワーク制御装置70は、伝送路30−2を介して現用系伝送路データを送信している送信装置20に、伝送路データ切替命令を送信する(ステップS203)。
時刻t1において、送信装置20のブロック複製部24は、伝送路30−2を介して、予備系のブロックマッピング情報と予備系伝送路データとを受信装置40に送信する。送信装置20のブロック複製部24は、伝送路30−2における予備系のブロックマッピング情報において、破棄ブロックのブロック位置に対応付けられた破棄フラグの値を1にする。
時刻t1において、受信装置40のブロック破棄部43は、予備系伝送路データのうち、予備系のブロックマッピング情報において値が1である破棄フラグに対応付けられたブロック位置の破棄ブロックを破棄する(ステップS204)。
時刻t2において、送信装置20のブロック複製部24は、伝送路30−2を介して、予備系のブロックマッピング情報と予備系伝送路データとを受信装置40に送信する。送信装置20のブロック複製部24は、破棄データブロックが配置された伝送路データを送信するための伝送路30を切り替える。すなわち、送信装置20のブロック複製部24は、伝送路30−1における現用系のブロックマッピング情報において、破棄ブロックのブロック位置に対応付けられた破棄フラグの値を1にする。送信装置20のブロック複製部24は、伝送路30−2における予備系のブロックマッピング情報において、破棄フラグの値を0に戻してもよい。
時刻t2において、受信装置40のブロック破棄部43は、現用系伝送路データのうち、現用系のブロックマッピング情報において破棄フラグ「1」に対応付けられたブロック位置の破棄ブロックを破棄する(ステップS205)。
時刻t2から時刻t3前において、受信装置40のブロック破棄部43は、送信装置20のブロック複製部24に切替完了通知を送信する。切替完了通知とは、破棄データブロックが配置された伝送路データを取得するための伝送路30を切り替える処理が完了したことを示す通知である。切替完了通知は、受信装置40から送信装置20に伝送される主信号のオーバーヘッドデータブロックの一部に含まれてもよい(ステップS206)。
なお、時刻t2から時刻t3前において、送信装置20のブロック複製部24は、ブロック複製部24が切替完了通知を受信装置40から取得した場合に、伝送路30−2における予備系のブロックマッピング情報において、破棄フラグの値を0に戻してもよい。
時刻t3において、送信装置20は、伝送路30−1を介して、予備系のブロックマッピング情報と予備系伝送路データとを受信装置40に送信する。伝送路30−1における予備系のブロックマッピング情報は、破棄フラグ「0」を含む(ステップS207)。
以上のように、第2実施形態のオーバーヘッド挿入部25は、破棄フラグを伝送路データのオーバーヘッドデータブロック(オーバーヘッド領域)に挿入する。ブロック破棄部43は、破棄フラグに基づいて、異なる伝送路30において同一内容であるクライアントデータブロックのうち一部の破棄データブロックを破棄する。
これによって、第2実施形態の送信装置20及び受信装置40は、破棄データブロックを自律的に破棄することが可能となる。例えば、第2実施形態の送信装置20及び受信装置40は、ネットワーク制御装置70からブロック破棄命令を取得しなくても、破棄データブロックを破棄することが可能となる。例えば、第2実施形態の送信装置20及び受信装置40は、ネットワーク制御装置70からブロック破棄命令を取得する回数を少なくしても、破棄データブロックを破棄することが可能となる。
ブロック破棄部43は、破棄データブロックを配置先の伝送路データにおけるデータブロックから配置元の伝送路データにおけるデータブロックに切り替えたことを送信装置20に通知する。ブロック複製部24は、破棄する対象のデータブロックを切り替えたことを通知された場合、破棄データブロックを複製する処理を停止する。これによって、第2実施形態の送信装置20及び受信装置40は、破棄データブロックを自律的に破棄することが可能となる。
上述した実施形態におけるマルチレーン伝送システム及びデータブロック配置変更装置の少なくとも一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。