本サイトに記載のある会社名、製品名等は、各社の登録商標または商標です。本文中にTM、(R)マークは明記しておりません。 ※Apple、Apple ロゴ、Safariは米国および他の国々で登録された Apple Inc. の商標です。 ※iPadはApple Inc.の登録商標です。 ※Xcode,Swift,Playgrounds,Swift Playgroundsは、米国及びその他の国で登録されているApple Inc.の商標です。
▶︎   次へ
通信の仕組み (ネットワークを通じた双方向プログラミング)
◀︎   前へ
①通信ネットワーク
 インターネットなどで使用されている通信ネットワークは、TCP/IPなどの通信規約(ルール)の上でプログラム同士がデータを交換する仕組みによって形成されています。  このブックは、通信ネットワークを理解するために、複数のiPadでデータを交換し合う内容を取り扱っています。
▶︎   次へ
TCP/IP
機器のIPアドレス
②サーバーとクライアント
 TCP/IPプロトコルの上で通信するプログラムはその役割の違いから、サーバー(提供者)とクライアント(顧客)と呼ばれています。一般的に、サーバープログラムは、クライアントからの接続を指定したポート番号で待機しています。クライアントは、IPアドレスで指定したサーバーのポート番号に接続して、通信を開始するプログラムです。
指定した ポート番号 で待機
IPアドレスとポート番号を指定して接続
1️⃣リスナーで待機
 サーバープログラム側で待機しているプログラムはリスナー(視聴者)と呼ばれています。リスナーがクライアントから接続要求を受けて確立できたデータの送信/受信の出入口の事をコネクション(接続)と呼んでいます。
2️⃣コネクション 要求して接続
3️⃣リスナーがコネクション 要求を受け付けて接続
⬇️
4️⃣コネクション の確立
③リスナーとコネクション
・自分が受信中の時は送信できない。 ・クライアントが受信中でないと送信できない。
送信
はじめましょう
 一旦、コネクションが確立すると、クライアントとサーバーは、コネクションを通じてデータを送信(send)、受信(recieve)します。どちらか一方が送信するタイミングでは、もう一方は受信しなければいけません。  送信と受信は常に1対1の関係になります。
受信
④受信と送信
・サーバーが受信中でないと送信できない。 ・自分が受信中の時は送信できない。
コネクション