(57)【要約】【課題】鍵パケットを選択するための情報が付加することなく、ネットワーク符号化されたパケットを受信したノードにおいて、復号に使用する鍵パケットを正しく選択する。【解決手段】送受信局１は、送信したパケットを送信済バッファに送信順に格納する。中継局２は、送受信局１から受信したパケットを送信先及び送信元の組み合わせに対応した転送バッファに受信順に格納し、送信機会を得たときには、ぞれぞれの転送バッファから受信順にパケットを取得してネットワークコーディングの符号化を行ない、得られたＮＣパケットを送受信局１に送信すると、符号化に用いたパケットを転送バッファから削除する。送受信局１は、中継局２からＮＣパケットを受信すると、送信済バッファから送信順にパケットを取得し、取得したパケットを鍵パケットとしてＮＣパケットを復号し、所望のパケットを取得する。復号に用いた鍵パケットは送信済バッファから削除する。【選択図】図１
2011239208.tif 000002
【特許請求の範囲】
【請求項１】
中継局装置と２台の受信局装置とを有する通信システムであって、
前記受信局装置は、
前記中継局装置に送信された他の前記受信局装置宛のパケットを格納し、格納している前記パケットを前記中継局への送信順に出力する送信済バッファ部と、
前記中継局装置からネットワーク符号化されたパケットを受信する受信局受信部と、
前記受信局受信部により受信した前記ネットワーク符号化されたパケットを、前記送信済バッファ部から送信順に出力される前記パケットにより復号するネットワーク符号化復号部とを備え、
前記中継局装置は、
前記受信局装置宛の前記パケットを受信する中継局受信部と、
送信先の前記受信局装置に対応して設けられ、前記中継局受信部により受信した前記パケットを格納し、格納している前記パケットを受信順に出力する２つの転送バッファ部と、
前記中継局受信部により受信した前記パケットを、該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて前記２つの転送バッファ部の中から選択した前記転送バッファ部に格納する中継局判定制御部と、
前記２つの転送バッファ部それぞれから受信順に出力された前記パケットをネットワーク符号化するネットワーク符号化部と、
前記ネットワーク符号化部によりネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信部とを備える、
ことを特徴とする通信システム。
【請求項２】
前記受信局装置は、送信先の前記他の受信局装置のアドレス、または、送信元の自受信局装置のアドレスの少なくとも一方を付加したパケットを前記中継局装置に送信する受信局送信部をさらに備え、
前記送信済バッファ部は、前記受信局送信部により送信された前記パケットを格納する、
ことを特徴とする請求項１に記載の通信システム。
【請求項３】
前記中継局判定制御部は、前記２つの転送バッファ部のいずれかのみにパケットが格納されている場合、パケットが格納されている前記転送バッファ部から受信順に出力された前記パケットを前記中継局送信部により送信するよう制御し、
前記受信局装置は、
前記送信済バッファ部にパケットが格納されていない場合、前記受信局受信部により受信した前記パケットを出力し、前記受信局受信部により受信した前記パケットが前記送信済バッファ部に格納されている場合、受信した前記パケットを前記送信済バッファ部から削除する受信局判定制御部をさらに備える、
ことを特徴とする請求項１または請求項２に記載の通信システム。
【請求項４】
前記中継局送信部は、前記パケットに前記２台の受信局装置のアドレス、及び、自中継局装置のアドレスを付加して送信し、
前記受信局判定制御部は、前記受信局受信部により受信したパケットに自受信局装置のアドレス、他の受信局装置のアドレス、または、前記中継局装置のアドレスのうち１以上が設定されていない場合、他の通信システムから送信されたパケットの受信処理を行なうよう制御する、
ことを特徴とする請求項３に記載の通信システム。
【請求項５】
中継局装置と２台の受信局装置とを有する通信システムにおける前記中継局装置であって、
前記受信局装置宛のパケットを受信する中継局受信部と、
送信先の前記受信局装置に対応して設けられ、前記中継局受信部により受信した前記パケットを格納し、格納している前記パケットを受信順に出力する２つの転送バッファ部と、
前記中継局受信部により受信した前記パケットを、該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて前記２つの転送バッファ部の中から選択した前記転送バッファ部に格納する中継局判定制御部と、
前記２つの転送バッファ部それぞれから受信順に出力された前記パケットをネットワーク符号化するネットワーク符号化部と、
前記ネットワーク符号化部によりネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信部と、
を備えることを特徴とする中継局装置。
【請求項６】
中継局装置と２台の受信局装置とを有する通信システムにおける前記受信局装置であって、
前記中継局装置に送信された他の前記受信局装置宛のパケットを格納し、格納している前記パケットを前記中継局への送信順に出力する送信済バッファ部と、
前記中継局装置からネットワーク符号化されたパケットを受信する受信局受信部と、
前記受信局受信部により受信した前記ネットワーク符号化されたパケットを、前記送信済バッファ部から送信順に出力される前記パケットにより復号するネットワーク符号化復号部と、
を備えることを特徴とする受信局装置。
【請求項７】
中継局装置と２台の受信局装置とを有する通信システムに用いられる通信方法であって、
受信局装置において、
送信済バッファ部が、前記中継局装置に送信された他の前記受信局装置宛のパケットを格納する送信パケット格納過程と、
前記中継局装置において、
中継局受信部が、前記受信局装置宛の前記パケットを受信する中継局受信過程と、
中継局判定制御部が、前記中継局受信過程において受信した前記パケットを、送信先の前記受信局装置に対応して設けられた２つの転送バッファ部の中から該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて選択した前記転送バッファ部に格納する受信パケット格納過程とを有する一方、
前記中継局装置において、
前記２つの転送バッファ部それぞれが、格納している前記パケットのうち最初に受信したパケットを出力するパケット出力過程と、
ネットワーク符号化部が、前記パケット出力過程において前記２つの転送バッファ部それぞれから出力されたパケットをネットワーク符号化するネットワーク符号化過程と、
中継局送信部が、前記ネットワーク符号化過程においてネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信過程と、
前記受信局装置において、
受信局受信部が、前記中継局装置から前記ネットワーク符号化されたパケットを受信する受信局受信過程と、
前記送信済バッファ部が、格納している前記パケットのうち最初に送信された前記パケットを出力する鍵パケット出力過程と、
ネットワーク符号化復号部が、前記受信局受信過程において受信した前記ネットワーク符号化されたパケットを、前記鍵パケット出力過程において前記送信済バッファ部から出力された前記パケットにより復号するネットワーク符号化復号過程と、
を有することを特徴とする通信方法。
【請求項８】
中継局装置と２台の受信局装置とを有する通信システムにおける前記中継局装置に用いられる通信方法であって、
中継局受信部が、前記受信局装置宛のパケットを受信する中継局受信過程と、
中継局判定制御部が、前記中継局受信過程において受信した前記パケットを、送信先の前記受信局装置に対応して設けられた２つの転送バッファ部の中から該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて選択した前記転送バッファ部に格納する受信パケット格納過程とを有する一方、
前記２つの転送バッファ部それぞれが、格納している前記パケットのうち最初に受信したパケットを出力するパケット出力過程と、
ネットワーク符号化部が、前記パケット出力過程において前記２つの転送バッファ部それぞれから出力されたパケットをネットワーク符号化するネットワーク符号化過程と、
中継局送信部が、前記ネットワーク符号化過程においてネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信過程と、
を有することを特徴とする通信方法。
【請求項９】
中継局装置と２台の受信局装置とを有する通信システムにおける前記受信局装置に用いられる通信方法であって、
送信済バッファ部が、前記中継局装置に送信された他の前記受信局装置宛のパケットを格納する送信パケット格納過程を有する一方、
受信局受信部が、前記中継局装置から前記ネットワーク符号化されたパケットを受信する受信局受信過程と、
前記送信済バッファ部が、格納している前記パケットのうち最初に送信された前記パケットを出力する鍵パケット出力過程と、
ネットワーク符号化復号部が、前記受信局受信過程において受信した前記ネットワーク符号化されたパケットを、前記鍵パケット出力過程において前記送信済バッファ部から出力された前記パケットにより復号するネットワーク符号化復号過程と、
を有することを特徴とする通信方法。
【請求項１０】
中継局装置と２台の受信局装置とを有する通信システムにおける前記中継局装置に用いられるコンピュータを、
前記受信局装置宛のパケットを受信する中継局受信部、
送信先の前記受信局装置に対応して設けられ、前記中継局受信部により受信した前記パケットを格納し、格納している前記パケットを受信順に出力する２つの転送バッファ部と、
前記中継局受信部により受信した前記パケットを、該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて前記２つの転送バッファ部の中から選択した前記転送バッファ部に格納する中継局判定制御部と、
前記２つの転送バッファ部それぞれから受信順に出力された前記パケットをネットワーク符号化するネットワーク符号化部、
前記ネットワーク符号化部によりネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信部、
として機能させることを特徴とするプログラム。
【請求項１１】
中継局装置と２台の受信局装置とを有する通信システムにおける前記受信局装置に用いられるコンピュータを、
前記中継局装置に送信された他の前記受信局装置宛のパケットを格納し、格納している前記パケットを前記中継局への送信順に出力する送信済バッファ部、
前記中継局装置からネットワーク符号化されたパケットを受信する受信局受信部、
前記受信局受信部により受信した前記ネットワーク符号化されたパケットを、前記送信済バッファ部から送信順に出力される前記パケットにより復号するネットワーク符号化復号部、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークコーディングを用いた通信システム、中継局装置、受信局装置、および、それらの通信方法、プログラムに関する。
【背景技術】
【０００２】
近年、マルチホップ通信のスループットの向上を目的とした、ネットワークコーディング（ＮＣ）技術が注目されている。ネットワークコーディング技術は、マルチホップ中継を行うネットワーク上の中継局において複数の情報系列を線形符号化することによって複数のマルチキャスト通信やユニキャスト通信を多重化した上で宛先ノードとなる複数の受信局に送信し、各受信局において復号操作を行う。これによって、ネットワークコーディングを用いない場合に比べてスループットの向上を図ることができる。
【０００３】
ネットワークコーディングを用いたマルチホップ無線ネットワークでは、無線通信の同報性とネットワークコーディングを活用することにより、スループットの向上を実現する。中継局の役割を果たすノードは、複数の送信局ノードから受信したパケットを線形符号によって符号化し、受信局に中継する。受信局は、他のノードから受信したパケットあるいは自身が保持しているパケットを用いて、符号化されたパケットを同様の線形符号によって復号し、元の情報を得ることができる。例えば、特許文献１には無線のネットワークコーディング技術が、非特許文献１には有線のネットワークコーディング技術が記載されている。
以下、あるパケットに対し、ネットワークコーディングの符号化を施すことをＮＣ符号化と記載し、ネットワークコーディングにより符号化されたパケットを復号することをＮＣ復号と記載する。
【０００４】
従来のネットワークコーディング技術を、最も簡単なマルチホップ通信のトポロジであるAlice & Bobトポロジを具体例として挙げて説明する。なお、ＮＣ符号化されたパケットをＮＣパケットと記載し、ＮＣ符号化されていないパケットをネイティブパケットと記載する。パケットとは、あるノードが持つビット情報のことである。また、ＮＣ符号化には、線形符号化の１例である排他的論理和（ＸＯＲ）を用いるものとする。
【０００５】
図１３は、ネットワークコーディングを用いたAlice & Bobトポロジにおける通信手順を示す図である。このトポロジでは両端の送受信局であるノードＮ１、Ｎ２が、互いに中継局であるノードＲを介して双方向の通信を行う。各ノードの送信タイミングはタイムスロットにより区切られており、互いに干渉することはない。
ネットワークコーディングを用いたAlice & Bobトポロジの通信手順は、以下のようになる。
【０００６】
（１）時刻Ｔ１において、ノードＮ１（node-N1）がネイティブパケットであるパケットＡをノードＲ（node-R）に送信する。ノードＲはパケットＡを受信する。
（２）時刻Ｔ２において、ノードＮ２（node-N2）がネイティブパケットであるパケットＢをノードＲに送信する。ノードＲはパケットＢを受信する。
【０００７】
（３）時刻Ｔ３において、ノードＲがパケットＡとパケットＢに対してＮＣ符号化を行い、ＮＣパケットＸを生成する。ノードＲは、ＮＣパケットＸをノードＮ１およびノードＮ２に対して同報送信する。ノードＮ１は、自身が時刻Ｔ１において送信したパケットＡと時刻Ｔ３において受信したＮＣパケットＸとを用いてＮＣ復号を行うことにより、パケットＢを取得する。同様に、ノードＮ２においても、自身が時刻Ｔ２において送信したパケットＢと時刻Ｔ３において受信したＮＣパケットＸとを用いてＮＣ復号を行うことにより、パケットＡを取得する。ＮＣ復号には、ＮＣ符号化同様、パケット同士の排他的論理和が用いられる。
【０００８】
上記の手順において必要となるタイムスロット数は３である。一方、ＮＣ符号化を用いない場合、ノードＲからノードＮ２へのパケットＡの送信と、ノードＲからノードＮ１へのパケットＢの送信を別のタイムスロットにおいて行なう必要があるため、必要となるタイムスロット数は４となる。従って、ＮＣ符号化を用いない場合と用いた場合とを比較すると、ＮＣ符号化を適用することにより、ノードＮ１とノードＮ２が情報のやり取りを行うために消費するタイムスロット数が３／４になる。
【０００９】
また、ＮＣパケットに対してＮＣ復号処理を行う際に用いるパケットを鍵パケットと呼ぶ。図１３に記載した手順の場合、ノードＮ１については、ＮＣパケットＸからパケットＢを取得するために用いるパケットＡが鍵パケットであり、ノードＮ２については、ＮＣパケットＸからパケットＡを取得するために用いるパケットＢが鍵パケットである。例えば、特許文献２には、ＮＣ復号処理を行なうときに用いる鍵パケットを特定するため、ＮＣパケットの生成に用いたネイティブパケットのＩＤをヘッダ情報としてペイロードに付加している。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００９−２０６７７８号公報
【非特許文献】
【００１１】
【非特許文献１】R.Ahlswede, S.Li, and R. Yeung, “Network information flow,” IEEE Trans. Inf. Theory, vol.46, no.4, pp.1204-1216, Jul.2000
【非特許文献２】Sachin Katti, Hariharan Rahul, et al “XORs in The Air: Practical Wireless Network Coding,” Proc. ACM SIGCOMM 2006, Pisa, Italy, Sep.2006, pp.243-254
【発明の概要】
【発明が解決しようとする課題】
【００１２】
ネットワークコーディング技術を用いた通信では、受信したＮＣパケットをＮＣ復号するための鍵パケットを正しく選択しないと、ネイティブパケットを正しく得ることができない。そこで、上述したように従来は、ＮＣ符号化に用いたネイティブパケットのＩＤをＮＣパケットに付加して送信することにより、ＮＣパケットを受信したノードにおいて鍵パケットを正しく選択できるようにしている。しかし、ＮＣパケットに鍵パケットを選択可能とするための情報を付加すると、オーバーヘッドが大きくなってしまうため、システムスループットが劣化するという問題がある。加えて、全体のパケットサイズが大きくなってしまうため、伝送遅延が長大するという問題もある。また、現在の通信の標準規格には、鍵パケットを選択可能とするための情報を付加するフィールドは規定されていない。そのため、鍵パケットを選択可能とするための情報を付加してパケットを送信した場合、標準規格に準拠した通信システムと共存できない可能性がある。
【００１３】
本発明は、このような事情を考慮してなされたものであり、その目的は、ＮＣパケットに鍵パケットを選択するための情報を付加することなく、ＮＣパケットを受信したノードにおいて正しく鍵パケットを選択し、ＮＣ復号を行うことができる通信システム、中継局装置、受信局装置、および、それらの通信方法、プログラムを提供することにある。
【課題を解決するための手段】
【００１４】
上述した課題を解決するために、本発明は、中継局装置と２台の受信局装置とを有する通信システムであって、前記受信局装置は、前記中継局装置に送信された他の前記受信局装置宛のパケットを格納し、格納している前記パケットを前記中継局への送信順に出力する送信済バッファ部と、前記中継局装置からネットワーク符号化されたパケットを受信する受信局受信部と、前記受信局受信部により受信した前記ネットワーク符号化されたパケットを、前記送信済バッファ部から送信順に出力される前記パケットにより復号するネットワーク符号化復号部とを備え、前記中継局装置は、前記受信局装置宛の前記パケットを受信する中継局受信部と、送信先の前記受信局装置に対応して設けられ、前記中継局受信部により受信した前記パケットを格納し、格納している前記パケットを受信順に出力する２つの転送バッファ部と、前記中継局受信部により受信した前記パケットを、該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて前記２つの転送バッファ部の中から選択した前記転送バッファ部に格納する中継局判定制御部と、前記２つの転送バッファ部それぞれから受信順に出力された前記パケットをネットワーク符号化するネットワーク符号化部と、前記ネットワーク符号化部によりネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信部とを備える、ことを特徴とする通信システムである。
【００１５】
また、本発明は、上述した通信システムであって、前記受信局装置は、送信先の前記他の受信局装置のアドレス、または、送信元の自受信局装置のアドレスの少なくとも一方を付加したパケットを前記中継局装置に送信する受信局送信部をさらに備え、前記送信済バッファ部は、前記受信局送信部により送信された前記パケットを格納する、ことを特徴とする。
【００１６】
また、本発明は、上述した通信システムであって、前記中継局判定制御部は、前記２つの転送バッファ部のいずれかのみにパケットが格納されている場合、パケットが格納されている前記転送バッファ部から受信順に出力された前記パケットを前記中継局送信部により送信するよう制御し、前記受信局装置は、前記送信済バッファ部にパケットが格納されていない場合、前記受信局受信部により受信した前記パケットを出力し、前記受信局受信部により受信した前記パケットが前記送信済バッファ部に格納されている場合、受信した前記パケットを前記送信済バッファ部から削除する受信局判定制御部をさらに備える、ことを特徴とする。
【００１７】
また、本発明は、上述した通信システムであって、前記中継局送信部は、前記パケットに前記２台の受信局装置のアドレス、及び、中継局装置のアドレスを付加して送信し、前記受信局判定制御部は、前記受信局受信部により受信したパケットに自受信局装置のアドレス、他の受信局装置のアドレス、または、前記中継局装置のアドレスのうち１以上が設定されていない場合、他の通信システムから送信されたパケットの受信処理を行なうよう制御する、ことを特徴とする。
【００１８】
また、本発明は、中継局装置と２台の受信局装置とを有する通信システムにおける前記中継局装置であって、前記受信局装置宛のパケットを受信する中継局受信部と、送信先の前記受信局装置に対応して設けられ、前記中継局受信部により受信した前記パケットを格納し、格納している前記パケットを受信順に出力する２つの転送バッファ部と、前記中継局受信部により受信した前記パケットを、該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて前記２つの転送バッファ部の中から選択した前記転送バッファ部に格納する中継局判定制御部と、前記２つの転送バッファ部それぞれから受信順に出力された前記パケットをネットワーク符号化するネットワーク符号化部と、前記ネットワーク符号化部によりネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信部と、を備えることを特徴とする中継局装置である。
【００１９】
また、本発明は、中継局装置と２台の受信局装置とを有する通信システムにおける前記受信局装置であって、前記中継局装置に送信された他の前記受信局装置宛のパケットを格納し、格納している前記パケットを前記中継局への送信順に出力する送信済バッファ部と、前記中継局装置からネットワーク符号化されたパケットを受信する受信局受信部と、前記受信局受信部により受信した前記ネットワーク符号化されたパケットを、前記送信済バッファ部から送信順に出力される前記パケットにより復号するネットワーク符号化復号部と、を備えることを特徴とする受信局装置である。
【００２０】
また、本発明は、中継局装置と２台の受信局装置とを有する通信システムに用いられる通信方法であって、受信局装置において、送信済バッファ部が、前記中継局装置に送信された他の前記受信局装置宛のパケットを格納する送信パケット格納過程と、前記中継局装置において、中継局受信部が、前記受信局装置宛の前記パケットを受信する中継局受信過程と、中継局判定制御部が、前記中継局受信過程において受信した前記パケットを、送信先の前記受信局装置に対応して設けられた２つの転送バッファ部の中から該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて選択した前記転送バッファ部に格納する受信パケット格納過程とを有する一方、前記中継局装置において、前記２つの転送バッファ部それぞれが、格納している前記パケットのうち最初に受信したパケットを出力するパケット出力過程と、ネットワーク符号化部が、前記パケット出力過程において前記２つの転送バッファ部それぞれから出力されたパケットをネットワーク符号化するネットワーク符号化過程と、中継局送信部が、前記ネットワーク符号化過程においてネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信過程と、前記受信局装置において、受信局受信部が、前記中継局装置から前記ネットワーク符号化されたパケットを受信する受信局受信過程と、前記送信済バッファ部が、格納している前記パケットのうち最初に送信された前記パケットを出力する鍵パケット出力過程と、ネットワーク符号化復号部が、前記受信局受信過程において受信した前記ネットワーク符号化されたパケットを、前記鍵パケット出力過程において前記送信済バッファ部から出力された前記パケットにより復号するネットワーク符号化復号過程と、を有することを特徴とする通信方法である。
【００２１】
また、本発明は、中継局装置と２台の受信局装置とを有する通信システムにおける前記中継局装置に用いられる通信方法であって、中継局受信部が、前記受信局装置宛のパケットを受信する中継局受信過程と、中継局判定制御部が、前記中継局受信過程において受信した前記パケットを、送信先の前記受信局装置に対応して設けられた２つの転送バッファ部の中から該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて選択した前記転送バッファ部に格納する受信パケット格納過程とを有する一方、前記２つの転送バッファ部それぞれが、格納している前記パケットのうち最初に受信したパケットを出力するパケット出力過程と、ネットワーク符号化部が、前記パケット出力過程において前記２つの転送バッファ部それぞれから出力されたパケットをネットワーク符号化するネットワーク符号化過程と、中継局送信部が、前記ネットワーク符号化過程においてネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信過程と、を有することを特徴とする通信方法である。
【００２２】
また、本発明は、中継局装置と２台の受信局装置とを有する通信システムにおける前記受信局装置に用いられる通信方法であって、送信済バッファ部が、前記中継局装置に送信された他の前記受信局装置宛のパケットを格納する送信パケット格納過程を有する一方、受信局受信部が、前記中継局装置から前記ネットワーク符号化されたパケットを受信する受信局受信過程と、前記送信済バッファ部が、格納している前記パケットのうち最初に送信された前記パケットを出力する鍵パケット出力過程と、ネットワーク符号化復号部が、前記受信局受信過程において受信した前記ネットワーク符号化されたパケットを、前記鍵パケット出力過程において前記送信済バッファ部から出力された前記パケットにより復号するネットワーク符号化復号過程と、を有することを特徴とする通信方法である。
【００２３】
また、本発明は、中継局装置と２台の受信局装置とを有する通信システムにおける前記中継局装置に用いられるコンピュータを、前記受信局装置宛のパケットを受信する中継局受信部、送信先の前記受信局装置に対応して設けられ、前記中継局受信部により受信した前記パケットを格納し、格納している前記パケットを受信順に出力する２つの転送バッファ部と、前記中継局受信部により受信した前記パケットを、該パケットに付加された送信先または送信元の前記受信局装置のアドレスに基づいて前記２つの転送バッファ部の中から選択した前記転送バッファ部に格納する中継局判定制御部と、前記２つの転送バッファ部それぞれから受信順に出力された前記パケットをネットワーク符号化するネットワーク符号化部、前記ネットワーク符号化部によりネットワーク符号化された前記パケットを前記受信局装置に送信する中継局送信部、として機能させることを特徴とするプログラムである。
【００２４】
また、本発明は、中継局装置と２台の受信局装置とを有する通信システムにおける前記受信局装置に用いられるコンピュータを、前記中継局装置に送信された他の前記受信局装置宛のパケットを格納し、格納している前記パケットを前記中継局への送信順に出力する送信済バッファ部、前記中継局装置からネットワーク符号化されたパケットを受信する受信局受信部、前記受信局受信部により受信した前記ネットワーク符号化されたパケットを、前記送信済バッファ部から送信順に出力される前記パケットにより復号するネットワーク符号化復号部、として機能させることを特徴とするプログラムである。
【発明の効果】
【００２５】
本発明によれば、ネットワークコーディングを用いた通信システムにおいて、中継局装置は、ＮＣパケットに鍵パケットを選択するための情報を付加することなくＮＣパケットを送信し、このＮＣパケットを受信した受信局装置において正しく鍵パケットを選択し、ＮＣ復号を行うことができる。従って、鍵パケットの選択に用いる追加情報をＮＣパケットに付加することによって発生するスループット劣化や、伝送遅延の長大を防ぐことができる。また、ＮＣパケットに追加情報を付加する必要がないため、既存の標準規格をそのまま適用することが可能である。よって、ＮＣ符号化されていないパケットの受信も可能であり、ネットワークコーディングを適用していない既存の通信システムと共存することができる。
加えて、受信局装置は、パケットの通信において一般的に付加されるアドレス情報や、自局が備える送信済バッファ内のパケット蓄積状況によって、受信したパケットがＮＣパケットであるか、自装置宛のネイティブパケットであるか、自装置が送信したパケットであるか、他通信システムのノードから送信されたパケットであるかを簡易に判断し、適切な受信処理を行なうことができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施形態による通信システムの全体構成図である。
【図２】同実施形態による通信システムに用いられる無線フレームを示す図である。
【図３】同実施形態による通信システムの動作概要を示す図である。
【図４】同実施形態による通信システムの動作概要を示す図である。
【図５】同実施形態による通信システムの動作概要を示す図である。
【図６】同実施形態による送受信局の構成例を示すブロック図である。
【図７】同実施形態による中継局の構成例を示すブロック図である。
【図８】同実施形態による送受信局の送信処理フローを示す図である。
【図９】同実施形態による中継局の受信処理フローを示す図である。
【図１０】同実施形態による中継局の送信処理フローを示す図である。
【図１１】同実施形態による送受信局の受信処理フローを示す図である。
【図１２】同実施形態による送受信局の判定処理フローを示す図である。
【図１３】従来技術によるネットワークコーディングを用いた通信手順を示す図である。
【発明を実施するための形態】
【００２７】
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
【００２８】
図１は、本発明の一実施形態による通信システムの全体構成図である。同図に示すように、本実施形態の通信システムは、ネットワークコーディング（以下、「ＮＣ」とも記載）技術を用いた２ホップ無線中継システムであり、２台の送受信局１と、中継局２とからなる。以下、２台の送受信局１をそれぞれ、送受信局１ａ、１ｂと記載する。同図に示す通信システムにおいて、受信局装置と送信局装置を兼ねた送受信局１ａ、１ｂは、中継局装置である中継局２を介して双方向の通信を行う。送受信局１ａ、１ｂ、及び、中継局２は、ＣＳＭＡ／ＣＡ（carrier sense multiple access / collision avoidance）によって動作し、キャリアセンスは理想的に機能するものとする。そのため、送受信局１ａ、１ｂ、及び、中継局２それぞれの送信タイミングはタイムスロットにより区切られ、互いに干渉することがないものとする。システム全体におけるｎ番目の送信タイミングを時刻Ｔｎと表す。また、送受信局１ａ、１ｂは、受信した無線信号を送信先等に関わらず必ず復調するプロミスキャスモードで動作する。
【００２９】
図２は、本発明の実施形態による通信システムにおいてパケットの送受信に用いられる無線フレームを示す図である。本実施形態の通信システムでは、標準（ＩＥＥＥ８０２．１１）に準拠したＭＡＣ（Medium Access Control）フレームが用いられる。同図に示すように、ＭＡＣフレームは、送信先アドレス、送信元アドレス、中継アドレスが設定される３つのアドレスフィールド（Address 1、Address 2、Address 3）や、パケットが設定されるフィールドであるペイロード（payload）を含む。ペイロード（payload）には、ネットワークコーディングの符号化が施されたパケットであるＮＣパケットや、ネットワークコーディングの符号化が施されていないパケットであるネイティブパケットが設定される。以下、ネットワークコーディングの符号化を施すことを「ＮＣ符号化」と記載し、ネットワークコーディングにより符号化されたパケットを復号することを「ＮＣ復号」と記載する。また、ＮＣパケットをＮＣ復号するために必要となるパケットを「鍵パケット」と記載する。
【００３０】
送受信局１から他の送受信局１宛のパケットを中継局２へ送信する場合、Address 1には中継局２のアドレスが設定され、Address 2にはパケットの送信元である送受信局１のアドレスが設定され、Address 3には最終的な宛先となる送受信局１のアドレスが設定される。
中継局２から送受信局１へ中継パケットを送信する場合、ペイロードに設定される中継パケットがＮＣパケットか、ネイティブパケットかに関わらず、Address 2には中継局２のアドレスが設定される。そして、中継パケットがＮＣパケットである場合、Address 1にはいずれかの送受信局１のアドレスが設定され、Address 3には他方の送受信局１のアドレスが設定される。中継パケットがネイティブパケットである場合、Address 1にはパケットの最終的な宛先となる送受信局１のアドレスが、Address 3にはパケットの送信元である送受信局１のアドレスが設定される。
【００３１】
図３〜図５は、図１に示す通信システムの動作概要を示す図である。
送受信局１は、中継局２に送信したパケットを送信順に格納する送信済バッファを備えている。また、中継局２は、転送バッファとして、送受信局１ａから送受信局１ｂ宛のパケットを受信順に格納する第１転送バッファと、送受信局１ｂから送受信局１ａ宛のパケットを受信順に格納する第２転送バッファとを備えている。
【００３２】
図３において、時刻Ｔ１に、送受信局１ａが送信機会を得ると、送受信局１ｂ宛のネイティブパケットであるパケットα１を中継局２に送信する。送受信局１ａは、送信したパケットα１を送信済バッファに格納し、中継局２は、受信したパケットα１を第１転送バッファに格納する。
続いて、時刻Ｔ２に、送受信局１ａが送信機会を得ると、送受信局１ｂ宛のネイティブパケットであるパケットα２を中継局２に送信する。送受信局１ａは、パケットα２がパケットα１の後の順序となるように送信済バッファに格納し、中継局２は、受信したパケットα２がパケットα１の後の順序となるように第１転送バッファに格納する。
【００３３】
図４において、時刻Ｔ３に、送受信局１ｂが送信機会を得ると、送受信局１ａ宛のネイティブパケットであるパケットβ１を中継局２に送信する。送受信局１ｂは、送信したパケットβ１を送信済バッファに格納し、中継局２は、受信したパケットβ１を第２転送バッファに格納する。
【００３４】
さらに、時刻Ｔ４には、送受信局１ａが送受信局１ｂ宛のネイティブパケットであるパケットα３を中継局２に送信し、送受信局１ａの送信済バッファ、及び、中継局２の第１転送バッファには、パケットα３がパケットα２の後の順序となるように格納され、時刻Ｔ５には、送受信局１ｂが送受信局１ａ宛のネイティブパケットであるパケットβ２を中継局２に送信し、送受信局１ｂの送信済バッファ、及び、中継局２の第２転送バッファには、パケットβ２がパケットβ１の後の順序となるように格納される。
【００３５】
図５において、時刻Ｔ６に中継局２が送信機会を得ると、第１転送バッファに格納されているパケットの中で最初に格納されたパケットα１と、第２転送バッファに格納されているパケットの中で最初に格納されたパケットβ１とを用いてＮＣ符号化を行い、ＮＣパケットχ１を生成する。例えば、ＮＣ符号化には、パケット同士のビット毎の排他的論理和を用いる。中継局２は、ＮＣパケットχ１を送受信局１ａおよび送受信局１ｂに同報送信する。中継局２は、ＮＣ符号化に用いたパケットα１、パケットβ１をそれぞれ第１転送バッファ、第２転送バッファから削除する。
【００３６】
送受信局１ａは、送信済バッファに格納されている中で最初に格納されたパケットα１を鍵パケットとして用いて中継局２から受信したＮＣパケットχ１のＮＣ復号を行い、パケットβ１を取得する。送受信局１ａは、ＮＣ復号に用いた鍵パケットであるパケットα１を送信済バッファから削除する。
同様に、送受信局１ｂは、送信済バッファに格納されている中で最初に格納されたパケットβ１を鍵パケットとして用いて中継局２から受信したＮＣパケットχ１のＮＣ復号を行い、パケットα１を取得する。送受信局１ｂは、ＮＣ復号に用いた鍵パケットであるパケットβ１を送信済バッファから削除する。
なお、ＮＣ復号には、ＮＣ符号化同様、パケット同士のビット毎の排他的論理和が用いられる。
【００３７】
次に中継局２が送信機会を得たときには、第１転送バッファに格納されているパケットの中で最初に格納されたパケットα２と、第２転送バッファに格納されているパケットの中で最初に格納されたパケットβ２とを用いてＮＣパケットχ２を生成し、送受信局１ａ，１ｂに同報送信した後、パケットα２、パケットβ２をそれぞれ第１転送バッファ、第２転送バッファから削除する。送受信局１ａは、送信済バッファに格納されている中で最初に格納されたパケットα２を鍵パケットとして用いて中継局２から受信したＮＣパケットχ２のＮＣ復号を行い、パケットβ２を取得すると、パケットα２を送信済バッファから削除する。同様に、送受信局１ｂは、送信済バッファに格納されている中で最初に格納されたパケットβ２を鍵パケットとして用いて中継局２から受信したＮＣパケットχ２のＮＣ復号を行い、パケットα２を取得すると、パケットβ２を送信済バッファから削除する。
【００３８】
上記のように、中継局２は、送受信局１から受信したパケットを送信先及び送信元の組み合わせに対応した転送バッファに受信順に格納し、送信機会を得たときには、ぞれぞれの転送バッファから受信順にパケットを取得してＮＣ符号化を行ない、ＮＣパケットを生成する。中継局２はＮＣ符号化に用いたパケットを削除する。
また、送受信局１は、送信したパケットを送信済バッファに送信順に格納し、中継局２からＮＣパケットを受信したときには、送信済バッファから送信順にパケットを取得し、取得したパケットを鍵パケットとしてＮＣ復号を行ない、所望のパケットを取得する。送受信局１は、ＮＣ復号に鍵パケットとして用いたパケットを削除する。
【００３９】
なお、中継局２は、送信機会を得たときに、第１転送バッファ、第２転送バッファのいずれかのみにパケットが格納されている場合、パケットが格納されている転送バッファから受信順にパケットを読み出し、ＮＣ符号化を行なわずに送信する。送信したパケットは、転送バッファから削除する。送受信局１は、中継局２から中継パケットを受信したときに、送信済バッファにパケットが格納されていない場合、受信した中継パケットが自局宛のネイティブパケットであると判断し、ＮＣ復号は行なわない。また、受信した中継パケットが自送信パケットである場合、この自送信パケットが宛先の送受信局１に送信されたものとして、この中継パケットと同じパケットを送信済バッファから削除する。
【００４０】
図６は、本実施形態による送受信局１の構成を示すブロック図である。送受信局１は、送信済バッファ回路１１、無線送受信部１２、判定制御部１３、出力切替回路１４、ＮＣ復号回路１５、及び、入力切替回路１６を含んで構成される。
【００４１】
送信済バッファ回路１１は、送信したパケットを送信順に格納し、判定制御部１３からの指示により、格納しているパケットを送信順に出力したり、削除したりする。無線送受信部１２は、無線信号の送受信を行なう。具体的には、送信対象のパケットを変調し、無線信号としてアンテナから送信したり、アンテナにより受信した無線信号を復調したりする。判定制御部１３は、復調された無線信号に含まれる受信パケットがＮＣパケットであるか、自局宛のネイティブパケットであるか、自局が送信したパケットであるか等を判定し、判定結果に基づいて出力切替回路１４及び入力切替回路１６を切り替えたり、送信済バッファ回路１１に格納されているパケットの出力や削除を指示したりする。出力切替回路１４は、無線送受信部１２が無線信号を復調することにより得たパケットの出力先を、ＮＣ復号回路１５または入力切替回路１６に切り替える。入力切替回路１６は、パケットの入力元を出力切替回路１４またはＮＣ復号回路１５に切り替える。ＮＣ復号回路１５は、送信済バッファ回路１１から出力されたパケットを鍵パケットとして、ＮＣパケットのＮＣ復号を行なう。
【００４２】
図７は、本実施形態による中継局２の構成を示すブロック図である。中継局２は、無線送受信部２１、判定制御部２２、出力切替回路２３、第１転送バッファ回路２４−１、第２転送バッファ回路２４−２、ＮＣ符号化回路２５、及び、入力切替回路２６を含んで構成される。第１転送バッファ回路２４−１、第２転送バッファ回路２４−２、ＮＣ符号化回路２５、及び、入力切替回路２６により、中継パケットの出力回路が構成される。
【００４３】
無線送受信部２１は、送受信局１の無線送受信部１２と同様の機能を有する。第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２はそれぞれ、送信先及び送信元の組み合わせに対応しており、自バッファ回路に対応する送信先及び送信元の組み合わせのパケットを受信順に格納し、判定制御部２２からの指示により、格納しているパケットを受信順に出力したり、削除したりする。
【００４４】
判定制御部２２は、受信したパケットを第１転送バッファ回路２４−１または第２転送バッファ回路２４−２のいずれに格納すべきか判断し、出力切替回路２３を切り替える。また、判定制御部２２は、送信機会を得たときに第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２のパケット格納状態からＮＣパケットを送信するかネイティブパケットを送信するかを判断し、判断結果に従って、入力切替回路２６を切り替えるとともに、第１転送バッファ回路２４−１、第２転送バッファ回路２４−２のいずれかまたは両方に、格納されているパケットの出力を指示する。
【００４５】
出力切替回路２３は、無線送受信部２１から入力されたパケットの出力先を、第１転送バッファ回路２４−１または第２転送バッファ回路２４−２に切り替える。入力切替回路２６は、パケットの入力元を第１転送バッファ回路２４−１、第２転送バッファ回路２４−２、または、ＮＣ符号化回路２５に切り替える。ＮＣ符号化回路２５は、第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２それぞれから出力されたパケットを用いてＮＣ符号化を行い、ＮＣパケットを生成する。
【００４６】
なお、送受信局１の送信済バッファ回路１１からのパケットの削除、中継局２の第１転送バッファ回路２４−１、第２転送バッファ回路２４−２からのパケットの削除は、メモリに記憶されているパケットの内容を消去する物理的な削除でもよく、格納されているパケットに削除を示す情報を付加する等の論理的な削除でもよい。
【００４７】
図８は、送受信局１における送信処理フローを示す図である。送受信局１が送信機会を得たときに、上位レイヤ等から送信対象のパケットが入力されると（ステップＳ１０５）、入力されたパケットを送信済バッファ回路１１に入力順に格納するとともに（ステップＳ１１０）、この入力されたパケットを無線送受信部１２に出力する。無線送受信部１２は、入力されたパケットを変調し（ステップＳ１１５）、変調したパケットを図２に示す無線フレームを用いて無線信号により中継局２に送信する（ステップＳ１２０）。
【００４８】
図９は、中継局２における受信処理フローを示す図である。中継局２の無線送受信部２１は、送受信局１から無線信号を受信すると（ステップＳ２０５）、受信した無線信号を復調する（ステップＳ２１０）。判定制御部２２は、復調された無線信号の無線フレームから送信先及び送信元の送受信局１のアドレスをそれぞれAddress 3及びAddress 2から読み出し、格納先が第１転送バッファ回路２４−１であるか、第２転送バッファ回路２４−２であるかを判断する（ステップＳ２１５）。なお、送信元の送受信局１のアドレスのみ、あるいは、送信先の送受信局１のアドレスのみにより、格納先の転送バッファを決定してもよい。判定制御部２２は、出力切替回路２３の出力先を、格納先と判断した第１転送バッファ回路２４−１または第２転送バッファ回路２４−２に切り替える。無線送受信部２１は、復調された無線信号から抽出したパケットを出力切替回路２３に出力し、出力切替回路２３からパケットが入力された第１転送バッファ回路２４−１または第２転送バッファ回路２４−２は、自転送バッファ回路内においてこの入力されたパケットを受信順に格納する（ステップＳ２２０）。
【００４９】
図１０は、中継局２における送信処理フローを示す図である。中継局２が送信機会を得ると、判定制御部２２は、第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２にパケットが格納されているかを判断する（ステップＳ３０５）。第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２の両方にパケットが格納されていると判断した場合（ステップＳ３０５：両転送バッファにあり）、判定制御部２２は、ＮＣパケットの送信を行なうため、入力切替回路２６の入力元をＮＣ符号化回路２５に切り替える。さらに、判定制御部２２は、第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２に、パケットを出力するよう指示する。
【００５０】
判定制御部２２の指示を受けた第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２はそれぞれ、格納しているパケットの中で最初に格納したパケットを１つ出力する（ステップＳ３１０）。ＮＣ符号化回路２５は、第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２それぞれから入力されたパケット、つまり、送信先及び送信元の組が異なる２つのパケットを用いてＮＣ符号化を行い、生成されたＮＣパケットを入力切替回路２６に出力する（ステップＳ３１５）。無線送受信部２１は、入力切替回路２６を介して入力されたＮＣパケットを変調し（ステップＳ３２０）、変調したＮＣパケットを図２に示す無線フレームを用いた無線信号により両送受信局１に送信する（ステップＳ３２５）。無線フレームのAddress 1には一方の送受信局１のアドレスが、Address 3には他方の送受信局１のアドレスが、Address 2には中継局２のアドレスが設定される。判定制御部２２は、第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２に、ステップＳ３１０において出力済みのパケットの削除を指示し、第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２は、ステップＳ３１０において出力したパケットを削除する（ステップＳ３３０）。
【００５１】
ステップＳ３０５において、第１転送バッファ回路２４−１にパケットが格納さており、第２転送バッファ回路２４−２にパケットが格納されていないと判断した場合（ステップＳ３０５：第１転送バッファのみにあり）、判定制御部２２は、ユニキャストによるネイティブパケットの送信を行なうため、入力切替回路２６の入力元を第１転送バッファ回路２４−１に切り替え、第１転送バッファ回路２４−１にパケットの出力を指示する。
【００５２】
判定制御部２２の指示を受けた第１転送バッファ回路２４−１は、格納しているパケットの中で最初に格納したパケットを１つ出力する（ステップＳ３３５）。入力切替回路２６は、第１転送バッファ回路２４−１から入力されたパケット、つまり、ネイティブパケットを無線送受信部２１に出力する。無線送受信部２１は、入力切替回路２６から入力されたパケットを変調し（ステップＳ３４０）、変調したパケットを図２に示す無線フレームを用いた無線信号により両送受信局１に送信する（ステップＳ３４５）。無線フレームのAddress 1及びAddress 3には、第１転送バッファ回路２４−１に対応した送信先及び送信元の送受信局１のアドレスが設定され、Address 2には、中継局２のアドレスが設定される。判定制御部２２は、第１転送バッファ回路２４−１に出力済みパケットの削除を指示し、第１転送バッファ回路２４−１は、ステップＳ３３５において出力したパケットを削除する（ステップＳ３５０）。
【００５３】
ステップＳ３０５において、第１転送バッファ回路２４−１にはパケットが格納されておらず、第２転送バッファ回路２４−２にパケットが格納されていると判断した場合（ステップＳ３０５：第２転送バッファのみにあり）、第１転送バッファ回路２４−１を第２転送バッファ回路２４−２と置き換えて、ステップＳ３３５〜Ｓ３５０と同様の処理を行なう（ステップＳ３５５〜Ｓ３７０）。つまり、入力切替回路２６の入力元を第２転送バッファ回路２４−２に切り替え、第２転送バッファ回路２４−２は、格納しているパケットの中で最初に受信したパケットを１つ出力する。無線送受信部２１は、第２転送バッファ回路２４−２が出力したパケットを変調し、無線信号により両送受信局１に送信する。第２転送バッファ回路２４−２は、出力済みのパケットを削除する。
【００５４】
図１１は、送受信局１における受信処理フローを示す図である。送受信局１の無線送受信部１２は、無線信号を受信すると（ステップＳ４０５）、受信した無線信号を復調する（ステップＳ４１０）。判定制御部１３は、復調された無線信号の無線フレームの３つのアドレスフィールド（Address 1、Address 2、Address 3）及びパケットの設定内容、さらには、送信済バッファ回路１１のパケット格納状態等から、受信パケットがＮＣパケット、自局宛のネイティブパケットであるユニキャストパケット、自局が中継局２へ送信した自送信パケット、あるいは、自局が属する通信システム以外のノードから送信されたシステム外パケットのいずれであるかを判断する（ステップＳ４１５）。判断の詳細手順については、後述する図１２のフローで説明する。
【００５５】
受信パケットがＮＣパケットであると判断した場合（ステップＳ４１５：ＮＣパケット）、判定制御部１３は、出力切替回路１４の出力先をＮＣ復号回路１５に切り替え、入力切替回路１６の入力元をＮＣ復号回路１５に切り替える。さらに、判定制御部１３は、送信済バッファ回路１１にパケットの出力を指示し、送信済バッファ回路１１は、格納しているパケットのうち最初に格納したパケットを１つ出力する。ＮＣ復号回路１５は、送信済バッファ回路１１から入力されたパケットを鍵パケットとして用いて、出力切替回路１４から入力されたＮＣパケットをＮＣ復号し、このＮＣ復号により得られたパケットを出力する（ステップＳ４２０）。判定制御部１３は、送信済バッファ回路１１に、出力済みのパケットの削除を指示し、送信済バッファ回路１１は、ステップＳ４２５において出力したパケットを削除する（ステップＳ４２５）。入力切替回路１６は、ＮＣ復号回路１５によってＮＣ復号されたパケットを上位レイヤ等に出力する（ステップＳ４３０）。
【００５６】
ステップＳ４１５において、受信パケットが自局宛のユニキャストパケットであると判断した場合（ステップＳ４１５：ユニキャストパケット）、判定制御部１３は、出力切替回路１４の出力先を入力切替回路１６に切り替え、入力切替回路１６の入力元を出力切替回路１４に切り替える。出力切替回路１４は、無線送受信部１２から入力されたパケットを入力切替回路１６に出力し、入力切替回路１６は、出力切替回路１４から入力されたパケットを上位レイヤ等に出力する（ステップＳ４３５）。
【００５７】
ステップＳ４１５において、受信パケットが自送信パケットであると判断した場合（ステップＳ４１５：自送信パケット）、判定制御部１３は、受信パケットを破棄し、送信済バッファ回路１１に、受信パケットと同一のパケットを送信済バッファ回路１１から削除するよう指示する。送信済バッファ回路１１は、判定制御部１３の指示に従い、格納しているパケットの中から受信パケットと同一のパケットを削除する（ステップＳ４４０）。なお、受信パケットと同一のパケットは、送信済バッファ回路１１に格納されているパケットの中で、最初に格納されたパケットである。
【００５８】
ステップＳ４１５において、受信パケットがシステム外パケットであると判断した場合（ステップＳ４１５：システム外パケット）、送受信局１は、予め決められたシステム外パケット受信処理を行なう。例えば、自局宛のユニキャストパケット受信時と同様にステップＳ４３５の処理を行い、無線送受信部１２により復調された受信パケットを入力切替回路１６から出力してもよく、受信パケットを破棄してもよい。
【００５９】
図１２は、送受信局１の判定制御部１３による判定処理フローを示す図であり、図１１に示す受信処理フローのステップＳ４１５における受信パケット判定処理の詳細な処理フローを示す。判定制御部１３は、無線送受信部１２により復調された無線フレームのアドレスフィールドに送受信局１ａ、１ｂ、及び、中継局２のアドレス全てが設定されているか否かを判断する（ステップＳ５０５）。アドレスフィールドに送受信局１ａ、１ｂ、あるいは、中継局２のアドレスのうちいずれか１以上が設定されていないと判断した場合（ステップＳ５０５：ＮＯ）、判定制御部１３は、受信したパケットはシステム外パケットと判定し、図１１に示すステップＳ４４５の処理を行なう。
【００６０】
アドレスフィールドに送受信局１ａ、１ｂ、及び、中継局２のアドレス全てが設定されていると判断した場合（ステップＳ５０５：ＹＥＳ）、判定制御部１３は、受信パケットは自局が属する通信システムにおけるパケットであり、ＮＣパケットの可能性があると判定し、続いて、送信済バッファ回路１１にパケットが格納されているか否かを判断する（ステップＳ５１０）。送信済バッファ回路１１にパケットが格納されていない場合（ステップＳ５１０：ＮＯ）、受信したパケットはユニキャストパケット、つまり、自局宛のネイティブパケットであると判定し、図１１に示すステップＳ４３５の処理を行なう。
【００６１】
一方、送信済バッファ回路１１にパケットが格納されていると判断した場合（ステップＳ５１０：ＹＥＳ）、判定制御部１３は、受信パケットが自送信パケットであるか否かを判定する（ステップＳ５１５）。判定制御部１３は、受信パケットのAddress 1に他の送受信局１のアドレスが、Address 3に自局のアドレスが設定されており、かつ、復調されたパケットが送信済バッファ回路１１に格納されている場合、受信パケットが自送信パケットであると判定する。受信パケットが自送信パケットであると判定した場合（ステップＳ５１５：ＹＥＳ）、図１１に示すステップＳ４４０の処理を行い、受信パケットが自送信パケットではないと判定した場合（ステップＳ５１５：ＮＯ）、判定制御部１３は、受信パケットがＮＣパケットであると判定し、図１１に示すステップＳ４２０以降の処理を行なう。
【００６２】
続いて、図８〜図１１の処理フローを用いて、図３〜５の処理を説明する。
なお、送受信局１ａが備える送受信局１の各部には符号に「ａ」を付加して記載し、送受信局１ｂが備える送受信局１の各部には符号に「ｂ」を付加して記載する。例えば、送受信局１ａの備える送信済バッファ回路１１は、「送信済バッファ回路１１ａ」と記載し、送受信局１ｂの備える送信済バッファ回路１１は、「送信済バッファ回路１１ｂ」と記載する。
【００６３】
図３の時刻Ｔ１において、送受信局１ａに、上位レイヤ等から送受信局１ｂ宛のネイティブパケットであるパケットα１が入力されると（図８、ステップＳ１０５）、パケットα１が送信済バッファ回路１１ａに格納される（図８、ステップＳ１１０）。無線送受信部１２ａは、パケットα１を変調し（図８、ステップＳ１１５）、無線信号により中継局２に送信する（図８、ステップＳ１２０）。無線フレームのAddress 1には中継局２のアドレスが設定され、Address 3には送信先アドレスとして送受信局１ｂのアドレスが設定され、Address 2には送信元アドレスとして送受信局１ａのアドレスが設定される。
【００６４】
中継局２の無線送受信部２１は、無線信号によりパケットα１を受信すると（図９、ステップＳ２０５）、受信した無線信号を復調する（図９、ステップＳ２１０）。判定制御部２２は、復調された無線信号の無線フレームに設定されている送信先及び送信元の送受信局１のアドレスに基づき、送信先「送受信局１ｂ」及び送信元「送受信局１ａ」の組に対応した第１転送バッファ回路２４−１を格納先と判断する（図９、ステップＳ２１５）。判定制御部２２は、出力切替回路２３の出力先を第１転送バッファ回路２４−１に切り替え、第１転送バッファ回路２４−１は、パケットα１を格納する（図９、ステップＳ２２０）。
【００６５】
続いて、時刻Ｔ２において、送受信局１ａに、送受信局１ｂ宛のネイティブパケットであるパケットα２が入力された場合、時刻Ｔ１における送受信局１ａの処理と同様の処理を行なう。但し、送信済バッファ回路１１ａは、パケットα２をパケットα１の後の順序となるように格納する。中継局２は、送受信局１ａから無線信号によりパケットα２を受信すると、時刻Ｔ１における中継局２の処理と同様の処理を行なう。但し、第１転送バッファ回路２４−１は、パケットα２をパケットα１の後の順序となるように格納する。
【００６６】
図４の時刻Ｔ３において、送受信局１ｂに、上位レイヤ等から送受信局１ａ宛のネイティブパケットであるパケットβ１が入力された場合、時刻Ｔ１における送受信局１ａと同様の処理を行なう。これにより、送信済バッファ回路１１ｂにはパケットβ１が格納され、無線送受信部１２ｂは、変調したパケットβ１を無線信号により中継局２に送信する。Address 1には中継局２のアドレスが、Address 3には送信先アドレスとして送受信局１ａのアドレスが、Address 2には送信元アドレスとして送受信局１ｂのアドレスが設定される。
【００６７】
中継局２の無線送受信部２１は、無線信号によりパケットβ１を受信すると（図９、ステップＳ２０５）、受信した無線信号を復調する（図９、ステップＳ２１０）。判定制御部２２は、復調された無線信号の無線フレームに設定されている送信先及び送信元の送受信局１のアドレスに基づき、送信先「送受信局１ａ」及び送信元「送受信局１ｂ」の組に対応した第２転送バッファ回路２４−２を格納先と判断する（図９、ステップＳ２１５）。判定制御部２２は、出力切替回路２３の出力先を第２転送バッファ回路２４−２に切り替え、第２転送バッファ回路２４−２は、パケットβ１を格納する（図９、ステップＳ２２０）。
【００６８】
時刻Ｔ４において、送受信局１ａに、送受信局１ｂ宛のネイティブパケットであるパケットα３が入力された場合、時刻Ｔ２における送受信局１ａと同様の処理を行なう。但し、送信済バッファ回路１１ａは、パケットα３をパケットα２の後の順序となるように格納する。中継局２は、送受信局１ａから無線信号によりパケットα３を受信すると、時刻Ｔ２における中継局２の処理と同様の処理を行なう。但し、第１転送バッファ回路２４−１は、パケットα３をパケットα２の後の順序となるように格納する。
【００６９】
また、時刻Ｔ５において、送受信局１ｂに、送受信局１ａ宛のネイティブパケットであるパケットβ２が入力された場合、時刻Ｔ３における送受信局１ｂと同様の処理を行なう。但し、送信済バッファ回路１１ｂは、パケットβ２をパケットβ１の後の順序となるように格納する。中継局２は、送受信局１ｂから無線信号によりパケットβ２を受信すると、時刻Ｔ３における中継局２の処理と同様の処理を行なう。但し、第２転送バッファ回路２４−２は、パケットβ２がパケットβ１の後の順序となるように格納する。
【００７０】
図６の時刻Ｔ６において、中継局２の判定制御部２２は、第１転送バッファ回路２４−１及び第２転送バッファ回路２４−２の両方にパケットが格納されているため、ＮＣパケットを送信すると判断し（図１０、ステップＳ３０５：両転送バッファにあり）、入力切替回路２６の入力元をＮＣ符号化回路２５に切り替える。判定制御部２２の指示により、第１転送バッファ回路２４−１は現在格納されているパケットの中で最初に格納したパケットα１をＮＣ符号化回路２５に出力し、第２転送バッファ回路２４−２は、現在格納されているパケットのうち最初に格納したパケットβ１をＮＣ符号化回路２５に出力する（図１０、ステップＳ３１０）。
【００７１】
ＮＣ符号化回路２５は、パケットα１及びβ１を用いてＮＣ符号化を行い、生成されたＮＣパケットχ１を出力する（図１０、ステップＳ３１５）。無線送受信部２１は、ＮＣパケットχ１を変調し（図１０、ステップＳ３２０）、無線信号により送受信局１ａ及び１ｂに送信する（図１０、ステップＳ３２５）。Address 1には送受信局１ａまたは送受信局１ｂのアドレスを、Address 3には他方の送受信局１のアドレスを、Address 2には中継局２のアドレスを設定する。判定制御部２２は、第１転送バッファ回路２４−１からパケットα１を、第２転送バッファ回路２４−２からパケットβ１を削除する（図１０、ステップＳ３３０）。
【００７２】
送受信局１ａの無線送受信部１２ａは、無線信号によりＮＣパケットχ１を受信すると（図１１、ステップＳ４０５）、受信した無線信号を復調する（図１１、ステップＳ４１０）。判定制御部１３ａは、アドレスフィールドに送受信局１ａ、１ｂ、及び、中継局２のアドレス全てが設定されており（図１２、ステップＳ５０５：ＹＥＳ）、かつ、送信済バッファ回路１１ａにパケットが格納されていると判断する（図１２、ステップＳ５１０：ＹＥＳ）。さらに、判定制御部１３ａは、受信パケットが、送信済バッファ回路１１ａ内に格納されているパケットと一致しないため、受信パケットはＮＣパケットであると判断する（図１２、ステップＳ５１５：ＮＯ）。
【００７３】
判定制御部１３ａは、出力切替回路１４ａの出力先をＮＣ復号回路１５ａに切り替え、入力切替回路１６ａの入力元をＮＣ復号回路１５ａに切り替える。判定制御部１３ａの指示により、送信済バッファ回路１１ａは、格納しているパケットのうち最初に格納したパケットであるパケットα１をＮＣ復号回路１５ａに出力する。ＮＣ復号回路１５ａは、ＮＣパケットχ１をパケットα１によりＮＣ復号し（図１１、ステップＳ４２０）、得られたパケットβ１を上位レイヤに出力する（図１１、ステップＳ４２５）。判定制御部１３ａは、送信済バッファ回路１１ａからパケットα１を削除する（図１１、ステップＳ４３０）。
【００７４】
送受信局１ｂにおいても、送受信局１ａと同様の処理を行なう。つまり、送受信局１ｂの無線送受信部１２ｂが受信した無線信号を復調し、判定制御部１３ｂは、アドレスフィールドに送受信局１ａ、１ｂ、及び、中継局２のアドレス全てが設定されており、かつ、送信済バッファ回路１１ｂにパケットが格納されており、かつ、受信パケットが、送信済バッファ回路１１ｂ内に格納されているパケットと一致しないため、受信パケットはＮＣパケットであると判断する。ＮＣ復号回路１５ｂは、ＮＣパケットχ１を、送信済バッファ回路１１ｂから出力されたパケットβ１によりＮＣ復号し、得られたパケットα１を上位レイヤに出力する。パケットβ１は、送信済バッファ回路１１ｂから削除される。
【００７５】
また、例えば、時刻Ｔｘにおいて、中継局２が送信機会を得たときに、送受信局１ａの送信済バッファ回路１１ａ及び中継局２の第１転送バッファ回路２４−１にパケットαｙ、パケットα（ｙ＋１）の順にパケットが格納されており、送受信局１ｂの送信済バッファ回路１１ｂ及び中継局２の第２転送バッファ回路２４−２にはパケットが格納されていないとする。
【００７６】
中継局２の判定制御部２２は、第１転送バッファ回路２４−１のみにパケットが格納されているため（図１０、ステップＳ３０５：第１転送バッファのみにあり）、入力切替回路２６の入力元を第１転送バッファ回路２４−１に切り替える。判定制御部２２の指示により、第１転送バッファ回路２４−１は、格納しているパケットのうち最初に格納したパケットαｙを出力する（図１０、ステップＳ３３５）。無線送受信部２１は、パケットαｙを変調し（図１０、ステップＳ３４０）、無線信号により送受信局１ａ及び１ｂに送信する（図１０、ステップＳ３４５）。Address 1には送受信局１ｂのアドレスを、Address 3には送受信局１ａのアドレスを、Address 2には中継局２のアドレスを設定する。判定制御部２２は、第１転送バッファ回路２４−１からパケットαｙを削除する（図１０、ステップＳ３５０）。
【００７７】
送受信局１ａの無線送受信部１２ａは、無線信号によりパケットαｙを受信すると（図１１、ステップＳ４０５）、受信した無線信号を復調する（図１１、ステップＳ４１０）。判定制御部１３ａは、アドレスフィールドに送受信局１ａ、１ｂ、及び、中継局２のアドレス全てが設定されており（図１２、ステップＳ５０５：ＹＥＳ）、かつ、送信済バッファ回路１１ａにパケットが格納されていると判断する（図１２、ステップＳ５１０：ＹＥＳ）。判定制御部１３ａは、Address 1に送受信局１ｂのアドレスが、Address 3に送受信局１ａのアドレスが、Address 2に中継局２のアドレスが設定されており、受信パケットが送信済バッファ回路１１ａに格納されているパケットαｙと一致するため、受信パケットは自送信パケットであると判断する（図１２、ステップＳ５１５：ＹＥＳ）。判定制御部１３ａは、送信済バッファ回路１１ａからパケットαｙを削除する（図１１、ステップＳ４４０）。
【００７８】
一方、送受信局１ｂの無線送受信部１２ｂは、無線信号によりパケットαｙを受信すると（図１１、ステップＳ４０５）、受信した無線信号を復調する（図１１、ステップＳ４１０）。判定制御部１３ｂは、アドレスフィールドに送受信局１ａ、１ｂ、及び、中継局２のアドレス全てが設定されており（図１２、ステップＳ５０５：ＹＥＳ）、かつ、送信済バッファ回路１１ｂにパケットが格納されていないため（図１２、ステップＳ５１０：ＮＯ）、受信パケットはユニキャストパケット、つまり、自局宛てネイティブパケットであると判断する。判定制御部１３ｂは、出力切替回路１４ｂの出力先を入力切替回路１６ｂに切り替え、入力切替回路１６ｂの入力元を出力切替回路１４ｂに切り替える。これにより、無線送受信部１２ｂにより復調されたパケットαｙが上位レイヤに出力される（ステップＳ４３５）。
【００７９】
なお、上記実施形態においては、送受信局１の送信済バッファ回路１１は送信順にパケットを格納し、鍵パケットとして使用したパケットや、判定制御部１３から指示されたパケットを削除しているが、パケットが格納されたアドレスを特定するポインタを、該ポインタにより特定されるパケットが送信された順番に記憶していき、使用するポインタを順にすすめていくようにしてもよい。例えば、パケットα１、α２、α３、…の順にパケットを送信した場合、送信済バッファ回路１１は、パケットα１、α２、α３、…を格納し（送信順でなくともよい）、さらに、パケットα１のポインタｐ１、パケットα２のポインタｐ２、パケットα３のポインタｐ３、…の順にポインタを格納する。判定制御部１３は、パケットα１をＮＣ復号の鍵パケットとして使用した場合、読み出すポインタを、ポインタｐ１の次のポインタｐ２に進める。これにより、次の鍵パケットをポインタｐ２により特定されるパケットα２とすることができる。このように、送信済バッファ回路１１に記憶しているパケットを削除する代わりに、パケットに対応したポインタをすすめていく。
また、中継局２の第１転送バッファ回路２４−１、第２転送バッファ回路２４−２は受信順にパケットを格納しているが、上記と同様に、パケットを格納するとともに、パケットが格納されたアドレスを特定するポインタを、該ポインタにより特定されるパケットを受信した順に記憶していき、パケットを削除する代わりに、パケットに対応したポインタをすすめていくようにしてもよい。
【００８０】
なお、上記実施形態においては、パケットを送受信する送受信局１のペアを１組のみ有しているが、パケットを送受信する送受信局１のペアを２以上有することでもよい。例えば、通信システムが４台の送受信局１として送受信局１ａ、１ｂ、１ｃ、１ｄを有し、送受信局１ａ及び送受信局１ｂが送受信のペアであり、送受信局１ａが送受信局１ｂ宛のパケットを、送受信局１ｂが送受信局１ａ宛のパケットを送信し、送受信局１ｃ及び送受信局１ｄがもう１組の送受信のペアであり、送受信局１ｃが送受信局１ｄ宛のパケットを、送受信局１ｄが送受信局１ｃ宛のパケットを送信する。この場合、中継局２は、送受信局１ａから送受信局１ｂ宛のパケット、送受信局１ｂから送受信局１ａ宛のパケット、送受信局１ｃから送受信局１ｄ宛のパケット、送受信局１ｄから送受信局１ｃ宛のパケットをそれぞれ受信順に格納する第１〜第４転送バッファ回路を備える。中継局２の無線送受信部２１は、ＮＣ符号化回路２５が第１転送バッファ回路及び第２転送バッファ回路から受信順に出力されるパケットを用いて生成したＮＣパケット、ならびに、第３転送バッファ回路及び第４転送バッファ回路から受信順に出力されるパケットを用いて生成したＮＣパケットを送信する。送受信局１ａ、１ｂ、１ｃ、１ｄの判定制御部１３は、受信したパケットの送信先アドレスまたは送信元アドレスに自送受信ペアのアドレスが設定されている場合に、上記実施形態と同様の受信処理を行なう。また、送受信ペアによって無線信号の周波数を変えてもよい。
【００８１】
また、上記実施形態においては、通信システムをAlice & Bobトポロジを例として説明したが、Ｘトポロジなどの他のトポロジにも適用可能である。具体的には、通信システムが複数の送受信局１、例えば、受信局装置としての送受信局１ａ、１ｂと、送信局装置としての送受信局１ｃ、１ｄを有し、送受信局１ｃから送受信局１ｂ宛のパケットが、送受信局１ｄから送受信局１ａ宛のパケットが送信される場合、送受信局１ａは送受信局１ｃから中継局２に送信された送受信局１ｂ宛のパケットを受信して受信順（送受信局１ｃからの送信順）に送信済バッファ回路１１ａに記憶し、同様に送受信局１ｂは、送受信局１ｃから中継局２に送信された送受信局１ａ宛のパケットを受信して受信順（送受信局１ｄからの送信順）に送信済バッファ回路１１ｂに記憶する。中継局２は、送受信局１ｃから送受信局１ｂ宛のパケットを受信順に第１転送バッファ回路２４−１に、送受信局１ｄから送受信局１ａ宛のパケットを受信順に第２転送バッファ回路２４−２に格納する。中継局２におけるＮＣパケットの送信処理及び送受信局１ａ，１ｂにおけるＮＣパケットのＮＣ復号処理は、上述した実施形態と同様である。
【００８２】
以上説明した本発明の実施形態の通信システムによれば、中継局は、ＮＣパケットに鍵パケットを選択するための情報を付加することなくＮＣパケットを送信し、このＮＣパケットを受信した送受信局において正しく鍵パケットを選択し、ＮＣ復号を行うことができる。従って、鍵パケットの選択に用いる追加情報をＮＣパケットに付加によって発生するスループット劣化や、伝送遅延の長大を防ぐことができる。また、ＮＣパケットに追加情報を付加する必要がないため、既存の標準規格をそのまま適用することが可能である。
加えて、送受信局は、ＮＣパケットの送信に用いる標準規格の通信フレーム内のアドレス情報や、送信済バッファ内のパケット蓄積状況によって、受信したパケットがＮＣパケットであるか、自局宛のネイティブパケットであるか、自局が送信したパケットであるか、他通信システムのノードから送信されたパケットであるかを簡易に判断し、適切な受信処理を行なうことができる。従って、ＮＣ符号化されていないパケットの受信も可能であり、ネットワークコーディングを適用していない既存の通信システムとの共存も可能である。
【００８３】
なお、上述の送受信局１、及び、中継局２は、内部にコンピュータシステムを有している。そして、送受信局１の送信済バッファ回路１１、無線送受信部１２、判定制御部１３、出力切替回路１４、ＮＣ復号回路１５、及び、入力切替回路１６、ならびに、中継局２の無線送受信部２１、判定制御部２２、出力切替回路２３、第１転送バッファ回路２４−１、第２転送バッファ回路２４−２、ＮＣ符号化回路２５、及び、入力切替回路２６の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＣＰＵ及び各種メモリやＯＳ、周辺機器等のハードウェアを含むものである。
【００８４】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【符号の説明】
【００８５】
１、１ａ、１ｂ…送受信局（受信局装置）
１１…送信済バッファ回路（送信済バッファ部）
１２…無線送受信部（受信局受信部、受信局送信部）
１３…判定制御部（受信局判定制御部）
１４…出力切替回路
１５…ＮＣ復号回路（ネットワーク符号化復号部）
１６…入力切替回路
２…中継局（中継局装置）
２１…無線送受信部（中継局受信部、中継局送信部）
２２…判定制御部（中継局判定制御部）
２３…出力切替回路
２４−１…第１転送バッファ回路（転送バッファ部）
２４−２…第２転送バッファ回路（転送バッファ部）
２５…ＮＣ符号化回路（ネットワーク符号化部）
２６…入力切替回路
【図１】
2011239208.tif 000003
【図２】
2011239208.tif 000004
【図３】
2011239208.tif 000005
【図４】
2011239208.tif 000006
【図５】
2011239208.tif 000007
【図６】
2011239208.tif 000008
【図７】
2011239208.tif 000009
【図８】
2011239208.tif 000010
【図９】
2011239208.tif 000011
【図１０】
2011239208.tif 000012
【図１１】
2011239208.tif 000013
【図１２】
2011239208.tif 000014
【図１３】
2011239208.tif 000015