JP6889204B2 - コントローラ - Google Patents

コントローラ Download PDF

Info

Publication number
JP6889204B2
JP6889204B2 JP2019087590A JP2019087590A JP6889204B2 JP 6889204 B2 JP6889204 B2 JP 6889204B2 JP 2019087590 A JP2019087590 A JP 2019087590A JP 2019087590 A JP2019087590 A JP 2019087590A JP 6889204 B2 JP6889204 B2 JP 6889204B2
Authority
JP
Japan
Prior art keywords
unit
socket
transmission
node
information
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.)
Active
Application number
JP2019087590A
Other languages
English (en)
Other versions
JP2020184668A (ja
Inventor
克敏 中川
克敏 中川
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.)
Toshiba Corp
Toshiba Infrastructure Systems and Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Infrastructure Systems and Solutions 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 Toshiba Corp, Toshiba Infrastructure Systems and Solutions Corp filed Critical Toshiba Corp
Priority to JP2019087590A priority Critical patent/JP6889204B2/ja
Priority to CN202080025388.4A priority patent/CN113632422B/zh
Priority to KR1020217035952A priority patent/KR102667567B1/ko
Priority to PCT/JP2020/011485 priority patent/WO2020225980A1/ja
Priority to US17/604,798 priority patent/US11489880B2/en
Publication of JP2020184668A publication Critical patent/JP2020184668A/ja
Application granted granted Critical
Publication of JP6889204B2 publication Critical patent/JP6889204B2/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/43Loop networks with decentralised control with synchronous transmission, e.g. time division multiplex [TDM], slotted rings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1013Network architectures, gateways, control or user entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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
    • H04L47/2416Real-time traffic
    • 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/28Flow control; Congestion control in relation to timing considerations

Landscapes

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

Description

