day27 網絡編程一

網絡編程 基礎


一  軟件開發架構前端

# c/s架構(client/server)
c:客戶端 / s:服務端 # b/s架構(browser/server)
b:瀏覽器 / s:服務器 ps:bs架構本質也是cs架構 手機端看上去cs架構比較火,實際上bs已經在崛起,微信支付寶都在作一件事:統一接口,手機端以後確定也是bs比較火 將來應用程序都會愈來愈簡單,加上5g和雲的力量,只要一個界面,就能實現不少功能,好比大型遊戲用手機也能玩,原來的客戶端也放到雲端

服務器和客戶端的本質區別數據庫

# 服務端:24小時不間斷提供服務 # 客戶端:何時想體驗服務,就去找心儀的服務端尋求服務

網絡編程核心django

# 學習網絡編程,就能夠開發一個cs架構的軟件
將來結合併發編程,數據庫,前端和django   就能夠一個bs架構的軟件

1.2 網絡編程的發展史編程

任何現進的技術最先都來源於軍事 # 回到過去
1.早期的電話 電話線 2.大屁股電腦 網線 3.筆記本電腦 無線電話 網卡 要想實現遠程通訊第一個須要具有的條件是:物理鏈接介質

1.3 如何實現網絡通訊flask

人要想實現無障礙交流必須說統一的語言 >>> 英文 計算機與計算機之間要想實現遠程通訊除了有物理鏈接介質以外還須要 # 公共的標準/協議:OSI協議

 

二  OSI協議
2.0 OSI七層協議瀏覽器

應用層\表示層\會話層 傳輸層\網絡層 數據鏈路層\物理鏈接層 #應表會傳網數物

OSI五層協議服務器

應用層\傳輸層\網絡層\數據鏈路層\物理鏈接層

2.1 物理鏈接層微信

# 基於電信號傳輸010101001010二進制數據

2.2 數據鏈路層網絡

# 1.規定的電信號的分組方式 # 2.規定了任何一臺接入互聯網的計算機都必須有一塊網卡
每一塊網卡上面都刻有世界上獨一無二的編號 12位16進制數 前6位是廠商編號 後6位是流水線編號 咱們管這12數叫mac地址 ps:以上兩點合稱爲"以太網協議"

2.2.1 交換機架構

基於以太網協議通訊
不能跨局域網通訊

互聯網是有N多個局域網彼此之間鏈接而成的

 

 

2.3 網絡層

# IP協議
規定了只要是接入互聯網的計算機都必須有一個IP地址 ip地址特色:點分十進制 ip地址最小:0.0.0.0 ip地址最大:255.255.255.255 ip地址目前有兩個版本:IPV4 IPV6(因爲IPV4已經不夠表示目前存在的計算機了 因此推出了IPV6版本) IP地址是動態分配的

 2.4 傳輸層

# TCP\UDP都是基於端口工做的協議
端口(port) 計算機與計算機之間實際上是計算機上的應用程序與應用程序之間的通訊 端口:用來惟一標識一臺計算機上的某個應用程序 端口號的範圍:0~65535 注意:0~1024這些都是操做系統默認使用的端口號 建議:使用8000以後的端口 MySQL默認端口:3306 Redis默認端口:6379 django默認端口:8000 flask默認端口:5000 端口號是動態分配的 第一次起qq分配到的是8989 將qq關閉再次啓動端口號可能就變了

2.4.1 總結

ip地址:用來惟一標識接入互聯網的一臺計算機 port端口:用來惟一標識一臺計算機上的某個應用程序 ip+port:惟一標識接入互聯網一臺計算機上的某個應用程序

2.5 應用層

HTTP協議
FTP協議

 


TCP協議
流式協議,可靠協議
基於TCP協議通訊 必選先創建雙向通道
TCP協議傳輸數據之因此可靠的緣由就在於有雙向通道???
三次握手四次揮手
星軌
明星出軌

三次握手建鏈接

 

四次揮手斷聯繫


洪水攻擊

相關文章
相關標籤/搜索