以下の詳細な説明は、単に例示的なものであり、実施形態または実施形態の適用および用途を限定することを意図するものではない。さらに、先の背景技術または発明を実施するための形態のセクションに提示されている理論に拘束されるように意図するものではない。さらには、添付の図面および本開示の背景と合わせて考慮される、以下の詳細な説明および添付の請求項から、他の望ましい特徴および特性が明らかになるであろう。
図1を参照し、この図は、様々な実施形態による、CCMPを使用してMPDUを処理するときのステップを示している。ステップ1においては、MACサービスデータユニット(MSDU)や管理MPDU(MMDPU)などのデータにMACヘッダを付加してMPDUを形成する。ステップ2においては、MPDUからMACヘッダを分離し、CCMPヘッダを作成する。ステップ3においては、メッセージ完全性符号(MIC:Message Integrity Code)を計算して末尾に付加する。MICは認証および完全性チェックに使用される。ステップ4においては、データとMICの組合せを暗号化して暗号文を形成する。次に暗号文の前にCCMPヘッダを付加する。ステップ5においては、MACヘッダをCCMPヘッダの前に付加することによってMACヘッダを復元する。ステップ6においては、MPDU全体に対して巡回冗長検査(CRC:Cyclic Redundancy Check)を計算してMPDUの末尾に付加し、保護されたまたは暗号化されたMPDUを形成する。
図2Aは、様々な実施形態による保護されたMPDU 200の図解を示している。保護されたMPDU 200は、MACヘッダ(MAC Header)フィールド202、CCMPヘッダ(CCMP Header)フィールド、データ(PDU)(Data (PDU))フィールド、MICフィールド、およびFCSフィールドを含む。図1において説明したように、データ(ペイロード)フィールドおよびMICフィールドは暗号化されている。CCMPヘッダ(CCMP Header)フィールドは、PN0フィールド、PN1フィールド、予備(Rsvd)フィールド、キーIDオクテット(Key ID octet)フィールド、PN2フィールド、PN3フィールド、PN4フィールド、およびPN0フィールドを含む。キーIDオクテット(Key ID octet)フィールドは、予備(Rsvd)サブフィールド、Ext IVサブフィールド、およびキーID(Key ID)サブフィールドを含む。
MACヘッダ(MAC Header)フィールド202は、図2Bに詳細に示してあり、フレーム制御(FC:Frame Control)フィールド、持続時間/ID(duration/ID)フィールド、アドレス1(A1:Address 1)フィールド、アドレス2(A2:Address 2)フィールド、アドレス3(A3:Address 3)フィールド、シーケンス制御(SC:Sequence Control)フィールド、オプションのサービス品質(QoS)制御(Quality of Service (QoS) Control)フィールド、オプションのアドレス4(A4:Address 4)フィールド、およびオプションの高スループット(HT:High Throughput)フィールドを含む。FCフィールドは、さらに、プロトコルバージョン(Protocol Version)サブフィールド、タイプ(Type)サブフィールド、To DS(To Distribution Service (DS))サブフィールド、From DS(From DS)サブフィールド、さらなるフラグメント(More Fragments)サブフィールド、再試行(Retry)サブフィールド、電力管理(Power Management)サブフィールド、さらなるデータ(More Data)サブフィールド、保護フレーム(Protected Frame)サブフィールド、および+HTCサブフィールドを含む。
一般に、データフレームのA1、A2、およびA3アドレスフィールドの内容は、MACヘッダのFCフィールドの「To DS」サブフィールドおよび「From DS」サブフィールドに依存する。このことは以下の表1に示してある。
「To DS」サブフィールドおよび「From DS」サブフィールドの内容がいずれも「0」である場合、A1フィールドの内容は受信者アドレス(RA)(=宛先アドレス(DA))、A2フィールドの内容は送信者アドレス(TA)(=送信元アドレス(SA))、A3フィールドの内容は基本サービスセット識別子(BSSID)となり、アドレス4は存在しない。「To DS」サブフィールドの内容が「0」であり「From DS」サブフィールドの内容が「1」である場合、A1フィールドの内容はRA、A2フィールドの内容は送信者アドレス(TA)(=BSSID)、A3フィールドの内容はSAとなり、アドレス4は存在しない。「To DS」サブフィールドの内容が「1」であり「From DS」サブフィールドの内容が「0」である場合、A1フィールドの内容はRA(=BSSID)、A2フィールドの内容はTA、A3フィールドの内容はDAとなり、アドレス4は存在しない。「To DS」サブフィールドおよび「From DS」サブフィールドの内容がいずれも「1」である場合、A1フィールドの内容はRA、A2フィールドの内容はTA、A3フィールドの内容はDAとなり、アドレス4はSAに設定される。
管理フレームの場合、A1、A2、およびA3アドレスフィールドの内容は、一般に、「To DS」=0かつ「From DS」=0の場合のデータフレームと同じである。すなわちA1フィールドの内容がRA(=DA)であり、A2フィールドの内容がTA(=SA)である。A3はフレームタイプに依存するが、ほとんどの場合にはBSSIDに設定される。STAが、複数のBSSIDが設定されているアクセスポイント(AP)に管理フレームを送信する場合、STAがそのAPに関連付けられているかどうかにかかわらず、アドレス3フィールドはAPのBSSのBSSID(送信BSSIDまたは非送信BSSIDのいずれか)である。
802.11beなどの次世代無線LANにおけるマルチリンク動作では、同じTID(トラフィックID)のMPDUを異なるリンクで同時に送信することが許可されることがある。しかしながら、このようなマルチリンク送信では、MPDUにセキュリティカプセル化(security encapsulation)を適用したときに、以下に説明するような予期せぬ動作につながることがある。同じTID(トラフィックID)のMPDUを異なるリンクで同時に送信することが可能であるとき、受信者MLDが異なるリンクで受信したMPDUを正しく並べ替えることができるようにするため、実際の送信に使用されるリンクに関係なく、同じシーケンス番号(SN:Sequence Number)空間を使用して、MPDUで伝えられるMSDUまたはMMPDUにSNを割り当てることができる。AP MLDと非AP MLD間のリンクの最初のセットアップ時に(例:マルチリンクアソシエーション手順の直後)、AP MLDと非AP MLDとの間で単一のPMK(ペアワイズマスターキー:Pairwise Master Key)をネゴシエートして、2つのMLDの間のセキュアな送信のためのマスターキーとして使用することができる。MPDUのセキュアなカプセル化/デカプセル化に使用されるPTK(ペアワイズ一時キー:Pairwise Temporal Key)およびGTK/IGTK((完全性)グループ一時キー:(Integrity)Group Temporal Key)は、異なるリンクに対して同一のPMKから導出することができる。異なるリンクで使用するための、別々のPTKおよび別々のGTK/IGTKを生成することが可能である。図3は、各リンクにおいて別個のPTKを使用するマルチリンクMPDU送信の図解300を示している。この例では、送信者MLDは、リンク1およびリンク2上でMPDUを受信者MLDに送信する。リンク1ではPTKキー1を使用し、リンク2では異なるPTKキー2を使用する。また、両方のリンクにおけるMPDU送信では共通のシーケンス番号(SN)を使用するが、各リンクにおいて使用されるパケット番号(PN)カウンタは異なる。例えば、リンク1で送信されるMPDUのPNカウンタはPN=100から始まり、リンク2で送信されるMPDUのPNカウンタはPN=51から始まる。
この例では、リンク1のMPDU 302が送信に失敗したため、リンク1ではなく、リンク2など別のリンクで再送信されるように予定されている。リンク2では異なるPTK(すなわちキー2)が使用されるため、MPDU 302を、キー2および新しいPN=54(PN=53のMPDU 308の送信後に再送信が予定されているため)を用いてMPDU 304としてカプセル化する必要があり、ただしMPDU 304はMPDU 302と同じSN=4を依然として共有している。受信側では、受信者MLDは、リンク2で受信したMPDUを、MPDU 304を含む各受信MPDUのSNに従って並べ替える。SN=4まで、すなわちSN=4かつPN=54の受信MPDU 304まで並べ替えたときに、受信者MLDは、リプレイカウンタをPN=54に更新する。その結果、SNが4より大きく、PNが54より小さい残りのMPDU(すなわちSN=5、PN=52の受信MPDU 306と、SN=7、PN=53の受信MPDU 308)がドロップされ、意図しないリプレイ拒否の問題が発生する。
また、すべてのリンクにおいて単一のPTKが使用される場合でも、再送信されるMPDUを新しいPNを用いて再度カプセル化すれば、やはりリプレイ拒否の問題が起こる。このことは図4に見ることができ、図4は、様々な実施形態による、すべてのリンクにおいて単一のPTKを使用するマルチリンクMPDU送信の図解400を示している。図3と同様に、送信者MLDは、リンク1およびリンク2上でMPDUを受信者MLDに送信する。違いは、リンク1およびリンク2の両方で同じPTKキー1を使用することである。その結果、両方のリンクは、共通のSN割り当てと共通のPN割り当てを使用する。
この例では、リンク1におけるSN=4、PN=104のMPDU 402が送信に失敗したため、リンク1ではなく、リンク2など異なるリンクで再送信するように予定されている。リンク2は、リンク1と比較して異なるA1、A2フィールドを有するので、MPDU 402を、新たなPN=108を用いて(PN=107のMPDU 408の送信後に再送信が予定されているため)MPDU 404として再度カプセル化する必要があり、ただし、MPDU 404はMPDU 402と同じSN=4を依然として共有している。受信者MLDは、リンク2で受信したMPDUを、MPDU 404を含む各受信MPDUのSNに従って並べ替える。SN=4まで、すなわちSN=4かつPN=108の受信MPDU 404まで並べ替えたとき、受信者MLDはリプレイカウンタをPN=108に更新する。その結果、SNが4より大きく、PNが108より小さい残りのMPDU(すなわちSN=5、PN=105の受信MPDU 406と、SN=7、PN=107の受信MPDU 408)がドロップされ、リプレイ拒否の問題が起こる。
さらに、IEEE 802.11beでは、リンクごとに別々のMACアドレスを使用することが義務付けられる場合もあるが、異なるリンクで同じMACアドレスを使用することが許可される場合もある。リンクに対して別々のMACアドレスが使用される場合、2つの送信リンクのTAが同じでも、2つの受信リンクのRAが異なり、フレームが同じA2(すなわち=TA)および同じPN(すなわち受信者MLDによるSN並べ替えの後に受信したPNの順序がずれることを避けるためにPNは再送信にわたって同じまま)を使用して別のリンクで再送信されるとき、異なるデータを保護するために同じノンス値が再使用されるという問題(セキュリティ欠陥)は避けられ得る。しかしながら、IEEE 802.11仕様では、ノンスおよびPNの使用に関して以下のように記述されている。
「CCMでは、セッションごとに新しい一時キーが必要である。また、CCMでは、所与の一時キーによって保護された各フレームにおいて一意のノンス値が必要であり、この目的のためにCCMPは48ビットのパケット番号(PN)を使用する。同じ一時キーを用いてPNを再利用すると、すべてのセキュリティ保証が無効になる。」
すなわち、リプレイ拒否の問題を回避するために、異なるリンクでの再送信において同じPNを再利用すると、問題は解決するが、セキュリティ上の欠陥が発生しうる。なお上記の前提として、再送信されるMPDUは、異なるリンクで再送信されるときには再度カプセル化する必要がある。本開示は、マルチリンク送信によってもたらされるこのようなセキュリティ関連の問題を回避するためのいくつかの選択肢を提供する。
図5は、IEEE 802.11仕様による、暗号化されたMPDUを形成するためのCCMPカプセル化処理の図解を示している。特に、暗号化または保護されたMPDUを形成するために、MPDUの暗号カプセル化において追加認証データ(AAD)502およびノンス504を構築して使用する。AAD 502は、フレーム制御(Frame Control:FC)フィールド、アドレス1(A1)フィールド、アドレス2(A2)フィールド、アドレス3(A3)フィールド、シーケンス制御(Sequence Control:SC)フィールド、オプションのアドレス4(A4)フィールド、およびオプションの品質管理(Quality Control:QC)フィールドを含み、ノンス504は、ノンスフラグ(Nonce Flags)フィールド、A2フィールド、およびPNフィールドを含む。AAD 502のA1、A2、A3フィールドの内容およびノンス504のA2フィールドの内容は、カプセル化される(暗号化されたMPDUのデカプセル化処理の場合は、デカプセル化される)MPDUのA1、A2、A3フィールドから取り出される。
シングルリンクの802.11 STAでは、保護されたMPDUは以下の最小限の変更で再送信される。
- FCフィールドの再試行(Retry)サブフィールド(ビット11)が1に設定される。しかしながらFCフィールドの再試行(Retry)サブフィールドおよびいくつかのサブフィールドは、CCMPカプセル化時には一般に0にマスクされる。
- CRCが再計算されるが、FCSはCCMPカプセル化への入力ではない。
- MPDUは最初の送信時のみカプセル化され、再送信時にはカプセル化されない。
しかしながらMLDの場合、保護されたMPDUの再送信のルールは、MPDUを再送信するリンクに依存しうる。再送信に同じリンクが使用される場合、MPDUは最初の送信時のみカプセル化され、再送信時にはカプセル化されない。再送信に異なるリンクが使用される場合(リンクの両端の付属STAのMACアドレスが異なるものと想定する)、再送信前にMPDUを再度カプセル化する必要がある(リプレイ拒否の問題を回避するために同じPNを使用することも可能である)。しかしながら、同じセキュリティキーを用いてPNを再利用すると、セキュリティ上の欠陥につながりうる。
したがって、本発明は、(たとえリンク毎MACアドレスが異なる場合でも)保護されたフレームを異なるリンクで再送信するときのCCMPカプセル化を回避する方法を模索する。
図6は、第1の実施形態による、保護されていないMPDUを異なるリンクで再送信する方法の図解を示している。送信側MLD 602は、STA 604およびSTA 606などの第1の複数の付属STAとともに動作するように構成されている。MACアドレスMLD-TAは、送信側MLD 602を識別し、DS(配信サービス)との通信のためにMLDを表すために使用することができ、一方で、STA 604およびSTA 606のMACアドレスは、それぞれTA1およびTA2である。同様に、受信側MLD 612は、STA 614およびSTA 616などの第2の複数の付属STAとともに動作するように構成されている。MACアドレスMLD-RAは、受信側MLD 612を識別し、一方で、STA 614およびSTA 616のMACアドレスは、それぞれRA1およびRA2である。MLDの場合、MLD MACアドレスは、そのリンク毎MACアドレスの1つと同じであってもよいし、異なっていてもよい。ただし、リンク毎MACアドレスは、互いに異なるものと想定する(すなわちTA1≠TA2、RA1≠RA2)。2つ以上のSTAが第1および第2の複数の付属STAを形成することができ、必ずしも各STAがリンクによって接続されている必要なしに、第1の複数の付属STAのSTAと第2の複数のSTAの対応するSTAとの間に2つ以上のリンクを形成できることが理解されるであろう。例えば、STA 604とSTA 614との間にリンク1をセットアップすることができ、STA 606とSTA 616との間にリンク2をセットアップすることができる。上述した設定は、保護されているMPDUまたは保護されていないMPDUの再送信にも適用可能であり、以下で様々な実施形態においてさらに説明する。さらに、特に保護されたMPDUの再送信においては、送信側MLDと受信側MLDとの間にロバストセキュリティネットワークアソシエーション(RSNA)がセットアップされており、必要なすべての秘密鍵(例えばPTK、GTK/IGBTなど)が生成/配布されているものと想定する。
図解600に示したように、送信側MLD 602は、保護されていないMPDU 608をリンク1上で受信側MLD 612に、すなわちSTA 604からSTA 614に、送信する。したがって、MPDU 608のA1、A2、A3フィールドは、それぞれ受信側STA 614のMACアドレス(すなわちRA1)および送信側STA 604のMACアドレス(すなわちTA1)に設定される。最初の送信として、MPDU 608のFCフィールドの再試行(Retry)サブフィールドが0に設定される。様々な理由(例えばリンク1の一時的な障害)により送信に失敗した場合、このMPDUを、リンク2で、すなわちSTA 606からSTA 616に、保護されていないMPDU 610として再送信することができる。保護されていないMPDUは、MPDUのフレーム制御(FC)フィールドの再試行(Retry)サブフィールドを1に設定し、MACヘッダのA1、A2、A3を入れ替えるだけで、別のリンクで再送信することができる。したがって、MPDU 610のA1フィールドが受信側STA 616のMACアドレス(すなわちRA2)に設定され、A2フィールドが送信側STA 606のMACアドレス(すなわちTA2)に設定される。さらに、MPDU 610のFCフィールドのリセット(Reset)サブフィールドが1に設定される。A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(MLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(MLD-RAと異なる場合はそのリンクのBSSID)に変更される。リンク毎MACアドレスが同じであれば、再送信のルールは単一リンクSTAと同じでよい(すなわちA1、A2、A3アドレスを変更する必要がない)。
第1の実施形態に係る、保護されたMPDUの最初の送信においては、相手MLDに宛てられる保護されたMPDUのCCMPカプセル化時に、AADおよびノンスを生成するために、送信側/受信側の付属STAのMACアドレス(すなわち、送信されるMPDUのA1、A2フィールド)の代わりにMLD MACアドレスが使用される。図7Aは、第1の実施形態によるAAD 700の図解を示している。AAD 502に似ているが、AAD 700のA1フィールド702およびA2フィールド704は、それぞれ、送信される保護されたMPDUのA1、A2、A3フィールドに示される受信側/送信側の付属STAのMACアドレスの代わりに、受信側MLDのMACアドレスおよび送信側MLDのMACアドレス(すなわちMLD-RAおよびMLD-TA)に設定される。A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(MLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(MLD-RAと異なる場合はそのリンクのBSSID)に変更される。図7Bは、第1の実施形態によるノンス706の図解を示している。ノンス504に似ているが、ノンス706のA2フィールド708は、送信される保護されたMPDUのA2フィールドに示される送信側の付属STAのMACアドレスの代わりに、送信側MLDのMACアドレス(すなわちMLD-TA)に設定される。保護されたMPDUは、受信者MLDからMPDUの受信成功の確認応答を受け取るまで、またはMSDUのライフタイムが終了するまで、送信側MLDのメモリに保存することができる。
第1の実施形態に係る保護されたMPDUの送信に失敗したときには、保護されたMPDUをメモリから取得して(最初の送信時に保存した場合)、FCフィールドの再試行(Retry)サブフィールドを1に設定し、MACヘッダのA1、A2フィールドを入れ替え、新しいCRCを追加した後、再送信する。リンクで使用されるリンク毎MACアドレスに関係なく、AADおよびノンスが同じままなので、CCMPカプセル化を再度実行する必要がなく、これは有利である。実際、再送信時に内容が変化しうるMACヘッダのフィールド(例:持続時間/IDフィールド、HT制御フィールド)は、AADに含まれないため、カプセル化処理に影響しない。同様の理由で、フレーム制御(Frame Control)フィールドのいくつかのサブフィールドが0にマスクされる。
i) データフレームのサブタイプ(Subtype)サブフィールド(ビット4、5、6)が0にマスクされる。
ii) 再試行(Retry)サブフィールド(ビット11)が0にマスクされる。
iii) 電力管理(Power Management)サブフィールド(ビット12)が0にマスクされる。
iv) さらなるデータ(More Data)サブフィールド(ビット13)が0にマスクされる
v) 保護されたフレーム(Protected Frame)サブフィールド(ビット14)は常に1に設定される。
vi) +HTCサブフィールド(ビット15)は、次のとおりである。
- QoS制御(QoS Control)フィールドを含むすべてのデータフレームで0にマスクされる。
- それ以外ではマスクされない。
保護されたMPDUが最初の送信時にメモリに保存されなかった場合、元の保護されていないMPDUをメモリから(例:送信バッファから)取得して再度カプセル化するが、AADのA1、A2、A3フィールド(および該当する場合はA3フィールド)およびノンスのA2フィールドに、MLDのMACアドレスを使用する。
CCMPデカプセル化時には、(相手MLDからの)保護されたMPDUの受信に使用されたリンクにかかわらず、送信側/受信側の付属STAのMACアドレス(すなわち受信したMPDUのA1、A2フィールド)の代わりにMLD MACアドレスを使用して、AADおよびノンスを生成する。図8は、第1の実施形態による、平文MPDUを形成するために受信側MLDによって使用されるCCMPデカプセル化処理の図解800を示している。保護されたまたは暗号化されたMPDUをデカプセル化するために、AAD 802およびノンス810を構築する。第1の実施形態によれば、AAD 802のA1フィールド804およびA2フィールド806を、それぞれ、受信側MLDのMACアドレス(すなわちMLD-RA)および送信側MLDのMACアドレス(すなわちMLD-TA)に設定する。A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(またはMLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(またはMLD-RAと異なる場合はそのリンクのBSSID)に変更される。さらに、ノンス810のA2フィールド808を、送信側MLDのMACアドレス(すなわちMLD-TA)に設定する。送信STAの同一性を確認するため、MLDのMACアドレスに入れ替える前に、受信したMPDUのA2フィールドをチェックする(すなわち受信したMPDUのA2フィールドは、相手MLDに属する送信側STAのMACアドレスを示しているはずである)。受信したMPDUのA1フィールドは、受信フレームフィルタリング時にすでにチェックされている。
第1の実施形態に係る保護されたMPDUの再送信では、MLD MACアドレスが、送信側MLDおよび受信側MLDの両方に認識されているものと想定する(例えばアソシエーション/リンク有効化手順時に交換される)。さらに、すべてのリンクにおいて同じPTKが使用されるものと想定する。異なるリンクにおいて異なるPTKを使用する場合、異なるリンクで再送信する前にMPDUを再度カプセル化する必要がある。リンク毎MACアドレスが同じであり、すべてのリンクにおいて単一のPTKが使用される場合、再送信のルールはシングルリンクSTAの場合と同じである。
バリエーションとして、MLD-TAおよびMLD-RAを使用する代わりに、AADおよびノンスの構築時にA1、A2フィールド(および該当する場合はA3フィールド)に使用するMACアドレスを、APが非AP STAに提供してもよい(例えば、4ウェイのグループキーハンドシェイク時、または何らかの管理フレーム交換を使用する)。これは、最初の送信と再送信とでアドレスが変化する動的MACアドレス(例えばMACランダム化)を使用するシングルリンクSTAの場合にも有用でありうる。保護されたMPDUの様々なアドレスフィールドの代わりに、提供されたMACアドレスを使用してAADおよびノンスを構築する。AADおよびノンスに使用されるA1およびA2フィールド(および該当する場合はA3フィールド)が常に固定されている場合、再送信フレームのMACアドレス(A1、A2のいずれかまたは両方(および該当する場合はA3))が変更されても、CCMPデカプセル化は成功する。
図9は、第1の実施形態によるMPDUの最初の送信のフローチャート900を示している。ステップ902においては、MPDUを最初の送信用に準備する。ステップ904においては、MPDUを保護する必要があるかどうかを判定する。MPDUを保護する必要がないと判定される場合、処理はステップ918に進み、受信側MLDへの送信のための次の処理(例えばチャネルアクセス)にMPDUを送り、処理はステップ920で終了する。ステップ904において、MPDUを保護する必要があると判定された場合、処理はステップ906に進み、構築されるAADのA1フィールドを受信者MLDのMACアドレスに設定する。ステップ908においては、AADおよび構築されるノンスのA2フィールドを、自MLDすなわち送信側MLDのMACアドレスに設定する。なお図示していないが、A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(またはMLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(またはMLD-RAと異なる場合はそのリンクのBSSID)に変更される。ステップ910においては、AADおよびノンスの残りのフィールドを通常どおりに、すなわちIEEE 802.11規格に従って設定する。ステップ912においては、MPDUのCCMPカプセル化を実行して、保護されたまたは暗号化されたMPDUを生成する。ステップ914においては、保護されたMPDUを、受信者MLDへの送信のための次の処理に送り、処理がステップ916で終了する。
図10は、第1の実施形態による、MPDUの再送信のためのフローチャート1000を示している。ステップ1002においては、最初の送信の失敗の後に(例えば最初の送信の失敗を示すBlockAckフレームの受信時に)MPDUを再送信する必要があるものと判定される。ステップ1004においては、保存されたMPDUをメモリから取得する。ステップ1006においては、MPDUのFCフィールドの再試行(Retry)サブフィールドを1に設定する。ステップ1008においては、MPDUが保護されたMPDUであるか保護されていないMPDUであるかを判定する。保護されていないMPDUである場合、処理はステップ1018に進み、MPDUを最初の送信と同じリンクで再送信するべきかどうかを判定する。MPDUを最初の送信と同じリンクで再送信するべきであると判定された場合、処理はステップ1016から継続される。そうではなく、MPDUを異なるリンクで再送信するべきであると判定された場合、処理はステップ1020に進み、再送信に使用される新しいリンクにおいてTAまたはRAが異なるかどうかを判定する。新しいリンクのTAまたはRAが最初の送信のリンクのものと同じであると判定された場合、処理はステップ1016から継続される。そうでない場合、処理はステップ1022に進み、A1フィールドおよび/またはA2フィールドを、新しいリンクの新しいRAおよび/またはTAに設定し、次いで処理はステップ1016から継続される。
ステップ1008において、MPDUが保護されていると判定された場合、処理はステップ1010に進み、保護されているMPDUを最初の送信と同じリンクで再送信するかどうかを判定する。再送信に同じリンクを使用すると判定された場合、処理はステップ1016から継続される。そうでない場合、処理はステップ1012に進み、再送信に使用される新しいリンクにおいてTAまたはRAが異なるかどうかを判定する。最初の送信に使用されたリンクと比較して新しいリンクにおいてTAまたはRAが異ならないと判定された場合、処理はステップ1016から継続される。そうでない場合、処理はステップ1014に進み、A1フィールドおよび/またはA2フィールドを新しいリンクの新しいRAおよび/またはTAに設定し、次いで処理はステップ1016から継続される。さらに、ステップ1016以降は、MPDUを再送信のための次の処理に送り、処理はステップ1028で終了する。注目するべき点として、保護されたMPDUおよび保護されていないMPDUの再送信のための処理が(すなわちステップ1008の結果にかかわらず)、まったく同じである。なお図示していないが、A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3はリンク2のBSSIDに設定される(BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)。
図11は、第1の実施形態による、MPDUの受信のフローチャート1100を示している。ステップ1102においては、MPDUを受信する。ステップ1104においては、MPDUが保護されているかどうかを判定する。MPDUが保護されていない場合、処理はステップ1124に進み、MPDUを受信のための次の処理に送り、次いで処理はステップ1126で終了する。ステップ1104において、MPDUが保護されていると判定された場合、処理はステップ1106に進み、受信したMPDUのA2フィールドが、相手MLDを識別するMACアドレスを示しているかどうかを判定する。非AP MLDの場合、相手MLDは、自身が関連付けられているAP MLDを指す。AP MLDの場合、相手MLDは、自身に関連付けられている非AP MLDを指す。受信したMPDUのA2フィールドが相手MLDのMACアドレスを示していないと判定された場合、デカプセル化のための従来の手順を使用し、処理はステップ1120に進み、構築されるAADおよびノンスのA2フィールドをMPDUのA2フィールドに設定し、ステップ1122に進み、構築されるAADのA1フィールドをMPDUのA1フィールドに設定し(および該当する場合にはA3も)、次いで処理はステップ1112から継続される。ステップ1106において、A2フィールドが相手MLDを識別するMACアドレスに設定されていると判定された場合、処理はステップ1108に進み、構築されるAADのA1フィールドを受信側MLDのMACアドレスに設定し、ステップ1110に進み、構築されるAADおよびノンスのA2フィールドを送信側MLDのMACアドレスに設定し、次いで処理はステップ1112から継続される。なお図示していないが、A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(またはMLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(またはMLD-RAと異なる場合はそのリンクのBSSID)に変更される。ステップ1112においては、AADおよびノンスの残りのフィールドを通常どおりに設定する。ステップ1114においては、構築されたAADおよびノンスを有する保護されたMPDUに対してCCMPデカプセル化を実行する。ステップ1116においては、復号されたMPDUを受信のための次の処理に送り、処理はステップ1118で終了する。上記の処理の有利な効果として、CCMPカプセル化を再実行することなく、暗号化されたMPDUを異なるリンクで再送信することが可能であり、受信側MLDは依然としてMDPUを正しくデカプセル化することができる。
第2の実施形態によれば、最初の送信における、保護されたMPDUのCCMPカプセル化時に、MLD MACアドレス、または送信される保護されたMPDUのA1、A2フィールド、またはいずれかの付属STAのリンク毎MACアドレス、を使用してAADおよびノンスを生成し、同じ保護されたMPDUを、CCMPカプセル化を再度行うことなく、(FC内の再試行(Retry)サブフィールドを設定し前述したいくつかの他のフィールドを変更した後に)異なるリンクで再送信することが可能である。これは、CCMPカプセル化時にAADおよびノンスを生成するために使用されたアドレスをシグナリングするように、保護されたMPDUのMACヘッダの一部のフィールド、例えばCCMPヘッダを変更することによって可能となる。送信側MLDは、配備シナリオに基づいて、CCMPカプセル化時にAADおよびノンスを生成するために異なるアドレスを選択することができ、例えば、すべてのリンクにおいて同じPTKが使用される場合には、第1の実施形態において説明したようにMLD MACアドレスを使用することができる。あるいは、MPDUの元の送信に使用されたリンクのリンク毎MACを使用してAADおよびノンスを生成することができ、MPDUが後から異なるリンクで再送信される場合、CCMPヘッダ内の信号が、受信側MLDに、元の送信に使用されたリンクのリンク毎MACアドレスを使用するように指示することができる。同様に、2つのリンクのリンク毎MACアドレスが同じである場合、送信者MLDは、MPDUのMACヘッダのアドレスフィールドを使用してAADおよびノンスを生成するようにシグナリングすることができる。しかしながら、異なるリンクで異なるPTKが使用される場合、異なるリンクでの再送信時には、そのリンクのPTKを使用してMPDUを再度カプセル化する必要がある。この場合、CCMPカプセル化は、従来の方法に従うことができ、(再送信される)MPDUのMACヘッダのアドレスフィールドを使用してAADおよびノンスフィールドを生成する。しかしながら、この場合でも、送信側MLDは、(再送信される)MPDUのMACヘッダのアドレスフィールドを使用してAADおよびノンスのフィールドを生成するべきことを、CCMPヘッダの中でシグナリングすることができる。このように、CCMPヘッダの中でMACアドレスをシグナリングすることにより、送信側MLDがMPDUのカプセル化に使用した方法にかかわらず、受信側MLDは、(最初の送信時または再送信時に)受信した保護されているMPDUを正しくデカプセル化することが可能になる。図12は、第2の実施形態による保護されたMPDU 1200の図解を示している。この実施形態では、MPDU 1200のCCMPヘッダ1202は、予備(Rsvd)サブフィールドおよびアドレス(Address)サブフィールド1206を含む新たなオプション(Options)フィールド1204を含む。アドレス(Address)サブフィールド1206は、保護されたMPDU 1200のデカプセル化時にAADのA1、A2、A3フィールドおよびノンスのA2フィールドにどのような値を採用するかを受信者MLDに示す。テーブル1208を参照し、アドレス(Address)サブフィールド1206の値が0に設定されている場合、AADおよびノンスのA1、A2、A3フィールドを、それぞれMACヘッダ1210のA1、A2、A3フィールドに設定する。アドレス(Address)サブフィールド1206の値が1に設定されている場合、AADおよびノンスのA1、A2、A3フィールドを、それぞれ受信側MLDおよび送信側MLDのMACアドレスに設定する。アドレス(Address)サブフィールド1206の値が2からnに設定されている場合、AADおよびノンスのA1、A2、A3フィールドを、リンク1からリンク(n-1)に関連付けられる付属STAのリンク毎MACアドレスに設定する。さらに、MACヘッダ1210のA1、A2、A3フィールドは、通常どおり、送信リンクのMACアドレス(すなわちTA1/TA2、RA1/RA2)に設定され、A3はリンクのBSSIDに設定される。
CCMPデカプセル化時には、受信側MLDは、アドレス(Address)サブフィールド1206を使用して、AADおよびノンスを生成するためのMACアドレスを決定する。この場合、すべての有効なリンクのリンク毎MACアドレスが、送信側MLDおよび受信者MLDの両方に認識されているものと想定する(例えばアソシエーション/リンク有効化手順時に交換される)。第2の実施形態によれば、失敗したMPDUの再送信時(FCの再試行(Retry)サブフィールドを1に設定し、MACヘッダのA1、A2、A3フィールド(リンクのBSSIDが異なる場合はA3も)を入れ替え、新しいCRCを追加した後)、CCMPカプセル化が行われず、これは有利である。
第2の実施形態の前提として、すべてのリンクにおいて同じPTKが使用される。MACヘッダ1210の他のフィールドを使用してアドレス情報を示してもよいが、CCMPヘッダ1202を選択するのが自然であり、なぜならこのフィールドはセキュリティ関連情報を示すために使用され、またCCMPヘッダ1202はカプセル化処理に含まれず平文で送信されるためである。さらに、テーブル1208におけるリンク1からリンク(n-1)は、2つのMLD間にセットアップされた最初のリンクから(n-1)番目のリンクを表し、必ずしもリンクに割り当てられたリンクIDと同じ値である必要はないが、同じ値であることも可能である。例えば、リンク1がリンクID 2を表し、リンク2がリンクID 4を表し、以下同様である。しかしながら、異なるリンクにおいて異なるPTKが使用される場合、異なるリンクでの再送信時には、そのリンクのPTKを使用してMPDUを再度カプセル化する必要がある。この場合、CCMPカプセル化は、従来の方法に従うことができ、(再送信される)MPDUのMACヘッダのアドレスフィールドを使用してAADおよびノンスのフィールドを生成する。しかしながら、この場合でも、送信側MLDは、(再送信される)MPDUのMACヘッダのアドレスフィールドを使用してAADおよびノンスのフィールドを生成するべきことをCCMPヘッダにおいて依然としてシグナリングすることができ、受信者MLDが、受信した保護されたMPDUを正しくデカプセル化できるようにすることができる。
図13は、第2の実施形態による、MPDUの受信のフローチャート1300を示している。ステップ1302においては、MPDUを受信する。ステップ1304においては、MPDUが保護されているかどうかを判定する。MPDUが保護されていない場合、処理はステップ1324に進み、受信のための次の処理にMPDUを送り、次いで処理はステップ1326で終了する。ステップ1304において、MPDUが保護されていると判定された場合、処理はステップ1306に進み、受信したMPDUのA2フィールドが、相手MLDを識別するMACアドレスを示しているかどうかを判定する。非AP MLDの場合、相手MLDは、自身が関連付けられているAP MLDを指す。AP MLDの場合、相手MLDは、自身に関連付けられている非AP MLDを指す。受信したMPDUのA2フィールドが相手MLDのMACアドレスを示していないと判定された場合、従来のデカプセル化方式を使用し、処理はステップ1320に進み、構築されるAADおよびノンスのA2フィールドをMPDUのA2フィールドに設定し、ステップ1322に進み、構築されるAADのA1フィールドをMPDUのA1フィールドに設定し、次いで処理はステップ1312から継続される。ステップ1306において、A2フィールドが、相手MLDを識別するMACアドレスに設定されていると判定された場合、処理はステップ1308に進み、構築されるAADおよびノンスのA2フィールドを、MPDUのCCMPヘッダのアドレス(Address)サブフィールドに従ったMACアドレスに設定し、ステップ1310に進み、構築されるAADのA1フィールドをMPDUのCCMPヘッダのアドレス(Address)フィールドに従ったMACアドレスに設定し、次いで処理はステップ1312から継続される。
ステップ1312においては、AADおよびノンスの残りのフィールドを通常どおりに設定する。なお図示していないが、A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(またはMLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(またはMLD-RAと異なる場合はそのリンクのBSSID)に変更される。ステップ1314においては、構築されたAADおよびノンスを有する保護されたMPDUに対してCCMPデカプセル化を実行する。ステップ1316においては、復号されたMPDUを受信のための次の処理に送り、処理はステップ1318で終了する。この第2の実施形態では、受信者MLDは、最初の送信または再送信にかかわらず、構築されるAADのA1、A2、A3フィールドおよびノンスのA2フィールドの設定を決定するために常にMPDUのCCMPヘッダを確認する。これにより送信側MLDは、CCMPカプセル化においてアドレス値をより柔軟に決定することができ、これは有利である。
第3の実施形態によれば、(保護されたMPDUの最初の送信における)CCMPカプセル化時には、送信されるMPDUのA1、A2、A3フィールドを使用してAADおよびノンスを生成し、すなわち従来のシングルリンクSTAの場合と同じである。しかしながら、失敗した保護されたMPDUの再送信時(FCの再試行(Retry)サブフィールドを1に設定し、MACヘッダのA1、A2フィールド(および該当する場合はA3)を入れ替えて、新しいCRCを追加した後)には、受信者MLDがデカプセル化においてAADおよびノンスを生成するためにどのA1、A2、A3フィールドを使用するべきかをCCMPヘッダが示す。再送信時にはCCMPカプセル化が行われない。
図14は、第3の実施形態による保護されたMPDU 1400の図解を示している。この実施形態では、MPDU 1400のCCMPヘッダ1402は、予備(Rsvd)サブフィールドおよびアドレス(Address)サブフィールド1406を含む新たなオプション(Options)フィールド1404を含む。CCMPデカプセル化時に、MACヘッダフィールド1410のFCフィールドの再試行(Retry)サブフィールドが値1を有する(すなわち受信したMPDUが再送信であることを示す)場合、受信側MLDは、アドレスフィールド1406を使用して、AADおよびノンスを生成するためのMACアドレスを決定する。テーブル1408を参照し、アドレス(Address)サブフィールド1406の値が0に設定されている場合、AADのA1、A2、A3フィールドおよびノンスのA2フィールドを、MACヘッダフィールド1410のそれぞれのアドレスフィールドに設定する。例えば、MPDU 1400のA1フィールドがRA1(またはRA2)を示している場合、構築されるAADのA1フィールドをRA1(またはRA2)に設定し、MPDU 1400のA2フィールドがTA1(またはTA2)を示している場合、AADおよびノンスのA2フィールドをTA1(またはTA2)に設定し、A3フィールドをMPDUのA3フィールドに設定する。また、アドレス(Address)サブフィールド1406の値が0であることは、MPDU 1400の再送信が最初の送信と同じリンクであること(または、異なるリンクにおけるリンク毎MACアドレスが最初の送信に使用されたリンクにおけるものと同じであること)も示し、受信側MLDは従来の方法を使用して、保護されているMPDUをデカプセル化することができる。アドレス(Address)サブフィールド1406の値が1からnに設定されている場合、AADのA1、A2フィールドおよびノンスのA2フィールドを、リンク1からリンク(n)に関連付けられる付属STAのリンク毎MACアドレスに設定し、AADのA3フィールドを、そのリンクに対するAP MLDの付属STAのリンク毎MACアドレスに設定する。また、アドレス(Address)サブフィールド1406の値1からnは、再送信が最初の送信とは異なるリンク上であることも示す。一方、再試行(Retry)サブフィールドの値が0である(すなわち受信したMPDUが最初の送信であることを示す)場合、MACヘッダフィールド1410のA1、A2、A3フィールドを使用してAADおよびノンスを生成する(従来の動作)。
この実施形態の前提として、すべてのリンクにおいて同じPTKが使用され、また、MPDUのCCMPヘッダは平文で(すなわち暗号化されずに)送信され、したがって再送信時にその値を変更しても、再カプセル化の必要がなく有利である。しかしながら、異なるリンクにおいて異なるPTKが使用される場合、異なるリンクでの再送信時には、そのリンクのPTKを使用してMPDUを再度カプセル化する必要がある。この場合、CCMPカプセル化は従来の方法に従うことができ、(再送信される)MPDUのMACヘッダのアドレスフィールドを使用してAADおよびノンスのフィールドを生成する。しかしながら、この場合でも、送信側MLDは、(再送信される)MPDUのMACヘッダのアドレスフィールドを使用してAADおよびノンスのフィールドを生成するべきことをCCMPヘッダにおいて依然としてシグナリングすることができ、受信側MLDが、受信した保護されたMPDUを正しくデカプセル化できるようにすることができる。
図15は、第3の実施形態による、MPDUの受信のフローチャート1500を示している。ステップ1502においては、MPDUを受信する。ステップ1504においては、MPDUが保護されているかどうかを判定する。MPDUが保護されていない場合、処理はステップ1526に進み、受信のための次の処理にMPDUを送り、次いで処理はステップ1528で終了する。ステップ1504において、MPDUが保護されていると判定された場合、処理はステップ1506に進み、受信したMPDUのA2フィールドが、相手MLDを識別するMACアドレスを示しているかどうかを判定する。非AP MLDの場合、相手MLDは、自身が関連付けられているAP MLDを指す。AP MLDの場合、相手MLDは、自身に関連付けられている非AP MLDを指す。ステップ1506において、A2フィールドが、相手MLDを識別するMACアドレスに設定されていると判定された場合、処理はステップ1508に進み、MPDUのFCフィールドの再試行(Retry)サブフィールドが1に設定されているかどうかを判定する。再試行(Retry)サブフィールドが1に設定されていると判定された場合、処理はステップ1510に進み、構築されるAADおよびノンスのA2フィールドを、MPDUのCCMPヘッダのアドレス(Address)サブフィールドに従った(すなわち図14のテーブル1408に従った)MACアドレスに設定し、ステップ1512に進み、構築されるAADのA1フィールドを、MPDUのCCMPヘッダのアドレス(Address)サブフィールドに従った(すなわち図14のテーブル1408に従った)MACアドレスに設定し、次いで処理はステップ1514から継続される。ステップ1506において、受信したMPDUのA2フィールドが相手MLDのMACアドレスを示していないと判定された場合、またはステップ1508において、MPDUのFCフィールドの再試行(Retry)サブフィールドが1ではないと判定された場合、処理はステップ1522に進み、構築されるAADおよびノンスのA2フィールドをMPDUのA2フィールドに設定し、ステップ1524に進み、構築されるAADのA1フィールドをMPDUのA1フィールドに設定し、次いで処理はステップ1514から継続される。ステップ1514においては、AADおよびノンスの残りのフィールドを通常どおりに設定する。なお図示していないが、A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(またはMLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(またはMLD-RAと異なる場合はそのリンクのBSSID)に変更される。ステップ1516においては、構築されたAADおよびノンスを有するMPDUに対してCCMPデカプセル化を実行する。ステップ1518においては、復号されたMPDUを、受信のための次の処理に送り、処理はステップ1520で終了する。上記の処理の有利な効果として、CCMPカプセル化およびデカプセル化が再送信の場合のみ従来方式と異なるため、この実施形態を実施するために必要な変更を最小限に抑えることができる。さらに、受信側MLDは、受信したMPDUが再送信されたMPDUであるかどうかを、MPDUのCCMPヘッダをチェックすることで、すなわち(FCの再試行(Retry)サブフィールドに加えて)CCMPヘッダのアドレス(Address)サブフィールドの値に基づいて、判定することができる。
第4の実施形態によれば、MLDによって送信される、またはMLDに送信されるデータフレームおよび管理フレームが、マルチリンク送信に固有の情報(すなわち送信側MLDおよび受信側MLDのMACアドレスなどの情報)を伝える異なるMACヘッダフォーマットを有することができる。図16Aは、第4の実施形態による、修正されたMACヘッダ1602を有する保護されたMPDU 1600の図解を示している。第4の実施形態では、プロトコルバージョン(PV:Protocol Version)フィールド1604を使用して、マルチリンクフレームをレガシーフレームおよびPV1(802.11ah)フレームと区別することができる。例えば、PVフィールド1604が値2に設定されている場合、MPDU 1600がマルチリンクフレームであることを示す。あるいは、802.11beにおいて、新しいMACヘッダフォーマットを示すために、1つまたは複数の新しいフレームタイプを定義してもよい。さらに、MACヘッダ1602は、マルチリンク送信に関連する制御情報を伝えるために使用することのできるML制御(ML Control)フィールド1606を含む。ML制御(ML Control)フィールド1606は制御ID(Control ID)サブフィールド1608を含み、このサブフィールドが特定の値に設定されると、ML制御(ML Control)フィールドの残りの部分は、MLアドレス1(ML Address 1)サブフィールド1610およびMLアドレス2(ML Address 2)サブフィールド1612を伝える。
制御ID(Control ID)サブフィールド1608は、ML制御(ML Control)フィールド1606のオプションを示す。例えば、制御ID(Control ID)サブフィールド1608の値が1である場合、ML制御(ML Control)フィールド1606は、受信側MLD/送信側MLDのMACアドレスを伝える。これらのMACアドレスは、MLアドレス1(ML Address 1)サブフィールド1610およびMLアドレス2(ML Address 2)サブフィールド1612に示される。例えば、MLアドレス1(ML Address 1)サブフィールド1610が送信者MLDのMACアドレスに設定され、MLアドレス2(ML Address 2)サブフィールド1612が受信側MLDのMACアドレスに設定される。この場合、CCMPカプセル化/デカプセル化時におけるAADおよびノンスの構築では、マルチリンクフレームで伝えられるMLDアドレスが使用される。例えば、構築されるAADのA1フィールドは、MLアドレス1(ML Address 1)サブフィールド1610に示される受信側MLDのMLDアドレスに設定され、構築されるAADおよびノンスのA2フィールドは、MLアドレス2(ML Address 2)サブフィールド1612に示される送信側MLDのMLDアドレスに設定される。また、該当する場合、A3フィールドは、先に説明したようにAP MLDのMLDアドレスに設定される。ML制御(ML Control)フィールド1606内のMLアドレスのいずれかまたは両方が、フルMACアドレス(48ビット)の代わりに短いIDフォーマット(すなわち12ビットのMLD ID)を使用する場合でも、AADおよびノンスは、MLD IDに対応するフルMACアドレス(すなわち、(AP MLDの)アソシエーションレコードから取得される、または例えばマルチリンクアソシエーション手順時に保存されたMLD MACアドレス-MLD IDマッピングのレコードから取得される)を依然として使用することができる。
図17は、第4の実施形態による、MPDUの受信のフローチャート1700を示している。ステップ1702においては、MPDUを受信する。ステップ1704においては、MPDUが保護されているかどうかを判定する。MPDUが保護されていない場合、処理はステップ1724に進み、受信のための次の処理にMPDUを送り、次いで処理はステップ1726で終了する。ステップ1704において、MPDUが保護されていると判定された場合、処理はステップ1706に進み、例えば、受信したMPDUのMACヘッダ内のPVフィールドが値2を有するかどうかを確認することにより、MPDUが新しいフレームフォーマットを使用しているかどうかを判定する。PVフィールドが値2を有していないと判定された場合、処理はステップ1720に進み、構築されるAADおよびノンスのA2フィールドをMPDUのA2フィールドに設定し、ステップ1722に進み、構築されるAADのA1フィールドをMPDUのA1フィールドに設定し、次いで処理はステップ1712から継続される。ステップ1706において、PVフィールドが値2を有すると判定された場合、処理はステップ1708に進み、構築されるAADのA1フィールドを、受信したMPDUのML制御(ML Control)フィールドのMLアドレス1(ML Address 1)サブフィールドに対応するMLD MACアドレスに設定し、ステップ1710に進み、構築されるAADおよびノンスのA2フィールドを、受信したMPDUのML制御(ML Control)フィールドのMLアドレス2(ML Address 2)サブフィールドに対応するMLD MACアドレスに設定し、次いで処理はステップ1712から継続される。ステップ1712においては、AADおよびノンスの残りのフィールドを通常どおりに設定する。なお図示していないが、A3がBSSIDに設定されるMPDU(例:To DS/From DS=0のデータフレーム、または管理フレーム)では、リンク2のBSSIDが異なる場合、A3(このようなフレームではBSSIDに設定され、BSSIDは一般にはそのリンクにおけるAP MLDのMACアドレスと同じである)も、送信者がAP MLDであればMLD-TA(またはMLD-TAと異なる場合はそのリンクのBSSID)、送信者が非AP MLDであればMLD-RA(またはMLD-RAと異なる場合はそのリンクのBSSID)に変更される。ステップ1714においては、構築されたAADおよびノンスを有するMPDUに対してCCMPデカプセル化を実行する。ステップ1716においては、復号されたMPDUを、受信のための次の処理に送り、処理はステップ1718で終了する。上記の処理の有利な効果として、CCMPカプセル化/デカプセル化が依然としてMPDUフィールドに基づいて行われるため、この実施形態を実施するために必要な変更を最小限に抑えることができる。
第1の実施形態から第3の実施形態において説明した技術は、ガロア/カウンターモードプロトコル(GCMP)に対しても機能することができ、GCMPは現在、DMG(Directional multi-gigabit)およびEDMG(Enhanced DMG)802.11 STAによって使用されているが、将来的にはサブ7GHz 802.11 STAによっても使用されうる。図18Aは、第5の実施形態による、暗号化されたMPDUを形成するためのGCMPカプセル化処理の図解1800を示している。CCMPは、連鎖暗号モードでは1つのステージの出力を次のステージへの入力として使用することが要求されるため、16バイトチャンクのインオーダー処理を必要とする「連鎖」動作モードに基づいている。これに対してGCMPは、同じAES暗号エンジンを使用しているが、より効率的なフレームワークに組み込んでいる。CCMPと比較して、GCMPは、必要な暗号化処理の数が半分であり、さらに重要な点として、連鎖されないため、GCMP暗号アクセラレーションを送信フレーム全体に並行して適用することができる。図1800において理解できるように、GCMPカプセル化処理は、CCMPカプセル化とほぼ同じである。ただし、GCMPカプセル化で使用される構築されるAAD 1802はCCMPカプセル化において構築されるAADと同じであるが、GCMPカプセル化で使用される構築されるノンス1804は、優先順位(Priority)フィールドを含まない点で、CCMPカプセル化で使用されるノンスとは異なる。
図18Bは、第5の実施形態によるGCMP保護MPDU 1806の図解を示している。GCMPによって暗号化されているため、MPDU 1806は、CCMPヘッダの代わりにGCMPヘッダ1808を含む。GCMPヘッダ1808は、オプション(Options)フィールドを含み、このフィールドは、GCMPデカプセル化時にAADおよびノンスのフィールドの構築に使用するべきアドレスフィールドをシグナリングするために使用されるアドレス(Address)フィールド1809を伝える。図18Cは、第5の実施形態による、平文MPDUを形成するためのGCMPデカプセル化処理の図解を示している。GCMPカプセル化と同様に、GCMPデカプセル化もCCMPデカプセル化とほぼ同じである。ただし、GCMPデカプセル化で使用される構築されるAAD 1812はCCMPデカプセル化において構築されるAADと同じであるが、GCMPデカプセル化で使用される構築されるノンス1814は、優先順位(Priority)フィールドを含まない点で、CCMPデカプセル化で使用されるノンスとは異なる。受信側MLDは、GCMPデカプセル化時にAADおよびノンスのフィールドを構築するのに使用するべきアドレスフィールドを、アドレス(Address)フィールド1809を参照して決定することができる。
図19は、様々な実施形態による、すべてのリンクにおいて共通のパケット番号(PN)割り当てを使用するマルチリンクMPDU送信の図解1900を示している。図3の図解300に示したような別々のPTKを使用するマルチリンクMPDU送信に似ているが、MPDUを送信するためのリンク1およびリンク2の両方で共通のPN割り当てが使用される。この例では、リンク1でMPDU 1902の送信に失敗したため、リンク1ではなく、リンク2などの異なるリンクで再送信されるように予定されている。リンク2は異なるPTK(すなわちキー2)を使用するため、MPDUをMPDU 1904として、キー2を用いてカプセル化する必要があるが、それでも、MPDU 1902と同じSN=4および同じPN=104(リンク1とリンク2の両方において共通のPN割り当てが使用されるため)を使用する。受信者MLDは、リンク2で受信したMPDUを、MPDU 1904を含む各受信MPDUのSNに従って並べ替える。SN=4まで、すなわちSN=4かつPN=104の受信MPDU 1904まで並び替えたときに、受信者MLDは、リプレイカウンタをPN=104に更新する。SNが4より大きい残りのMPDU(すなわちSN=5、PN=52の受信MPDU 306およびSN=7、PN=53の受信MPDU 308)がドロップされてリプレイ拒否問題が発生する図3の図解300とは異なり、MPDU 1906およびMPDU 1908は、並べ替え処理後にPNが正しい順序になっているためリプレイチェックにパスする。このように、PTKの数に関係なく、共通のPN空間を使用してキーのPNを割り当て、再送信においても同じPNを使用すれば、前述したリプレイ拒否の問題が解決される。
図20は、様々な実施形態による送信者MLD 2000の概略図を示している。送信者MLDは、配信サービス(DS)を実行するためのMAC-SAP 2002と、送信バッファ2004(保護されていないMPDU、およびオプションとして、保護されているMPDUを格納するために使用される)と、シーケンス番号(SN)割り当てモジュール2006と、パケット番号(PN)割り当てモジュール2008と、MPDU暗号化・完全性モジュール2010と、再送信モジュール2012(再送信に使用するリンクと、暗号カプセル化処理時にAADおよびノンスの構築に使用するMACアドレスを決定する)と、を備えている。さらに送信者MLD 2000は、STA1 2014aおよびSTA22014bという2つの付属STAまたはステーションを備えている。STA1 2014aは、MAC層2016aにおいて、MPDUヘッダおよびCRC作成モジュール2020aと、送信(Tx)バッファおよびブロック確認応答(ACK)制御モジュール2022aと、アグリゲーション制御部2024aとを備えている。同様に、STA2 2014bは、MAC層2016bにおいて、MPDUヘッダおよびCRC作成モジュール2020bと、送信(Tx)バッファおよびブロック確認応答(ACK)制御モジュール2022bと、アグリゲーション制御部2024bとを備えている。両方のSTAは、リンク1(STA1 2014a用)およびリンク2(STA2 2014b用)を介した送信が行われるPHY層を備えている。リンクおよび付属STAまたはステーションの数は、さらに拡張できることが理解されるであろう。上記のアーキテクチャは、すべてのリンクにおいて同じPTK(および/またはGTK/IGTK)が使用される場合に適切であり、たとえリンクに対して異なるPTKが使用される場合でも、すべてのリンクにおいて同じPN空間が使用されるならば、図19の文脈で説明したようにリプレイ拒否の問題を回避するのに役立ち得るためである。しかしながら、異なるPTK(および/またはGTK/IGTK)の使用を選択する配備では、MPDU暗号化・完全性モジュール2010を、それぞれの付属STAに移動してもよい。リンクに対して別々のPN空間が使用される場合(PNは通常、それぞれの秘密鍵に結び付けられる)、さらにパケット番号(PN)割り当てモジュール2008を、それぞれの付属STAに移動してもよい。
図21は、様々な実施形態による受信者MLD 2100の概略図を示している。受信者MLDは、配信サービス(DS)を実行するためのMAC-SAP 2102と、リプレイ検出モジュール2104と、MPDU復号化・完全性モジュール2106と、ブロックACKバッファリングおよび並べ替えモジュール2108と、重複検出モジュール2110とを備えている。さらに受信者MLD 2100は、STA1 2114aおよびSTA2 2114bという2つの付属STAまたはステーションを備えている。STA1 2114aは、MAC層2116aにおいて、ブロックACKスコアボードモジュール2120aと、アドレス1フィルタリングモジュール2122aと、デアグリゲーション制御部2124aとを備えている。同様に、STA2 2114bは、MAC層2116bにおいて、ブロックACKスコアボードモジュール2120bと、アドレス1フィルタリングモジュール2122bと、デアグリゲーション制御部2124bとを備えている。両方のSTAは、PHY層(すなわちSTA1 2114aの2118aおよびSTA2 2114bの2118b)を備えており、これらのPHY層からリンク1(すなわちSTA1 2114aと送信者MLD 2000におけるSTA1 2014aとの間)およびリンク2(すなわちSTA2 2114bと送信者MLD 2000におけるSTA2 2014bとの間)を介した送信が行われる。リンクおよび付属STAまたはステーションの数は、さらに拡張できることが理解されるであろう。ここで、MPDU復号化・完全性モジュール2106は、CCMP/GCMPデカプセル化時に、CCMP/GCMPヘッダ内のアドレスフィールドを解析して、AADおよびノンスのフィールドを構築するために使用するアドレスフィールドを決定する役割を担う。
図22は、様々な実施形態に係る、MPDUのマルチリンクのセキュアな再送信のための方法を図解したフローチャート2200を示している。ステップ2202においては、第1の複数の付属STAとともに動作するように構成された第1のMLDにおいて、第2の複数の付属STAとともに動作するように構成された第2のMLDと、ロバストセキュリティネットワークアソシエーション(RSNA)をセットアップし、この場合、第1の複数の付属STAのSTAと第2の複数の付属STAの対応するSTAとの間に2つ以上のリンクが確立されている。ステップ2204においては、追加認証データ(AAD)およびノンスを構築し、AADは、アドレス1(A1)フィールド、アドレス2(A2)フィールド、アドレス3(A3)フィールド、およびシーケンス制御(SC)フィールドを含み、ノンスはアドレス2(A2)フィールドを含み、AADのSCフィールドはMPDUのSCフィールドに基づく。ステップ2206においては、AADおよびノンスを使用してMPDUを暗号的にカプセル化して、カプセル化されたMPDUを形成する。該当する場合、CCMP/GCMPヘッダのアドレスフィールドは、AADおよびノンスのフィールドを生成するために使用されたアドレスフィールドをシグナリングするように設定される。ステップ2208においては、カプセル化されたMPDUを、最初の送信として、第1のMLDから第1のリンク上で第2のMLDに送信する。ステップ2210においては、最初の送信の失敗時に、カプセル化されたMPDUを、暗号カプセル化を再実行することなく第2のリンクで再送信する。該当する場合、再送信されるMPDUのCCMP/GCMPヘッダ内のアドレスフィールドは、カプセル化処理時にAADおよびノンスのフィールドを生成するために使用されたアドレスフィールドをシグナリングするように設定される。
図23は、第1から第5の実施形態による、マルチリンクのセキュアな再送信のために実施することのできるマルチリンクデバイス2300の概略的な部分断面図を示している。マルチリンクデバイス2300は、AP MLDまたは非AP MLDとして実施することができ、様々な実施形態に係る1つまたは複数の付属STAまたはSTAを備えている。
マルチリンクデバイス2300のさまざまな機能および動作は、階層モデルに従って複数の層に配置されている。このモデルでは、IEEE仕様に従って、下位層が上位層に報告し、上位層から指示を受け取る。簡潔さを目的として、本開示では階層モデルの詳細については説明しない。
図23に示したように、マルチリンクデバイス2300は、回路2314と、少なくとも1つの無線送信機2302と、少なくとも1つの無線受信機2304と、複数のアンテナ2312(簡潔さのため図23では説明を目的として1つのアンテナのみが描かれている)を含むことができる。回路は少なくとも1つのコントローラ2306を含むことができ、コントローラ2306は、MIMO無線ネットワークにおける1つまたは複数の別のマルチリンクデバイスとの通信の制御を含む、実行するように設計されているタスクをソフトウェアおよびハードウェアの支援下で実行するときに使用される。少なくとも1つのコントローラ2306は、少なくとも1つの無線送信機2302を通じて1つまたは複数の別のマルチリンクデバイスに送信されるMPDUを生成するための少なくとも1つの送信号生成器2308と、1つまたは複数の別のマルチリンクデバイスから少なくとも1つの無線受信機2304を通じて受信されるMPDUを処理するための少なくとも1つの受信信号処理器2310とを制御することができる。さらに少なくとも1つのコントローラ2306は、AADおよびノンスフレームを構築するためと、構築されたAADおよびノンスフレームを使用してMPDUに対してCCMPまたはGCMPカプセル化またはデカプセル化を実行するための、少なくとも1つの送信号生成器2308および/または少なくとも1つの受信信号処理器2310、を制御することができる。少なくとも1つの送信号生成器2308および少なくとも1つの受信号処理器2310は、上述した機能のために少なくとも1つのコントローラ2306と通信する、マルチリンクデバイス2300のスタンドアロンモジュールとすることができる。あるいは、少なくとも1つの送信号生成器2308および少なくとも1つの受信号処理器2310は、少なくとも1つのコントローラ2306に含まれていてもよい。これらの機能モジュールの配置は柔軟であり、実用的なニーズおよび/または要件に応じて変化し得ることが当業者には理解されるであろう。データの処理装置、記憶装置、および他の関連する制御装置は、適切な回路基板上および/またはチップセットに提供することができる。
様々な実施形態において、動作時、少なくとも1つの無線送信機2302、少なくとも1つの無線受信機2304、および少なくとも1つのアンテナ2312を、少なくとも1つのコントローラ2306によって制御することができる。さらに、1つの無線送信機2302のみが示されているが、複数のこのような送信機(すなわちマルチリンクデバイス2300の各付属STAまたはSTAごとに1つの送信機)が存在し得ることが理解されるであろう。
様々な実施形態において、動作時に、少なくとも1つの無線受信機2304は、少なくとも1つの受信信号処理器2310とともに、マルチリンクデバイス2300の受信機を形成する。マルチリンクデバイス2300の受信機は、動作時に、マルチリンク通信に必要な機能を提供する。1つの無線受信機2304のみが示されているが、複数のこのような受信機(すなわちマルチリンクデバイス2300の各付属STAまたはSTAごとに1つの受信機)が存在し得ることが理解されるであろう。
マルチリンクデバイス2300は、動作時に、マルチリンクのセキュアな再送信に必要な機能を提供する。例えば、マルチリンクデバイス2300は、第1の複数の付属STAとともに動作するように構成された第1のマルチリンクデバイスとすることができる。回路2314は、動作時に、第2の複数の付属STAとともに動作するように構成された第2のMLDとの間で、ロバストセキュリティネットワークアソシエーション(RSNA)をセットアップすることができ、この場合、第1の複数の付属STAのSTAと第2の複数の付属STAの対応するSTAとの間に2つ以上のリンクが確立されており、回路は、MACプロトコルデータユニット(MPDU)の暗号カプセル化に使用される追加認証データ(AAD)およびノンスを構築して、カプセル化されたMPDUを形成し、AADは、アドレス1(A1)フィールド、アドレス2(A2)フィールド、アドレス3(A3)フィールド、およびシーケンス制御(SC)フィールドを含み、ノンスはアドレス2(A2)フィールドを含み、AADのSCフィールドは、MPDUのSCフィールドに基づく。送信機2302は、動作時に、カプセル化されたMPDUを、最初の送信として第1のリンク上で第2のMLDに送信し、最初の送信の失敗時に、カプセル化されたMPDUを、暗号カプセル化を再実行することなく第2のリンク上で再送信することができる。
AADおよびノンスのA2フィールドを、第1のMLDを識別する媒体アクセス制御(MAC)アドレスに設定することができ、AADのA1フィールドを、第2のMLDを識別するMACアドレスに設定することができる。MPDUを暗号によって保護するために、CCMPまたはGCMPの一方を使用することができる。MPDUは、第1のMLDおよび第2のMLDの識別情報を含むことができ、AADおよびノンスのA2フィールドを、識別情報に示される第1のMLDを識別するMACアドレスに設定することができ、AADのA1フィールドを、識別情報に示される第2のMLDを識別するMACアドレスに設定することができる。
回路2314は、MPDUにおいてA1、A2、A3フィールドの設定を指定することができ、この設定は、MPDUの暗号デカプセル化時に、A1、A2、A3フィールドを、それぞれ、第2のMLDを識別するMACアドレス、第1のMLDを識別するMACアドレス、AP MLDを識別するMACアドレスに設定するべきであるかどうかを示す、または、A1、A2、A3フィールドを、それぞれ、第2のMLDの付属STAのMACアドレス、第1のMLDの付属STAのMACアドレス、AP MLDを識別するMACアドレスに設定するべきであるかどうかを示す、または、A1、A2、A3フィールドを、それぞれMPDUのA1、A2、A3フィールドに設定するべきであるかどうかを示し、この場合、AP MLDは第1のMLDまたは第2のMLDである。A1、A2、A3フィールドの設定は、カプセル化されたMPDUのCCMP(カウンターモード暗号ブロック連鎖メッセージ認証コードプロトコル)ヘッダフィールドまたはGCMP(ガロア/カウンターモードプロトコル)ヘッダフィールドの一方に示すことができる。
AADおよびノンスのA2フィールドは、MPDUのA2フィールドに設定することができ、AADのA1フィールドは、MPDUのA1フィールドに設定することができ、最初の送信に失敗したときに、回路2314は、A1、A2、A3フィールドの設定を、再送信されるMPDUにおいてさらに指定することができ、この設定は、再送信されたMPDUの暗号デカプセル化時に、A1、A2、A3フィールドを、それぞれ、第2のMLDの付属STAのMACアドレス、第1のMLDの付属STAのMACアドレス、AP MLDを識別するMACアドレスに設定するべきであるかどうか、または、A1、A2、A3フィールドを、それぞれ、再送信されたMPDUのA1、A2、A3フィールドに設定するべきであるかどうかを示す。
例えば、マルチリンクデバイス2300は、第1の複数の付属STAとともに動作するように構成された第1のマルチリンクデバイスとすることができる。回路2314は、動作時に、第2の複数の付属STAとともに動作するように構成された第2のMLDとの間で、ロバストセキュリティネットワークアソシエーション(RSNA)をセットアップすることができ、この場合、第1の複数の付属STAのSTAと第2の複数の付属STAの対応するSTAとの間に2つ以上のリンクが確立されている。受信機2304は、動作時に、第2のMLDから、暗号的にカプセル化されたMACプロトコルデータユニット(MPDU)を受信することができ、この場合、回路2314は、受信したMPDUの暗号デカプセル化に使用される追加認証データ(AAD)およびノンスを構築し、AADは、アドレス1(A1)フィールド、アドレス2(A2)フィールド、アドレス3(A3)フィールド、およびシーケンス制御(SC)フィールドを含み、ノンスはアドレス2(A2)フィールドを含み、AADおよびノンスのA2フィールドは、MPDUのA2フィールド、第2のMLDを識別する媒体アクセス制御(MAC)アドレス、または第2の複数の付属STAのうちの1つのMACアドレス、のいずれかに設定することができ、AADのA1フィールドは、MPDUのA1フィールド、第1のMLDを識別するMACアドレス、または第1の複数の付属STAのうちの1つのMACアドレス、のいずれかに設定することができ、AADのアドレス3(A3)フィールドは、リンクのBSSIDフィールド、MPDUのA3フィールド、またはAP MLDのMACアドレスに設定することができ、AADのSCフィールドはMPDUのSCフィールドに基づく。
回路2314は、第2のMLDから受信したMPDUを暗号的にデカプセル化することができ、この場合、AADおよびノンスのA2フィールドを、第2のMLDを識別するMACアドレスに設定することができ、AADのA1フィールドを、第1のMLDを識別するMACアドレスに設定することができる。CCMPまたはGCMPのいずれかを使用して、MPDUを暗号的にデカプセル化することができる。MPDUは、第1のMLDおよび第2のMLDの識別情報を伝えることができ、回路は、AADおよびノンスのA2フィールドを、MPDUに示される第2のMLDを識別するMACアドレスに設定し、AADのA1フィールドを、MPDUに示される第1のMLDを識別するMACアドレスに設定することによって、MPDUを暗号的にデカプセル化することができる。
回路2314は、MPDUに示されるA1、A2、A3フィールドの設定に基づいて、受信したMPDUを暗号的にデカプセル化することができ、設定は、暗号デカプセル化時に、A1、A2、A3フィールドを、それぞれ、第1のMLDを識別するMACアドレス、第2のMLDを識別するMACアドレス、AP MLDを識別するMACアドレスに設定するべきであるかどうか、または、A1、A2、A3フィールドを、それぞれ、第1のMLDの付属STAのMACアドレス、第2のMLDの付属STAのMACアドレス、AP MLDを識別するMACアドレスに設定するべきであるかどうか、または、A1、A2、A3フィールドを、それぞれMPDUのA1、A2、A3フィールドに設定するべきであるかどうかを示し、この場合、AP MLDは第1のMLDまたは第2のMLDである。アドレスフィールドの設定は、第2のMLDから受信されるMPDUのCCMPヘッダまたはGCMPヘッダの一方に示すことができる。
回路2314は、AADおよびノンスのA2フィールドを最初のMPDUのA2フィールドに設定し、AADのA1フィールドを最初のMPDUのA1フィールドに設定することによって、第2のMLDから受信された最初のMPDUを暗号的にデカプセル化することができ、最初のMPDUは、0に設定された再試行(Retry)サブフィールドを含む。回路2314は、2番目のMPDUに示されるA1、A2、A3フィールドの設定に基づいて、第2のMLDから受信された2番目のMPDUを暗号的にデカプセル化することができ、設定は、暗号デカプセル化時に、A1、A2、A3フィールドを、それぞれ、第1のMLDの付属STAのMACアドレス、第2のMLDの付属STAのMACアドレス、AP MLDを識別するMACアドレスに設定するべきであるかどうか、または、A1、A2、A3フィールドを、それぞれ2番目のMPDUのA1、A2、A3フィールドに設定するべきである、かどうかを示し、2番目のMPDUは、1に設定された再試行(Retry)サブフィールドを含む。
本開示は、ソフトウェア、ハードウェア、またはハードウェアと協働するソフトウェアによって実現することができる。上述した各実施形態の説明において使用されている各機能ブロックは、その一部または全体を、集積回路などのLSIで実現することができ、各実施形態において説明した各処理は、その一部または全体を、同一のLSIまたはLSIの組合せによって制御することができる。LSIは、個々にチップとして形成されていてもよいし、機能ブロックの一部またはすべてを含むように1つのチップを形成してもよい。LSIは、自身に結合されたデータ入出力部を含むことができる。ここでいうLSIは、集積度の違いに応じて、IC、システムLSI、スーパーLSI、ウルトラLSIと呼ばれることがある。しかしながら、集積回路を実施する技術はLSIに限定されず、専用回路、汎用プロセッサ、または特殊目的プロセッサを使用して実現されてもよい。さらに、LSIの製造後にプログラム可能なFPGA(フィールドプログラマブルゲートアレイ:Field Programmable Gate Array)や、LSI内部に配置された回路セルの接続や設定を変更可能なリコンフィギュラブルプロセッサを用いてもよい。本開示は、デジタル処理またはアナログ処理として実現することができる。半導体技術やその他の派生技術の進歩により、将来の集積回路技術がLSIに置き換わった場合、その将来の集積回路技術を用いて機能ブロックを集積することも可能である。バイオテクノロジーを応用することもできる。
本開示は、通信デバイスと称される、通信の機能を有する任意の種類の装置、デバイス、またはシステムによって実現することができる。
通信デバイスは、送受信機と、処理/制御回路とを備えていることができる。送受信機は、受信機および送信機を備えている、および/または、受信機および送信機として機能することができる。送信機および受信機としての送受信機は、増幅器、RF変調器/復調器などを含むRF(無線周波数)モジュールと、1つまたは複数のアンテナとを含むことができる。
そのような通信デバイスのいくつかの非限定的な例としては、電話(例えばセルラー(携帯)電話、スマートフォン)、タブレット、パーソナルコンピュータ(PC)(例えばラップトップ、デスクトップ、ネットブック)、カメラ(例えばデジタルスチル/ビデオカメラ)、デジタルプレーヤー(デジタルオーディオ/ビデオプレーヤー)、ウェアラブルデバイス(例えばウェアラブルカメラ、スマートウォッチ、トラッキングデバイス)、ゲーム機、電子書籍リーダー、遠隔医療/テレメディシン(リモート医療・医薬)装置、通信機能を提供する車両(例えば自動車、飛行機、船舶)、およびそれらの様々な組合せが挙げられる。
本通信デバイスは、携帯型または可搬型に限定されず、非携帯型または据付け型である任意の種類の装置、デバイス、またはシステム、例えば、スマートホームデバイス(例:電化製品、照明、スマートメーター、制御盤)、自動販売機、および「モノのインターネット(IoT:Internet of Things)」のネットワーク内の任意の他の「モノ」などを含むこともできる。
通信は、例えばセルラーシステム、無線LANシステム、衛星システム、およびこれらのさまざまな組合せを通じてデータを交換すること、を含むことができる。
本通信デバイスは、本開示の中で説明した通信の機能を実行する通信装置に結合されたコントローラやセンサなどの装置を備えることができる。例えば、通信デバイスは、通信デバイスの通信機能を実行する通信装置によって使用される制御信号またはデータ信号を生成するコントローラまたはセンサ、を備えていることができる。
本通信デバイスは、インフラストラクチャ設備、例えば、上の非限定的な例における装置等の装置と通信する、またはそのような装置を制御する基地局、アクセスポイント、および任意の他の装置、デバイス、またはシステムなどを、さらに含むことができる。
アーキテクチャ(例えば図20および図21に示したアーキテクチャ)の非限定的な例として、本開示のMLDは、上位層への共通のMACデータサービスインターフェースを共有する複数の分離された通信装置によって論理的に実現することができる。
ステーションの非限定的な例は、マルチリンクステーション論理エンティティ(すなわちMLDなど)に属する第1の複数のステーションに含まれるステーションとすることができ、マルチリンクステーション論理エンティティに属する第1の複数のステーションの一部として、第1の複数のステーションのステーションは、上位層への共通の媒体アクセス制御(MAC)データサービスインターフェースを共有し、共通のMACデータサービスインターフェースは共通のMACアドレスまたはトラフィック識別子(TID)に関連付けられている。
したがって、本開示の実施形態は、特にマルチリンクのセキュアな再送信において、マルチリンク通信のスループット利得を十分に実現するために、複数のリンク上で動作する通信デバイスおよび通信方法を提供することを理解することができる。
本実施形態のここまでの詳細な説明では、例示的な実施形態を提示してきたが、膨大な数の変形形態が存在することを理解されたい。さらに、例示的な実施形態は例であり、本開示の範囲、適用性、動作、または構成を何ら制限するようには意図していないことを理解されたい。むしろ、ここまでの詳細な説明は、例示的な実施形態を実施するための便利な指針を当業者に提供するものである。例示的な実施形態に記載された動作のステップおよび方法の機能および編成と、例示的な実施形態に記載されたデバイスのモジュールおよび構造には、添付の請求項に記載されている主題の範囲から逸脱することなく、様々な変更を行うことができることを理解されたい。