本発明の実施形態は、コントローラに関する。
産業用のコントローラは、LAN(Local Area Network)を介した外部のノードとのリアルタイム通信を実現するために、コントローラ内に設けられる送信制御部によって、いずれのノードが送信権を得たかを判定し、その判定結果に基づいて、ノード間での通信のタイミングを制御している。
ところで、IoTの普及に伴い、LANに接続される機器が増加し、同一の通信手順で通信を行うノードのみが接続される専用のLANではなく、異なる通信手順で通信を行うノードが接続可能なLANへの要求が高まっている。これは、異なる通信手順で通信を行うノードがLANを共有することで、ネットワークの敷設にかかるコストや接続用の機器を削減できるためである。
特開2003−263402号公報
しかしながら、異なる通信手順で通信を行うノードが接続されるLANを構築した場合、ノード間での情報の送受信の制御が機能しなくなり、リアルタイム性を確保しなければならない通信に遅延等の影響が発生する可能性がある。
実施形態のコントローラは、リアルタイム通信部と、アプリケーション通信部と、ソケット管理部と、を有する。リアルタイム通信部は、複数のノードのうち送信権を持つノードを示す送信権マップに基づいて、第1ソケットを用いて、外部のノードと通信する。アプリケーション通信部は、送信権マップに基づかずに、第1ソケットとは異なる第2ソケットを用いて、外部のノードと通信する。ソケット管理部は、アプリケーション通信部による外部のノードへの情報の送信およびアプリケーション通信部による外部のノードからの情報の受信の少なくとも一方を制限する。
図1は、第1の実施形態にかかるコントローラのハードウェア構成の一例を示すブロック図である。 図2は、第1の実施形態にかかるコントローラの機能構成の一例を示すブロック図である。 図3は、第1の実施形態にかかるコントローラが記憶するインリングマップの一例を示す図である。 図4は、第1の実施形態にかかるコントローラによる送信権を得たノードの判定処理の一例を説明するための図である。 図5は、第1の実施形態にかかるコントローラのリアルタイム通信部による外部のノードへの情報の送信処理の一例を説明するための図である。 図6は、第2の実施形態にかかるコントローラの機能構成の一例を示すブロック図である。 図7は、第2の実施形態にかかるコントローラのアプリケーション通信部の通信の制限処理の一例を説明するための図である。 図8は、第3の実施形態にかかるコントローラの機能構成の一例を示すブロック図である。 図9は、第3の実施形態にかかるコントローラのアプリケーション通信部の通信の制限処理の一例を説明するための図である。
以下、添付の図面を用いて、本実施形態にかかるコントローラの一例について説明する。
(第1の実施形態)
図1は、第1の実施形態にかかるコントローラのハードウェア構成の一例を示すブロック図である。まず、図1を用いて、本実施形態にかかるコントローラ1のハードウェア構成の一例について説明する。
図1に示すように、本実施形態にかかるコントローラ1は、通信I/F11と、I/Oインターフェース12と、RAM(Random Access Memory)13と、HDD(Hard Disk Drive)14と、プロセッサ15と、ROM(Read Only Memory)16と、を備えている。
通信I/F11は、LAN(Local Area Network)等の通信ネットワークと接続するためのインターフェースとする。
I/Oインターフェース12は、コントローラ1が制御/監視対象となる制御・監視機器と接続するためのインターフェースとする。当該制御・監視機器としては、例えば、プラントに設けられた機器等が考えられる。そして、本実施形態のコントローラ1は、当該制御・監視機器との間で信号の送受信を行う。
RAM13は、HDD14により高速に読み書き可能な揮発性メモリであって、コントローラ1が、作業領域として用いるほかに、仮想共有メモリの一部としても用いられる。
HDD14は、情報を読み書き可能な不揮発性の記憶部であって、アプリケーション等が格納される他に、仮想共有メモリの一部としても用いられる。
プロセッサ15は、コントローラ1全体を制御する制御部として機能する。プロセッサ15は、ROM16からプログラムを読み出して実行した結果をRAM13上に展開することで、各構成が実現される。
図2は、第1の実施形態にかかるコントローラの機能構成の一例を示すブロック図である。まず、図2を用いて、本実施形態にかかるコントローラ1の機能構成の一例について説明する。
本実施形態にかかるコントローラ1は、産業用のコントローラであり、LANに接続されるノード(伝送装置)の一例である。コントローラ1には、一定時間内に、LANに接続されるノードとの通信が完了するリアルタイム性が要求される。そのため、コントローラ1は、送信権マップに基づいて、予め設定されたソケットを用いて、外部のノードと通信するリアルタイム通信を行う。ここで、送信権マップは、複数のノード(本実施形態では、LANに接続されかつリアルタイム通信を行うノード)のうち送信権を持つノードを示すマップである。また、送信権は、予め設定された順番で、複数のノード間を周回(巡回)する。本実施形態では、コントローラ1は、予め設定されたソケットを用いて、外部のノードから情報を受信し、かつ、当該コントローラ1自身が送信権を得た場合に、予め設定されたソケットを用いて、予め設定された送信周期内に、外部のノードへの情報の送信を行うリアルタイム通信を実行する。
リアルタイム通信の実現方法には、IRT(Isochronous Real Time)、およびSRT(Soft Real Time)の2種類がある。ここで、IRTは、専用のハードウェアによって、ノード間の通信を実現する方法である。また、SRTは、専用のハードウェアを用いずに、ソフトウェアによって、ノード間の通信を実現する方法である。本実施形態では、コントローラ1は、SRTによって、リアルタイム通信を実現するものとする。
具体的には、本実施形態にかかるコントローラ1は、図2に示すように、プロセッサ15が、ROM16からプログラムを読み出し、RAM13上に展開することにより、LAN管理部101、送信制御部102、リアルタイム通信部103、アプリケーション通信部104、およびソケット管理部105を実現する。ノード記憶部106、およびソケット記憶部107は、RAM13等の記憶媒体により実現される。
ノード記憶部106は、インリングマップ、および送信権マップを記憶する。ここで、インリングマップは、LANに接続されるノードのうちリアルタイム通信を行うノードを示すマップである。また、送信権マップは、上述したように、リアルタイム通信を行うノード(本実施形態では、インリングマップが示すノード)のうち送信権を持つノードを示すマップである。
ソケット記憶部107は、管理ソケットテーブルおよび通信制限状態を記憶する。ここで、管理ソケットテーブルは、コントローラ1が有する複数のソケットS1〜Sn(nは、1以上の整数である。以下の説明では、ソケットS1〜Snを区別する必要が無い場合には、ソケットSと記載する)のうち、リアルタイム通信に用いるソケットSの番号(以下、ソケット番号と言う)を示すテーブルである。ここで、ソケットSは、LANを介したノード間での通信に用いられ、固有のポート番号やIPアドレスが割り振られたソケット(ポート)である。
また、通信制限状態は、送信制限状態および受信制限状態を含む。ここで、送信制限状態は、アプリケーション通信部104による外部のノードへの情報の送信を制限するか否かを示す情報である。また、受信制限状態は、アプリケーション通信部104による外部のノードからの情報の受信を制限するか否かを示す情報である。本実施形態では、送信制限状態および受信制限状態は、それぞれ、1ビットの情報であり、初期値として“0”が設定されているものとする。
LAN管理部101は、後述するリアルタイム通信部103による外部のノードとの通信結果に基づいて、LANに接続されるノードのうちリアルタイム通信を行うノードを特定する。そして、LAN管理部101は、リアルタイム通信を行うノードの特定結果に基づいて、インリングマップを生成し、当該生成したインリングマップをノード記憶部106に書き込む。
また、LAN管理部101は、後述するリアルタイム通信部103による外部のノードとの通信結果、および予め設定された送信周期に基づいて、リアルタイム通信を行うノードのうち送信権を持つノードを特定する。そして、LAN管理部101は、送信権を持つノードの特定結果に基づいて、ノード記憶部106に記憶される送信権マップを更新する。また、LAN管理部101は、予め設定された周期で、ノード記憶部106から送信権マップを読み込み、当該読み込んだ送信権マップを送信制御部102に通知する。
信制御部102は、複数のノードのうちいずれのノードが送信権を持っているかを判定する。本実施形態では、送信制御部102は、LAN管理部101から通知される送信権マップに基づいて、いずれのノードが送信権を得たかを判定する。また、送信制御部102は、コントローラ1自身が送信権を得たと判定した場合、コントローラ1自身が送信権を得たことをリアルタイム通信部103に通知する。
さらに、送信制御部102は、いずれのノードが送信権を持っているかの判定結果に基づいて、アプリケーション通信部104による外部のノードとの通信を制限すること、および、アプリケーション通信部104による外部のノードとの通信の制限を解除することを、ソケット管理部105に通知する。
リアルタイム通信部103は、送信権マップに基づいて、コントローラ1が有する複数のソケットS1〜Snのうち予め設定されたソケット(本実施形態では、ソケットS2)を用いて、外部のノードと通信するリアルタイム通信を行う。具体的には、リアルタイム通信部103は、ソケットS2を用いて、外部のノードから情報を受信し、かつ、送信制御部102によって、コントローラ1自身が送信権を持つと判定された場合に、ソケットS2を用いて、外部のノードに対して情報を送信するリアルタイム通信を行う。
アプリケーション通信部104は、送信権マップに基づかずに、複数のソケットS1〜Snのうち、リアルタイム通信に用いられるソケットS2とは異なるソケットS(本実施形態では、ソケットS1)を用いて、外部のノードと通信する。具体的には、アプリケーション通信部104は、送信権マップに基づかずに、ソケットS1を用いて、外部のノードとの間での情報を送受信する非リアルタイム通信を行う。
ソケット管理部105は、ソケットAPI(Application Programming Interface)等であり、ソケットSを用いた、リアルタイム通信部103やアプリケーション通信部104等による外部のノードとの通信を制御する。具体的には、ソケット管理部105は、アプリケーション通信部104による、外部のノードへの情報の送信および外部のノードからの情報の受信を制限する。
これにより、リアルタイム通信とは異なる通信手順に従ってノード間で非リアルタイム通信を行うアプリケーションが含まれている場合に、リアルタイム通信部103による外部のノードとの通信(リアルタイム通信)が機能しなくなることを防止できる。その結果、リアルタイム通信部103によるリアルタイム通信の遅延を抑制することができる。
ここで、アプリケーション通信部104による外部のノードとの非リアルタイム通信を制限するとは、アプリケーション通信部104による外部のノードとの情報の通信を停止させたり、アプリケーション通信部104による外部のノードとの通信の頻度や単位時間当たりの通信量を減らしたりすることを含む。
本実施形態では、ソケット管理部105は、リアルタイム通信部103によって、外部のノードとの通信が行われる場合に、ソケットS1〜SnのうちソケットS2以外のソケットSの使用を禁止する。これにより、ソケット管理部105は、アプリケーション通信部104による、外部のノードへの情報の送信および外部のノードからの情報の受信を制限する。
本実施形態では、ソケット管理部105は、アプリケーション通信部104による、外部のノードへの情報の送信および外部のノードからの情報の受信の両方を制限するものとするが、リアルタイム通信部103による、外部のノードへの情報の送信および外部のノードからの情報の受信の少なくとも一方を制限するものであれば、これに限定するものではない。例えば、ソケット管理部105は、アプリケーション通信部104による外部のノードへの情報の送信のみを制限しても良い。または、ソケット管理部105は、アプリケーション通信部104による外部のノードからの情報の受信のみを制限しても良い。
次に、図2を用いて、本実施形態にかかるコントローラ1が有するソケット管理部105の具体的な機能構成の一例について説明する。
本実施形態では、ソケット管理部105は、図2に示すように、送信部111、受信部112、通信制限部113、通信制限解除部114、通信制限状態管理部115、および管理ソケット登録部116を有する。
管理ソケット登録部116は、リアルタイム通信部103により外部のノードと送受信する情報に基づいて、ソケットS1〜Snのうち、リアルタイム通信に用いるソケットS2を特定する。そして、管理ソケット登録部116は、特定したソケットS2のソケット番号を示す管理ソケットテーブルを、ソケット記憶部107に保存する。
通信制限部113は、送信制御部102から、アプリケーション通信部104による外部のノードとの通信を制限することが通知された場合、ソケット記憶部107に記憶される送信制限状態および受信制限状態に“1”を設定する。
通信制限解除部114は、送信制御部102から、アプリケーション通信部104による外部のノードとの通信の制限を解除することが通知された場合、ソケット記憶部107に記憶される送信制限状態および受信制限状態に“0”を設定する。
すなわち、送信制限状態および受信制限状態は、アプリケーション通信部104による外部のノードとの情報の送受信が制限されていない場合には“0”を示す。一方、送信制限状態および受信制限状態は、アプリケーション通信部104による外部のノードとの情報の送受信が制限されている場合には、“1”を示す。
通信制限状態管理部115は、ソケット記憶部107に記憶される通信制限状態(送信制限状態および受信制限状態)および管理ソケットテーブルを読み込み、当該読み込んだ通信制限状態および管理ソケットテーブルを、送信部111および受信部112に通知する。
送信部111は、リアルタイム通信部103およびアプリケーション通信部104による外部のノードへの情報の送信を制御する。具体的には、送信部111は、リアルタイム通信部103から外部のノードへの情報の送信が要求された場合、管理ソケットテーブルが示すソケット番号のソケットS(例えば、ソケットS2)を用いて、外部のノードに対して情報を送信する。
また、送信部111は、アプリケーション通信部104から外部のノードへの情報の送信が要求された場合、管理ソケットテーブルが示すソケット番号以外のソケット番号のソケットS(例えば、ソケットS1)を用いて、外部のノードに対して情報を送信する。ただし、通信制限状態管理部115から通知される送信制限状態が“1”である場合、送信部111は、通信制限状態管理部115から通知される管理ソケットテーブルが示すソケット番号示すソケットS2以外のソケットSを用いた外部のノードへの情報の送信を制限する。すなわち、送信部111は、アプリケーション通信部104による外部のノードへの情報の送信を制限する。
受信部112は、リアルタイム通信部103およびアプリケーション通信部104による外部のノードからの情報の受信を制御する。具体的には、受信部112は、リアルタイム通信部103から外部のノードからの情報の受信が要求された場合、リアルタイム通信部103に予め設定されたソケットS2を用いて、外部のノードから情報を受信し、当該受信した情報をリアルタイム通信部103に通知する。
また、受信部112は、アプリケーション通信部104から外部のノードからの情報の受信が要求された場合、アプリケーション通信部104に予め設定されたソケットS1を用いて、外部のノードから情報を受信し、当該受信した情報をアプリケーション通信部104に通知する。ただし、通信制限状態管理部115から通知される受信制限状態が“1”である場合、受信部112は、通信制限状態管理部115から通知される管理ソケットテーブルが示すソケット番号が示すソケットS2以外のソケットSを用いた外部のノードからの情報の受信を制限する。すなわち、受信部112は、アプリケーション通信部104による外部のノードからの情報の受信を制限する。
図3は、第1の実施形態にかかるコントローラが記憶するインリングマップの一例を示す図である。次に、図3を用いて、本実施形態にかかるコントローラ1のノード記憶部106が記憶するインリングマップの一例について説明する。
LANに接続される各ノードには、当該各ノードを識別可能とする番号(以下、ノード番号と言う)が割り付けられている。インリングマップは、図3に示すように、各ノードのノード番号に対応する位置(以下、ビット位置と言う)を含み、参加状態が、各ノードのノード番号に対応するビット位置に書き込まれている。ここで、参加状態は、各ノードがリアルタイム通信を行うか否かを示す1ビットの情報である。本実施形態では、参加状態は、ノードがリアルタイム通信を行う場合には“1”を示し、ノードがリアルタイム通信を行わない場合には“0”を示す。
例えば、ノード番号:25のノードがリアルタイム通信を行う場合には、インリングマップにおいて、ノード番号:25に対応するビット位置の参加状態は“1”を示す。また、ノード番号:15のノードがリアルタイム通信を行わない場合には、インリングマップにおいて、ノード番号:15に対応するビット位置の参加状態は“0”を示す。
LAN管理部101は、上述したように、リアルタイム通信部103による外部のノードとの通信結果に基づいて、LANに接続されるノードのうちリアルタイム通信を行うノードを特定する。そして、LAN管理部101は、リアルタイム通信を行うノードとして特定したノードの参加状態が“1”を示すインリングマップを生成し、当該生成したインリングマップをノード記憶部106に書き込む。
図4は、第1の実施形態にかかるコントローラによる送信権を得たノードの判定処理の一例を説明するための図である。次に、図4を用いて、本実施形態にかかるコントローラ1の送信制御部102による送信権を得たノードの判定処理の一例について説明する。
本実施形態では、図4に示すように、各ノードに予め設定される優先度を示す送信周期番号に対応付けて、送信周期が予め設定されている。本実施形態では、LAN管理部101は、図3に示すインリングマップにおいて参加状態が“1”を示すノード番号のノードのうち、ノード番号が小さいノードから順に、送信権を周回(巡回)するものとする。
その際、LAN管理部101は、送信権を移したノードの優先度を示す送信周期番号に対応する送信周期が経過するか、若しくは、各ノードのリアルタイム通信部103による外部のノードへの情報の送信が完了すると、次のノードへ送信権を移す。これにより、LAN管理部101は、各ノードのリアルタイム通信部103による外部のノードへの情報の送信が送信周期内に完了するように、各ノードのリアルタイム通信部103による外部のノードへの情報の送信を制御する。
図5は、第1の実施形態にかかるコントローラのリアルタイム通信部による外部のノードへの情報の送信処理の一例を説明するための図である。次に、図5を用いて、本実施形態にかかるコントローラ1のリアルタイム通信部103による外部のノードへの情報の送信処理の一例について説明する。
本実施形態では、LAN管理部101は、外部のノードのLAN管理部101と同期して、図5に示すように、ノード番号:1のノードから順に、昇順で、送信権を周回させる。そして、送信権を得たノードのリアルタイム通信部103は、図5に示すように、当該ノードの送信周期番号に対応する送信周期内において、外部のノードへの情報の送信を行う。
これにより、LAN管理部101は、図5に示すように、予め設定された周回周期内に、リアルタイム通信を行う全てのノードによる情報の送信を完了させる。ここで、周回周期は、LANに接続されかつリアルタイム通信を行う全てのノードを1周するのに許容される周期である。
ところで、リアルタイム通信を行う各ノードには、コントローラ1等のように、リアルタイム通信部103とは異なる通信手順で外部のノードと通信を行うアプリケーション通信部104を備える場合がある。
この場合、アプリケーション通信部104による外部のノードとの通信によって、リアルタイム通信部103によるリアルタイム通信が機能しなくなり、リアルタイム通信に遅延等の影響が発生する可能性がある。
また、リアルタイム通信を行う全てのノードのリアルタイム通信部103が、各ノードの送信周期を最大限に使って、外部のノードへの情報の送信を行うと、周回周期内に、リアルタイム通信を行う全てのノードによる情報の送信を完了させることができない場合がある。
そこで、本実施形態では、通信制限状態管理部115から通知される送信制限状態が“0”である場合、送信部111は、アプリケーション通信部104からの外部のノードへの情報の送信の要求に応じて、外部のノードに対して情報を送信する。また、通信制限状態管理部115から通知される受信制限状態が“0”である場合、受信部112は、アプリケーション通信部104からの外部のノードからの情報の受信の要求に応じて、外部のノードから情報を受信し、当該受信した情報をアプリケーション通信部104に通知する。
一方、送信部111は、通信制限状態管理部115から通知される送信制限状態が“1”である場合、外部のノードへの情報の送信に用いているソケットSのソケット番号が、管理ソケットテーブルが示すソケット番号と一致するか否かを判断する。
そして、外部のノードへの情報の送信に用いているソケットSのソケット番号が、管理ソケットテーブルが示すソケット番号と一致する場合、送信部111は、外部のノードへの情報の送信に用いているソケットSがリアルタイム通信部103により用いられるソケットSと判断して、外部のノードへの情報の送信を継続する。
一方、外部ノードへの情報の送信に用いているソケットSのソケット番号が、管理ソケットテーブルが示すソケット番号と一致しない場合、送信部111は、外部のノードへの情報の送信に用いているソケットSがアプリケーション通信部104により用いられるソケットSと判断して、当該ソケットSを用いた外部のノードへの情報の送信を継続せずに停止する。
その際、送信部111は、アプリケーション通信部104に対して、外部のノードへの情報の送信のエラー番号を通知する。ここで、アプリケーション通信部104に通知するエラー番号は、一時的に、外部のノードへ情報を送信することができないため、予め設定された時間後に、再度、外部のノードへの情報の送信を要求することを指示する番号である。
また、受信部112は、通信制限状態管理部115から通知される受信制限状態が“1”である場合、外部のノードからの情報の受信に用いているソケットSのソケット番号が、管理ソケットテーブルが示すソケット番号と一致するか否かを判断する。
そして、外部のノードからの情報の受信に用いているソケットSのソケット番号が、管理ソケットテーブルが示すソケット番号と一致する場合、受信部112は、外部のノードからの情報の受信に用いているソケットSがリアルタイム通信部103により用いられるソケットSと判断して、外部のノードからの情報の受信を継続する。
一方、外部のノードからの情報の受信に用いているソケットSのソケット番号が、管理ソケットテーブルが示すソケット番号と一致しない場合、受信部112は、外部のノードからの情報の受信に用いているソケットSがアプリケーション通信部104により用いられるソケットSと判断して、当該ソケットSを用いた外部のノードからの情報の受信を継続せずに停止する。
その際、受信部112は、アプリケーション通信部104に対して、外部のノードからの情報の受信のエラー番号を通知する。ここで、アプリケーション通信部104に通知するエラー番号は、一時的に、外部のノードから情報を受信することができないため、予め設定された時間後に、再度、外部のノードからの情報の受信を要求することを指示する番号である。
このように、第1の実施形態にかかるコントローラ1によれば、リアルタイム通信とは異なる通信手順に従ってノード間で通信を行うアプリケーションが含まれている場合に、リアルタイム通信部103による外部のノードとの通信(リアルタイム通信)が機能しなくなることを防止できる。その結果、リアルタイム通信部103によるリアルタイム通信の遅延を抑制することができる。
(第2の実施形態)
本実施形態は、送信順番が1つ前の外部のノードが、送信権を得てから、コントローラ自身が送信権を持つ間、アプリケーション通信部による外部のノードからの情報の受信を制限する例である。以下の説明では、第1の実施形態と同様の構成については説明を省略する。
図6は、第2の実施形態にかかるコントローラの機能構成の一例を示すブロック図である。本実施形態にかかるコントローラ600は、図6に示すように、LAN管理部101、送信制御部102、リアルタイム通信部103、アプリケーション通信部104、ソケット管理部601、ノード記憶部106、およびソケット記憶部107を有する。また、ソケット管理部601は、図6に示すように、送信部111、受信部112、通信制限部602、通信制限解除部114、通信制限状態管理部115、および管理ソケット登録部116を有する。
LAN管理部101は、リアルタイム通信部103による外部のノードとの通信結果に基づいて、送信権を持つノードによる情報の送信が予め設定された期間内に完了したか否かを検出する。そして、LAN管理部101は、送信権を持つノードによる情報の送信が予め設定された期間内に完了しなかった場合には、当該ノードによる情報の送信の完了を待たずに、次の送信順番のノードへ送信権を移す。
ところで、アプリケーション通信部104による通信によって、リアルタイム通信部103による外部のノードとの通信に遅延が発生し、送信権を持つノードによる情報の送信が予め設定された期間内に完了したか否かを検出が遅れると、次の送信順番のノードに対して送信権を移すタイミングが遅れる。
そこで、本実施形態では、ソケット管理部601は、送信制御部102によって、送信順番がコントローラ600自身の1つ前のノードが送信権を持つと判定されてから、コントローラ600自身が、送信権を持つ間、アプリケーション通信部104による外部のノードからの情報の受信を制限する。
これにより、リアルタイム通信部103による送信順番が1つ前のノードからの情報の受信の遅延を抑制して、当該1つ前のノードによる情報の送信が予め設定された期間内に完了したか否かを検出が遅れることを防止できる。その結果、コントローラ600自身に送信権が移るタイミングが遅れることを防止でき、リアルタイム通信の遅延を削減できる。
具体的には、送信制御部102によって、1つ前のノードが送信権を得たと判定されると、通信制限部602は、ソケット記憶部107に記憶される受信制限状態に“1”を設定する。
受信部112は、受信制限状態が“1”になると、管理ソケットテーブルが含むソケット番号が示すソケットS2以外のソケットSを用いた外部のノードからの情報の受信を制限する。すなわち、受信部112は、1つ前のノードが送信権を得た際に、アプリケーション通信部104による外部のノードからの情報の受信を制限する。
その後、通信制限解除部114は、送信制御部102によって、送信順番がコントローラ1自身の次のノードに送信権が移ったと判定されると、ソケット記憶部107に記憶される受信制限状態に“0”を設定する。
受信部112は、受信制限状態が“0”になると、管理ソケットテーブルが示すソケット番号が示すソケットS2以外のソケットSを用いた外部のノードからの情報の受信を再開する。
図7は、第2の実施形態にかかるコントローラのアプリケーション通信部の通信の制限処理の一例を説明するための図である。次に、図7を用いて、本実施形態にかかるコントローラ600におけるアプリケーション通信部104の通信の制限処理の一例について説明する。
例えば、コントローラ600がノード番号:3のノードである場合、通信制限部602は、送信制御部102によって、送信順番が1つ前のノード番号:2のノードが送信権を得たと判定されると、ソケット記憶部107に記憶される受信制限状態に“1”を設定する。
これにより、受信部112は、送受順番が1つ前のノード番号:2のノードが送信権を得てから、コントローラ600自身が送信権を持っている間、アプリケーション通信部104による外部のノードからの情報の受信を制限する。
このように、第2の実施形態にかかるコントローラ600によれば、リアルタイム通信部103による送信順番が1つ前のノードからの情報の受信の遅延を抑制して、当該1つ前のノードによる情報の送信が予め設定された期間内に完了したか否かの検出が遅れることを防止できる。その結果、コントローラ1自身に送信権が移るタイミングが遅れることを防止でき、リアルタイム通信の遅延を削減できる。
(第3の実施形態)
本実施形態では、コントローラ自身が送信権を持つ間、アプリケーション通信部による外部のノードへの情報の送信を制限する例である。以下の説明では、第2の実施形態と同様の構成については説明を省略する。
図8は、第3の実施形態にかかるコントローラの機能構成の一例を示すブロック図である。本実施形態にかかるコントローラ800は、図8に示すように、LAN管理部101、送信制御部102、リアルタイム通信部103、アプリケーション通信部104、ソケット管理部801、ノード記憶部106、およびソケット記憶部107を有する。また、ソケット管理部601は、図8に示すように、送信部111、受信部112、通信制限部802、通信制限解除部114、通信制限状態管理部115、および管理ソケット登録部116を有する。
本実施形態では、ソケット管理部801は、送信制御部102によって、コントローラ1自身が送信権を持つと判定されている間、アプリケーション通信部104による外部のノードへの情報の送信を制限する。これにより、アプリケーション通信部104による外部のノードからの情報の受信の制限に加えて、アプリケーション通信部104による外部のノードへの情報の送信も制限できる。その結果、リアルタイム通信部103による外部のノードへの情報の送信が遅延をより削減することができる。
具体的には、送信制御部102によって、コントローラ1自身が送信権を得たと判定されると、通信制限部602は、ソケット記憶部107に記憶される送信制限状態に“1”を設定する。
送信部111は、送信制限状態が“1”になると、管理ソケットテーブルが含むソケット番号が示すソケットS2以外のソケットSを用いた外部のノードへの情報の送信を制限する。すなわち、送信部111は、コントローラ1自身が送信権を得た際に、アプリケーション通信部104による外部のノードへの情報の送信を制限する。
その後、通信制限解除部114は、送信制御部102によって、送信順番がコントローラ1自身の次のノードに送信権が移ったと判定されると、ソケット記憶部107に記憶される送信制限状態に“0”を設定する。
図9は、第3の実施形態にかかるコントローラのアプリケーション通信部の通信の制限処理の一例を説明するための図である。次に、図9を用いて、本実施形態にかかるコントローラ800におけるアプリケーション通信部104による通信の制限処理の一例について説明する。
例えば、コントローラ800がノード番号:3のノードである場合、送信制御部102によって、ノード番号:3のノードが送信権を得たと判定されると、通信制限部802は、ソケット記憶部107に記憶される送信制限状態に“1”を設定する。これにより、送信部111は、コントローラ800自身が送信権を持っている間、アプリケーション通信部104による外部のノードへの情報の送信を制限する。
このように、第3の実施形態にかかるコントローラ600によれば、アプリケーション通信部104による外部のノードからの情報の受信の制限に加えて、アプリケーション通信部104による外部のノードへの情報の送信も制限できる。その結果、リアルタイム通信部103による外部のノードへの情報の送信が遅延をより削減することができる。
以上説明したとおり、第1から第3の実施形態によれば、リアルタイム通信部103によるリアルタイム通信の遅延を抑制することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1,600,800 コントローラ
13 RAM
15 プロセッサ
16 ROM
101 LAN管理部
102 送信制御部
103 リアルタイム通信部
104 アプリケーション通信部
105,601,801 ソケット管理部
106 ノード記憶部
107 ソケット記憶部
111 送信部
112 受信部
113,602,802 通信制限部
114 通信制限解除部
115 通信制限状態管理部
116 管理ソケット登録部
S ソケット

