ネットワークプログラミング
ソフトウェア開発フレームワーク
C / Sアーキテクチャ(クライアント/サーバー)
C:クライアント
S:サーバー
B / Sのアーキテクチャ(ブラウザ/サーバ)
B:ブラウザ
S:サーバー
PS:BSのアーキテクチャは、アーキテクチャ、CSの本質であります
サーバー:24時間サービス
クライアント:サービスを体験したかった場合は、サーバーの要求サービスに行ってきました
ネットワークプログラミングの歴史
最古のいずれかの高度な技術を軍事に由来しています
戻る過去へ
1.電話線早いです
2.ビッグアスインターネット回線
3.ラップトップコンピュータのワイヤレス電話カード
最初のリモート通信条件を達成するためにそれを必要とする:物理的な接続媒体を
人々は共通の言語のバリアフリー交換を達成するために言っている - 英語を
リモートコンピュータは、共通の欧州標準/プロトコルの追加を必要とされる物理的接続媒体に加えて、コンピュータと通信します
OSIプロトコル
OSI 7層のプロトコル
アプリケーション層
プレゼンテーション層
セッション層
トランスポート層
ネットワーク層
データリンク層
物理接続層
五層OSIプロトコル
アプリケーション層
トランスポート層
ネットワーク層
データリンク層
物理接続層
物理接続層1
電気信号伝送に基づい0101010バイナリデータ
2.データリンク層
1.所定の電気信号グルーピング
2.インターネットに関わるすべてのコンピュータの規定は、ネットワークカードを持っている必要があります
上記カードのいかなる部分は、世界でもユニークな番号が刻まれていません
12進数
トップ6ベンダーは番号が付けられています
6後数直線であります
これは、12桁のMACアドレスです
PS:上記の2点を総称して「イーサネットプロトコル」と称される
スイッチ
イーサネットベースの通信プロトコルは、ローカル・エリア・ネットワークを介して通信することができません
インターネット接続はNによって互いにLAN間行われます
3.ネットワーク層
IPプロトコル、インターネットに接続されたコンピュータ限り提供は、IPアドレスを持っている必要があります
特長のIPアドレス:ドット十進
最小IPアドレス:0.0.0.0
最大のIPアドレス:255.255.255.255
IPアドレスの2つのバージョンがあります。IPV4 IPV6(によるIPV4既存の不適切な表現のコンピュータなので、IPV6バージョンの導入は)
IP地址是动态匹配的
4.传输层
TCP/UDP都是基于端口工作的协议
端口(port)
计算机与计算机之间其实是计算机上的应用程序与应用程序之间的通信
端口:用来唯一表示一台计算机上的某个应用程序
端口号的范围:0~65535
注意:0~1024这些都是操作系统默认使用的端口号
建议:使用8000之后的端口
MySQL默认端口:3306
Redis默认端口:6379
diango默认端口:8000
flask默认端口:5000
端口号是动态分配的
第一次启动qq分配到的是8989
将qq关闭再次启动端口号可能就变了
总结:
IP地址:用来唯一标识接入互联网的一台计算机
port端口:用来唯一表示一台计算机上的某个应用程序
IP+port:唯一表示接入互联网的一台计算机上的某个应用程序
5.应用层
HTTP协议
FTP协议
TCP协议
流式协议,可靠协议
基于TCP协议通信,必须先建立双向通道
问题:TCP协议传输数据之所以可靠的原因就在于有双向通道???
答:错
三次握手四次挥手
三次握手:
四次挥手: