(57)【特許請求の範囲】
【請求項１】
複数の系統に冗長化された伝送路へと流すパケットについて、１つのパケットを複数のパケット断片へと断片化し、それらの断片化されたパケット断片の集合をもとに計算した誤り訂正符号を含む訂正用断片を作成し、
同一パケットから作成された前記パケット断片および前記訂正用断片について、送信前後の時間間隔が所定間隔以上になるように空けて順番に前記冗長化された伝送路に向けて送信する場合に、障害時の系切替に伴ってパケットが失われる切替最大時間を前記所定間隔とし、第１のパケットの前記パケット断片および前記訂正用断片のいずれかを送信した後、前記第１のパケットの次の断片および前記訂正用断片のいずれかを送信するまでの所定間隔の間に、第２のパケットの前記パケット断片および前記訂正用断片のいずれかを送信する送信制御装置と、
前記冗長化された伝送路を介して受信した前記パケット断片および前記訂正用断片のうち、前記パケット断片が損失した場合に、残りの受信できた前記パケット断片および前記訂正用断片から損失した前記パケット断片を復元することで、同一パケットから作成された前記パケット断片の集合を取得し、
その取得した前記パケット断片の集合を結合することで、前記同一パケットを組み立てる受信制御装置と、を有することを特徴とする
パケット伝送システム。
【請求項２】
前記送信制御装置は、
前記パケット断片および前記訂正用断片を送信順に格納する先である第１バッファと、前記第１バッファからデータコピーされて格納された前記パケット断片および前記訂正用断片を先頭から順に送信するために読み込ませる第２バッファとを有しており、
前記第１バッファの断片データアクセス処理と、前記第２バッファの断片データアクセス処理とを並列処理で実行するように制御することを特徴とする
請求項１に記載のパケット伝送システム。
【請求項３】
パケット伝送システムは、送信制御装置と、受信制御装置とを有しており、
前記送信制御装置は、
複数の系統に冗長化された伝送路へと流すパケットについて、１つのパケットを複数のパケット断片へと断片化し、それらの断片化されたパケット断片の集合をもとに計算した誤り訂正符号を含む訂正用断片を作成し、
同一パケットから作成された前記パケット断片および前記訂正用断片について、送信前後の時間間隔が所定間隔以上になるように空けて順番に前記冗長化された伝送路に向けて送信する場合に、障害時の系切替に伴ってパケットが失われる切替最大時間を前記所定間隔とし、第１のパケットの前記パケット断片および前記訂正用断片のいずれかを送信した後、前記第１のパケットの次の断片および前記訂正用断片のいずれかを送信するまでの所定間隔の間に、第２のパケットの前記パケット断片および前記訂正用断片のいずれかを送信し、
前記受信制御装置は、
前記冗長化された伝送路を介して受信した前記パケット断片および前記訂正用断片のうち、前記パケット断片が損失した場合に、残りの受信できた前記パケット断片および前記訂正用断片から損失した前記パケット断片を復元することで、同一パケットから作成された前記パケット断片の集合を取得し、
その取得した前記パケット断片の集合を結合することで、前記同一パケットを組み立てることを特徴とする
パケット伝送方法。
【請求項４】
前記送信制御装置は、
前記パケット断片および前記訂正用断片を送信順に格納する先である第１バッファと、前記第１バッファからデータコピーされて格納された前記パケット断片および前記訂正用断片を先頭から順に送信するために読み込ませる第２バッファとを有しており、
前記第１バッファの断片データアクセス処理と、前記第２バッファの断片データアクセス処理とを並列処理で実行するように制御することを特徴とする
請求項３に記載のパケット伝送方法。
【請求項５】
複数の系統に冗長化された伝送路へと流すパケットについて、１つのパケットを複数のパケット断片へと断片化し、それらの断片化されたパケット断片の集合をもとに計算した誤り訂正符号を含む訂正用断片を作成し、
同一パケットから作成された前記パケット断片および前記訂正用断片について、送信前後の時間間隔が所定間隔以上になるように空けて順番に前記冗長化された伝送路に向けて送信する場合に、障害時の系切替に伴ってパケットが失われる切替最大時間を前記所定間隔とし、第１のパケットの前記パケット断片および前記訂正用断片のいずれかを送信した後、前記第１のパケットの次の断片および前記訂正用断片のいずれかを送信するまでの所定間隔の間に、第２のパケットの前記パケット断片および前記訂正用断片のいずれかを送信することを特徴とする
送信制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット伝送システム、パケット伝送方法、および、送信制御装置の技術に関する。
【背景技術】
【０００２】
データを通信するネットワークとして、データをパケットに分割して伝送するパケット通信ネットワークがある。通信キャリア向けの規格においては、ビットエラー率（BER：Bit Error Ratio）が１０の−１２乗というほぼエラーがない伝送路が実現されており、パケットの偶発的なロスはほぼ発生しない。
一方、機器の障害や設備の置き換えなどの際には、伝送路が回復するまでの長時間の断が避けられず、その間パケットは不通となってしまう。そこで、伝送路を複数使用し、伝送路が障害などを起こした時に予備の伝送路に切り替えることで冗長化し、信頼性を高める技術がある。
【０００３】
代表的な冗長化には、「１＋１」と「１：１」とがある。双方の方式はともに１台の現用系と１台の予備系とで構成され、現用系の障害後には現用系に流れていたデータを予備系へと退避させることで、パケットの損失を抑制するものである。なお、記号「＋や：」の前の数字は現用系の数を示し、記号の後の数字は予備系の数を示す。
「１＋１」は、障害発生前に現用系と予備系とで互いに同じデータを流す。
「１：１」は、障害発生前に予備系にはデータを流さない。
【０００４】
図８は、１＋１の冗長システムを示す。この冗長システムは、伝送路の障害に伴ってパケットが欠損した際は、複数の冗長経路のうちの正常に届いた方を選択するため、パケットが失われることがない。
まず、図８（ａ）の障害発生前では、送信機１１から送信されたパケットP1,P2は、系切替装置１３で現用系と予備系とに分岐してコピーされる。系集約装置３１は、現用系と予備系とからそれぞれ同じパケットP1,P2を受信し、それらを受信機３３に転送する。
【０００５】
なお、系集約装置３１が実行する、複数系統から同じパケットが到着したときの処理として、両系のパケットが揃ったときに転送する方式（特許文献１）や、先着のパケットが到着したときに後続を待たずに転送する方式（非特許文献１）が挙げられる。
次に、図８（ｂ）の障害発生後では、系切替装置１３から現用系を経由して送信されたパケットP3,P4は、系集約装置３１には届かない。よって、系集約装置３１は、予備系を経由して送信されたパケットP3,P4を受信機３３に転送する。
【０００６】
図９は、１：１の冗長システムを示す。この冗長システムでは、障害発生前に予備系にはデータを流さないため、予備系にデータを流し始めるタイムラグなどにより、障害に伴った切り替えの時にデータの損失(瞬断)が発生する。図示する予備系の矢印について、データ通過中を実線で示し、未使用中を破線で示す。
図９（ａ）は、障害発生前の時刻ｔ１における状態を示す。送信機１１から送信されたパケットP1,P2は、系切替装置１３で現用系のみを経由して系集約装置３１に転送される。系集約装置３１は、現用系から受信したパケットP1,P2を、受信機３３に転送する。
【０００７】
図９（ｂ）は、障害発生中の時刻ｔ３における状態を示す。系切替装置１３はパケットP3,P4を現用系に転送するものの、その現用系で障害が発生してしまい、これらのパケットは失われてしまう。
図９（ｃ）は、系切替後の時刻ｔ５における状態を示す。系切替装置１３は受信したパケットP5,P6の転送先を現用系から予備系へと切り替えたので、それらのパケットは、障害が発生していない予備系を経由して系集約装置３１に届く。このような系切替技術は、例えば、非特許文献２に記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平９−１３５２２８号公報
【非特許文献】
【０００９】
【非特許文献１】新井薫、他著「パケットトランスポート網のマルチリング構成における低遅延無瞬断切替方式の検討」信学会ソサイエティ大会講演論文集 2014年_通信(2), 143, 2014-09-09.
【非特許文献２】佐藤 浩司、他著「Ethernetプロテクション切替の標準化動向」信学技報CS2006-87, (2007-1)
【発明の概要】
【発明が解決しようとする課題】
【００１０】
１＋１の冗長システムと１：１の冗長システムとは一長一短である。
１＋１システムでは、図８で説明したように、障害発生時のパケット損失を予防できる反面、現用系と予備系とで同じデータを流すために、伝送効率がよくない。
１：１システムでは、図９で説明したように、障害発生前には予備系にデータを流さないために、複数の現用系で１つの予備系を共用できる（Ｎ：１システム）など伝送効率がよい。しかし、障害発生時の系切替時間にはパケット損失が発生してしまう。
【００１１】
なお、一般的にパケット損失に対しては再送制御が行われる。つまり、受信機３３が送信機１１に対して届いていないパケットの再送を要求する。しかし、再送制御では大きな遅延と送信機１１や受信機３３への負荷増大を招いてしまう上に、マルチキャスト配信のようにそもそも再送を許容できないデータ通信には適用できない。
【００１２】
そこで、本発明は、冗長伝送システムにおいてパケット損失を抑制しつつ、障害発生前の伝送効率を改善することを、主な課題とする。
【課題を解決するための手段】
【００１３】
前記課題を解決するために、本発明のパケット伝送システムは、
複数の系統に冗長化された伝送路へと流すパケットについて、１つのパケットを複数のパケット断片へと断片化し、それらの断片化されたパケット断片の集合をもとに計算した誤り訂正符号を含む訂正用断片を作成し、
同一パケットから作成された前記パケット断片および前記訂正用断片について、送信前後の時間間隔が所定間隔以上になるように空けて順番に前記冗長化された伝送路に向けて送信する場合に、障害時の系切替に伴ってパケットが失われる切替最大時間を前記所定間隔とし、第１のパケットの前記パケット断片および前記訂正用断片のいずれかを送信した後、前記第１のパケットの次の断片および前記訂正用断片のいずれかを送信するまでの所定間隔の間に、第２のパケットの前記パケット断片および前記訂正用断片のいずれかを送信する送信制御装置と、
前記冗長化された伝送路を介して受信した前記パケット断片および前記訂正用断片のうち、前記パケット断片が損失した場合に、残りの受信できた前記パケット断片および前記訂正用断片から損失した前記パケット断片を復元することで、同一パケットから作成された前記パケット断片の集合を取得し、
その取得した前記パケット断片の集合を結合することで、前記同一パケットを組み立てる受信制御装置と、を有することを特徴とする。
【００１４】
これにより、損失しなかったパケット断片から損失したパケット断片を復元することにより、パケット全体の損失を回避できる。また、誤り訂正符号の大きさはパケットの元々の大きさよりも充分に小さいので、障害発生前の伝送効率を改善することができる。
【００１５】
本発明は、前記送信制御装置が、
前記パケット断片および前記訂正用断片を送信順に格納する先である第１バッファと、前記第１バッファからデータコピーされて格納された前記パケット断片および前記訂正用断片を先頭から順に送信するために読み込ませる第２バッファとを有しており、
前記第１バッファの断片データアクセス処理と、前記第２バッファの断片データアクセス処理とを並列処理で実行するように制御することを特徴とする。
【００１６】
これにより、第１バッファと第２バッファとで、処理をそれぞれ独立に（並列に）行うことができるので、パケット断片に関する処理のスループットが向上する。
【発明の効果】
【００１７】
本発明によれば、冗長伝送システムにおいてパケット損失を抑制しつつ、障害発生前の伝送効率を改善することができる。
【図面の簡単な説明】
【００１８】
【図１】本実施形態に係わるマルチキャスト伝送システムの構成図である。
【図２】図２（ａ）は、送信制御装置１２の側で行われるパケット断片化処理を示す。図２（ｂ）は、受信制御装置３２の側で行われるパケット復元処理を示す。
【図３】本実施形態に係わる送信制御装置の構成図である。
【図４】本実施形態に係わる受信制御装置の構成図である。
【図５】本実施形態に係わる時刻ｔ＝１〜４におけるバッファ内容の具体例を示す。
【図６】本実施形態に係わる時刻ｔ＝4.33〜６におけるバッファ内容の具体例を示す。
【図７】本実施形態に係わる時刻ｔ＝７〜９におけるバッファ内容の具体例を示す。
【図８】従来の１＋１の冗長システムを示す。
【図９】従来の１：１の冗長システムを示す。
【発明を実施するための形態】
【００１９】
以下、本発明の一実施形態について、図面を参照して詳細に説明する。
【００２０】
図１は、マルチキャスト伝送システムの構成図である。マルチキャスト伝送システムは、送信局（送信機１１と、送信制御装置１２と、系切替装置１３）と、中継局（伝送装置２１）と、受信局（系集約装置３１と、受信制御装置３２と、受信機３３）とを含めて構成される。
なお、マルチキャスト伝送システムの各装置は、ＣＰＵ（Central Processing Unit）と、メモリと、ハードディスクなどの記憶手段（記憶部）と、ネットワークインタフェースとを有するコンピュータとして構成される。
このコンピュータは、ＣＰＵが、メモリ上に読み込んだプログラム（アプリケーションや、その略のアプリとも呼ばれる）を実行することにより、後記する各処理部により構成される制御部（制御手段）を動作させる。
【００２１】
マルチキャスト伝送システムの送信局から中継局に向けて送信されるパケットは、中継局の伝送装置２１においてコピーされ、同じパケットが第１受信局と、第２受信局とに転送される。なお、マルチキャストの代わりにユニキャストを行う場合には、中継局での分岐コピーを行わず、送信局から送信されたパケットは、中継局を経由して、受信局に到達する。
【００２２】
送信機１１は、送信対象のパケットを発生させるデータソースである。送信制御装置１２は、送信機１１から受信したパケットを断片化してから系切替装置１３に転送する。
系切替装置１３は、送信制御装置１２から受信したパケット断片について、冗長化された複数系統の伝送路を介して伝送装置２１に送信する。なお、系切替装置１３は、現用系の障害を検知すると、パケット断片の伝送路を予備系へと切り替えることでデータ損失を抑制する。
なお、図１では太線矢印で示す１つの現用系と、細線矢印で示す１つの予備系の合計２系統を、冗長化された複数系統（１：１冗長）として例示するが、現用系や予備系の系統数はこれに限定せず、Ｎ：１冗長やＮ：Ｍ冗長を用いてもよい。さらに、１＋１冗長やＮ＋１冗長を用いてもよい。
【００２３】
系集約装置３１は、系切替装置１３が始点となる冗長経路について、終点として集約する装置である。系集約装置３１には、障害発生前には現用系からパケット断片が到着し、障害発生後には予備系からパケット断片が到着する。系集約装置３１は、到着したパケット断片を受信制御装置３２に転送する。
受信制御装置３２は、系集約装置３１から受信したパケット断片を１つのパケットに復元してから受信機３３に転送する。受信機３３は、パケットの受信端末などのデータシンクである。
【００２４】
このマルチキャスト伝送システムでは、送信制御装置１２によるデータ断片化と、受信制御装置３２での断片データ復号化とを組み合わせることにより、冗長経路上を流れるデータが、パケットまるごとではなく、個々のサイズが小さいパケット断片とする。
これにより、冗長経路の障害時の経路切替期間が発生したとしても、その期間に少数のパケット断片が損失するだけで済む。さらに、送信制御装置１２は、パケット断片化処理においてパリティ符号化（誤り訂正符号化）などのデータ冗長化処理を行っておくことで、受信制御装置３２は、損失されたパケット断片を他のパケット断片から復元することができる。
【００２５】
図２は、パケット断片化処理とパケット復元処理を示す。なお、以下ではパケットの一例としてイーサネット（登録商標）のフレームを用いて説明するが、他の通信規格のパケットにも適用可能である。
図２（ａ）は、送信制御装置１２の側で行われるパケット断片化処理を示す。この例では、バッファリング時間ｂにおいて、３つのパケットがP1,P2,P3の順に到着したとする。なお、イーサネットのフレームのように、パケットのシーケンス番号を保持するフィールドが存在しない規格を用いる場合、送信制御装置１２は、複数の断片集合がどのパケットから生成されたかを特定するために、個々のパケットに別々のシーケンス番号を付与する。
【００２６】
以下では、１つのパケット（P1）をｎ＝２つのデータ断片（P1-1,P1-2）へと分割し、その２断片から１つの訂正用断片としてのパリティ断片（P1-3）を生成する例を説明する。２つのデータ断片と１つのパリティ断片とを送信するときには、伝送効率Ｗ＝3/2＝1.5である。この伝送効率は、予備系にデータを流さずに、現用系にパケットを断片化せずに送信する１：１の冗長システムの伝送効率Ｗ＝2/2＝1よりは劣ってしまうが、現用系と予備系とで同じパケットを流す１＋１の冗長システムの伝送効率Ｗ＝4/2＝2よりは優れている。
【００２７】
なお、送信対象のデータ長を「１」とし、そのデータを損失から守るための付加情報の長さを「０〜１」とし、伝送効率Ｗはデータ長「１」と付加情報の長さ「０〜１」との和である。ここで、パリティ断片の小さい（圧縮効率の良い）アルゴリズムを採用することで、伝送効率Ｗを小さくする（良くする）ことができる。
【００２８】
送信制御装置１２は、同じシーケンス番号のパケットから生成された断片集合について、前の断片の送信時刻と、その後の断片の送信時刻とを間隔ｓ以上空けてから送信する。ここで、バッファリング時間ｂ（＝100ミリ秒）のうち、障害時の系切替に伴ってパケットが失われる切替最大時間をｓ（＝50ミリ秒）秒とする。送信制御装置１２のバッファは、少なくともバッファリング時間ｂ＝ｎ×ｓ以上の断片を一次格納する。
【００２９】
そのため、先着したパケット（P1）と、次着のパケット（P2）について、パケット断片（P1-1）とパケット断片（P1-2）との送信間隔ｓを埋めるために、他のパケット断片（P2-1）をパケット断片（P1-2）よりも前に送信してもよい。つまり、パケット（P1）とパケット（P2）について、断片化して送信する過程において、部分的に送信順序が入れ替わることもある。
【００３０】
図２（ｂ）は、受信制御装置３２の側で行われるパケット復元処理を示す。ここでは、図２（ａ）で送信されたパケット断片集合について、障害発生により切替最大時間ｓ分の断片（P1-2,P2-2,P3-2）が損失してしまった。
しかし、受信制御装置３２は、受信できた他のパケット断片（P1-1,P1-3）をもとにパリティ復元演算（図２（ａ）のパリティを解除する演算）を行うことで損失したパケット断片（P1-2）を復元することができる。なお、各パケット断片のヘッダ（例えばP1-3）には、シーケンス番号(1)と断片番号(3)とが書き込まれている。
【００３１】
なお、図２（ａ）において、同じシーケンス番号のパケット断片は、互いに時間間隔ｓを空けて送信されるため、１回の切替最大時間ｓには、高々１つのパケット断片が損失されるに過ぎない。よって、パリティ復元の成功が保証されているので、時間間隔ｓの障害が発生したとしても、データが保証される。
受信制御装置３２は、復元したパケット断片を含む同じシーケンス番号のパケット断片を結合した後、適宜シーケンス番号を除去してから、受信機３３へと転送する。
【００３２】
図３は、送信制御装置の構成図である。送信制御装置１２は、ヘッダ分離部６１と、ペイロード分割部６２と、パリティ作成部６３と、断片入力部６４と、送信バッファ６５ａと、送信バッファ６５ｂとを含めて構成される。
【００３３】
ヘッダ分離部６１は、送信機１１から入力された各イーサネットパケットについて、そのパケットのヘッダ部とペイロード部とを分離する。そして、ヘッダ分離部６１は、分離したヘッダ部を断片入力部６４へ通知し（断片入力部６４の数だけ同じヘッダ部をコピーして通知し）、分離したペイロード部をペイロード分割部６２へ通知する。なお、ヘッダ分離部６１には、バッファリング時間ｂの間に最大ｍ個のパケットが到着するものとする。
【００３４】
ペイロード分割部６２は、通知された１パケット分のペイロード部を、ｎ個のデータ断片（フラグメント）へと分割し（１番目、２番目、…、ｎ番目）、それぞれのデータ断片をパリティ作成部６３へと通知する。
パリティ作成部６３は、通知されたｎ個のデータ断片から１個のパリティ断片を作成し、合計ｎ＋１個の断片を各断片入力部６４へと通知する。なお、パリティ断片は、例えば、通知されたｎ個の断片に対するビット単位でのXOR演算により生成される（非特許文献１参照）。
【００３５】
断片入力部６４は、１番目、２番目、…ｎ＋１番目というように、生成される断片の数だけ存在する。各断片入力部６４は、パリティ作成部６３から通知された断片に対して、ヘッダ分離部６１から通知されたヘッダ部を付加し、断片単独で送信可能なものとする。
そして、断片入力部６４は、送信バッファ６５ａに対して、送信可能な断片を入力する（書き出す）。送信バッファ６５ａは、例えばＦＩＦＯ（First In First Out）型のバッファメモリであり、データ取り出し方向（先頭）から順に、位置L1,L2,…,Lm,Lm+1,…,L2m,…,Lnm+1,…,L(n+1)mのように、合計（n+1）×m個分の書き出し領域が存在する。ここで、断片入力部６４の位置（i番目）と、送信バッファ６５ａ内での書き出し位置（Lj）とは、「j=i×m」として間隔mごとに書き出し位置が決まっている。
【００３６】
また、送信バッファ６５ｂも送信バッファ６５ａと同じＦＩＦＯ型などのバッファメモリである。所定間隔おきに、または送信バッファ６５ａが先頭まで断片で埋まったことを契機として、送信バッファ６５ａのデータ内容が送信バッファ６５ｂにコピーされる。そして、送信制御装置１２の送信制御部（図示省略）は、送信バッファ６５ｂ内のＬ１に位置する先頭の断片データを読み出して、系切替装置１３に送信するとともに、位置Ｌ２以降の全ての要素を１つずつ前に（右に）シフトする。
【００３７】
なお、送信対象のデータ断片の区切りは、ビット単位でもよいしバイト単位でもよい。ここで、データ断片の大きさを固定長とするときには、その固定長の定数倍（ｎ倍）で割り切れない溢れたデータが存在することもある。そのときには、送信制御装置１２は、固定長に足りない部分をパディング（詰め物）で埋めてもよく、そのパディング長をヘッダ部に書き込むなどして送信制御装置１２から受信制御装置３２に通知すればよい。
【００３８】
図４は、受信制御装置の構成図である。受信制御装置３２は、パケット構成部７１と、ペイロード結合部７２と、パリティ復元部７３と、断片出力部７４と、受信バッファ７５ａと、受信バッファ７５ｂと、ヘッダ選択部７６とを含めて構成される。
【００３９】
受信制御装置３２の受信制御部（図示省略）は、図３の送信バッファ６５ｂを介して送信された断片を受信すると、ＦＩＦＯ型メモリなどの受信バッファ７５ａの最後尾に次々と書き出す。受信制御部は、１つの断片を最後尾に書き出す前に、既に受信バッファ７５ａ内に格納されている各断片を１つずつ前にシフトする。
そして、所定間隔おきに、または受信バッファ７５ａが先頭まで埋まったことを契機として、受信バッファ７５ａのデータ内容が、ＦＩＦＯ型メモリなどの受信バッファ７５ｂにコピーされる。
なお、断片が到着しない空白の期間があっても、その期間長に相当する分の空白断片データのバッファが書き込まれ、その空白断片もデータ断片と同様に、徐々に前にシフトする。
【００４０】
断片出力部７４は、断片入力部６４と同様に１番目、２番目、…ｎ＋１番目というように、生成される断片の数だけ存在し、間隔mごとに読み込み（出力）位置が決まっている。
各断片出力部７４は、受信バッファ７５ｂから出力された各断片について、ヘッダ部分とペイロード部分とに分離する。そして、各断片出力部７４は、分離したヘッダ部分をヘッダ選択部７６に通知し、分離したペイロード部分をパリティ復元部７３に通知する。なお、断片出力部７４は、同じシーケンス番号である断片集合の内、障害などで断片が損失した旨を検知したときには、その旨もパリティ復元部７３に通知する。
【００４１】
パリティ復元部７３は、各断片出力部７４から通知された同じシーケンス番号であるｎ＋１個の断片から、ｎ個のデータ断片（ペイロード）を復元する。もし、ｎ個のデータ断片がすべて受信できたときには、データの損失が発生していないので、ｎ個のデータ断片をそのままペイロード結合部７２に通知すればよい。  一方、ｎ個の断片を受信したときには、１個の断片が損失しているので、パリティ復元部７３は、残りのｎ個の断片をビット単位でのXOR演算することにより、損失した１個の断片を復元する。そして、パリティ復元部７３は、復元したデータ断片を含むｎ個のデータ断片をペイロード結合部７２に通知する。
【００４２】
ペイロード結合部７２は、ｎ個のデータ断片を結合することにより、１個のペイロード部を作成する。そして、ペイロード結合部７２は、作成したペイロード部をパケット構成部７１に通知する。
ヘッダ選択部７６は、ヘッダ分離部６１がコピーしたｎ＋１個のヘッダ部を各断片出力部７４からそれぞれ通知されると、それらをもとに１個のヘッダ部を作成する。換言すると、ヘッダ選択部７６は、互いにほぼ同じ内容であるｎ＋１個のヘッダ部から１つのヘッダ部を選択する。
【００４３】
パケット構成部７１は、ヘッダ選択部７６が選択した１つのヘッダ部と、ペイロード結合部７２が結合した１つのペイロード部とを結合することで、１つのパケットを復元する。そして、パケット構成部７１は、復元したパケットを受信機３３に転送する。
【００４４】
以上、図３および図４を用いて、パケット断片がどのように処理されるかを説明した。以下、図５〜図７を参照して、処理される具体的なパケット断片の一例を説明する。この具体例では、図２と同様に、データ断片数ｎ＝２、バッファリング時間ｂあたりのパケット到着数ｍ＝３の場合を例示する。
【００４５】
図５は、時刻ｔ＝１〜４におけるバッファ内容の具体例を示す。各パケット断片について、図２で説明した通り「（シーケンス番号）−（断片番号）」と表記する。例えば、３つのパケット断片（1-1,1-2,1-3）は、ともに同じシーケンス番号（＝１）なので、同じパケットから抽出された断片集合である。
図５の各表について、左上枠にはスナップショットとしての現在の時刻（例えば、ｔ＝１）を示す。第２列以降の各列（L1〜L9）は、先頭L1から順のバッファ位置を示す。
図５の各行について、第２行（SB[1]）は送信バッファ６５ａの内容を示し、第３行（SB[2]）は送信バッファ６５ｂの内容を示し、第４行（T）は系切替装置１３〜系集約装置３１の冗長化された伝送路の内容を示し、第５行（RB[1]）は受信バッファ７５ａの内容を示す。
【００４６】
図５の符号１０１が示す時刻ｔ＝１の状態では、シーケンス番号＝１のパケットが到着し、その３断片（1-1,1-2,1-3）がほぼ同時刻に送信バッファ６５ａに書き込まれる。図３では１番目の断片入力部６４が位置L3に断片1-1を書き込み、２番目の断片入力部６４が位置L6に断片1-2を書き込み、３番目の断片入力部６４が位置L9に断片1-3を書き込む。
このように、シーケンス番号Xのパケットについて、i番目の断片入力部６４が所定位置Lj(j=i×3)に断片X-iを書き込むように、各断片入力部６４の書き込み位置が送信バッファ６５ａ内のメモリ位置で固定されている。
【００４７】
符号１０２が示す時刻ｔ＝２の状態では、シーケンス番号＝２のパケットが到着し、その３断片（2-1,2-2,2-3）が符号１０１の状態と同様に、送信バッファ６５ａ内の所定位置に書き込まれる。ここで、各書き込み先にはシーケンス番号＝１のパケット断片がすでに書き込まれているので、これらのパケット断片を上書きで消さないように、送信制御装置１２は、書き込まれているパケット断片（1-1,1-2,1-3）を、少なくとも１つ分だけ前に(例えば、1-1をL3からL2に)スライドさせる。
【００４８】
なお、送信バッファ６５ａの内容をスライドさせる代わりに、第１の書き込み位置（L1,L4,L7）→第２の書き込み位置（L2,L5,L8）→第３の書き込み位置（L3,L6,L9）のように順番にスライドするように、各断片入力部６４による送信バッファ６５ａ内の書き込み位置をスライドさせてもよい。
【００４９】
符号１０３が示す時刻ｔ＝３の状態では、シーケンス番号＝３のパケットが到着する。符号１０２で説明したように、上書き防止のためのスライド処理を行った後、今回到着したパケットの３断片（3-1,3-2,3-3）を送信バッファ６５ａ内の所定位置に書き込む。これにより、９つ分の断片格納領域をもつ送信バッファ６５ａが埋まる。
【００５０】
符号１０４が示す時刻ｔ＝４の状態では、断片で埋まった送信バッファ６５ａの内容を送信バッファ６５ｂにコピー（退避）して送信可能とした後、各断片入力部６４は、クリアした送信バッファ６５ａに対して、到着したシーケンス番号＝４のパケットの３断片（4-1,4-2,4-3）を書き込む。
【００５１】
図６は、時刻ｔ＝4.33〜６におけるバッファ内容の具体例を示す。なお、時刻ｔ＝4.33などのｔが端数の場合は、前回のシーケンス番号（＝４）のパケットが到着した後、新たなシーケンス番号（＝５）のパケットが到着する前の経過中の状態を示す。
【００５２】
符号１１１が示す時刻ｔ＝4.33の状態では、符号１０４が示す時刻ｔ＝４の状態と比べると、送信バッファ６５ａ（SB[1]）の内容は同じである。しかし、時刻ｔ＝４よりも少し時間が経過したので、送信バッファ６５ｂの内の先頭（L1）の断片1-1が送信制御装置１２から送信され（列Tに移動し）、その後の送信バッファ６５ｂ内の各断片（2-1,3-1,…）が１つずつ前にスライドする。
符号１１２が示す時刻ｔ＝4.66の状態では、送信バッファ６５ｂの内の先頭（L1）の断片2-1が送信制御装置１２から送信され（列Tに移動し）、その後の送信バッファ６５ｂ内の各断片（3-1,1-2,…）が１つずつ前にスライドする。
【００５３】
符号１１３が示す時刻ｔ＝５は、他の時刻と異なり送信機１１から新たなパケットが到着しない空白期間である。よって、送信バッファ６５ａはその空白を示すために１つ分のスライド動作を行う。また、送信バッファ６５ｂでは、先頭の断片3-1が送信され、その後の各断片が１つずつ前にスライドする。
符号１１４が示す時刻ｔ＝６の状態では、新たなシーケンス番号（＝５）のパケットが到着したので、その３断片（5-1,5-2,5-3）を送信バッファ６５ａ内の所定位置（L3,L6,L9）に書き込む。また、送信バッファ６５ｂでは、先頭から３つ分の断片が送信され、その後の各断片が３つ分前にスライドする。
【００５４】
図７は、時刻ｔ＝７〜９におけるバッファ内容の具体例を示す。
符号１２１が示す時刻ｔ＝７の状態では、符号１１４の状態で残っていた３つの断片が送信バッファ６５ｂから送信された後、送信バッファ６５ａの内容が送信対象として送信バッファ６５ｂにコピーされる。そして、クリアされた送信バッファ６５ａの所定位置に対して、新たに到着したシーケンス番号（＝６）のパケット断片が書き込まれる。
【００５５】
符号１２２が示す時刻ｔ＝８の状態では、送信バッファ６５ａ内のシーケンス番号（＝６）のパケット断片がスライドした後、その所定位置に対して新たに到着したシーケンス番号（＝７）のパケット断片が書き込まれる。さらに、伝送路を流れていた先頭３つ分の断片（1-1,2-1,3-1）が受信制御装置３２の受信バッファ７５ａに到着する。
【００５６】
符号１２３が示す時刻ｔ＝９の状態では、送信バッファ６５ａ内のシーケンス番号（＝７）のパケット断片がスライドした後、その所定位置に対して新たに到着したシーケンス番号（＝８）のパケット断片が書き込まれる。さらに、伝送路を流れていた先頭３つ分の断片（1-2,2-2,3-2）が受信制御装置３２の受信バッファ７５ａに到着する。
【００５７】
この時刻ｔ＝９の状態の後に、さらに３つ分の断片（1-3,2-3,3-3）が受信制御装置３２に到着すると、受信バッファ７５ａが９つ分の断片で埋まる。このように、受信バッファ７５ａの先頭までデータが蓄積したことを契機に、受信バッファ７５ａのデータ内容が受信バッファ７５ｂにコピーされるとともに、受信バッファ７５ａがクリアされる。
そして、各断片出力部７４は、各断片入力部６４と同様にして、受信バッファ７５ｂ内の所定位置（L1,L4,L7などのm=3個飛びの位置）から同じシーケンス番号の断片集合を読み出す。つまり、シーケンス番号Yのパケットについて、i番目の断片出力部７４は所定位置Lj(j=(i-1)×3+1)から断片Y-iを読み込む。
【００５８】
以上説明したように、送信制御装置１２（パケット断片化処理→送信バッファ６５ａ→送信バッファ６５ｂ→断片送信処理）と、受信制御装置３２（断片受信処理→受信バッファ７５ａ→受信バッファ７５ｂ→パケット結合処理）とは、それぞれ装置内部からパケット断片の読み書き先である第１バッファ（送信バッファ６５ａ、受信バッファ７５ｂ）と、通信インタフェースからパケット断片を送受信するための第２バッファ（送信バッファ６５ｂ、受信バッファ７５ａ）とを併用するダブルバッファ方式である。
【００５９】
このダブルバッファ方式により、第１バッファと第２バッファとで、処理をそれぞれ独立に（並列に）行うことができるので、パケット断片に関する処理のスループットが向上する。
一方、第１バッファと第２バッファとを物理的に１つのバッファで共用するシングルバッファ方式を用いてもよい。このシングルバッファ方式では、第１バッファとして機能する時間帯と、第２バッファとして機能する時間帯とを交互に区切ることで、バッファ内へのアクセスの衝突を防止する。
【００６０】
以上説明した本実施形態は、系切替装置１３から系集約装置３１までの伝送路を複数使用する（冗長化する）ことによって、伝送の信頼性を高めるシステムである。
まず、１：１などの障害発生前に予備系にデータを流さないシステムにおいては、系切替装置１３において障害が発生した現用系から予備系への系切替に伴うパケット損失が発生してしまう。そこで、本実施形態では、送信制御装置１２と受信制御装置３２とを設けることで、冗長システムに流すパケットの断片化と冗長化（パリティ付加）を行う。
【００６１】
これにより、系切り替えの瞬断期間が発生し、その期間にパケット断片が損失しても、受信制御装置３２が他の損失しなかったパケット断片から損失したパケット断片を復元することにより、パケット全体の損失を回避できる。つまり、送信制御装置１２と受信制御装置３２とを設けることで、１：１の弱点であった系切り替え時のパケット損失を、防ぐことができる。さらに、パケット損失がそもそも発生しないので、パケット再送処理に関する遅延時間は発生させずに済む。
【００６２】
また、パケットのパリティ付加処理を行ったとしても、パリティの大きさはパケットの元々の大きさよりも充分に小さいので、１＋１よりも伝送効率をよくすることができる。なお、送信制御装置１２と受信制御装置３２とを設ける対象の冗長伝送システムは、１：１でもよいが、Ｎ：１のように現用系を増やすことで、さらに障害発生前の伝送効率をよくすることができる。
【符号の説明】
【００６３】
１１    送信機
１２    送信制御装置
１３    系切替装置
２１    伝送装置
３１    系集約装置
３２    受信制御装置
３３    受信機
６１    ヘッダ分離部
６２    ペイロード分割部
６３    パリティ作成部
６４    断片入力部
６５ａ，６５ｂ  送信バッファ
７１    パケット構成部
７２    ペイロード結合部
７３    パリティ復元部
７４    断片出力部
７５ａ，７５ｂ  受信バッファ
７６    ヘッダ選択部
【図１】
0006450283.tif 000002
【図２】
0006450283.tif 000003
【図３】
0006450283.tif 000004
【図４】
0006450283.tif 000005
【図５】
0006450283.tif 000006
【図６】
0006450283.tif 000007
【図７】
0006450283.tif 000008
【図８】
0006450283.tif 000009
【図９】
0006450283.tif 000010