プログラム間通信をするための勉強メモ.
TCP/IP による1対1通信ではなく,UDP で Broadcast メッセージを投げて1対多通信を行う.
Client 側は Broadcast(同一ネットワーク上のすべてのマシン)に対してメッセージを投げる.
Server 側は待ち構えていて,誰にということもなく投げられたメッセージが届けばそれを受信する.
上記 client と sever をそれぞれ同一ネットワーク上に存在する2台のマシン(計4台)で実行してみる.
実行結果は以下のようになる.
Client の2台が別個に who are you? と where are you? をブロードキャストに投げると,Server の2台が同時に両 Client からのメッセージを受け取っていることがわかる.
プログラム間通信関連メモの目次
TCP/IP による1対1通信ではなく,UDP で Broadcast メッセージを投げて1対多通信を行う.
Client 側は Broadcast(同一ネットワーク上のすべてのマシン)に対してメッセージを投げる.
Server 側は待ち構えていて,誰にということもなく投げられたメッセージが届けばそれを受信する.
=== Server === | === Client === | |
from socket import * | from socket import * |
上記 client と sever をそれぞれ同一ネットワーク上に存在する2台のマシン(計4台)で実行してみる.
実行結果は以下のようになる.
=== Server1 === | === Client1 === | |
montepulciano[97]python udp_server.py | barbaresco[357]python udp_client.py | |
=== Server2 === | === Client2 === | |
soave[132]python udp_server.py | barolo[867]python udp_client.py |
Client の2台が別個に who are you? と where are you? をブロードキャストに投げると,Server の2台が同時に両 Client からのメッセージを受け取っていることがわかる.
プログラム間通信関連メモの目次