TCP-echo通信のモデル Python socket module: Just a thin wrapper over the underlying C library's socket calls. TCP通信のモデル TCP-echo通信のモデルとプログラミングための背景知識 パケットとプロトコル TCP/IPネットワーク ネットワーク層(IP) トランスポート層(TCP,UDP) IPアドレスとポート番号 ソケットオブジェクト クライアント&サーバの通信モデル TCP-echo通信のモデル ソケットによるデータ通信とTCP/IPネットワーク IPヘッダ情報 IP TCP TCPヘッダ情報 データ データ TCP/IP ネットワーク •通信プログラムを作成する上では、通信相手のソケットに自分の ソケットを繋ぐことができれば、安定した通信を行うことができる。 •安定した通信は、TCP/IPのプロトコルで自動的に対処される。 •ソケットを繋ぐことができれば、 マシン同士が、どの様な通信機器 や伝送経路を辿って、データを送受信しているかなどを気にする必 要は無くなる。 TCP-echo通信のモデル パケットとプロトコル パケット プログラムにより組み立て られ、解釈されるバイトの 列 プロトコル 情報を交換する手順やパ ケットの内容について定め た決まりごと。 TCP/IPはプロトコル データ データ アプリケーション プログラム(AP) アプリケーション プログラム(AP) ソケット TCP UDP UDP TCP IP ホスト ソケット IP TCP 通信 チャネル IP ルータ 通信 チャネル IP ホスト TCP/IPネットワーク TCP-echo通信のモデル TCP/IPネットワーク TCP/IPネットワーク アプリケーションプログ ラムが、ソケットAPIを 介してUDP、TCPサー ビスを利用する通信 データ データ アプリケーション プログラム(AP) アプリケーション プログラム(AP) ソケット TCP UDP UDP TCP データの流れ AP→ソケット →TCP→IP→(IP)→IP →TCP→ソケット→AP IP ホスト ソケット IP TCP 通信 チャネル IP ルータ 通信 チャネル IP ホスト TCP/IPネットワーク TCP-echo通信のモデル ネットワーク層(IP) データ データ ネットワーク層の機能 パケットを宛先に配送するた めの問題(アドレッシング& ルーティング)を解決する アプリケーション プログラム(AP) アプリケーション プログラム(AP) ソケット パケットは個別に処理され (データグラムサービス) 、 ネットワークへ送信される 各パケットには宛先アドレス がある パケットの紛失や到着順番 の逆転が起こり得る TCP UDP UDP TCP IP ホスト ソケット IP TCP 通信 チャネル IP ルータ 通信 チャネル IP ホスト TCP/IPネットワーク TCP-echo通信のモデル トランスポート層 (TCP,UDP) トランスポート層の役割 特定のアプリケーションプログラム にパケットを届ける(ネットワーク上 のアドレッシング) ポート番号により、アプリケーション を識別 TCP パケット紛失を検出しパケットを再 送 データ アプリケーション プログラム(AP) アプリケーション プログラム(AP) ソケット ホスト ソケット IP TCP TCP UDP UDP TCP IP UDP 再送機能がない。 データ 通信 チャネル IP ルータ 通信 チャネル IP ホスト TCP/IPネットワーク TCP-echo通信のモデル IPアドレスとポート番号 ポート番号 符号無しの16ビット2進数(1~ 65,535) IPアドレスで指定されたホスト内の アプリケーションを指定する Well Known Port データ データ FTP 5000 FTP 20 TCP IPアドレス IPアドレスは、32ビット(IPv4) ドット10進表記法(10.1.2.3) IPアドレスは、コンピュータの通信 チャネルのアドレスを表す 10.1.2.3 TCP 10.1.2.5 IP IP IP TCP クライアント サーバ TCP-echo通信のモデル ソケットオブジェクト データ ソケットオブジェクト ソケットオブジェクトが、APの メッセージ通信窓口をポート にバインドする AP データ データ AP AP ソケット 論理的なネットワークアドレス IPアドレスとポート番号の組 み合わせにより、ネットワーク アドレスが論理的に拡張でき る。 1 2 65535 1 2 65535 IP TCP TCP UDP IP TCP-echo通信のモデル クライアント&サーバ の通信モデル クライアント(依頼人)が通信を開始 し、サーバ(奉仕人)がそれに応答 する。 クライアント クライアントは予めサーバのアドレ スとポート番号を知っている。 サーバ 他方、サーバはクライアントの情報 を知らない。 DNS IPアドレスは、DNSを使って調べる Well Known Port よく利用されるポート番号は、予め 割当てられている。 データ データ FTP 5000 FTP 20 TCP 10.1.2.3 TCP 10.1.2.5 IP IP IP TCP クライアント サーバ
© Copyright 2024 ExpyDoc