1対 N の通信を行う


 

デバイスサーバを用いての1対多数の通信は、以下のように設定することで可能になります。

1.  TCP複数同時接続可能な製品
 

・XPort EDGE、xPico240:TCPサーバ 4接続、TCPクライアント 2接続

・XPortPro、EDS1100、EDS2100のEvolution版:TCPクライアント 64接続

Tunnel設定でSimultaneous(同時)モードに設定しますと同時にTCP接続します。

Simultaneousモードの場合、シリアル->LAN変換情報は全部のTCP接続した先に出ます。
送り先個別指定は出来ません。
また、LAN->シリアルはどのIPから来た情報かは分からない形になります。
本件は、シリアル->LANデータ内に受取者IDを入れ、受取者は指名された時のみ
返信する運用形態となると思われます。 

運用方法はお客様が決める事になりますが、シリアル->LANデータ内に受取者IDを入れ、受取者は指名された時のみ返信する運用形態が適すると思われます。

 

2. TCP単数接続可能な製品の場合
 
(1) 接続について
 

XPort05R、XPortAR、UDS1100、UDS2100、WiPort、WiPortNR、xDirectはTCPの場合、一か所との接続/切断、別の一か所との接続/切断を順々に行う事になります。
装置Aから通信開始という運用の場合、装置Aのデバイスサーバで"Modem Modeを使用した接続"を行えば任意の装置Bを指定した接続を行えます。
この件については、本資料のTCPクライアントの項をご確認ください。

(2) 切断について
 

ModemModeでしたら +++ ATHが使えます。
+++ATHは時間を空けて行う必要があります。
その他信号線操作での切断機能もあります。(信号は製品毎に異なります) 

TCPの利点は、UDPと比べて信頼性の高い通信を行えるという点です。
各個は、クライアント稼動していない時にサーバーとなります。つまりN対N通信も出来ます。

3. UDPの場合

 

UDP通信のブロードキャストとユニキャストを併用する手法が一案として考えられます。  まず装置Aからのデータ送信時はブロードキャストで 全部の装置Bに一斉に同じデータを送ります。  このとき、装置Aからの送信データ内にお客様アプリケーションにて装置Bの個体特定のための情報を 加えます。 各装置Bは自分宛の情報かを装置B自身で判断する事が必要となります。 装置Bからのデータ送信時は、各装置Bがユニキャスト送信で宛先IPアドレスを装置Aと設定すれば、 装置B→装置Aのデータ送信を行うことも可能になります。 UDPはTCPと比べて、逐一コネクションの確立・切断を行わないためその分時間を短縮できます。 UDP通信はパケット衝突でパケットが失われても分からない事にご注意下さい。アプリケーションレベルで受信確認の応答をさせるとこれは解決します。

最終更新:
2020-07-14 10:57
改訂:
1.36
評価点数:0 (0 件の投票)
Chuck Norris has counted to infinity. Twice.

このカテゴリー内のレコード

タグ