JP2022049599A - 通信システム、デバイス及び通信方法 - Google Patents

通信システム、デバイス及び通信方法 Download PDF

Info

Publication number
JP2022049599A
JP2022049599A JP2020155881A JP2020155881A JP2022049599A JP 2022049599 A JP2022049599 A JP 2022049599A JP 2020155881 A JP2020155881 A JP 2020155881A JP 2020155881 A JP2020155881 A JP 2020155881A JP 2022049599 A JP2022049599 A JP 2022049599A
Authority
JP
Japan
Prior art keywords
communication
packet
information
controller
communication frame
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.)
Granted
Application number
JP2020155881A
Other languages
English (en)
Other versions
JP7527910B2 (ja
Inventor
学 渡邉
Manabu Watanabe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kioxia Corp
Original Assignee
Kioxia Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kioxia Corp filed Critical Kioxia Corp
Priority to JP2020155881A priority Critical patent/JP7527910B2/ja
Priority to TW110118615A priority patent/TWI797627B/zh
Priority to CN202110755904.5A priority patent/CN114268572B/zh
Priority to US17/461,844 priority patent/US20220086093A1/en
Publication of JP2022049599A publication Critical patent/JP2022049599A/ja
Application granted granted Critical
Publication of JP7527910B2 publication Critical patent/JP7527910B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/13Flow control; Congestion control in a LAN segment, e.g. ring or bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

【課題】一つの実施形態は、パケットを適切に転送できる通信システム、デバイス、及び通信方法を提供することを目的とする。【解決手段】一つの実施形態によれば、コントローラと複数のデバイスと通信路とを有する通信システムが提供される。通信路は、コントローラ及び複数のデバイスがリング状に接続されている。通信路は、差動シリアル信号のパケットを伝送可能である。通信路で時間的に連続して伝送されるパケットでありデバイスの通信能力と通信路の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化される。デバイスは、単位時間当たりの送信量をモニターする。デバイスは、モニターされた量が閾値を超える場合、受信した通信フレームに含まれるパケットに対するデータの挿入が不可である。デバイスは、モニターされた量が閾値以下である場合、受信した通信フレームに含まれるパケットに対するデータの挿入が可能である。【選択図】図2

Description

本実施形態は、通信システム、デバイス及び通信方法に関する。
コントローラと複数のデバイスとを有する通信システムでは、コントローラと複数のデバイスとが通信路を介してパケットを転送する。このとき、パケットを適切に転送することが望まれる。
国際公開第2011/037168号 特開2009-239656号公報 特開2014-59883号公報
一つの実施形態は、パケットを適切に転送できる通信システム、デバイス、及び通信方法を提供することを目的とする。
一つの実施形態によれば、コントローラと複数のデバイスと通信路とを有する通信システムが提供される。通信路は、コントローラ及び複数のデバイスがリング状に接続されている。通信路は、差動シリアル信号のパケットを伝送可能である。通信路で時間的に連続して伝送されるパケットでありデバイスの通信能力と通信路の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化される。デバイスは、単位時間当たりの送信量をモニターする。デバイスは、モニターされた量が閾値を超える場合、受信した通信フレームに含まれるパケットに対するデータの挿入が不可である。デバイスは、モニターされた量が閾値以下である場合、受信した通信フレームに含まれるパケットに対するデータの挿入が可能である。
図1は、第1の実施形態にかかる通信システムの構成を示す図である。 図2は、第1の実施形態にかかる通信システムの構成及び動作を示す図である。 図3は、第1の実施形態における各パケットの構成を示す図である。 図4は、第1の実施形態におけるデバイスから見て時系列的に変化する通信フレームを示す図である。 図5は、第1の実施形態における複数のデバイスを経由してコントローラへ伝送される通信フレームを示す図である。 図6は、第2の実施形態における通信システムの構成及び動作を示す図である。 図7は、第2の実施形態における通信システムの構成及び動作を示す図である。 図8は、第3の実施形態における通信システムの構成及び動作を示す図である。 図9は、第3の実施形態における通信システムの動作を示す図である。 図10は、第4の実施形態における通信システムの構成及び動作を示す図である。 図11は、第5の実施形態における通信システムの構成及び動作を示す図である。
以下に添付図面を参照して、実施形態にかかる通信システムを詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
(第1の実施形態)
第1の実施形態にかかる通信システムは、コントローラと複数のデバイスとを有し、コントローラと複数のデバイスとが通信路を介して接続される。通信システムは、コントローラと複数のデバイスとが通信路を介してパケットを転送する。例えばデバイスは、NAND型フラッシュメモリであり、通信システムは、SSD(Solid State Drive)である。
コントローラ及び複数のデバイスが通信路で接続された通信システムでは、大容量化・高速化が求められ、超広帯域(例えば、200GB/s以上)・大容量が要求されることがある。通信システムがGPU(Graphic Processing Unit)で扱うデータのストレージに応用される場合、GPUの処理能力を生かすためには、通信システムがGPUに対して大容量のデータを高速で授受できることが要求される。また通信システムがAI(Artifitial Intelligence)プロセッサの機械学習に応用される場合、AIプロセッサの機械学習を効率的に行うためには、通信システムがAIプロセッサに対して大容量のデータを高速で授受できることが要求される。
高速通信を行う際、ノイズ耐性に優れる差動信号を用いた通信が好ましい。差動信号を用いた通信によれば、受信時に差動信号間のノイズをキャンセル可能で、信号の受信処理を精度よく行うことできるため、通信の信頼性を容易に向上できる。
コントローラ及び複数のデバイスがピア・ツー・ピアの通信路で接続された通信システムにおいて、超広帯域・大容量を実現するために、コントローラ及び複数のデバイス間の通信路を多数本の通信線で構成する第1の技術が考えられる。第1の技術では、コントローラに膨大な数の接続ピンを設けることになる。例えば、各デバイスが2Gbps/pinのピンを20ピン有しており、8ビットのデータを同時に差動で送受信可能である場合、通信路の帯域として200GB/sを実現するためには、100個のデバイスを接続することになる。コントローラには、20×100=2000ピンを設けることになる。これにより、通信システムのコストが顕著に増大する可能性がある。すなわち、第1の技術は、現実的ではない。
また、コントローラ及び複数のデバイスがリング状の通信路で接続された通信システムを構成し、通信路を介して差動シリアル信号をコントローラが複数のデバイス間に対して排他的に伝送する第2の技術が考えられる。第2の技術では、各デバイスに高速シリアルI/Fを搭載し、複数のデバイスがコントローラに対してリング接続されるので、高速な通信を小ピンで実現可能であるようにも考えられる。
しかし、コントローラから複数のデバイスへの信号伝送が排他的であるため、コントローラから各デバイスへのデータ転送効率に限界があり、超広帯域・大容量の実現が困難である。
それに対して、コントローラ及び複数のデバイスがリング状の通信路で接続された通信システムにおいて、それぞれが固定データ長を有する複数のパケットを伝送し、各デバイスが所定の条件に応じて通信フレームに対してパケットを挿抜できるようにする第3の技術が考えられる。第3の技術では、通信路で時間的に連続して伝送されるパケットでありデバイスの通信能力と通信路の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化される。通信フレームとしてグループ化された複数のパケットに対して複数のデバイスがパケットを挿抜可能とすることで、コントローラから複数のデバイスへの信号伝送と複数のデバイスからコントローラへの信号伝送とが並行して行われ得る。これにより、通信路の帯域を連続的に埋めてそのパフォーマンスを向上させることができ、超広帯域・大容量の通信を実現できる。
第3の技術では、リング接続されるデバイスの数が通信フレームに含まれるパケットの個数以下であれば、送信したい情報があっても送信したい情報を含めることが可能なパケットが存在しないという状況は発生しないと考えられる。
しかし、リング接続されるデバイスの数が通信フレームに含まれるパケットの個数より多い場合、コントローラにリング接続された各デバイスのうち通信路の下流側のデバイスでは、送信したい情報があっても送信したい情報を含めることが可能なパケットが存在しない状況が発生し得る。
そこで、本実施形態では、第3の技術をベースにしつつ、各デバイスが単位時間あたりに送信するデータ量に帯域制限をかけることで、各デバイスの送信権を時間平均で均等に保証し、通信システムにおけるパケット転送の適切化を図る。
具体的には、通信システム1は、図1に示すように構成され得る。図1は、通信システム1の構成を示す図である。
通信システム1は、システムボード2、コネクタ3、コントローラ4、複数のメモリカード5(5-1~5-n)、及び複数の通信路8(8-1~8-n)を有する。
システムボード2は、例えば、超広帯域(例えば、200GB/s以上)・大容量に対応したアクセラレータ・ボードである。
コネクタ3は、システムボード2の一部に配され、他の装置(コンピュータ等)が接続され得る。コントローラ4は、コネクタインタフェース回路4aを有し、コネクタインタフェース回路4a及びコネクタ3を介して他の装置と情報を授受する。
メモリカード5-1~5-nは、基板7及び直列接続された複数のデバイス6(6-1~6-5)を有する。複数のデバイス6-1~6-5は、基板7上に実装され、基板7は、システムボード2上に実装されている。複数のデバイス6-1~6-5は、基板7の長手方向に沿って配列され得る。各デバイス6は、例えば、NAND型フラッシュメモリ等のメモリデバイスである。コントローラ4は、メモリインタフェース回路4bを有し、メモリインタフェース回路4b及び通信路8を介して複数のデバイス6-1~6-5に通信可能に接続されている。
コントローラ4は、メモリインタフェース回路4b及び通信路8を介して各デバイス6と情報を授受する。メモリインタフェース回路4bは、差動シリアル信号の送受信が可能なように構成されている。
複数の通信路8-1~8-nは、複数のメモリカード5-1~5-nに対応している。各通信路8は、メモリインタフェース回路4bと対応するメモリカード5に備えられた複数のデバイス6-1~6-5とをリング接続する。すなわち、コントローラ4とデバイス6-1の間、デバイス6-2~6-5間、デバイス6-5とコントローラ4との間、はそれぞれ通信路8で接続される。各通信路8は、差動シリアル信号を伝送可能である。
各デバイス6-1~6-5は、差動シリアル信号の送受信が可能なように構成されている。各デバイス6-1~6-5は、通信路8を介して複数のパケットを差動シリアル信号で送受信する。複数のパケットは、それぞれ、固定データ長を有する。通信路8で時間的に連続して伝送されるパケットでありデバイス6の通信能力と通信路8の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化される。通信フレームに含まれるパケットの個数は通信路8の帯域に相当し、各デバイスが通信フレームにパケットを挿入することは通信路8の帯域をそのパケットで埋めることに相当する。各デバイス6-1~6-4は、所定の条件を満たした場合、通信フレームに対するパケットの挿抜を実行する。このとき、通信フレームは、要求される帯域と各デバイスの帯域とに応じた個数のパケットを含み得る。
なお、通信システム1は、システムボード2が省略された構成であってもよい。また、コネクタインタフェース回路4aは、コネクタ3を介さず外部装置に直接接続されてもよい。また、システムボード2と基板7とは一体で形成されてもよい。
例えば、各デバイス6は、図2に示すように、受信部(Rx)61、送信部(Tx)62、プロトコル変換部(PCS)63、制御回路(cont)64、内部バス65、メモリ66を有する。図2は、通信システム1の構成及び動作を示す図であり、コントローラ4と1つのメモリカード5との接続構成を示している。制御回路64は、内部バス65を介してメモリ66にアクセス可能に接続されている。メモリ66は、NAND型フラッシュメモリ等の不揮発性メモリであってもよい。各デバイス6において、受信部(Rx)61、送信部(Tx)62、プロトコル変換部(PCS)63、制御回路(cont)64は、通信インターフェース回路として機能し得る。
ここで、通信路8の通信容量をCとし、各デバイス6の通信能力Cとすると、通信フレームに含まれるパケットの個数は、次の数式1を満たすNFRの最大値として与えられ得る。
FR≦C/C・・・数式1
例えば、通信システム1に要求される通信容量が200[Gbps]であり、コントローラ4に並列に接続されるメモリカード5の数n=4である場合、1つのメモリカードに要求される通信容量は200/4=50[Gbps]となる。要求される通信容量に応じて、通信路8の通信容量がC=56Gbpsであり、各デバイス6の通信能力Cが14Gbpsであれば、数式1を満たすNFRの最大値は4となる。この場合、通信フレームFRは、図3に示すように、4個のパケットPK(PK-1~PK-4)を含み得る。図3は、通信フレームFRの構成を示す図である。図3は、通信フレームFRが4個のパケットを含む構成を例示している。各パケットPK-1,PK-2,PK-3,PK-4は、固定データ長LPK-1,LPK-2,LPK-3,LPK-4を有する。各パケットPKの固定データ長LPKは次の数式2を満たす。
PK-1=LPK-2=LPK-3=LPK-4・・・数式2
各パケットPKは、ヘッダH及びペイロードPを含む。複数のパケットPK-1~PK-4においてヘッダHのデータ長が異なるものがあってもよく、ペイロードPのデータ長が異なるものがあってもよいが、各パケットPKの固定データ長LPKは、数式2を満たす。
ここで、通信フレームFRは、各デバイス6が埋めるべき帯域の観点から複数のパケットPKがグループ化されるものである。
このため、あるデバイス6-1を基準に見た場合、通信フレームFRは、図4に示すように1パケットPKごとに変わっていく。図4は、デバイスから見て時系列的に変化する通信フレームFRを示す図である。
タイミングt1において、通信フレームFR-1は、パケットPK-1~PK-4を含む。所定の条件を満たした場合、デバイス6-1は、タイミングt1でパケットPK-1の挿抜が可能であり、タイミングt2でパケットPK-2の挿抜が可能であり、・・・タイミングt4でパケットPK-4の挿抜が可能である。
タイミングt2において、通信フレームFR-2は、パケットPK-2~PK-5を含む。所定の条件を満たした場合、デバイス6-1は、タイミングt2でパケットPK-2の挿抜が可能であり、タイミングt3でパケットPK-3の挿抜が可能であり、・・・タイミングt5でパケットPK-5の挿抜が可能である。
タイミングt7において、通信フレームFR-7は、パケットPK-7~PK-10を含む。所定の条件を満たした場合、デバイス6-1は、タイミングt7でパケットPK-7の挿抜が可能であり、タイミングt8でパケットPK-8の挿抜が可能であり、・・・タイミングt10でパケットPK-10の挿抜が可能である。
また、複数のデバイス6-1~6-5及びコントローラ4を基準に見た場合、通信フレームFRは、図5に示すように、1UIごとに順次に伝搬されていく。図5は、複数のデバイス6-1~6-5を経由してコントローラ4へ伝送される通信フレームFRを示す図である。
タイミングt1において、通信フレームFR-1は、デバイス6-1に伝搬される。所定の条件を満たした場合、デバイス6-1は、タイミングt1でパケットPK-1の挿抜が可能であり、タイミングt2でパケットPK-2の挿抜が可能であり、・・・タイミングt4でパケットPK-4の挿抜が可能である。
タイミングt2において、通信フレームFR-1は、デバイス6-2に伝搬される。所定の条件を満たした場合、デバイス6-2は、タイミングt2でパケットPK-1の挿抜が可能であり、タイミングt3でパケットPK-2の挿抜が可能であり、・・・タイミングt5でパケットPK-4の挿抜が可能である。
タイミングt5において、通信フレームFR-1は、デバイス6-5に伝搬される。所定の条件を満たした場合、デバイス6-5は、タイミングt5でパケットPK-1の挿抜が可能であり、タイミングt6でパケットPK-2の挿抜が可能であり、・・・タイミングt8でパケットPK-4の挿抜が可能である。
タイミングt6において、通信フレームFR-1は、コントローラ4に伝搬される。コントローラ4は、タイミングt6で通信フレームFR-1を受信し始め、タイミングt10で通信フレームFR-1の受信を完了する。
図1に示すように、通信システム1では、各メモリカード5が例えば5個のデバイス6(6-1~6-5)を有する。図2に示すように、コントローラ4には、通信路8を介して、5個のデバイス6-1~6-5がリング接続されている。図3に示すように、通信フレームFRには、4個のパケットPK-1~PK-4が含まれている。リング接続されるデバイスの数(5個)は、通信フレームFRに含まれるパケットの個数(4個)より多くなっている。
図2に示すコントローラ4から通信路8を介して通信フレームFRが送信されると、各デバイス6-1~6-5は、所定の条件に応じて、通信フレームFRに対するパケットPKの挿抜を実行する。すなわち、数式1のように決められた個数NFRに応じて、図3に示すように構成された通信フレームFRをコントローラ4が通信路8に送信する。各デバイス6-1~6-5が順次並行的に通信フレームFR内のパケットPKを挿抜することで、要求される通信帯域を実現することができる。
各デバイス6は、通信路8を介して通信フレームFRを受信すると、通信フレームFRに含まれた複数のパケットPKのそれぞれのヘッダHを確認する。デバイス6は、パケットPKのヘッダHが送信先として自デバイスの識別情報を含むことに応じて、通信フレームFRからパケットPKを抜き取る。
各デバイス6は、単位時間あたりに送信するデータ量に帯域制限がかけられる。各デバイス6には、単位時間当たりの送信量に対する閾値Athが予め設定されている。閾値Athは、想定される通信路8の通信環境に対して適切なレベルで帯域制限がかかるように予め実験的に決められ得る。各デバイス6は、所定の周期(例えば、1個のパケットPKを受信する周期)ごとに、単位時間当たりの送信量をモニターする。単位時間当たりの送信量は、自デバイスから通信路8へ単位時間当たりに送信されるデータ転送量に依存した量である。
例えば、各デバイス6は、所定の周期ごとに、所定のモニター時間(例えば、100個のパケットPKを受信する時間)におけるデータ転送量をモニターする。各デバイス6は、所定のモニター時間において、通信路8で時間的に連続して総データ転送量DallのパケットPKが伝送されたことを特定する。各デバイス6は、所定のモニター時間において、自デバイスが合計でデータ転送量Dの情報をパケットPKに挿入したことを特定する。各デバイス6は、次の数式3に示す計算を行い、単位時間当たりの送信量Aを求める。単位時間当たりの送信量Aは、そのデバイス6が帯域を占有する割合を示している。
=D/Dall・・・数式3
あるいは、数式2が成り立つ場合、各デバイス6は、所定のモニター時間におけるパケット数をモニターする。各デバイス6は、所定のモニター時間において、通信路8で時間的に連続してNall個(例えば、100個)のパケットPKが伝送されたことを特定する。各デバイス6は、所定のモニター時間において、自デバイスがN個のパケットPKに情報を挿入したことを特定する。各デバイス6は、次の数式4に示す計算を行い、単位時間当たりの送信量Aを求める。
=N/Nall・・・数式4
各デバイス6は、モニターされた時間平均の送信量Aを閾値Athと比較する。時間平均の送信量Aと閾値Athとは、ともに、その単位が%であってもよい。
各デバイス6は、時間平均の送信量Aが閾値Athを超えていれば、通信路8の帯域を占有しすぎであるとして、送信権が与えられない。各デバイス6は、通信路8に対する送信権がないので、所定の情報をパケットPKに挿入できない。あるデバイス6から所定の情報をパケットPKに挿入できない状態が続くと、そのデバイス6でモニターされる時間平均の送信量Aは、時間的に徐々に低下していく。
各デバイス6は、時間平均の送信量Aが閾値Ath以下であれば、通信路8の帯域使用が適切に制限されたとして、送信権が与えられる。通信路8に対する送信権が与えられたことに応じて、各デバイス6は、自デバイスの識別情報を含むヘッダHに対応したパケットPKに対して、所定の情報を挿入することができる。あるいは、通信路8に対する送信権が与えられたことに応じて、デバイス6は、ヌルパケットであるパケットPKに対して、所定の情報を挿入することができる。ヌルパケットは、ペイロードPに有効データを含まず、ペイロードPが実質的に空(Null)であるパケットPKである。ヌルパケットは、ヘッダが送信先の情報を含まないか送信先が空(Null)であることが多い。デバイス6は、送信先の情報を含まないか送信先が空(Null)であるヘッダHに対応したペイロードPに対して、所定の情報を挿入することができる。
各デバイス6において、Rx61は物理層であり、コントローラ4又は前段のデバイス6から通信路8を介して通信フレームFRを受信する。Rx61は、受信した通信フレームFRに波形等化等の物理的な処理をしてPCS63へ供給する。PCS63は、物理層であるRx61から供給された通信フレームFRを、より上位層の通信フレームへプロトコル変換する。上位層は、通信層構造を大まかに2つに分けた場合における物理層より上位の層であり、例えば、コネクション層及びプロトコル変換層を含む。PCS63は、上位層に変換された通信フレームFRを制御回路64へ供給する。
制御回路64は、通信フレームFRに含まれる複数のパケットPKのそれぞれのヘッダHを確認する。制御回路64は、パケットPKのヘッダHが送信先として自デバイスの識別情報を含む場合、そのパケットPKのペイロードPから情報を抜き出す。抜き出された情報がライトコマンド及びライトデータである場合、制御回路64は、ライトコマンドに応じて、内部バス65経由でメモリ66にアクセスしてメモリ66にライトデータを書き込む。
制御回路64には、単位時間当たりの送信量に対する閾値Athが予め設定されている。制御回路64は、所定の周期で、単位時間当たりの送信量Aをモニターする。制御回路64は、時間平均の送信量Aが閾値Athを超えていれば、通信路8の帯域を占有しすぎであるとして、送信権が与えられないと判断する。各デバイス6は、時間平均の送信量Aが閾値Ath以下であれば、通信路8の帯域使用が適切に制限されたとして、送信権が与えられると判断する。
制御回路64は、送信権が与えられており且つそのパケットPKに含めるべき情報がある場合、そのパケットPKのヘッダHにおける送信先を自デバイスの識別情報からコントローラ4の識別情報に変換し、送信元をコントローラ4の識別情報から自デバイスの識別情報に変換し、そのパケットPKのペイロードPに所定の情報を含めて、通信フレームFRを更新する。所定の情報が受信済みの通信フレームFRに含まれるリードコマンドに対するリードデータである場合、制御回路64は、内部バス65経由でメモリ66から受けたリードデータをそのパケットPKのペイロードPに含める。
制御回路64は、送信権が与えられていないか、または、そのパケットPKに含めるべき所定の情報がない場合、そのパケットPKのヘッダH及びペイロードPの情報を消去して空(Null)の状態にして、通信フレームFRを更新する。制御回路64は、更新後の通信フレームFRを上位層の通信フレームFRとしてPCS63へ供給する。
PCS63は、上位層の通信フレームFRを受けると、上位層の通信フレームFRを物理層の通信フレームFRへプロトコル変換する。PCS63は、物理層の通信フレームFRをTx62へ供給する。Tx62は物理層であり、PCS63から供給された通信フレームFRに波形生成等の物理的な処理をして後段のデバイス6又はコントローラ4に向けて、通信路8へ送信する。
例えば、図2に示すユースケースが考えられる。通信システム1において、コントローラ4、デバイス6-1、デバイス6-2、デバイス6-3、デバイス6-4、デバイス6-5の識別情報を、それぞれ、ID0,ID1,ID2,ID3,ID4,ID5とする。各デバイス6-1~6-5には、単位時間当たりの送信量に対する閾値として20[%]が予め設定されている。
コントローラ4は、2個のパケットPK-1,PK-4のヘッダHが送信先の識別情報ID1,ID4を含み対応するペイロードPがそのデバイス6に送りたい情報を含み、2個のパケットPK-2,PK-3のヘッダHが空(Null)でありペイロードPが空(Null)である通信フレームFRを作成する。コントローラ4は、作成された通信フレームFRを通信路8へ送信する。デバイス6に送りたい情報は、送るべき情報又は送る必要がある情報を含む。
デバイス6-1は、コントローラ4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス6-1は、確認の結果、例えばパケットPK-1の送信先が自デバイス(ID1)であることを認識し、パケットPK-1から情報を抜き出す。また、デバイス6-1は、単位時間当たりの送信量をモニターし、モニター値25[%]を得る。デバイス6-1は、モニター値25[%]を閾値20[%]と比較し、モニター値25[%]が閾値20[%]を超えているので、送信権が与えられないと判断する。これに応じて、デバイス6-1は、送信したい情報があったとしても、パケットPK-1のヘッダHを空(Null)に書き換え、ペイロードPを空(Null)にして、通信フレームFRを更新する。デバイス6-1は、更新後の通信フレームFRを通信路8へ送信する。
デバイス6-2は、デバイス6-1から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス6-2は、確認の結果、送信先が自デバイス(ID2)であるパケットが存在しないことを認識する。また、デバイス6-2は、単位時間当たりの送信量をモニターし、モニター値16[%]を得る。デバイス6-2は、モニター値16[%]を閾値20[%]と比較し、モニター値16[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス6-2は、コントローラ4へ送りたい情報がある場合、ヌルパケットPK-1~PK-3のいずれかに情報を挿入可能である。デバイス6-2は、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID2)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス6-2は、更新後の通信フレームFRを通信路8へ送信する。
デバイス6-3は、デバイス6-2から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス6-3は、確認の結果、送信先が自デバイス(ID3)であるパケットが存在しないことを認識する。また、デバイス6-3は、単位時間当たりの送信量をモニターし、モニター値25[%]を得る。デバイス6-1は、モニター値25[%]を閾値20[%]と比較し、モニター値25[%]が閾値20[%]を超えているので、送信権が与えられないと判断する。これに応じて、デバイス6-3は、送信したい情報があったとしても、通信フレームFRを更新せずに通信路8へ送信する。
デバイス6-4は、デバイス6-3から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス6-4は、確認の結果、例えばパケットPK-4の送信先が自デバイス(ID4)であることを認識し、パケットPK-4から情報を抜き出す。また、デバイス6-4は、単位時間当たりの送信量をモニターし、モニター値17[%]を得る。デバイス6-4は、モニター値17[%]を閾値20[%]と比較し、モニター値17[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス6-4は、コントローラ4へ送りたい情報がある場合、パケットPK-4に情報を挿入可能である。デバイス6-4は、パケットPK-4のヘッダHの送信先をID0に送信元を自デバイス(ID4)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス6-4は、更新後の通信フレームFRを通信路8へ送信する。
デバイス6-5は、デバイス6-4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス6-5は、確認の結果、送信先が自デバイス(ID5)であるパケットが存在しないことを認識する。また、デバイス6-5は、単位時間当たりの送信量をモニターし、モニター値17[%]を得る。デバイス6-5は、モニター値17[%]を閾値20[%]と比較し、モニター値17[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス6-5は、コントローラ4へ送りたい情報がある場合、ヌルパケットPK-2~PK-3のいずれかに情報を挿入可能である。デバイス6-5は、パケットPK-2のヘッダHの送信先をID0に送信元を自デバイス(ID5)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス6-5は、更新後の通信フレームFRを通信路8へ送信する。
コントローラ4は、デバイス6-5から通信路8を介して更新後の通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。コントローラ4は、確認の結果に応じて、通信フレームFRに含まれた複数のパケットPK-1~PK-4のうちパケットPK-1,PK-2,PK-4がヌルパケットでないことを認識する。これに応じて、コントローラ4は、パケットPK-1,PK-2,PK-4に対して所定の受信処理を行い、パケットPK-1,PK-2,PK-4のペイロードPに含まれた情報を取り出して所定の処理を行う。通信フレームFRについてみると、4パケットPK-1~PK-4のうち3パケットPK-1,PK-2,PK-4に情報が含まれているので、帯域が有効活用されているといえる。
図2の例では、複数のデバイス6-1~6-5のうち、単位時間当たりの送信量(時間平均の送信量)が閾値を超えているデバイス6-1,6-3に送信権が与えられずその帯域使用が制限され、単位時間当たりの送信量が閾値以下であるデバイス6-2,6-4,6-5に送信権が与えられその帯域使用が許可される。
この後、デバイス6-1,6-3に送信権が与えられない状況が続くと、デバイス6-1,6-3でモニターされる時間平均の送信量が時間的に徐々に低下していく。デバイス6-1,6-3は、単位時間当たりの送信量が閾値以下になると、その帯域使用が適切に制限されたとして、送信権が与えられる。それと並行して、デバイス6-2,6-4,6-5のうち単位時間当たりの送信量が閾値を超えるデバイス6が出てくれば、そのデバイス6は、帯域を占有しすぎであるとして、送信権が与えられずその帯域使用が制限される。これが時間的に繰り返されていき、時間平均で見た場合に、複数のデバイス6-1~6-5に均等に送信権が与えられ得る。これにより、通信システム1は、全体として、そのパフォーマンスを効率的に向上できる。
以上のように、第1の実施形態では、通信システム1において、各デバイス6が単位時間あたりに送信するデータ量に帯域制限をかける。これにより、リング接続されるデバイス6の数(例えば、5個)が通信フレームFRに含まれるパケットの個数(例えば、4個)より多い場合に、各デバイス6の送信権を時間平均で均等に保証できる。この結果、通信システム1におけるパケット転送を適切化できるので、通信システム1は、全体として、パフォーマンスを効率的に向上できる。
(第2の実施形態)
次に、第2の実施形態にかかる通信システム101について説明する。以下では、第1の実施形態と異なる部分を中心に説明する。
第1の実施形態では、帯域制限のための閾値Athが固定的に各デバイスに設定される場合について例示されているが、コントローラ4が外部の装置から受けるコマンド要求の頻度などに応じて各通信路8における通信環境が動的に変化することがある。各通信路8における通信トラフィックが高いときに、閾値が低いままであると有効に帯域制限が働かない可能性がある。各通信路8における通信トラフィックが低いときに、閾値が高いままであると帯域制限が効きすぎてパフォーマンスが低下する可能性がある。このことを考慮し、第2の実施形態では、帯域制限のための閾値Athを動的に変更できるようにする。
具体的には、図6に示すように、通信システム101では、各メモリカード105が例えば5個のデバイス106(106-1~106-5)を有する。図6は、第2の実施形態における通信システム101の構成及び動作を示す図である。コントローラ104には、通信路8を介して、5個のデバイス106-1~106-5がリング接続されている。通信フレームFRには、4個のパケットPK-1~PK-4が含まれている(図3参照)。リング接続されるデバイスの数(5個)は、通信フレームFRに含まれるパケットの個数(4個)より多くなっている。
コントローラ104は、各パケットPKのヘッダHが閾値を示す情報を含むような通信フレームFRを作成して通信路8へ送信する。各デバイス106は、受信した通信フレームFRに含まれるパケットPKにおけるヘッダHに格納された情報に応じて、閾値Athを取得する。
例えば、図6に示すユースケースが考えられる。通信システム101において、コントローラ104、デバイス106-1、デバイス106-2、デバイス106-3、デバイス106-4、デバイス106-5の識別情報を、それぞれ、ID0,ID1,ID2,ID3,ID4,ID5とする。初期状態において、各デバイス106-1~106-5には、単位時間当たりの送信量に対する閾値は、設定されていない。
コントローラ104は、現在の通信環境に応じて、単位時間当たりの送信量に対する閾値を20[%]に決定する。コントローラ104は、2個のパケットPK-1,PK-4のヘッダHが送信先の識別情報ID1,ID4と閾値20[%]の情報とを含み対応するペイロードPがそのデバイス106に送りたい情報を含み、2個のパケットPK-2,PK-3のヘッダHが閾値20[%]の情報を含むとともにそれ以外について空(Null)でありペイロードPが空(Null)である通信フレームFRを作成する。コントローラ104は、作成された通信フレームFRを通信路8へ送信する。
デバイス106-1は、コントローラ104から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-1は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス106-1は、確認の結果、例えばパケットPK-1の送信先が自デバイス(ID1)であることを認識し、パケットPK-1から情報を抜き出す。また、デバイス106-1は、単位時間当たりの送信量をモニターし、モニター値27[%]を得る。デバイス6-1は、モニター値27[%]を閾値20[%]と比較し、モニター値27[%]が閾値20[%]を超えているので、送信権が与えられないと判断する。これに応じて、デバイス106-1は、送信したい情報があったとしても、パケットPK-1のヘッダHに閾値20[%]の情報を残しつつそれ以外を空(Null)に書き換え、ペイロードPを空(Null)にして、通信フレームFRを更新する。デバイス106-1は、更新後の通信フレームFRを通信路8へ送信する。
デバイス106-2は、デバイス106-1から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-2は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス106-2は、確認の結果、送信先が自デバイス(ID2)であるパケットが存在しないことを認識する。また、デバイス106-2は、単位時間当たりの送信量をモニターし、モニター値16[%]を得る。デバイス106-2は、モニター値16[%]を閾値20[%]と比較し、モニター値16[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス106-2は、コントローラ104へ送りたい情報がある場合、ヌルパケットPK-1~PK-3のいずれかに情報を挿入可能である。デバイス106-2は、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID2)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス106-2は、更新後の通信フレームFRを通信路8へ送信する。
デバイス106-3は、デバイス106-2から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-3は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス106-3は、確認の結果、送信先が自デバイス(ID3)であるパケットが存在しないことを認識する。また、デバイス106-3は、単位時間当たりの送信量をモニターし、モニター値27[%]を得る。デバイス106-3は、モニター値27[%]を閾値20[%]と比較し、モニター値27[%]が閾値20[%]を超えているので、送信権が与えられないと判断する。これに応じて、デバイス106-3は、送信したい情報があったとしても、通信フレームFRを更新せずに通信路8へ送信する。
デバイス106-4は、デバイス106-3から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-4は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス106-4は、確認の結果、例えばパケットPK-4の送信先が自デバイス(ID4)であることを認識し、パケットPK-4から情報を抜き出す。また、デバイス106-4は、単位時間当たりの送信量をモニターし、モニター値15[%]を得る。デバイス106-4は、モニター値15[%]を閾値20[%]と比較し、モニター値15[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス106-4は、コントローラ104へ送りたい情報がある場合、パケットPK-4に情報を挿入可能である。デバイス106-4は、パケットPK-4のヘッダHの送信先をID0に送信元を自デバイス(ID4)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス106-4は、更新後の通信フレームFRを通信路8へ送信する。
デバイス106-5は、デバイス106-4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-5は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス106-5は、確認の結果、送信先が自デバイス(ID5)であるパケットが存在しないことを認識する。また、デバイス106-5は、単位時間当たりの送信量をモニターし、モニター値15[%]を得る。デバイス106-5は、モニター値15[%]を閾値20[%]と比較し、モニター値15[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス106-5は、コントローラ104へ送りたい情報がある場合、ヌルパケットPK-2~PK-3のいずれかに情報を挿入可能である。デバイス106-5は、パケットPK-2のヘッダHの送信先をID0に送信元を自デバイス(ID5)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス106-5は、更新後の通信フレームFRを通信路8へ送信する。
コントローラ104は、デバイス106-5から通信路8を介して更新後の通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。コントローラ104は、確認の結果に応じて、通信フレームFRに含まれた複数のパケットPK-1~PK-4のうちパケットPK-1,PK-2,PK-4がヌルパケットでないことを認識する。これに応じて、コントローラ104は、パケットPK-1,PK-2,PK-4に対して所定の受信処理を行い、パケットPK-1,PK-2,PK-4のペイロードPに含まれた情報を取り出して所定の処理を行う。
例えば、図7に示すユースケースが考えられる。図7は、通信システム101の動作を示す図である。コントローラ104は、現在の通信環境に応じて(例えば、図6に比べて通信トラフィックが高くなったことに応じて)、単位時間当たりの送信量に対する閾値を25[%]に決定する。コントローラ104は、2個のパケットPK-1,PK-4のヘッダHが送信先の識別情報ID1,ID3と閾値25[%]の情報とを含み対応するペイロードPがそのデバイス106に送りたい情報を含み、2個のパケットPK-2,PK-3のヘッダHが閾値25[%]の情報を含むとともにそれ以外について空(Null)でありペイロードPが空(Null)である通信フレームFRを作成する。コントローラ104は、作成された通信フレームFRを通信路8へ送信する。
デバイス106-1は、コントローラ104から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-1は、確認の結果、閾値25[%]の情報を取得する。それとともに、デバイス106-1は、確認の結果、例えばパケットPK-1の送信先が自デバイス(ID1)であることを認識し、パケットPK-1から情報を抜き出す。また、デバイス106-1は、単位時間当たりの送信量をモニターし、モニター値22[%]を得る。デバイス6-1は、モニター値22[%]を閾値25[%]と比較し、モニター値22[%]が閾値25[%]を超えているので、送信権が与えられたと判断する。送信権が与えられたので、デバイス106-1は、コントローラ104へ送りたい情報がある場合、パケットPK-1に情報を挿入可能である。デバイス106-1は、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID1)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス106-1は、更新後の通信フレームFRを通信路8へ送信する。
デバイス106-2は、デバイス106-1から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-2は、確認の結果、閾値25[%]の情報を取得する。それとともに、デバイス106-2は、確認の結果、送信先が自デバイス(ID2)であるパケットが存在しないことを認識する。また、デバイス106-2は、単位時間当たりの送信量をモニターし、モニター値27[%]を得る。デバイス106-2は、モニター値27[%]を閾値25[%]と比較し、モニター値27[%]が閾値25[%]を超えているので、送信権が与えられないと判断する。これに応じて、デバイス106-2は、送信したい情報があったとしても、通信フレームFRを更新せずに通信路8へ送信する。
デバイス106-3は、デバイス106-2から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-3は、確認の結果、閾値25[%]の情報を取得する。それとともに、デバイス106-3は、確認の結果、例えばパケットPK-4の送信先が自デバイス(ID3)であることを認識し、パケットPK-4から情報を抜き出す。また、デバイス106-3は、単位時間当たりの送信量をモニターし、モニター値22[%]を得る。デバイス106-3は、モニター値22[%]を閾値25[%]と比較し、モニター値22[%]が閾値25[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス106-3は、コントローラ104へ送りたい情報がある場合、パケットPK-4に情報を挿入可能である。デバイス106-3は、パケットPK-4のヘッダHの送信先をID0に送信元を自デバイス(ID3)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス106-3は、更新後の通信フレームFRを通信路8へ送信する。
デバイス106-4は、デバイス106-3から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-4は、確認の結果、閾値25[%]の情報を取得する。それとともに、デバイス106-4は、確認の結果、送信先が自デバイス(ID4)であるパケットが存在しないことを認識する。また、デバイス106-4は、単位時間当たりの送信量をモニターし、モニター値28[%]を得る。デバイス106-4は、モニター値28[%]を閾値25[%]と比較し、モニター値28[%]が閾値25[%]を超えているので、送信権が与えられないと判断する。これに応じて、デバイス106-4は、送信したい情報があったとしても、通信フレームFRを更新せずに通信路8へ送信する。
デバイス106-5は、デバイス106-4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス106-5は、確認の結果、閾値25[%]の情報を取得する。それとともに、デバイス106-5は、確認の結果、送信先が自デバイス(ID5)であるパケットが存在しないことを認識する。また、デバイス106-5は、単位時間当たりの送信量をモニターし、モニター値24[%]を得る。デバイス106-5は、モニター値24[%]を閾値25[%]と比較し、モニター値24[%]が閾値25[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス106-5は、コントローラ104へ送りたい情報がある場合、ヌルパケットPK-2~PK-3のいずれかに情報を挿入可能である。デバイス106-5は、パケットPK-2のヘッダHの送信先をID0に送信元を自デバイス(ID5)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス106-5は、更新後の通信フレームFRを通信路8へ送信する。
コントローラ104は、デバイス106-5から通信路8を介して更新後の通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。コントローラ104は、確認の結果に応じて、通信フレームFRに含まれた複数のパケットPK-1~PK-4のうちパケットPK-1,PK-2,PK-4がヌルパケットでないことを認識する。これに応じて、コントローラ104は、パケットPK-1,PK-2,PK-4に対して所定の受信処理を行い、パケットPK-1,PK-2,PK-4のペイロードPに含まれた情報を取り出して所定の処理を行う。
以上のように、第2の実施形態では、コントローラ104が通信環境に応じた閾値Athの情報を設定してヘッダHに含めたパケットPKを送信し、各デバイス106がパケットPKのヘッダHを確認して閾値Athを取得する。帯域制限のための閾値Athを動的に変更できるので、通信システム1は、現在の通信環境に応じて、各デバイス106の時間平均の送信量に対して適切に帯域制限をかけることができる。これにより、通信システム101は、通信環境に応じて、パフォーマンスを効率的に向上できる。
(第3の実施形態)
次に、第3の実施形態にかかる通信システム201について説明する。以下では、第1の実施形態及び第2の実施形態と異なる部分を中心に説明する。
第1の実施形態及び第2の実施形態では、リング接続された複数のデバイスのうち通信路の下流側のデバイスで送信したい情報を挿入可能なパケットが存在しないことがあるという状況に対して、帯域制限で抑制を図っている。第3の実施形態では、そのような状況に対して、帯域制限に代えて、情報の優先度を考慮した優先制御により抑制を図る。
具体的には、図8に示すように、通信システム201では、各メモリカード205が例えば5個のデバイス206(206-1~206-5)を有する。図8は、第3の実施形態における通信システム201の構成及び動作を示す図である。コントローラ204には、通信路8を介して、5個のデバイス206-1~206-5がリング接続されている。通信フレームFRには、4個のパケットPK-1~PK-4が含まれている(図3参照)。リング接続されるデバイスの数(5個)は、通信フレームFRに含まれるパケットの個数(4個)より多くなっている。
各デバイス206は、受信された通信フレームFR内に送信先が自デバイスであるパケットが存在する場合、そのパケットに対して情報を挿抜できる。各デバイス206は、パケットPKのペイロードPに情報を挿入する際に、その情報の優先度を示す情報をパケットPKのヘッダHに含めて通信フレームFRを更新し、更新後の通信フレームFRを通信路8へ送信する。
各デバイス206は、受信された通信フレームFR内に送信先が自デバイスであるパケットが存在せず、通信フレームFR内にヌルパケットが存在しない場合、通信フレームFR内に優先度を有するパケットが存在するか確認する。各デバイス206は、受信した通信フレームFRに含まれるパケットにおけるペイロードに格納された情報の優先度を示す情報がヘッダに格納されている場合、送信すべき情報の優先度がペイロードの情報の優先度より高いことに応じて、受信した通信フレームFRに含まれるパケットを、送信すべき情報の優先度がペイロードに格納されその優先度がヘッダに格納されたパケットに置換する。
すなわち、各デバイス206は、受信した通信フレームFR内の少なくとも一部のパケットPKのヘッダHに優先度を示す情報が含まれていれば、その優先度を自デバイスの送りたい情報の優先度と比較する。各デバイス206は、その優先度が自デバイスの送りたい情報の優先度より低い場合、そのパケットPKのヘッダH及びペイロードPを抜き出してそのまま保持する。それとともに、各デバイス206は、そのパケットPKのヘッダHの送信先をコントローラ204のIDに送信元を自デバイスのIDに書き換え、かつヘッダHに優先度を示す情報を含め、そのパケットPKのペイロードPに自デバイスの送りたい情報を含めて通信フレームFRを更新し、更新後の通信フレームFRを通信路8へ送信する。
例えば、図8に示すユースケースが考えられる。通信システム201において、コントローラ204、デバイス206-1、デバイス206-2、デバイス206-3、デバイス206-4、デバイス206-5の識別情報を、それぞれ、ID0,ID1,ID2,ID3,ID4,ID5とする。コントローラ204は、4個のパケットPK-1,PK-2,PK-3,PK-4のヘッダHが送信先の識別情報ID1,ID2,ID3,ID4を含みペイロードPがデバイス206に送りたい情報を含む通信フレームFRを作成する。コントローラ204は、作成された通信フレームFRを通信路8へ送信する。
デバイス206-1は、コントローラ204から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-1は、確認の結果、パケットPK-1の送信先が自デバイス(ID1)であることを認識し、パケットPK-1から情報を抜き出す。また、デバイス206-1は、コントローラ204へ送りたい情報がある場合、パケットPK-1のヘッダHの送信先をコントローラ204(ID0)に送信元を自デバイス(ID1)に書き換え、ヘッダHに優先度PR1の情報を含め、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。優先度PR1は、通常の情報に付与される優先度である。デバイス206-1は、更新後の通信フレームFRを通信路8へ送信する。
デバイス206-2は、デバイス206-1から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-2は、確認の結果、パケットPK-2の送信先が自デバイス(ID2)であることを認識し、パケットPK-2から情報を抜き出す。また、デバイス206-2は、コントローラ204へ送りたい情報がある場合、パケットPK-2のヘッダHの送信先をコントローラ204(ID0)に送信元を自デバイス(ID2)に書き換え、ヘッダHに優先度PR1の情報を含め、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス206-2は、更新後の通信フレームFRを通信路8へ送信する。
デバイス206-3は、デバイス206-2から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-3は、確認の結果、パケットPK-3の送信先が自デバイス(ID3)であることを認識し、パケットPK-3から情報を抜き出す。また、デバイス206-3は、コントローラ204へ送りたい情報がある場合、パケットPK-3のヘッダHの送信先をコントローラ204(ID0)に送信元を自デバイス(ID3)に書き換え、ヘッダHに優先度PR1の情報を含め、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス206-3は、更新後の通信フレームFRを通信路8へ送信する。
デバイス206-4は、デバイス206-3から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-4は、確認の結果、パケットPK-4の送信先が自デバイス(ID4)であることを認識し、パケットPK-4から情報を抜き出す。また、デバイス206-4は、コントローラ204へ送りたい情報がある場合、パケットPK-4のヘッダHの送信先をコントローラ204(ID0)に送信元を自デバイス(ID4)に書き換え、ヘッダHに優先度PR1の情報を含め、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス206-4は、更新後の通信フレームFRを通信路8へ送信する。
デバイス206-5は、デバイス206-4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-5は、確認の結果、通信フレームFR内に送信先が自デバイス(ID5)であるパケットが存在せず、通信フレームFR内にヌルパケットが存在しないことを認識する。また、デバイス206-5は、コントローラ204へ送りたい情報がある場合、通信フレームFR内に優先度を有するパケットが存在するか確認する。デバイス206-5は、確認の結果、パケットPK-1~PK-4の優先度がそれぞれPR1であることを認識する。デバイス206-5は、自デバイスが送りたい情報の優先度をPR2に決定する。
優先度PR2は、緊急時の情報に付与される通常より高い優先度である。緊急時の情報は、例えば、コントローラ204からの再送要求に応じて送信すべき情報でもよいし、自デバイス内で検知された異常であってコントローラ204へ通知すべき異常の情報であってもよい。
デバイス206-5は、優先度PR1と優先度PR2とを比較し、優先度PR1が優先度PR2より低いので、パケットPK-1のヘッダH及びペイロードPの情報INFを抜き出して自デバイス内にそのまま保持する。情報INFにおけるヘッダHは、送信先がコントローラ204(ID0)であることを示す情報、送信元がデバイス206-1(ID1)であることを示す情報、優先度PR1を示す情報を含む。情報INFにおけるペイロードPは、デバイス206-1がコントローラ204に送りたい情報を含む。
それとともに、デバイス206-5は、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID5)に書き換え、パケットPK-1のヘッダHに優先度PR2を示す情報を含め、そのパケットPKのペイロードPに自デバイスの送りたい情報を含めて通信フレームFRを更新し、更新後の通信フレームFRを通信路8へ送信する。
コントローラ204は、デバイス206-5から通信路8を介して更新後の通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。コントローラ204は、確認の結果に応じて、通信フレームFRに含まれた各パケットPK-1~PK-4に対して所定の受信処理を行い、各パケットPK-1~PK-4のペイロードPに含まれた情報を取り出して所定の処理を行う。
また、コントローラ204は、確認の結果に応じて、通信フレームFRに含まれた複数のパケットPK-1~PK-4のうちパケットPK-1が通常より優先度の高いパケットであると認識する。これに応じて、コントローラ204は、デバイス206-5が未送信の他デバイスの情報を保持している可能性があるとして、図9に示すように、1つのパケットPK(例えば、パケットPK-3)のヘッダHに送信先として識別情報ID5を指定した通信フレームFRを作成する。図9は、通信システム201の動作を示す図である。コントローラ204は、4個のパケットPK-11,PK-12,PK-13,PK-14のヘッダHが送信先の識別情報ID5,ID2,ID3,ID4を含みペイロードPがデバイス6に送りたい情報を含む通信フレームFRを作成する。送信先がデバイス206-5(ID5)であるパケットPK-11については、デバイス206-5に送りたい情報がない場合、ペイロードPがダミーの情報を含んでいてもよい。コントローラ204は、作成された通信フレームFRを通信路8へ送信する。
デバイス206-1は、コントローラ204から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-1は、確認の結果、通信フレームFR内に送信先が自デバイス(ID1)であるパケットが存在せず、通信フレームFR内にヌルパケットが存在しないことを認識する。また、デバイス206-1は、コントローラ204へ送りたい情報がある場合、通信フレームFR内に優先度を有するパケットが存在するか確認する。デバイス206-1は、確認の結果、優先度を有するパケットが存在しないことを認識する。これに応じて、デバイス206-1は、送信したい情報があったとしても、通信フレームFRを更新せずに通信路8へ送信する。
デバイス206-2は、デバイス206-1から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-2は、確認の結果、パケットPK-12の送信先が自デバイス(ID2)であることを認識し、パケットPK-12から情報を抜き出す。また、デバイス206-2は、コントローラ204へ送りたい情報がある場合、パケットPK-12のヘッダHの送信先をコントローラ204(ID0)に送信元を自デバイス(ID2)に書き換え、ヘッダHに優先度PR1の情報を含め、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス206-2は、更新後の通信フレームFRを通信路8へ送信する。
デバイス206-3は、デバイス206-2から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-3は、確認の結果、パケットPK-13の送信先が自デバイス(ID3)であることを認識し、パケットPK-13から情報を抜き出す。また、デバイス206-3は、コントローラ204へ送りたい情報がある場合、パケットPK-13のヘッダHの送信先をコントローラ204(ID0)に送信元を自デバイス(ID3)に書き換え、ヘッダHに優先度PR1の情報を含め、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス206-3は、更新後の通信フレームFRを通信路8へ送信する。
デバイス206-4は、デバイス206-3から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-4は、確認の結果、パケットPK-14の送信先が自デバイス(ID4)であることを認識し、パケットPK-14から情報を抜き出す。また、デバイス206-4は、コントローラ204へ送りたい情報がある場合、パケットPK-14のヘッダHの送信先をコントローラ204(ID0)に送信元を自デバイス(ID4)に書き換え、ヘッダHに優先度PR1の情報を含め、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス206-4は、更新後の通信フレームFRを通信路8へ送信する。
デバイス206-5は、デバイス206-4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス206-5は、確認の結果、パケットPK-11の送信先が自デバイス(ID5)であることを認識し、パケットPK-11から情報を抜き出す。デバイス206-5は、抜き出された情報がダミーの情報である場合、その情報を破棄してもよい。また、デバイス206-5は、保持している情報INFがあるので、送りたい情報があっても、保持している情報INFを優先してパケットPK-11に挿入する。デバイス206-5は、パケットPK-11のヘッダHを情報INFにおけるヘッダHで書き換え、パケットPK-11のペイロードPを情報INFにおけるペイロードPで書き換えて、通信フレームFRを更新する。デバイス206-5は、更新後の通信フレームFRを通信路8へ送信する。
コントローラ204は、デバイス206-5から通信路8を介して更新後の通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。コントローラ204は、確認の結果に応じて、通信フレームFRに含まれた各パケットPK-11~PK-14に対して所定の受信処理を行い、各パケットPK-11~PK-14のペイロードPに含まれた情報を取り出して所定の処理を行う。
以上のように、第3の実施形態では、各デバイス206は、受信した通信フレームFR内に自デバイスが送りたい情報の優先度より低い優先度を有するパケットPKが含まれる場合、そのパケットPKの情報に代えて、自デバイスが送りたい情報及びその優先度を含むパケットPKをコントローラ204へ送信する。これにより、リング接続されるデバイス206の数(例えば、5個)が通信フレームFRに含まれるパケットの個数(例えば、4個)より多い場合に、リング接続の下流側のデバイス206が優先度の高い情報を優先度の低い情報に代えて送信することができる。この結果、優先度の高い情報に対して、帯域を保証でき、通信システム201におけるパケット転送を適切化できる。
なお、図8に示すユースケースにおいて、デバイス206-5は、情報INFを保持せずに破棄してもよい。この場合、コントローラ204は、デバイス206-1から受信されるべき情報INFが所定時間受信されないことに応じて、デバイス206-1に再送要求を出してもよい。これにより、情報INFがデバイス206-5で破棄された場合に、デバイス206-1からコントローラ204へ確実に情報INFが再送され得る。
(第4の実施形態)
次に、第4の実施形態にかかる通信システム301について説明する。以下では、第1の実施形態~第3の実施形態と異なる部分を中心に説明する。
第4の実施形態では、第1の実施形態と第3の実施形態とが組み合わされる。通信システムにおいて、原則として、固定的な閾値を用いた帯域制限が行われながら、例外的に、優先度を考慮した優先制御が行われる。
具体的には、図10に示すように、通信システム301では、各メモリカード305が例えば5個のデバイス306(306-1~306-5)を有する。図10は、第4の実施形態における通信システム301の構成及び動作を示す図である。コントローラ304には、通信路8を介して、5個のデバイス306-1~306-5がリング接続されている。通信フレームFRには、4個のパケットPK-1~PK-4が含まれている(図3参照)。リング接続されるデバイスの数(5個)は、通信フレームFRに含まれるパケットの個数(4個)より多くなっている。
各デバイス306は、単位時間あたりに送信するデータ量に帯域制限がかけられる。各デバイス306には、単位時間当たりの送信量に対する閾値Athが予め設定されている。各デバイス306は、所定の周期ごとに、単位時間当たりの送信量をモニターする。各デバイス306は、モニターされた時間平均の送信量Aを閾値Athと比較する。
各デバイス306は、時間平均の送信量Aが閾値Ath以下であれば、送信権が与えられ、所定の情報をパケットPKに挿入できる。
各デバイス306は、時間平均の送信量Aが閾値Athを超えていれば、原則として、送信権が与えられない。各デバイス306は、通信フレームFR内に自デバイスの送りたい情報の優先度より低い優先度を有するパケットが存在するか確認する。各デバイス306は、自デバイスの送りたい情報の優先度より低い優先度を有するパケットが存在すれば、例外的に、送信権が与えられる。これに応じて、各デバイス306は、低い優先度を有するパケットを、自デバイスの送りたい情報がペイロードに格納されその優先度がヘッダに格納されたパケットに置換する。すなわち、各デバイス306は、そのパケットPKのヘッダH及びペイロードPを抜き出してそのまま保持する。それとともに、各デバイス306は、そのパケットPKのヘッダHに優先度を示す情報を含め、そのパケットPKのペイロードPに自デバイスの送りたい情報を含めて通信フレームFRを更新し、更新後の通信フレームFRを通信路8へ送信する。
例えば、図10に示すユースケースが考えられる。通信システム301において、コントローラ304、デバイス306-1、デバイス306-2、デバイス306-3、デバイス306-4、デバイス306-5の識別情報を、それぞれ、ID0,ID1,ID2,ID3,ID4,ID5とする。各デバイス306-1~306-5には、単位時間当たりの送信量に対する閾値として20[%]が予め設定されている。コントローラ304は、4個のパケットPK-1,PK-2,PK-3,PK-4のヘッダHが送信先の識別情報ID1,ID2,ID3,ID4を含みペイロードPがデバイス306に送りたい情報を含む通信フレームFRを作成する。コントローラ304は、作成された通信フレームFRを通信路8へ送信する。
デバイス306-1は、コントローラ304から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス306-1は、確認の結果、パケットPK-1の送信先が自デバイス(ID1)であることを認識し、パケットPK-1から情報を抜き出す。また、デバイス306-1は、単位時間当たりの送信量をモニターし、モニター値17[%]を得る。デバイス306-1は、モニター値17[%]を閾値20[%]と比較し、モニター値17[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス306-1は、コントローラ304へ送りたい情報がある場合、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID1)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス306-1は、更新後の通信フレームFRを通信路8へ送信する。
デバイス306-2は、デバイス306-1から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス306-2は、確認の結果、パケットPK-2の送信先が自デバイス(ID2)であることを認識し、パケットPK-2から情報を抜き出す。また、デバイス306-2は、単位時間当たりの送信量をモニターし、モニター値19[%]を得る。デバイス306-2は、モニター値19[%]を閾値20[%]と比較し、モニター値19[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス306-2は、コントローラ304へ送りたい情報がある場合、パケットPK-2のヘッダHの送信先をID0に送信元を自デバイス(ID2)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス306-2は、更新後の通信フレームFRを通信路8へ送信する。
デバイス306-3は、デバイス306-2から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス306-3は、確認の結果、パケットPK-3の送信先が自デバイス(ID3)であることを認識し、パケットPK-3から情報を抜き出す。また、デバイス306-3は、単位時間当たりの送信量をモニターし、モニター値19[%]を得る。デバイス306-3は、モニター値19[%]を閾値20[%]と比較し、モニター値19[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス306-3は、コントローラ304へ送りたい情報がある場合、パケットPK-3のヘッダHの送信先をID0に送信元を自デバイス(ID3)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス306-3は、更新後の通信フレームFRを通信路8へ送信する。
デバイス306-4は、デバイス306-3から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス306-4は、確認の結果、パケットPK-4の送信先が自デバイス(ID4)であることを認識し、パケットPK-4から情報を抜き出す。また、デバイス306-4は、単位時間当たりの送信量をモニターし、モニター値17[%]を得る。デバイス306-4は、モニター値17[%]を閾値20[%]と比較し、モニター値17[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス306-4は、コントローラ304へ送りたい情報がある場合、パケットPK-4のヘッダHの送信先をID0に送信元を自デバイス(ID4)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス306-4は、更新後の通信フレームFRを通信路8へ送信する。
デバイス306-5は、デバイス306-4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス306-5は、確認の結果、通信フレームFR内に送信先が自デバイス(ID5)であるパケットが存在せず、通信フレームFR内にヌルパケットが存在しないことを認識する。また、デバイス306-5は、単位時間当たりの送信量をモニターし、モニター値28[%]を得る。デバイス306-5は、モニター値28[%]を閾値20[%]と比較し、モニター値28[%]が閾値20[%]を超えているので、原則として、送信権が与えられないと判断する。
デバイス306-5は、コントローラ304へ送りたい情報がある場合、通信フレームFR内に低い優先度を有するパケットが存在するか確認する。デバイス306-5は、確認の結果、自デバイスが送りたい情報の優先度PR2よりパケットPK-1~PK-4の優先度PR1が低いので、例外的に、送信権が与えられる。これに応じて、デバイス306-5は、パケットPK-1のヘッダH及びペイロードPの情報INFを抜き出してそのまま保持する。情報INFにおけるヘッダHは、送信先がコントローラ304(ID0)であることを示す情報、送信元がデバイス306-1(ID1)であることを示す情報、優先度PR1を示す情報を含む。情報INFにおけるペイロードPは、デバイス306-1がコントローラ304に送りたい情報を含む。
それとともに、デバイス306-5は、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID5)に書き換え、パケットPK-1のヘッダHに優先度PR2を示す情報を含め、そのパケットPKのペイロードPに自デバイスの送りたい情報を含めて通信フレームFRを更新し、更新後の通信フレームFRを通信路8へ送信する。
コントローラ304は、デバイス306-5から通信路8を介して更新後の通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。コントローラ304は、確認の結果に応じて、通信フレームFRに含まれた各パケットPK-1~PK-4に対して所定の受信処理を行い、各パケットPK-1~PK-4のペイロードPに含まれた情報を取り出して所定の処理を行う。
これ以降、図2に示す動作と図9に示す動作とを組み合わせた動作が行われる。
以上のように、第4の実施形態では、通信システム301において、原則として、固定的な閾値を用いた帯域制限が行われながら、例外的に、優先度を考慮した優先制御が行われる。これにより、各デバイス306の送信権を時間平均で均等に保証できるとともに、優先度の高い情報に対して、帯域を保証できる。この結果、通信システム301におけるパケット転送を適切化できる。
(第5の実施形態)
次に、第5の実施形態にかかる通信システム401について説明する。以下では、第1の実施形態~第4の実施形態と異なる部分を中心に説明する。
第5の実施形態では、第2の実施形態と第3の実施形態とが組み合わされる。通信システムにおいて、原則として、動的な閾値を用いた帯域制限が行われながら、例外的に、優先度を考慮した優先制御が行われる。
具体的には、図11に示すように、通信システム401では、各メモリカード405が例えば5個のデバイス406(406-1~406-5)を有する。図11は、第5の実施形態における通信システム401の構成及び動作を示す図である。コントローラ404には、通信路8を介して、5個のデバイス406-1~406-5がリング接続されている。通信フレームFRには、4個のパケットPK-1~PK-4が含まれている(図3参照)。リング接続されるデバイスの数(5個)は、通信フレームFRに含まれるパケットの個数(4個)より多くなっている。
各デバイス406は、単位時間あたりに送信するデータ量に帯域制限がかけられる。コントローラ404は、各パケットPKのヘッダHが閾値を示す情報を含むような通信フレームFRを作成して通信路8へ送信する。各デバイス406は、受信した通信フレームFRに含まれるパケットPKにおけるヘッダHに格納された情報に応じて、閾値Athを取得する。
各デバイス406は、所定の周期ごとに、単位時間当たりの送信量をモニターする。各デバイス406は、モニターされた時間平均の送信量Aを閾値Athと比較する。
各デバイス406は、時間平均の送信量Aが閾値Ath以下であれば、送信権が与えられ、所定の情報をパケットPKに挿入できる。
各デバイス406は、時間平均の送信量Aが閾値Athを超えていれば、原則として、送信権が与えられない。各デバイス406は、通信フレームFR内に自デバイスの送りたい情報の優先度より低い優先度を有するパケットが存在するか確認する。各デバイス406は、自デバイスの送りたい情報の優先度より低い優先度を有するパケットが存在すれば、例外的に、送信権が与えられる。これに応じて、各デバイス406は、低い優先度を有するパケットを、自デバイスの送りたい情報がペイロードに格納されその優先度がヘッダに格納されたパケットに置換する。すなわち、各デバイス406は、そのパケットPKのヘッダH及びペイロードPを抜き出してそのまま保持する。それとともに、各デバイス406は、そのパケットPKのヘッダHに優先度を示す情報を含め、そのパケットPKのペイロードPに自デバイスの送りたい情報を含めて通信フレームFRを更新し、更新後の通信フレームFRを通信路8へ送信する。
例えば、図11に示すユースケースが考えられる。通信システム401において、コントローラ404、デバイス406-1、デバイス406-2、デバイス406-3、デバイス406-4、デバイス406-5の識別情報を、それぞれ、ID0,ID1,ID2,ID3,ID4,ID5とする。各デバイス406-1~406-5には、単位時間当たりの送信量に対する閾値として20[%]が予め設定されている。コントローラ304は、4個のパケットPK-1,PK-2,PK-3,PK-4のヘッダHが送信先の識別情報ID1,ID2,ID3,ID4を含みペイロードPがデバイス406に送りたい情報を含む通信フレームFRを作成する。コントローラ404は、作成された通信フレームFRを通信路8へ送信する。
デバイス406-1は、コントローラ404から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス406-1は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス406-1は、確認の結果、パケットPK-1の送信先が自デバイス(ID1)であることを認識し、パケットPK-1から情報を抜き出す。また、デバイス406-1は、単位時間当たりの送信量をモニターし、モニター値17[%]を得る。デバイス406-1は、モニター値17[%]を閾値20[%]と比較し、モニター値17[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス406-1は、コントローラ404へ送りたい情報がある場合、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID1)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス406-1は、更新後の通信フレームFRを通信路8へ送信する。
デバイス406-2は、デバイス306-1から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス406-2は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス406-2は、確認の結果、パケットPK-2の送信先が自デバイス(ID2)であることを認識し、パケットPK-2から情報を抜き出す。また、デバイス406-2は、単位時間当たりの送信量をモニターし、モニター値19[%]を得る。デバイス306-2は、モニター値19[%]を閾値20[%]と比較し、モニター値19[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス406-2は、コントローラ404へ送りたい情報がある場合、パケットPK-2のヘッダHの送信先をID0に送信元を自デバイス(ID2)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス406-2は、更新後の通信フレームFRを通信路8へ送信する。
デバイス406-3は、デバイス406-2から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス406-3は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス406-3は、確認の結果、パケットPK-3の送信先が自デバイス(ID3)であることを認識し、パケットPK-3から情報を抜き出す。また、デバイス406-3は、単位時間当たりの送信量をモニターし、モニター値19[%]を得る。デバイス306-3は、モニター値19[%]を閾値20[%]と比較し、モニター値19[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス406-3は、コントローラ404へ送りたい情報がある場合、パケットPK-3のヘッダHの送信先をID0に送信元を自デバイス(ID3)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス406-3は、更新後の通信フレームFRを通信路8へ送信する。
デバイス406-4は、デバイス406-3から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス406-4は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス406-4は、確認の結果、パケットPK-4の送信先が自デバイス(ID4)であることを認識し、パケットPK-4から情報を抜き出す。また、デバイス406-4は、単位時間当たりの送信量をモニターし、モニター値17[%]を得る。デバイス306-4は、モニター値17[%]を閾値20[%]と比較し、モニター値17[%]が閾値20[%]以下であるので、送信権が与えられたと判断する。送信権が与えられたので、デバイス406-4は、コントローラ404へ送りたい情報がある場合、パケットPK-4のヘッダHの送信先をID0に送信元を自デバイス(ID4)に書き換え、ペイロードPにその送りたい情報を含めて、通信フレームFRを更新する。デバイス406-4は、更新後の通信フレームFRを通信路8へ送信する。
デバイス406-5は、デバイス306-4から通信路8を介して通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。デバイス406-5は、確認の結果、閾値20[%]の情報を取得する。それとともに、デバイス406-5は、確認の結果、通信フレームFR内に送信先が自デバイス(ID5)であるパケットが存在せず、通信フレームFR内にヌルパケットが存在しないことを認識する。また、デバイス406-5は、単位時間当たりの送信量をモニターし、モニター値28[%]を得る。デバイス306-5は、モニター値28[%]を閾値20[%]と比較し、モニター値28[%]が閾値20[%]を超えているので、原則として、送信権が与えられないと判断する。
デバイス406-5は、コントローラ404へ送りたい情報がある場合、通信フレームFR内に低い優先度を有するパケットが存在するか確認する。デバイス406-5は、確認の結果、自デバイスが送りたい情報の優先度PR2よりパケットPK-1~PK-4の優先度PR1が低いので、例外的に、送信権が与えられる。これに応じて、デバイス406-5は、パケットPK-1のヘッダH及びペイロードPの情報INFを抜き出してそのまま保持する。情報INFにおけるヘッダHは、送信先がコントローラ404(ID0)であることを示す情報、送信元がデバイス406-1(ID1)であることを示す情報、優先度PR1を示す情報を含む。情報INFにおけるペイロードPは、デバイス406-1がコントローラ404に送りたい情報を含む。
それとともに、デバイス406-5は、パケットPK-1のヘッダHの送信先をID0に送信元を自デバイス(ID5)に書き換え、パケットPK-1のヘッダHに優先度PR2を示す情報を含め、そのパケットPKのペイロードPに自デバイスの送りたい情報を含めて通信フレームFRを更新し、更新後の通信フレームFRを通信路8へ送信する。
コントローラ404は、デバイス406-5から通信路8を介して更新後の通信フレームFRを受信すると、受信した通信フレームFRに含まれる各パケットPKのヘッダHを確認する。コントローラ404は、確認の結果に応じて、通信フレームFRに含まれた各パケットPK-1~PK-4に対して所定の受信処理を行い、各パケットPK-1~PK-4のペイロードPに含まれた情報を取り出して所定の処理を行う。
これ以降、図6に示す動作と図9に示す動作とを組み合わせた動作が行われる。
以上のように、第5の実施形態では、通信システム401において、原則として、動的な閾値を用いた帯域制限が行われながら、例外的に、優先度を考慮した優先制御が行われる。これにより、各デバイス406の送信権を時間平均で均等に保証できるとともに、優先度の高い情報に対して、帯域を保証できる。この結果、通信システム401におけるパケット転送を適切化できる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1,101,201,301,401 通信システム、4,104,204,304,404 コントローラ、6,6-1~6-5,106,106-1~106-5,206,206-1~206-5,306,306-1~306-5,406,406-1~406-5 デバイス、8 通信路。

Claims (9)

  1. コントローラと、
    複数のデバイスと、
    前記コントローラ及び前記複数のデバイスがリング状に接続され、差動シリアル信号のパケットを伝送可能である通信路と、
    を備え、
    前記通信路で時間的に連続して伝送されるパケットであり前記デバイスの通信能力と前記通信路の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化され、
    前記デバイスは、単位時間当たりの送信量をモニターし、モニターされた量が閾値を超える場合、受信した通信フレームに含まれるパケットに対するデータの挿入が不可であり、モニターされた量が前記閾値以下である場合、受信した通信フレームに含まれるパケットに対するデータの挿入が可能である
    通信システム。
  2. 前記閾値は、前記デバイスにあらかじめ設定されている
    請求項1に記載の通信システム。
  3. 前記パケットは、前記閾値を示す情報が格納されたヘッダとペイロードとを有し、
    前記デバイスは、受信した通信フレームに含まれるパケットにおけるヘッダに格納された情報に応じて、前記閾値を取得する
    請求項1に記載の通信システム。
  4. 前記パケットは、ヘッダとペイロードとを有し、
    前記デバイスは、受信した通信フレームに含まれるパケットにおけるペイロードに格納された第1の情報の第1の優先度を示す情報がヘッダに格納されている場合、送信すべき第2の情報の第2の優先度が前記第1の優先度より高いことに応じて、受信した通信フレームに含まれるパケットを、前記第2の優先度がヘッダに格納され前記第2の情報がペイロードに格納されたパケットに置換する
    請求項1に記載の通信システム。
  5. コントローラと、
    複数のデバイスと、
    前記コントローラ及び前記複数のデバイスがリング状に接続され、差動シリアル信号のパケットを伝送可能である通信路と、
    を備え、
    前記通信路で時間的に連続して伝送されるパケットであり前記デバイスの通信能力と前記通信路の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化され、
    前記パケットは、ヘッダとペイロードとを有し、
    前記デバイスは、受信した通信フレームに含まれるパケットにおけるペイロードに格納された第1の情報の第1の優先度を示す情報がヘッダに格納されている場合、送信すべき第2の情報の第2の優先度が前記第1の優先度より高いことに応じて、受信した通信フレームに含まれるパケットを、前記第2の優先度がヘッダに格納され前記第2の情報がペイロードに格納されたパケットに置換する
    通信システム。
  6. コントローラ及び複数のデバイスがリング状に接続され、差動シリアル信号のパケットを伝送可能である通信路が接続可能である通信インターフェース回路と、
    単位時間当たりの送信量をモニターするモニター部と、
    を備え、
    前記通信路で時間的に連続して伝送されるパケットであり前記デバイスの通信能力と前記通信路の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化され、
    前記通信インターフェース回路は、前記モニター部でモニターされた量が閾値を超える場合、受信した通信フレームに含まれるパケットに対するデータの挿入が不可であり、前記モニター部でモニターされた量が前記閾値以下である場合、受信した通信フレームに含まれるパケットに対するデータの挿入が可能である
    デバイス。
  7. コントローラ及び複数のデバイスがリング状に接続され、差動シリアル信号のパケットを伝送可能である通信路が接続可能である通信インターフェース回路を備え、
    前記通信路で時間的に連続して伝送されるパケットであり前記デバイスの通信能力と前記通信路の通信容量とに応じて決まる個数のパケットは、通信フレームとしてグループ化され、
    前記通信インターフェース回路は、受信した通信フレームに含まれるパケットにおけるペイロードに格納された第1の情報の第1の優先度を示す情報がヘッダに格納されている場合、送信すべき第2の情報の第2の優先度が前記第1の優先度より高いことに応じて、受信した通信フレームに含まれるパケットを、前記第2の優先度がヘッダに格納され前記第2の情報がペイロードに格納されたパケットに置換する
    デバイス。
  8. コントローラと複数のデバイスと前記コントローラ及び前記複数のデバイスがリング状に接続され差動シリアル信号のパケットを伝送可能である通信路とを有する通信システムにおける前記コントローラが、固定データ長を有するパケットを前記通信路へ送出することと、
    前記デバイスが、単位時間当たりの送信量をモニターすることと、
    前記デバイスが、前記モニターされた量が閾値を超える場合、前記通信路で時間的に連続して伝送されるパケットであり前記デバイスの通信能力と前記通信路の通信容量とに応じて決まる個数のパケットがグループ化された通信フレームに含まれるパケットに対してデータを挿入しないことと、
    前記デバイスが、前記モニターされた量が前記閾値以下である場合、受信した通信フレームに含まれるパケットに対してデータを挿入することと、
    を含む通信方法。
  9. コントローラと複数のデバイスと前記コントローラ及び前記複数のデバイスがリング状に接続され差動シリアル信号のパケットを伝送可能である通信路とを有する通信システムにおける前記コントローラが、固定データ長を有するパケットを前記通信路へ送出することと、
    前記デバイスが、前記通信路で時間的に連続して伝送されるパケットであり前記デバイスの通信能力と前記通信路の通信容量とに応じて決まる個数のパケットがグループ化された通信フレームに含まれるパケットにおけるペイロードに格納された第1の情報の第1の優先度を示す情報がヘッダに格納されている場合、送信すべき第2の情報の第2の優先度が前記第1の優先度より高いことに応じて、受信した通信フレームに含まれるパケットを、前記第2の優先度がヘッダに格納され前記第2の情報がペイロードに格納されたパケットに置換することと、
    を含む通信方法。
JP2020155881A 2020-09-16 2020-09-16 通信システム、デバイス及び通信方法 Active JP7527910B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020155881A JP7527910B2 (ja) 2020-09-16 2020-09-16 通信システム、デバイス及び通信方法
TW110118615A TWI797627B (zh) 2020-09-16 2021-05-24 通訊系統、記憶體元件及通訊方法
CN202110755904.5A CN114268572B (zh) 2020-09-16 2021-07-05 通信系统、设备以及通信方法
US17/461,844 US20220086093A1 (en) 2020-09-16 2021-08-30 Communication system, device, and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020155881A JP7527910B2 (ja) 2020-09-16 2020-09-16 通信システム、デバイス及び通信方法

Publications (2)

Publication Number Publication Date
JP2022049599A true JP2022049599A (ja) 2022-03-29
JP7527910B2 JP7527910B2 (ja) 2024-08-05

Family

ID=80628044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020155881A Active JP7527910B2 (ja) 2020-09-16 2020-09-16 通信システム、デバイス及び通信方法

Country Status (4)

Country Link
US (1) US20220086093A1 (ja)
JP (1) JP7527910B2 (ja)
CN (1) CN114268572B (ja)
TW (1) TWI797627B (ja)

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69739757D1 (de) * 1996-12-26 2010-03-25 Nippon Telegraph & Telephone Weiterreichenverfahren zur verringerung der phasendifferenz zur synchronisation einer mobilstation
JP2004088208A (ja) 2002-08-23 2004-03-18 Sony Corp データ伝送システム及びデータ伝送方法
US7466646B2 (en) * 2004-04-22 2008-12-16 At&T Intellectual Property I, L.P. Method and system for automatically rerouting logical circuit data from a logical circuit failure to dedicated backup circuit in a data network
JP4204619B2 (ja) * 2005-01-21 2009-01-07 パナソニック株式会社 バックアップシステム、中継装置、情報端末、バックアップ装置
US20100122003A1 (en) * 2008-11-10 2010-05-13 Nec Laboratories America, Inc. Ring-based high speed bus interface
JP5331646B2 (ja) * 2009-10-14 2013-10-30 株式会社日立製作所 光通信システム及び通信帯域制御方法
KR101476112B1 (ko) * 2009-12-17 2014-12-23 가부시끼가이샤 도시바 호스트 컨트롤러 및 반도체 디바이스
CN102135859A (zh) * 2010-01-22 2011-07-27 智多星电子科技有限公司 用于差分数据传输的快闪存储卡
WO2013168427A1 (ja) * 2012-05-11 2013-11-14 パナソニック株式会社 バス制御装置、バス制御システム、およびネットワークインタフェース
US9430418B2 (en) * 2013-03-15 2016-08-30 International Business Machines Corporation Synchronization and order detection in a memory system
US10824566B2 (en) * 2016-07-11 2020-11-03 Hitachi, Ltd. Storage device, controlling method of storage device, and storage device controller having predetermined management information including face attribute information, a controller number, and transition method information
JP6971624B2 (ja) * 2017-05-11 2021-11-24 キヤノン株式会社 情報処理装置、制御方法、およびプログラム
US20190044809A1 (en) * 2017-08-30 2019-02-07 Intel Corporation Technologies for managing a flexible host interface of a network interface controller
CN109992205B (zh) * 2019-03-27 2020-06-02 无锡海斯凯尔医学技术有限公司 数据存储的装置、方法及可读存储介质

Also Published As

Publication number Publication date
US20220086093A1 (en) 2022-03-17
CN114268572A (zh) 2022-04-01
TWI797627B (zh) 2023-04-01
TW202213965A (zh) 2022-04-01
CN114268572B (zh) 2024-01-16
JP7527910B2 (ja) 2024-08-05

Similar Documents

Publication Publication Date Title
EP2862290B1 (en) Multiple protocol tunneling using time division operations
US8001309B2 (en) Method and system for grouping interrupts from a time-dependent data storage system
CN108476161B (zh) 电子控制单元、通信方法以及车载网络系统
JP2020535739A (ja) データ伝送
EP3288220B1 (en) A bridge for connecting ethernet and spacewire networks
US7984210B2 (en) Method for transmitting a datum from a time-dependent data storage means
US11177969B2 (en) Interface device and data communication method
KR100505689B1 (ko) 송수신 흐름에 따라 공유 버퍼 메모리의 할당량을제어하는 송수신 네트워크 제어기 및 그 방법
WO2013164390A1 (en) Method and device for emulating a bus system
JP2022049599A (ja) 通信システム、デバイス及び通信方法
CN112968821B (zh) 电子控制单元、通信方法以及车载网络系统
JP7423367B2 (ja) 通信システム、デバイス、及び通信方法
CN115203102A (zh) 预测usb扩展环境中的空闲缓冲区空间
US20190036847A1 (en) Repeater
US8427955B2 (en) Method and apparatus for transferring data
US10693595B2 (en) ACK clock compensation for high-speed serial communication interfaces
KR102429410B1 (ko) 라우팅 방법 및 장치
US11646908B2 (en) Device for providing enhanced speed for connected nodes on a bus
KR100720709B1 (ko) 무선 usb 시스템
KR101853210B1 (ko) 하이브리드 메모리 큐브를 위한 링크 선택 방법 및 장치
JP2024134188A (ja) 通信システム、通信デバイス、及び通信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230308

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240123

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240318

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240625

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240724

R150 Certificate of patent or registration of utility model

Ref document number: 7527910

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150