计算机网络资料篇(二)——快速理解网络协议
《網絡編程懶人入門(一):快速理解網絡通信協(xié)議(上篇)》
《網絡編程懶人入門(二):快速理解網絡通信協(xié)議(下篇)》
一:五層模型
物理層、數據鏈路層、網絡層、傳輸層、應用層
1、物理層
使用光纜、電纜、雙絞線、無線電波等連接電腦,負責傳送0和1的電信號
2、數據鏈路層
多少個電信號為一組,確定六0和1的分組方式
a:以太網協(xié)議
規(guī)定一組電信號構成一個數據包,叫做幀。每一幀分成兩個部分:標頭和數據。
標頭:包含數據的說明項
b:MAC地址
以太網規(guī)定,連入網絡的所有設備,都必須具有網卡接口。網卡的地址,就是數據包的發(fā)送和接收地址,叫做MAC地址。(48個二進制位)
c:廣播
一:一塊網卡知道另一塊網卡的MAC地址:ARP協(xié)議
二:怎么把數據包送到接收方:向本網絡所有計算機發(fā)送,每臺計算機自己判斷
3、網絡層
屬于同一子網絡:廣播方式發(fā)送;否則采用路由轉發(fā)
MAC地址是綁定在網卡上的,網絡地址管理員分配
a:IP協(xié)議
規(guī)定網絡地址的協(xié)議,叫做IP協(xié)議
子網掩碼:32位二進制數字,網絡部分全為1,主機部分為0。
判斷兩臺計算機是否處于同一個子網絡:將兩個IP地址與子網掩碼進行AND運算,結果相同在同一個子網絡
b:IP數據包
把IP數據包直接放進以太網數據包的“數據”部分
c:ARP協(xié)議
IP數據包放在以太網數據包發(fā)送,必須知道對方的MAC地址和IP地址,從IP地址得到MAC地址:
1):兩臺主機不再同一個子網絡,把數據包傳到兩個子網絡的網關,網關處理
2):在同一個子網絡。ARP發(fā)出一個數據包,包含要查詢主機的IP地址,所在子網絡的每一臺主機都收到數據包,取出IP地址與自身IP比較,相同做出回復。
4、傳輸層
傳輸層的功能就是建立端到端的通信,網絡層建立主機到主機的通信。
表示數據包供哪個程序(進程)使用的參數:端口。
端口有16個二進制位,0—1023的端口被系統(tǒng)占用。Unix系統(tǒng)把主機+端口,叫套接字
a:UDP協(xié)議
UDP協(xié)議幾乎就是在數據前面加上端口號,也是由“標頭”和“數據”組成。把UDP數據包放入IP數據包的數據部分。
b:TCP協(xié)議
UDP協(xié)議:比較簡單,容易實現(xiàn),可靠性差
TCP協(xié)議:數據不會遺失,過程復雜,實現(xiàn)困難
5、應用層
規(guī)定應用程序的數據格式
轉載于:https://juejin.im/post/5b8540dae51d4538b204868e
總結
以上是生活随笔為你收集整理的计算机网络资料篇(二)——快速理解网络协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOS7部署Flask+Gunic
- 下一篇: Spark-core(核心)的基本介绍