JP2022059312A - 通信装置、制御方法およびプログラム - Google Patents
通信装置、制御方法およびプログラム Download PDFInfo
- Publication number
- JP2022059312A JP2022059312A JP2020166969A JP2020166969A JP2022059312A JP 2022059312 A JP2022059312 A JP 2022059312A JP 2020166969 A JP2020166969 A JP 2020166969A JP 2020166969 A JP2020166969 A JP 2020166969A JP 2022059312 A JP2022059312 A JP 2022059312A
- Authority
- JP
- Japan
- Prior art keywords
- transmission queue
- address information
- communication device
- mac
- destination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 title claims abstract description 18
- 230000005540 biological transmission Effects 0.000 claims abstract description 87
- 230000002776 aggregation Effects 0.000 claims abstract description 72
- 238000004220 aggregation Methods 0.000 claims abstract description 72
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000004931 aggregating effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
Description
図1において、通信システム11は、通信装置1~4を備える。図1の例では、通信装置1は、アクセスポイント、通信装置2~4は、ステーションである。通信装置1~4は、カメラ、プリンタ、タブレット、PC(Personal Computer)などの通信機能を備えた装置である。このとき、通信システム11は、インフラストラクチャーモードの無線ネットワークを構成することができる。インフラストラクチャーモードは、IEEE802.11で規定される無線LANの動作モードの1つである。インフラストラクチャーモードでは、アクセスポイントを介してステーション間の通信が行われる。例えば、インフラストラクチャーモードでは、通信装置2であるカメラが撮影した動画像を、通信装置1を介して通信装置3、4に送信し、通信装置3、4である複数のディスプレイに表示することができる。あるいは、通信装置2であるタブレットで編集したコンテンツを、通信装置1を介して通信装置3、4に送信し、通信装置3、4である複数のプリンタで用途別に印刷することができる。
図2に示す通信装置1の各機能モジュールのうち、ソフトウェアにより実現される機能については、各機能モジュールの機能を提供するためのプログラムがROM(Read Only Memory)等のメモリに記憶される。そして、そのプログラムをRAM(Random Access Memory)に読み出してCPU(Central Processing Unit)が実行することにより実現される。ハードウェアにより実現される機能については、例えば、所定のコンパイラを用いることで、各機能モジュールの機能を実現するためのプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。なお、図2に示した機能ブロックの構成は一例であり、複数の機能ブロックが1つの機能ブロックを構成するようにしてもよいし、いずれかの機能ブロックが複数の機能を行うブロックに分かれてもよい。
メインメモリ23は、CPU21で実行されるアプリケーション210、プロトコルスタック211および無線ドライバ212の各種プログラムおよびデータを記憶したり、ワークエリアを提供したりする。
プロトコルスタック211は、TCP/IP(Transmission Control Protocol /Internet Protocol)等のプロトコル処理を行い、MACフレームを生成する。
このとき、MACフレームは、キュー管理部214およびリスト管理部215により宛先ごとに適正にアグリゲーションが実行できるように管理される。
また、管理種別選択部216は、第1MACフレームの第1アドレス情報が送信キュー217に投入済のときに、第1MACフレームと同宛先の第2MACフレームをアグリゲーションサイズ以下で紐付けが不可能な場合、第2MACフレームの第2アドレス情報を送信キュー217に投入することを選択する。
さらに、管理種別選択部216は、第1MACフレームの第1アドレス情報と同宛先の第2MACフレームの第2アドレス情報が送信キュー217に未投入の場合、第1アドレス情報を送信キュー217に投入することを選択する。
この場合、図3に示すフローチャートにおける各ブロックは、ハードウェアブロックと見做すことができる。なお、複数のブロックをまとめて1つのハードウェアブロックとして構成してもよく、1つのブロックを複数のハードウェアブロックとして構成してもよい。
S2では、無線ドライバ212は、MACフレーム内のMACヘッダまたはIP(Internet Protocol)ヘッダを参照し、同宛先のMACフレームが送信キュー217にあるかどうかを判定する。このとき、無線ドライバ212は、宛先を識別するために、宛先MACアドレスまたは宛先IPアドレスを参照することができる。
S3では、無線ドライバ212は、MACフレームが格納されるパケット管理構造体の先頭アドレスを送信キュー217に投入し、S1に戻る。
S4では、無線ドライバ212は、同宛先のMACフレームに関連付けられるMACフレームを含めても、連結サイズ決定部213にて決定されるアグリゲーションサイズ以下かどうかを判定する。無線ドライバ212は、アグリゲーションサイズを超過する場合、S3に進み、アグリゲーションサイズ以下の場合、S5に進む。
S7では、無線ドライバ212は、格納先のパケット管理構造体の先頭アドレスがデキューされたMACフレームに関連付けられているMACフレームを含めてアグリゲーション処理を行い、S8に進む。
S8では、無線ドライバ212は、アグリゲーション処理を行ったMACフレームに無線ヘッダを付加して無線通信フレームを生成し、S9に進む。
S9では、無線ドライバ212は、無線通信フレームを無線制御部24に転送し、処理を終了する。
また、S4において、アグリゲーションサイズにより判定を行ったが、この方法以外にも、アグリゲーション数により判定を行ってもよい。例えば、MACフレームのサイズは1.5Kバイトを想定し、最大アグリゲーションサイズが6Kバイトの場合には、アグリゲーション数を4として判定してもよい。
図4において、パケット管理構造体40は、管理情報部41およびデータ部42を備える。
データ部42は、フレームを格納可能なサイズのバッファである。データ部42は、パケットとしてMACヘッダ、IPヘッダ、TCP/UDPヘッダおよびペイロードを格納する。
無線ドライバ212は、パケット管理構造体504を取得し、パケット管理構造体504の先頭アドレス503を送信キュー217に投入する。
次に、無線ドライバ212は、パケット管理構造体505を取得する。このとき、パケット管理構造体505の宛先は、送信キュー217に投入済みのパケット管理構造体404と宛先と異なるため、無線ドライバ212は、パケット管理構造体505の先頭アドレス502を送信キュー217に投入する。
また、無線ドライバ212は、パケット管理構造体504と同宛先であるパケット管理構造体508について関連付けを行う。
また、無線ドライバ212は、パケット管理構造体510を取得する。このとき、パケット管理構造体510と同宛先のパケット管理構造体509が存在するが、これらの関連付けを行うと、最大アグリゲーションサイズである6Kバイトを超過するものとする。この場合、無線ドライバ212は、パケット管理構造体510については、パケット管理構造体509と紐付けるリスト管理を行わず、パケット管理構造体510の先頭アドレス501を送信キュー217に投入する。
その後、無線ドライバ212は、送信キュー217から順にデキューし、リスト管理されるパケット管理構造体40に格納されるMACフレームをアグリゲーション処理する。これにより、無線ドライバ212は、1つの送信キュー217のみで宛先ごとに適切にアグリゲーション処理を行うことができ、メモリリソースの増大を抑制しつつ、データ送信時のスループットを向上させることができる。
S12では、無線ドライバ212は、MACフレームF1を取得し、S13では、格納されるパケット管理構造体504の先頭アドレス503を送信キュー217に投入する。
S16では、無線ドライバ212は、MACフレームF2を取得し、S17では、格納されるパケット管理構造体505の先頭アドレス502を送信キュー217に投入する。
S20では、無線ドライバ212は、MACフレームF3を取得し、S21では、格納されるパケット管理構造体506の先頭アドレスをパケット管理構造体505に関連付ける。
S24では、無線ドライバ212は、MACフレームF4を取得し、S25では、格納されるパケット管理構造体507の先頭アドレスをパケット管理構造体506に関連付ける。
S28では、無線ドライバ212は、MACフレームF5を取得し、S29では、格納されるパケット管理構造体508の先頭アドレスをパケット管理構造体504に関連付ける。
S32では、無線ドライバ212は、MACフレームF6を取得し、S33では、格納されるパケット管理構造体509の先頭アドレスをパケット管理構造体507に関連付ける。
S36では、無線ドライバ212は、MACフレームF7を取得する。このとき、無線ドライバ212は、MACフレームF7のパケット管理構造体510の先頭アドレスをパケット管理構造体509に関連付けると、MACフレームF2を先頭にリスト管理されるフレーム数がアグリゲーションサイズを超過する。このため、S37では、無線ドライバ212は、格納されるパケット管理構造体510の先頭アドレス501を送信キュー217に投入する。
また、無線ドライバ212は、パケット管理構造体505の先頭アドレス502を送信キュー217からデキューし、MACフレームF2~F4、F6をアグリゲーション処理する。
さらに、無線ドライバ212は、パケット管理構造体510の先頭アドレス501を送信キュー217からデキューし、パケット管理構造体510については関連付けがないため、MACフレームF7のアグリゲーション処理は行わない。
S42では、無線ドライバ212は、無線制御部203に対して転送命令を発行し、S43、S44では、メインメモリ23から無線制御部203に無線通信フレームを転送する。
Claims (15)
- MAC(Media Access Control)フレームにアクセス可能なアドレス情報が投入される送信キューを管理する第1管理手段と、
前記送信キューに投入されるアドレス情報に基づいて、同宛先のMACフレームをアグリゲーションサイズ以下で互いに紐付けて管理する第2管理手段と、
前記MACフレームの宛先および前記アグリゲーションサイズに基づいて、前記送信キューに未投入のアドレス情報を前記送信キューに投入するか否かを判定する判定手段と、
前記判定手段により前記送信キューに未投入のアドレス情報を前記送信キューに投入すると判定された場合、当該アドレス情報を前記送信キューに投入する投入手段と、
を備えることを特徴とする通信装置。 - 複数の宛先ノードごとにアグリゲーションサイズを決定する決定手段をさらに備えることを特徴とする請求項1に記載の通信装置。
- 各宛先のアグリゲーションサイズ以下で前記MACフレームを宛先ごとに連結して通信フレームとして転送する転送手段をさらに備えることを特徴とする請求項1または2に記載の通信装置。
- 前記アドレス情報は、前記MACフレームの格納先のアドレス情報であることを特徴とする請求項1から3のいずれか1項に記載の通信装置。
- 前記判定手段は、第1MACフレームの第1アドレス情報が前記送信キューに投入済のときに、前記第1MACフレームと同宛先の第2MACフレームを前記アグリゲーションサイズ以下で紐付けが可能な場合、前記第2MACフレームの第2アドレス情報を前記送信キューに投入しないと判定し、
前記第2管理手段は、前記第2MACフレームをリスト管理することを特徴とする請求項1から4のいずれか1項に記載の通信装置。 - 前記判定手段は、第1MACフレームの第1アドレス情報が前記送信キューに投入済のときに、前記第1MACフレームと同宛先の第2MACフレームを前記アグリゲーションサイズ以下で紐付けが不可能な場合、前記第2MACフレームの第2アドレス情報を前記送信キューに投入すると判定することを特徴とする請求項1から4のいずれか1項に記載の通信装置。
- 前記判定手段は、第1MACフレームの第1アドレス情報と同宛先の第2MACフレームの第2アドレス情報が前記送信キューに未投入の場合、前記第1アドレス情報を前記送信キューに投入すると判定することを特徴とする請求項1から4のいずれか1項に記載の通信装置。
- 前記決定手段は、複数の宛先ノードごとに設定された前記アグリゲーションサイズを格納するテーブルを備えることを特徴とする請求項6または7に記載の通信装置。
- 前記決定手段は、複数の宛先ノードごとのアグリゲーションサイズから最小のアグリゲーションサイズを決定し、全ての宛先に対して前記最小のアグリゲーションサイズを適用することを特徴とする請求項6から8のいずれか1項に記載の通信装置。
- 複数のBSS(Basic Service Set)モードを並行して実行する実行手段をさらに備え、
前記BSSモードごとに前記送信キューを生成することを特徴とする請求項1から9のいずれか1項に記載の通信装置。 - 前記複数のBSSモードは、インフラストラクチャーモード、WiFiダイレクトモードおよびアドホックモードのうち、少なくともいずれか2つの組み合わせであることを特徴とする請求項10に記載の通信装置。
- 前記第2管理手段は、同期情報または制御情報を含むMACフレームに対しては、前記MACフレームのリスト管理を行わないことを特徴とする請求項1から11のいずれか1項に記載の通信装置。
- 前記第2管理手段は、前記MACフレームに含まれる宛先MACアドレスまたは宛先IPアドレスに基づいて、前記MACフレームの宛先を識別することを特徴とする請求項1から12のいずれか1項に記載の通信装置。
- MAC(Media Access Control)フレームにアクセス可能なアドレス情報が投入される送信キューを管理するステップと、
前記送信キューに投入されるアドレス情報に基づいて、同宛先のMACフレームをアグリゲーションサイズ以下で互いに紐付けて管理するステップと、
前記MACフレームの宛先および前記アグリゲーションサイズに基づいて、前記送信キューに未投入のアドレス情報を前記送信キューに投入するか否かを判定するステップと、
前記送信キューに未投入のアドレス情報を前記送信キューに投入すると判定された場合、当該アドレス情報を前記送信キューに投入するステップと、
を備えることを特徴とする制御方法。 - コンピュータを請求項1から13のいずれか1項に記載の通信装置として動作させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020166969A JP2022059312A (ja) | 2020-10-01 | 2020-10-01 | 通信装置、制御方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020166969A JP2022059312A (ja) | 2020-10-01 | 2020-10-01 | 通信装置、制御方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022059312A true JP2022059312A (ja) | 2022-04-13 |
Family
ID=81124343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020166969A Pending JP2022059312A (ja) | 2020-10-01 | 2020-10-01 | 通信装置、制御方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022059312A (ja) |
-
2020
- 2020-10-01 JP JP2020166969A patent/JP2022059312A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102014067B (zh) | 一种报文分片发送的方法、装置和网络设备 | |
JP4974078B2 (ja) | データ処理装置 | |
CN107360591A (zh) | 一种上报缓存状态报告的方法和设备 | |
WO2018121295A1 (zh) | 一种异构多协议栈方法、装置及系统 | |
EP2755363B1 (en) | Data-fast-distribution method and device | |
US9954982B2 (en) | Transmission apparatus and transmission method thereof | |
JP6851506B2 (ja) | データ分配方法、装置及びシステム | |
CN102316516A (zh) | 一种lte上行数据传输结构及控制方法 | |
US20210144589A1 (en) | Apparatus and methods for eht multi-band a-msdu operation | |
CN115396528A (zh) | 基于协议族的quic数据传输方法及装置 | |
US10769096B2 (en) | Apparatus and circuit for processing data | |
JP4201590B2 (ja) | データ通信装置、データ通信方法、データ通信プログラム及びデータ通信プログラムを記録した記録媒体 | |
JP2022059312A (ja) | 通信装置、制御方法およびプログラム | |
EP3832987A1 (en) | Data processing method and device | |
JP2022161122A (ja) | 通信装置及び通信方法 | |
US20230179545A1 (en) | Packet forwarding apparatus with buffer recycling and associated packet forwarding method | |
JP6618330B2 (ja) | 通信装置及びその方法、コンピュータプログラム | |
US7532644B1 (en) | Method and system for associating multiple payload buffers with multidata message | |
JP2021036649A (ja) | 通信装置、通信装置の制御方法およびプログラム | |
US20240089786A1 (en) | Method and device for communication | |
CN113132264B (zh) | 一种安全计算控制方法、数据包处理方法、装置及其系统 | |
JP7321913B2 (ja) | 通信装置、制御方法およびプログラム | |
JP2023031710A (ja) | 通信装置及びその制御方法、並びにプログラム | |
CN117951051A (zh) | 聚合小型远程存储器访问请求 | |
JP4216181B2 (ja) | 送信装置、中継装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230726 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240410 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240416 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240517 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20240614 |