上一篇: 網絡通信概念 | 手把手教你入門Python之九十三 下一篇: 端口号和套接字 | 手把手教你入門Python之九十五 本文來自于千鋒教育在阿裡雲開發者社群學習中心上線課程 《Python入門2020最新大課》 ,主講人姜偉。
網絡通信原理
DHCP:用來配置設定IP
在網絡裡都是通過IP位址查找的主機
DNS:域名 IP位址
網絡通信方式
直接通信

說明:
- 如果兩台電腦之間通過網線連接配接是可以直接通信的,但是需要提前設定好ip位址以及網絡掩碼
- 并且ip位址需要控制在同一網段内,例如 一台為
另一台為
192.168.1.1
則可以進行通信
192.168.1.2
使用集線器通信
- 當有多态電腦需要組成一個網時,那麼可以通過集線器(Hub)将其連結在一起
- 一般情況下集線器的接口較少
- 集線器有個缺點,它以廣播的方式進行發送任何資料,即如果集線器接收到來自A電腦的資料本來是想轉發給B電腦,如果此時它還連接配接着另外兩台電腦C、D,那麼它會把這個資料給每個電腦都發送一份,是以會導緻網絡擁堵
使用交換機通信
- 克服了集線器以廣播發送資料的缺點,當需要廣播的時候發送廣播,當需要單點傳播的時候又能夠以單點傳播的方式進行發送
- 它已經替代了之前的集線器
- 企業中就是用交換機來完成多态電腦裝置的連結成網絡的
使用路由器連接配接多個網絡
複雜的通信過程
- 在浏覽器中輸入一個網址時,需要将它先解析出ip位址來
- 當得到ip位址之後,浏覽器以tcp的方式3次握手連結伺服器
- 以tcp的方式發送http協定的請求資料 給 伺服器
- 伺服器tcp的方式回應http協定的應答資料 給浏覽器
總結
- MAC位址:在裝置與裝置之間資料通信時用來标記收發雙方(網卡的序列号)
- IP位址:在邏輯上标記一台電腦,用來指引資料包的收發方向(相當于電腦的序列号)
- 網絡掩碼:用來區分ip位址的網絡号和主機号
- 預設網關:當需要發送的資料包的目的ip不在本網段内時,就會發送給預設的一台電腦,成為網關
- 集線器:已過時,用來連接配接多态電腦,缺點:每次收發資料都進行廣播,網絡會變的擁堵
- 交換機:集線器的更新版,有學習功能知道需要發送給哪台裝置,根據需要進行單點傳播、廣播
- 路由器:連接配接多個不同的網段,讓他們之間可以進行收發資料,每次收到資料後,ip不變,但是MAC位址會變化
- DNS:用來解析出IP(類似電話簿)
- http伺服器:提供浏覽器能夠通路到的資料