Claims (2)

  1. 複数のノードのうち送信権を持つノードを示す送信権マップに基づいて、第1ソケットを用いて、外部の前記ノードと通信するリアルタイム通信部と、
    前記送信権マップに基づかずに、前記第1ソケットとは異なる第2ソケットを用いて、前記外部のノードと通信するアプリケーション通信部と、
    前記アプリケーション通信部による前記外部のノードへの情報の送信および前記アプリケーション通信部による前記外部のノードからの情報の受信の少なくとも一方を制限するソケット管理部と、
    を備え
    前記送信権は、前記複数のノード間を予め設定された順番で巡回するものであり、
    前記ソケット管理部は、前記送信権マップに基づいて前記送信権を得る順番が1つ前となったことを検知してから、前記送信権を得ている間、前記アプリケーション通信部による前記外部のノードからの情報の受信を制限することを特徴とするコントローラ。
  2. 前記ソケット管理部は、前記コントローラ自身が前記送信権を持つ間、前記アプリケーション通信部による前記外部のノードへの情報の送信を制限する請求項に記載のコントローラ。
JP2019087590A 2019-05-07 2019-05-07 コントローラ Active JP6889204B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019087590A JP6889204B2 (ja) 2019-05-07 2019-05-07 コントローラ
CN202080025388.4A CN113632422B (zh) 2019-05-07 2020-03-16 控制器
KR1020217035952A KR102667567B1 (ko) 2019-05-07 2020-03-16 컨트롤러
PCT/JP2020/011485 WO2020225980A1 (ja) 2019-05-07 2020-03-16 コントローラ
US17/604,798 US11489880B2 (en) 2019-05-07 2020-03-16 Controller to determine a transmission right and control a timing of communication between nodes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019087590A JP6889204B2 (ja) 2019-05-07 2019-05-07 コントローラ

