9. ネットワーキング

ハードウェア制御は、カメラを1本のワイヤと、その反対側にある既知の相手へとつなぐものでした。ネットワーキングとは、相手がそのワイヤ上にいない場合、すなわち同じWi-Fi上のノートパソコン、別の部屋にあるセンサー、別の国にあるサーバーなどと通信する場合、そして2つのエンドポイント間の経路が、どちらの側も制御していないハードウェアを通過する場合に起こることです。

Pythonの側からこれを扱うのは2つのモジュールです。network モジュールは、そもそもカメラをネットワークに参加させるためのものです。すなわち、Wi-Fiネットワークへの参加やイーサネットへの接続、アドレスの取得、そしてカメラが通信に参加できる状態に整えることを行います。socket モジュールは、リンクが確立した後に実際にバイトを送受信するためにPythonコードが開くものです。以降のページでは、その間に位置するものを層ごとに順を追って説明し、「ソケットを開いてバイトを書き込む」という操作が魔法ではなく当然のものに感じられるようにします。

まとめ