Nothing Special   »   [go: up one dir, main page]

JP4608416B2 - 制御装置および通信方法 - Google Patents

制御装置および通信方法 Download PDF

Info

Publication number
JP4608416B2
JP4608416B2 JP2005327273A JP2005327273A JP4608416B2 JP 4608416 B2 JP4608416 B2 JP 4608416B2 JP 2005327273 A JP2005327273 A JP 2005327273A JP 2005327273 A JP2005327273 A JP 2005327273A JP 4608416 B2 JP4608416 B2 JP 4608416B2
Authority
JP
Japan
Prior art keywords
packet
reception
transmission
control device
identifier
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.)
Expired - Fee Related
Application number
JP2005327273A
Other languages
English (en)
Other versions
JP2007135049A (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.)
Hitachi High Tech Corp
Original Assignee
Hitachi High Technologies 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 Hitachi High Technologies Corp filed Critical Hitachi High Technologies Corp
Priority to JP2005327273A priority Critical patent/JP4608416B2/ja
Publication of JP2007135049A publication Critical patent/JP2007135049A/ja
Application granted granted Critical
Publication of JP4608416B2 publication Critical patent/JP4608416B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Description

本発明は、LAN(Local Area Network)等の伝送通信路において、I/O制御を行う制御装置が同一伝送路上に複数接続されている場合の分散制御における、制御装置および通信方法に関するものである。
従来の分散制御は、I/O制御等を行う制御装置のネットワークへの追加、ネットワークからの削除を容易にするため、フィールドLAN等の伝送通信路上に接続されている全ての制御装置へデータをブロードキャスト送信し、各制御装置は受信したデータを自分が処理すべきかフィルタリング処理を実施する、自律分散制御方式が知られている(特許文献1参照)。
この自律分散制御方式では、データ送信側の制御装置は、相手の存在の有無に関わらず常にデータをブロードキャストしており、ネットワークに接続されている受信側の制御装置でフィルタリング処理が行われる構成となっている。これにより、制御装置の追加、削除を容易にしている。
それに対し、大容量データ転送用として一般的に使用されるEthernet(登録商標)を介して制御装置を接続し、その制御装置からデータをブロードキャスト送信した場合には、Ethernet(登録商標)の通信制御装置であるMAC(Media Access Control)では受信したデータに対してフィルタリング処理を実施できない。そのため、全ての制御装置でデータを受信することとなり、その全ての制御装置が、受信したデータについて自分が処理すべきものであるか否かを判断し、処理すべきでない場合には、データを廃棄する処理が必要となる。
伝送通信路上からの受信データ全てに対してこの処理が実施されると、制御装置の負荷が高くなり、画像処理装置のようなリアルタイム性が非常に重要とされる装置を含むシステムにおいては、リアルタイム制御が乱れる原因となる。
この改善策として、ブロードキャスト送信ではなく、1対1通信のユニキャスト送信を用いることが考えられる(特許文献2参照)。この場合には、送信側の制御装置がデータ信号を受信側の制御装置に対して送信し、その後、受信側の制御装置から正常に受信したことを知らせるACK信号を受け取ることでデータ信号の送達確認を実施している。この方法によれば、通信は全て1対1のユニキャスト通信で実施されるため、通信を実施している他の制御装置ではデータを受信することがなくなるので、伝送通信路上の関係ないデータを受信してリアルタイム制御が不定期に乱れることがなくなる。
特開2003−345422号公報(段落「0038」〜「0052」、図4) 特開2005−136881号公報(段落「0009」〜「0021」、図1)
しかしながら、分散制御で用いられているフィールドLANは、リアルタイム応答性が求められるものであるため、伝送路上のパケットサイズが小さい。そのため、データ量が多い場合にはデータを大量のパケットに分割して送信する必要があり、スループットが必要な大容量のデータ転送には、ブロードキャスト通信による自律分散制御方式は不向きである。
また、ブロードキャスト送信を実施した場合は、通信データを処理する必要のない他の制御装置が伝送通信路上からのデータを全て受信するので、制御装置の負荷が高くなり、画像処理装置のようにリアルタイム性が非常に重要とされる装置を含むシステムにおいては、リアルタイム制御が乱れる原因となっている。
一方、ユニキャスト送信を実施した場合には、送信側と受信側とでそれぞれ固有のコネクションを接続する必要があり、伝送通信路上の制御装置や制御プロセスの追加、削除が容易ではない。
さらにユニキャスト通信では、それぞれ固有のコネクションを接続することで個々にデータの送受信が行われるため、通信データのパケットを時系列的および統一的にロギングできず、通信で異常が発生した場合の問題解決に時間を要している。
本発明は、通信伝送路上の制御装置および制御プロセスの追加、削除と、さらにリアルタイム性を保つ制御装置および通信方法を提供することを課題とする。
前記課題を解決するため、本発明は、
タスクを実行する制御プロセスを1つ以上備える制御装置が伝送通信路上複数接続される分散制御システムにおける通信方法であって、
前記制御装置は、パケットの送受信を制御する通信サーバと、前記制御プロセスにおける識別子毎の受信要求の情報およびポートの情報を記憶している受信識別子記憶部とを備え、
前記通信サーバが送受信を制御するパケットは、識別子と前記識別子により識別されるデータとを含み、
前記通信サーバは、
他の制御装置からパケットを受信し、受信した該パケットを自制御装置内の制御プロセスへと送信する場合には、
受信したパケットに含まれる識別子から、前記受信識別子記憶部の記憶内容を用いて、受信要求する制御プロセスがあるか否かを判別し、
受信要求する制御プロセスがある場合には、対応するポートへ前記パケットを送信し、
受信要求する制御プロセスが無い場合には、前記パケットを廃棄する構成とした。その他の手段については、後記する実施の形態で述べる。
本発明によれば、通信伝送路上の制御装置および制御プロセスの追加、削除と、さらに通信におけるリアルタイム性を保つことができる。
本発明を実施するための最良の形態(以下「実施形態」と記載)を詳細に説明する。
図1は、LAN上でユニキャスト通信を実施する分散制御システムにおけるネットワーク構成例を示す図である。
この分散制御システムは、制御装置100として、制御装置A110、制御装置B120、制御装置C130、制御装置D140が、Ethernet(登録商標)等の同一の伝送通信路10上に接続されている構成である。
各制御装置100は一般的なコンピュータで具現され、それらの記憶部(図示省略)には、プロセスを実行するためのOS(Operating System)が存在する。このOSが実行するプロセスはそれぞれ、1つのタスクを実行するためのプログラムに相当する。
制御装置A110の記憶部には、通信を司る通信サーバ111、プロセスである制御プロセス(112a,112b,112c)が備えられ、これらの機能は制御装置A110内のCPUによって実現される。この制御プロセス(112a,112b,112c)とは例えば、画像処理を行うメモリボードや、画像処理演算を実行するI/Oボードを制御するためのプログラム等でもよい。また通信サーバ111も1つのプロセスである。
なお、図1では3つの制御プロセス(112a,112b,112c)を例として記載してあるが、これに限らず、制御プロセスの数は必要に応じて適宜変更可能である。
制御装置B120内の制御プロセス群122は、1つ以上の制御プロセスを群として記述したものである。制御装置C130の制御プロセス群132、制御装置D140の制御プロセス群142も同様である。
また、制御装置A110の通信サーバ111と同様に、制御装置B120内に通信サーバ121を備え、制御装置C130内に通信サーバ131を備え、制御装置D140内に通信サーバ141を備えている。
なお、ここでは、任意の制御装置を指すときは符号100を用い、任意の通信サーバを指すときは符号101を用い、任意の制御プロセスを指すときは符号112を用いる。
制御装置100内における通信サーバ101およびそれぞれの制御プロセス112間のやりとりは、特開平8−55035号公報で開示されるように、標準的なOSの機能として用意されているプロセス間通信を介して行われるものとする。
例えば、制御装置A110内の制御プロセス112aおよび制御プロセス112bといった制御装置A110内の制御プロセス間と、制御装置A110内の制御プロセス112aおよび制御装置B120内の制御プロセス群122の中の一つの制御プロセスといった伝送通信路10をまたいだ制御プロセス間と、どちらの通信においても使用される図1のパケット150は、ID(識別子)151とデータ152とで構成される。ID151はデータ内容毎の識別を示し、送受信のための識別子として使用される。データ152とID151は、例えばID151の値「0」であれば「接続機器XのON/OFF」、ID151の値「1」であれば「画像情報」、ID151の値「3」であれば「計測情報」等というように設定される。
図2は、図1の制御装置の機能を詳細に記載したブロック図の一例である。図2は制御装置A110を例として示している。
制御装置A110の記憶部には、送信ホスト管理テーブル(送信ホスト記憶部)113、受信ID管理テーブル(受信識別子記憶部)118、送信ID管理テーブル(送信識別子記憶部)119が備えられる。
送信ホスト管理テーブル113は、通信相手との接続が完了(コネクション接続完了)している制御装置100の情報およびポートの情報を管理するためのテーブルである。
受信ID管理テーブル118は、通信サーバ111が受信したパケット150を各制御プロセス112が受信するか否かの情報を管理するためのテーブルである。
送信ID管理テーブル119は、データ152を識別するID151の値毎に、送信先を一意に識別する宛先であるIPアドレス情報を管理するためのテーブルである。
さらに、制御装置A110の記憶部には、受信バッファ116および送信バッファ117、ロギングバッファ190が備えられる。
受信バッファ116および送信バッファ117は、通信サーバ111(および制御プロセス112)が処理中であった場合に、パケット150の一時待避所として使用される領域である。
ロギングバッファ190は、通信サーバ111を送受信共に経由するパケット150のログを格納する領域である。
以上、制御装置A110を例として制御装置100を説明したが、通信サーバ111、受信ID管理テーブル118、送信ID管理テーブル119、送信ホスト管理テーブル113、およびロギングバッファ190は、本実施形態において接続される全ての制御装置100内に備えられる。
[パケット送信]
パケット送信時の通信方法について説明する。
ここでは、制御装置A110内の制御プロセス112aが制御装置B120内の制御プロセス群122(内の1つのプロセス)に対してパケット150(ID151の値「1」とデータ152)を送信する場合を例として、制御装置A110内の制御プロセス112aおよび通信サーバ111における処理を、図5のフローに沿って説明する。
制御プロセス112aがパケット150を送信する場合には、制御装置A110に含まれる通信サーバ111は、送信ID管理テーブル119に、送信したいデータ152の内容に対応するID151の値毎に送信先の制御装置100のIPアドレスを登録しておく。
図3(a)は、送信ID管理テーブルの構成例を示す模式図である。
送信ID管理テーブル119は、ID151の値は「0」〜「255」まで利用可能としており、それぞれの値毎に連結リストを持たせた構造となっている。なお、今回は説明のためID151の値は「0」〜「255」の範囲としているが、値はこれに限らず、システム規模により変更してもよい。
要素310は、当該ID値のデータを送信する相手である制御装置100のIPアドレスが格納されるIPアドレス312と、ポインタであるnext311とで構成される。
連結リスト構造とは、リストに含まれる各要素がポインタによって連結されている構造を示す。ここでは、例えば要素310は、next311によって要素320と連結されている。連結リストの最後の要素であるか否かは、next311の値がNULL(値が0)か否かで判別できる。図3(a)では、要素320のnext321がNULLとなっていることから、例えばID151の値「0」のデータ152(パケット150)はIPアドレス312(を持つ制御装置100)にだけ送信するということになる。
図5に戻って説明する。
制御装置A110内において制御プロセス112aが、通信サーバ111に対して、送信ID管理テーブル設定要求を送信する(S501)。
通信サーバ111は、プロセス間通信で受信する情報を常に監視しており、受信した情報が送信ID管理テーブル設定要求だった場合(S502→送信ID管理テーブル設定要求)、送信相手である制御装置B120のIPアドレスを、送信ID管理テーブル119に登録する(S503)。例えば図3(a)では、ID151の値が「1」の要素330には、next331がNULLとなっていることから、IPアドレスが未登録となっていることがわかる。そのため、ID151の値「1」の先頭の要素330において、next331には次に新しく生成した要素のアドレスを設定し、IPアドレス332には制御装置B120のIPアドレスを設定して登録する。
以上のステップS501,S502,S503における送信ID管理テーブル119へのIPアドレス登録処理は、初期設定として予め行われていることが望ましい。
また、本説明では、例として制御プロセス112aが送信するパケット150(ID151の値「1」)について説明したが、この登録処理は、制御装置100内の全制御プロセス112から送信される全てのパケット150について行われるようにしてもよい。
続いて、制御プロセス112aは、ID151とデータ152とを含んだパケット150を、プロセス間通信を使用して、通信サーバ111に対して送信する(S504)。
通信サーバ111は、プロセス間通信で受信する情報を常に監視しており、受信した情報が制御プロセス112aからの送信用パケット(パケット150)だった場合(S502→制御プロセスからの送信用パケット)、制御プロセス112aから受信したパケット150に含まれるID151の値を確認する。今回のID151の値は「1」のため、送信ID管理テーブル119のID151の値「1」の連結リストを参照し、パケット150を送信するIPアドレス332(図3(a)参照)を取得する(S505)。
続いて通信サーバ111は、ID151の値「1」のIPアドレス332について、送信ホスト管理テーブル113内に、同じIPアドレスの情報が登録されているか否かを判別する(S506)。
図3(b)は、送信ホスト管理テーブルの構成例を示す模式図である。
送信ホスト管理テーブル113は、既にコネクションが接続されている通信相手の情報が、前記した送信ID管理テーブル119と同様に連結リストとして格納されている。この連結リスト構造により、各要素(340,350,360)がポインタであるnext(341,351,361)によって連結され、連結リストの最後の要素か否かは、next(341〜361)の値がNULL(値が0)か否かで判別できる(図3(b)ではnext361)。つまり、図3(b)の送信ホスト管理テーブル113は、2つの要素(340,350)と、最後に要素360、という構成となっている。
要素340には、データを送信する制御装置100のIPアドレス343と、コネクション接続正常完了時に割り当てられるポートの番号である論理回線ポートNo342の情報とが格納される。他の要素(350,360)も要素340と同様の構成である。
ステップS506において、送信ホスト管理テーブル113に当該のIPアドレスが登録されていない場合(S506→N)、送信相手である制御装置B120とコネクションが接続されていないということになるので、送信相手に対してコネクション接続要求を送信するため、ステップS507の処理に進む。
TCP/IP(Transmission Control Protocol/Internet Protocol)を用いたユニキャスト通信を行うためには、送信の前に必ず送信相手とのコネクション接続を実施して、通信のための論理回線ポートを割り当てる必要がある。
ステップS507では、通信サーバ111は当該IPアドレス(ここでは制御装置B120のIPアドレス)に、コネクション接続要求を送信する(S507)。送信相手である制御装置B120の通信サーバ121はこれを受信、処理し、コネクション接続完了の信号を制御装置A110へ送信する。
通信サーバ111は、制御装置B120からコネクション接続完了の信号を受信したら、コネクション接続が正常完了したことになるので(S508→Y)、送信ホスト管理テーブル113の連結リストの最後の要素360において、制御装置B120のIPアドレスをIPアドレス363に格納すると共に、自身で当該IPアドレス用に割り当てたポートの情報(番号)を論理回線ポートNo362に格納する(S509)。これにより、制御装置A110および制御装置B120間でコネクション接続が正常完了したことになる。
なお、本実施形態では、例として制御装置B120を登録したが、他の制御装置100についても登録方法は同様である。
通信サーバ111は、送信ホスト管理テーブル113から当該IPアドレスに対応する論理回線ポートNo(342,352,362)を取得し、当該ポートにパケット150を送信する(S510)。送信されたパケット150は、制御装置B120に受信され、制御装置B120内の通信サーバ121によって、制御プロセス群122内の最適な制御プロセスにプロセス間通信を使用して送信される(詳細はパケット受信において後記)。
なお、ステップS507〜S509のコネクション接続要求および登録の処理は、コネクション接続の初期情報として予め、例えば制御装置A110の電源起動時等に、接続されている全ての制御装置100に対して実行されてもよい。
一方、ステップS506において、送信ホスト管理テーブル113のIPアドレス(343,353,363(図3(b)参照))に、当該のIPアドレスと同じIPアドレスが登録されている場合(S506→Y)、既に送信相手との接続は完了し、ポートも割り当てられているため、当該ポートに対してパケット150を送信することにより、制御装置A110の通信サーバ111は、送信相手の制御装置B120の通信サーバ121に対してパケット150を送信する(S510)。
一方、ステップS508において、コネクション接続が正常終了しなかった場合(S508→N)は、送信相手とコネクションが接続できずポートも割り当てられない。そのため、通信サーバ111は、制御プロセス112aから受信したパケット150を廃棄する(S511)。
なお、送信ID管理テーブル119のID151において、同じID値の連結リストに複数の要素310が登録されている場合は、ID151の値が同じパケット150を複数の制御装置100(IPアドレス)に対して送信する。つまり、送信可能な制御装置100(IPアドレス)に対して、同じパケット150を、それぞれ送信するということである。
本実施形態では、制御プロセス112aは、通信サーバ111に送信したパケット150が制御装置B120に届いたかどうかについては判別しない。つまり、送信相手の制御装置B120が機能削除等でネットワークから削除された場合においても、パケット150の送信処理が実施されないだけで、その他の処理は問題なく縮退運転することが可能である。
また、前もって送信ID管理テーブル119に、システムの最大構成を考慮した上で、ID151の値毎に、送信相手となる制御装置100のIPアドレスを登録しておくことで、当初はその制御装置100が存在しなくても、その制御装置100が追加されたとき(その制御装置100宛にパケット150が送信されたとき)にコネクションの接続が行われ、コネクション接続時に割り当てられたポートを使用して送信が行われるため、システムの拡張も容易に行うことが可能となる。
[パケット受信]
パケット受信時の通信方法について説明する。ここでは、制御装置B120内の制御プロセス群122の1つのプロセスから送信されたパケット150(ID151の値「2」とデータ152)を、制御装置A110内の制御プロセス112bが受信する場合を例として、制御装置A110の制御プロセス112bおよび通信サーバ111における処理を、図6のフローに沿って説明する。
制御プロセス112bがID151の値「2」のパケット150を受信したい場合には、制御装置A110に含まれる通信サーバ111の受信ID管理テーブル118に、受信したいパケット150を識別するID151の値を登録しておく。
図4は、受信ID管理テーブルの構成例を示す模式図である。
受信ID管理テーブル118は前記した送信ホスト管理テーブル113と同様に連結リスト構造となっており、制御プロセス(112a〜112c)毎に1つの要素420を登録できる構成となっている。要素420は、ポインタであるnext421と、論理回線ポートNo422と、制御プロセス112bが受信したいデータを識別するID151の値を登録するrecv_ID423とで構成される。
論理回線ポートNo422は、当該制御プロセス112bおよび通信サーバ111間におけるプロセス間通信のために割り当てられるポートの番号である。
recv_ID423は、図4に模式的に示されるように、各1Bitが1つのID151の値と対応する構成となっている。なお本実施形態では、送信管理IDテーブル119でID151の値を「0」〜「255」の範囲としているため、recv_ID423の値も「0」〜「255」の範囲となっているが、これに限らず、システム規模により変更してもよい。
ID151の値に対応している各Bitの値を「1」に設定すると受信可となり、このID151の値を含むパケット150を論理回線ポートNo422のポートへ送信することを意味し、Bitの値が「0」の場合には受信否となり、このID151の値を含むパケット150は論理回線ポートNo422のポートへは送信しないことを意味する。
ある制御プロセス112において、受信可否を新規に受信ID管理テーブル118へ登録する時は、受信ID管理テーブル118の連結リストの最後の要素420に登録することとなる。連結リストの最後の要素か否かはnext421の値がNULL(値が0)かどうかで判断することができる。
論理回線ポートNo422にポートが登録されることで、通信サーバ111がパケット150の送受信を行うことにより、制御プロセス(112a〜112c)と通信サーバ111との間でパケット150の送受信を行うことが可能となる。また、ポート毎に受信バッファ116、送信バッファ117が用意されており、これらのバッファ(116,117)を介して制御プロセス(112a〜112c)および通信サーバ111間のパケット150の送受信を効率的に行うことが可能となる。
図6に戻って説明する。
制御プロセス112bは、通信サーバ111に受信ID管理テーブル設定要求を送信する(S601)。
通信サーバ111は、受信する情報を常に監視しており、受信した情報が受信管理テーブル設定要求だった場合(S602→受信ID管理テーブル設定要求)、受信ID管理テーブル118において連結リストの最後の要素420のrecv_ID423でID151の値「2」のBitを「1」に設定し(図4)、さらに制御プロセス112bに割り当てるポートを論理回線ポートNo422に設定した、要素420を登録する(S603)。
本説明ではID151の値「2」のBit1つを設定する方法を説明したが、1つの制御プロセス112bにおいて、複数または全てのID151の値(「0」〜「255」)に受信可能な値「1」を設定し、パケット150を複数または全て受信することも可能である。
また、要素420の新規追加だけでなく、制御プロセス112毎のrecv_ID423の修正も可能である。
一方、ステップS602において、制御装置A110内の通信サーバ111が受信したパケット150が、制御装置B120内の制御プロセス群122から送信された受信用パケット(パケット150)であった場合(S602→他制御装置100からの受信用パケット)、通信サーバ111は受信したパケット150に含まれるID151の値を確認する。今回のID151の値は「2」のため、受信ID管理テーブル118の要素420からrecv_ID423内の値「2」に対応するBitに「1」が設定されているか否かを全要素420において判別する(S604)。
通信サーバ111は、受信ID管理テーブル118のrecv_ID423において、値「2」でBitが「1」の要素420があった場合(S604→Y)、受信ID管理テーブル118の当該要素420の論理回線ポートNo422からポートの情報を取得し、当該ポートにパケット150を送信する(S605)。これにより、制御プロセス112bはID151の値「2」のパケット150を通信サーバ111から受信することができる(S607)。
一方、ステップS604においてrecv_ID423の値「2」のBitが全ての要素420において「0」となっている場合(S604→N)、当該パケット150を受信する制御プロセス112は存在しないということになるので、通信サーバ111は受信したパケット150を廃棄する(S606)。
なお、受信ID管理テーブル118に複数の要素420が存在し(つまり、複数の制御プロセス(112a〜112c)が登録されている)、その複数の制御プロセス(112a〜112c)にわたって、同じID値のBitに「1」が設定されていた場合、当該ID値を持つパケット150は、受信可となっている複数の制御プロセス112に、通信サーバ111によって送信される。
以上説明した制御装置および通信方法により、通信サーバ111がID151を用いてパケット150の送信可否および受信可否を判別することにより、ネットワーク負荷を軽減し、送受信に伴うリアルタイム性を保つことができ、さらに、システム構成が可変なシステムにおいて、通信伝送路10上の制御装置100および制御プロセス112の追加、削除を容易とすることができる。
つまり、例えば、通常は制御プロセス112bがシステム上必要であるが、特定の場合には制御プロセス112bが必要ない、というような場合には、制御プロセス112bをプログラム起動せず、受信ID管理テーブル118のrecv_ID423で当該ID151の値のBitを「0」と設定することで、制御プロセス112bにパケット150が送信されることがなくなり、他に受信要求する制御プロセス112が存在しなければ、パケット150は廃棄されることとなる。
[ログの保存]
本発明は、全ての制御装置100内に通信サーバ101を設けたことにより、この構成で送受信されるパケット150は、全て通信サーバ101を経由する。そのため、通信サーバ101を介して送受信したパケット150を、例えば送受信の行われた年月日時刻、送受信相手のIPアドレス等と共に、図2のロギングバッファ190に格納することにより、統一的かつ時系列的に通信されたパケット150のロギングを実施することが可能となる。
ロギングバッファ190はリングバッファ構成となっており、一定のサイズが蓄積されると、上書きされるものである。ロギングバッファ190のサイズは、システムの通信量を見越して変更が可能である。また、パケット150の送信、受信が識別できるよう送受信識別のための情報も格納しておく。これにより、通信で異常が発生した場合に迅速な通信ログの解析を実施することが可能である。
以上、本発明を実施する最良の形態について、例を挙げて詳細に説明したが、これに限定されるものでなく、本発明の趣旨を逸脱しない範囲で適宜変形可能である。
本実施形態におけるネットワーク構成例を示す図。 図1における制御装置の詳細な機能を示すブロック図。 本実施形態における (a)送信ID管理テーブルの構成例、(b)送信ホスト管理テーブルの構成例、を示す模式図。 本実施形態における受信ID管理テーブルの構成例を示す模式図。 本実施形態におけるパケット送信時の処理フロー図。 本実施形態におけるパケット受信時の処理フロー図。
符号の説明
100,110,120,130,140 制御装置
101,111,121,131,141 通信サーバ
112,112a,112b,112c 制御プロセス
113 送信ホスト管理テーブル(送信ホスト記憶部)
116 受信バッファ
117 送信バッファ
118 受信ID管理テーブル(受信識別子記憶部)
119 送信ID管理テーブル(送信識別子記憶部)
122,132,142 制御プロセス群
150 パケット
151 ID
152 データ
190 ロギングバッファ