Publications (2)

Publication Number Publication Date
JP2020184668A JP2020184668A (ja) 2020-11-12
JP6889204B2 true JP6889204B2 (ja) 2021-06-18

Family

ID=73044704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019087590A Active JP6889204B2 (ja) 2019-05-07 2019-05-07 コントローラ

Country Status (5)

Country Link
US (1) US11489880B2 (ja)
JP (1) JP6889204B2 (ja)
KR (1) KR102667567B1 (ja)
CN (1) CN113632422B (ja)
WO (1) WO2020225980A1 (ja)

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001024640A (ja) * 1999-07-02 2001-01-26 Fujitsu Ltd Atmセル多重化装置及びそれにおけるスケジューリング方法
US20020045956A1 (en) * 2000-02-18 2002-04-18 Kapitan Brian A. Network distributed motion control system
JP3925079B2 (ja) * 2000-11-30 2007-06-06 富士通株式会社 リニア又はリングネットワークにおける伝送方法及び装置
JP2003263402A (ja) 2002-03-08 2003-09-19 Matsushita Electric Ind Co Ltd データ転送装置およびデータ転送方法
KR100509794B1 (ko) * 2005-03-09 2005-08-23 주식회사 퓨전소프트 데이터베이스 관리시스템을 이용하는 작업들의 실시간 처리를 위한 스케줄링 방법
JP4916171B2 (ja) * 2005-12-27 2012-04-11 富士通株式会社 通信システム
US8477614B2 (en) * 2006-06-30 2013-07-02 Centurylink Intellectual Property Llc System and method for routing calls if potential call paths are impaired or congested
WO2009019786A1 (ja) * 2007-08-09 2009-02-12 Fujitsu Limited パケットスケジューリング装置、パケットスケジューリング方法およびパケットスケジューリングプログラム
JP4912994B2 (ja) * 2007-09-13 2012-04-11 株式会社東芝 保護制御計測システム
CN102594592B (zh) * 2008-12-25 2015-03-25 三菱电机株式会社 通信管理装置、通信节点、通信系统以及数据通信方法
JP2015065507A (ja) * 2013-09-24 2015-04-09 日本電気株式会社 ゲートウェイ装置および通信ネットワークおよびゲートウェイ装置の制御方法
JP2015095067A (ja) * 2013-11-12 2015-05-18 株式会社東芝 データ伝送装置、データ伝送方法およびプログラム
JP6430856B2 (ja) * 2015-02-24 2018-11-28 日本電信電話株式会社 無線通信システムおよび無線通信方法
JP6265158B2 (ja) * 2015-03-27 2018-01-24 横河電機株式会社 電子機器
JP6594667B2 (ja) 2015-06-03 2019-10-23 株式会社日立製作所 通信制御装置
JP2017163288A (ja) * 2016-03-08 2017-09-14 株式会社東芝 伝送装置
CN108605006B (zh) * 2016-08-05 2021-03-12 富士电机株式会社 控制网络系统及其节点装置
WO2018220749A1 (ja) * 2017-05-31 2018-12-06 三菱電機株式会社 通信装置、通信方法及び通信プログラム
JP6711339B2 (ja) * 2017-10-25 2020-06-17 横河電機株式会社 通信処理装置、プログラム、および通信処理方法

