網絡通信協議

什麼是網絡通信協議

通過計算機網絡可以使多臺計算機實現連接,位於同一個網絡中的計算機在進行連接和通信時需要遵守一定的規則,這就好比在道路中行駛的汽車一定要遵守交通規則一樣。在計算機網絡中,這些連接和通信的規則被稱爲網絡通信協議,它對數據的傳輸格式、傳輸速率、傳輸步驟等做了統一規定,通信雙方必須同時遵守才能完成數據交換。

網絡通信協議有很多種,目前應用最廣泛的是TCP/IP協議(Transmission Control Protocal/Internet Protoal傳輸控制協議/英特網互聯協議),它是一個包括TCP協議和IP協議,UDP(User Datagram Protocol)協議和其它一些協議的協議組,在學習具體協議之前首先了解一下TCP/IP協議組的層次結構。

Tcp/ip協議可不是單單指tcp協議和ip協議

Tcp/ip協議是一個泛指,它包含下面的所有協議
在這裏插入圖片描述

Tcp/ip協議裏面的網絡模型層

Tcp/ip協議裏面的網絡模型層如下所示

首先我們要明白協議的目的就是爲了接收方都能給接收指定的發送方的正確的數據,這裏爲什麼要說指定的呢,因爲誰都能連互聯網,你不能讓接收方誰的消息都接收吧(就比如qq的三個用戶a,b,c,然後a給b發送了一個消息,你不能讓c接收a發送的消息吧),所以這裏就制定了一系列的協議讓接收方都能給接收指定的發送方的正確的數據,這就是tcp/ip協議出現的目的,
在這裏插入圖片描述

應用層協議

這裏我們就通過http協議來講就好了,Http協議即超文本傳送協議,它規定了客戶端發送給服務器的內容格式,也規定了服務器發送給客戶端的內容格式,所以就是說應用層就是規定傳送數據的格式

舉例講解應用層協議

首先查看linux裏面有沒有telnet命令,如果沒有的話,就使用下面的命令進行安裝telnet命令

yum install xinetd telnet telnet-server -y

在這裏插入圖片描述
然後執行下面的命令,telnet命令本身就是一個應用層協議,它的作用是在兩臺主機間,建立一個連接,也就是打開兩臺主機間文本傳輸的一個通道。"telnet google.com 80"表示建立本機與google.com在80端口的一個文本傳輸通道(注意此時連接的是google.com的,如果你的服務器不在國外的話,那麼下面的地址就要變成國內的服務器地址了)。因爲80端口是HTTP協議的端口,就是我們平時瀏覽網頁的端口,所以此時的應用層的協議就是http

telnet google.com 80

然後結果如下所示
在這裏插入圖片描述
然後我們按照提示按ctlr+]鍵,按完之後,在點擊enter鍵,此時結果如下所示
在這裏插入圖片描述

然後我們不能直接在telnet後面輸入命令,而是先點擊enter鍵,然後在輸入命令,然後輸入內容,比如我輸入hello內容,但是此時要注意,此時的hello根本就不符合http協議規定的內容,所以此時返回的消息報錯了,而且此時可以看到等返回數據之後,此時的鏈接就關閉了
在這裏插入圖片描述
然後我們在重新啓動一個,然後輸入下面的命令,注意下面的/符號和後面的H之間有一個空格,這個是必須的,然後在執行下面的命令的時候,要快速點擊兩次enter鍵,這個點擊兩次enter鍵也是必須的,然後此時結果如下所示,此時返回的數據就成功了,這就是http協議規定數據的內容格式的作用

GET / HTTP/1.1

在這裏插入圖片描述

傳輸層協議

當應用層裏面的數據規定好之後,那麼就要通過一定的方式進行傳輸,傳輸層協議就是規定這個傳輸的方式的,主要有tcp和udp兩種方式

網絡層協議

網絡層協議的作用就是讓客戶端可以找到互聯網裏面的指定的那一臺服務器(因爲互聯網裏面的服務器多的不行,所以就通過網絡層協議規定找的規則)

鏈路層協議

鏈路層協議就是和電腦驅動和網卡這些硬件打交道的了,這個也比較好理解的

通過一次數據的傳輸來講解Tcp/ip協議裏面的網絡模型層

如下所示,如果感覺圖不夠清晰的話,就看下面的網址
在這裏插入圖片描述
https://juejin.im/post/5a069b6d51882509e5432656#heading-42

能看到這裏的同學,就幫忙右上角點個贊吧,Thanks♪(・ω・)ノ

感謝大佬:
https://juejin.im/post/5a069b6d51882509e5432656#heading-42
https://blog.csdn.net/chentiefeng521/article/details/57418180
http://www.ruanyifeng.com/blog/2009/03/tcp-ip_model.html
https://www.jianshu.com/p/5a2e39858b68

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章