Claims (6)

  1. タスクを実行する制御プロセスを1つ以上備える制御装置が伝送通信路上で複数接続される分散制御システムに用いられる制御装置であって、
    前記制御装置はパケットの送受信を制御する通信サーバと、前記制御プロセスにおける識別子毎の受信要求の情報およびポートの情報を記憶している受信識別子記憶部とを備え、
    前記通信サーバが送受信を制御するパケットは、識別子と前記識別子により識別されるデータとを含み、
    前記通信サーバは、
    他の制御装置からパケットを受信し、受信した該パケットを自制御装置内の制御プロセスへと送信する場合には、
    受信したパケットに含まれる識別子から、前記受信識別子記憶部の記憶内容を用いて、受信要求する制御プロセスがあるか否かを判別し、
    受信要求する制御プロセスがある場合には、対応するポートへ前記パケットを送信し、
    受信要求する制御プロセスが無い場合には、前記パケットを廃棄する
    ことを特徴とする制御装置。
  2. 前記制御装置が、
    前記識別子毎に通信相手のIPアドレスの情報を記憶している送信識別子記憶部と、
    前記通信相手のIPアドレスとポートの情報を記憶している送信ホスト記憶部とを備え、
    前記通信サーバ
    自制御装置内の制御プロセスからパケットを受信し、受信した該パケットを他の制御装置へと送信する場合には、
    前記送信識別子記憶部の記憶内容を用いて、パケットに含まれる識別子から送信相手のIPアドレスを取得し、
    前記送信ホスト記憶部に、前記取得したIPアドレスが存在するか否かを判別し、
    前記判別において、前記取得したIPアドレスが存在した場合には、前記送信ホスト記憶部から当該IPアドレスに対応するポートを取得して前記ポートから前記パケットを送信し、
    前記判別において、前記取得したIPアドレスが存在しない場合には、コネクション接続要求を前記取得したIPアドレスに送信して、コネクションを接続完了した後に、当該IPアドレスおよび割り当てたポートの情報を前記送信ホスト記憶部に記憶し、前記割り当てたポートへ前記パケットを送信し、
    前記コネクションを接続完了しなかったときは、前記パケットを廃棄する
    ことを特徴とする請求項1に記載の制御装置
  3. 前記受信識別子記憶部には、前記制御プロセスにおける識別子毎の受信要求を示す1ビットの情報が、識別子の順に並べられているデータ構造として記憶されており、
    前記通信サーバは、前記制御プロセスから複数の識別子毎の受信要求の情報を受信すると、その受信した情報で受信識別子記憶部を更新することを特徴とする請求項1または請求項2に記載の制御装置。
  4. タスクを実行する制御プロセスを1つ以上備える制御装置が伝送通信路上で複数接続される分散制御システムにおける通信方法であって、
    前記制御装置はパケットの送受信を制御する通信サーバと、前記制御プロセスにおける識別子毎の受信要求の情報およびポートの情報を記憶している受信識別子記憶部とを備え、
    前記通信サーバが送受信を制御するパケットは、識別子と前記識別子により識別されるデータとを含み、
    前記通信サーバは、
    他の制御装置からパケットを受信し、受信した該パケットを自制御装置内の制御プロセスへと送信する場合には、
    受信したパケットに含まれる識別子から、前記受信識別子記憶部の記憶内容を用いて、受信要求する制御プロセスがあるか否かを判別し、
    受信要求する制御プロセスがある場合には、対応するポートへ前記パケットを送信し、
    受信要求する制御プロセスが無い場合には、前記パケットを廃棄する
    ことを特徴とする通信方法。
  5. 前記制御装置が、
    前記識別子毎に通信相手のIPアドレスの情報を記憶している送信識別子記憶部と、
    前記通信相手のIPアドレスとポートの情報を記憶している送信ホスト記憶部とを備え、
    前記通信サーバ
    自制御装置内の制御プロセスからパケットを受信し、受信した該パケットを他の制御装置へと送信する場合には、
    前記送信識別子記憶部の記憶内容を用いて、パケットに含まれる識別子から送信相手のIPアドレスを取得し、
    前記送信ホスト記憶部に、前記取得したIPアドレスが存在するか否かを判別し、
    前記判別において、前記取得したIPアドレスが存在した場合には、前記送信ホスト記憶部から当該IPアドレスに対応するポートを取得して前記ポートから前記パケットを送信し、
    前記判別において、前記取得したIPアドレスが存在しない場合には、コネクション接続要求を前記取得したIPアドレスに送信して、コネクションを接続完了した後に、当該IPアドレスおよび割り当てたポートの情報を前記送信ホスト記憶部に記憶し、前記割り当てたポートへ前記パケットを送信し、
    前記コネクションを接続完了しなかったときは、前記パケットを廃棄する
    ことを特徴とする請求項4に記載の通信方法。
  6. 前記受信識別子記憶部には、前記制御プロセスにおける識別子毎の受信要求を示す1ビットの情報が、識別子の順に並べられているデータ構造として記憶されており、
    前記通信サーバは、前記制御プロセスから複数の識別子毎の受信要求の情報を受信すると、その受信した情報で受信識別子記憶部を更新することを特徴とする請求項4または請求項5に記載の通信方法。