Also Published As

Publication number Publication date
CN113632422B (zh) 2023-02-17
CN113632422A (zh) 2021-11-09
JP2020184668A (ja) 2020-11-12
KR20210148299A (ko) 2021-12-07
WO2020225980A1 (ja) 2020-11-12
US20220182422A1 (en) 2022-06-09
KR102667567B1 (ko) 2024-05-22
US11489880B2 (en) 2022-11-01

Similar Documents

Publication Publication Date Title
US6512767B1 (en) Transmission medium connecting device, controlling device, controlled device, and storage medium
JP4012545B2 (ja) リモート・ダイレクト・メモリ・アクセス対応ネットワーク・インタフェース・コントローラのスイッチオーバーとスイッチバックのサポート
JP4664159B2 (ja) 独立したエラー回復機能を有するスレーブ装置
TWI755538B (zh) 通訊裝置、通訊方法、程式及通訊系統
US6810452B1 (en) Method and system for quarantine during bus topology configuration
JP2007282197A (ja) Ipネットワーク上の遠隔データファシリティ
CN108718282B (zh) 报文序列号的确定方法及装置
JP2007011672A (ja) Raid装置、通信接続監視方法及びプログラム
JP2018507454A (ja) Cpuおよびマルチcpuシステム管理方法
JP2015156071A (ja) データ格納方法、ストレージシステム、プログラム及びストレージ装置
WO2000057283A1 (en) A method and system for circumscribing a topology to form ring structures
US6647446B1 (en) Method and system for using a new bus identifier resulting from a bus topology change
CN107852344A (zh) 存储网元发现方法及装置
US11561922B2 (en) Communication apparatus, communication method, program, and communication system
JP6889204B2 (ja) コントローラ
KR100653178B1 (ko) 전송제어프로토콜 오프로드 엔진 기반의 전송제어프로토콜전송정보 생성 및 관리 장치 및 그 방법
US6457079B1 (en) Communication apparatus with means for allocating alternate designation information to each function unit, and communication system with said two communication apparatuses
JP6958102B2 (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
US10681145B1 (en) Replication in a protocol offload network interface controller
JP2004013634A (ja) データ転送方法
JP5754778B2 (ja) 記憶装置共用システム、管理装置、処理装置、記憶装置共用方法、管理方法、アクセス方法およびプログラム
JP2018045417A (ja) デバイス装置、データ転送システム及びデータ転送方法
CN115706739A (zh) 主机CPU和由其访问远程目标装置的NVMeoF存储器区域的方法
TW202340950A (zh) 用於在記憶體分離環境中加速網路傳輸的方法及設備
JP5958192B2 (ja) 演算処理装置、情報処理装置、及び演算処理装置の制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200915

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200915

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200915

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20201001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210208

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: 20210420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210520

R150 Certificate of patent or registration of utility model

Ref document number: 6889204

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150