1. 4層:アプリケーション層TCP / IPトランスポートネットワークリンクレイヤ
2 7:セッション、プレゼンテーション、アプリケーション、輸送、ネットワーク、データリンク、物理層。
理論的には7層、実際には、4であり
、3ポートプロセスを区別することです。唯一の識別マーク処理は、PIDは、コンピュータ上のプロセスであり、複数のコンピュータ上のポートである
4.80ポートがHTTPであり、21個のポートは、FTP、0から25535まで、周知の上にある
1024〜65535の動的ポート
5.コマンド、netstatの-an
4 .IPアドレス
5 .socket
遅く、ない失うデータTCP
TCP速く、簡単に失うデータに
UDPバインディング
受信のみ:シンプレックス
半二重:インターフォン
全二重:携帯電話の
再送データ
udpSocket.sendto(「こんにちは」 .encode(「UTF-8」) 、(「192.168.0.107」、8080))
、受信したデータが
1024バイトの最大値を受け取ることができ、割り当てを上記二つのデータは、2つの値の代わりに受信され、フロントを割り当てる必要がある2変数
、B = udpSocket.recvfrom(1024)
#バインディング情報、のみバインドネイティブ、送信者がバインドする必要はありません、ランダムすることができ、受信者のニーズバインドするには、IPアドレスが空になることがあり
udpSocket。バインド((「」、8080) )
の動作:
プログラムを書き、データの送受信。無制限の受け入れ
の質問は自問し、東コロンビア相場を
見返りにデータパケットを受信すると、空の取りに行く与え
エコー空の袋を
globleグローバル変数の参照研究
作業2.アナログQQチャットプログラム、マルチスレッドテストを
*インポートソケット
#はソケット作成する
UDPSocket =ソケット(AF_INET、SOCK_DGRAM)
、バインドに受信者のニーズランダムすることができ、唯一のバインドローカル、送信者がバインドする必要はありませんが、#バインディング情報を
udpSocket.bind( ( ""、8080))
#は、受信者のアドレスが誰であるかを決定#ipの
(笑"( '192.168.0.107'、8080)#udpSocket.sendto B)"
#送る中国、エンコードを追加します(文字列の後にUTF-「 8 ")
#udpSocket.sendto( 'こんにちは' .encode(" UTF-8 " )、 ( '192.168.0.107'、8080))
udpSocket.sendto( 'こんにちは' .encode(" UTF-8 " )、 (「192.168.0.107」は、8080))#
接続は各毛、IPアドレスとポート番号のために確立された後、送信データ情報を用いて、UDP
ソケットを使用して#、各ポート番号のpython3に使用することができない、同じではありません文字列のみバイトタイプ
#udpSocket.sendto(B「母」(「192.168.119.115」、8080))
#は、1024バイト、前面に2つのデータ割り当ての近くまで、閉鎖は、受信の代表であります2つの値の割り当ては、2つの上記の変数を必要とする
A、B = udpSocket.recvfrom(1024)
プリント(a.decode())
ソケットインポートから*
DEFメイン():
udpSocket =ソケット(AF_INET、SOCK_DGRAM)
udpSocket.bind(( ""、6789))
#收、打印
真中:
recvInfor = udpSocket.recvfrom(1024)
プリント( "[%S] :%S "%(STR(recvInfor [1])、recvInfor [0] .decode(" 2312" )))
であれば__name__ == "__main__":
main()の