JP2005327273A 2005-11-11 2005-11-11 制御装置および通信方法 Expired - Fee Related JP4608416B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005327273A JP4608416B2 (ja) 2005-11-11 2005-11-11 制御装置および通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005327273A JP4608416B2 (ja) 2005-11-11 2005-11-11 制御装置および通信方法

Publications (2)

Publication Number Publication Date
JP2007135049A JP2007135049A (ja) 2007-05-31
JP4608416B2 true JP4608416B2 (ja) 2011-01-12

Family

ID=38156336

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005327273A Expired - Fee Related JP4608416B2 (ja) 2005-11-11 2005-11-11 制御装置および通信方法

Country Status (1)

Country Link
JP (1) JP4608416B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0662089A (ja) * 1992-08-07 1994-03-04 Fujitsu Ltd 通信システムにおける障害情報採取方法
JP2003177930A (ja) * 2001-09-04 2003-06-27 Samsung Electronics Co Ltd プロセス間通信方法及び装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0662089A (ja) * 1992-08-07 1994-03-04 Fujitsu Ltd 通信システムにおける障害情報採取方法
JP2003177930A (ja) * 2001-09-04 2003-06-27 Samsung Electronics Co Ltd プロセス間通信方法及び装置

Also Published As

Publication number Publication date
JP2007135049A (ja) 2007-05-31

Similar Documents

Publication Publication Date Title
US11165869B2 (en) Method and apparatus for dynamic destination address control in a computer network
CN107948076B (zh) 一种转发报文的方法及装置
US8005968B2 (en) Single-interface dynamic MTU control
JP2003333050A (ja) データ送信方法
US9344399B2 (en) Relay server and relay communication system
JP2001313674A (ja) ネットワーク装置およびコンピュータネットワーク
JP2006262193A (ja) 制御装置、パケット転送方法およびパケット処理装置
KR101388408B1 (ko) 복수의 컴퓨팅 디바이스들로의 일대다 데이터 송신을 용이하게 하기 위한 방법 및 시스템
US20040267960A1 (en) Force master capability during multicast transfers
US20050265257A1 (en) Networking apparatus and method
WO2017219777A1 (zh) 一种报文处理方法及装置
JP4608416B2 (ja) 制御装置および通信方法
US20030167341A1 (en) Communications system, communications method, network manager, and transfer device
JP2009253578A (ja) ネットワーク負荷分散装置、ネットワーク負荷分散方法及びプログラム
US9455911B1 (en) In-band centralized control with connection-oriented control protocols
JP2006222659A (ja) 無線通信装置、無線通信システム及び方法
CN108632898B (zh) 一种通信设备以及封包传送的方法
KR101543772B1 (ko) 네트워크 액세스 장치 및 그 장치에서 수행되는 패킷 전달 방법
US10545702B2 (en) Information processing apparatus, communication control method and communication system
WO2016202072A1 (zh) 自动配置方法、控制器及设备
JP5640862B2 (ja) 通信システム、通信装置、およびプログラム
JP2654524B2 (ja) Lanの接続ポート切り替え方式
JP2009224825A (ja) 通信装置およびデータ送信制御方法
JP2007013510A (ja) パケット通信システムおよびパケット通信装置
JPH0364224A (ja) マルチポートブリッジ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100525

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100712

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101008

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131015

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees