TCP/IP協議的淺析
互聯網發展到今天,已經沒有人會不知道網路和上網了。Internet以其獨特的魅力給整個世界帶來了一場巨大的革命。而支撐起整個互聯網的運作的正是TCP/IP協議。
TIP/IP協議並不只是單純的一個協議,它其實是一個完整的協議族。這個協議族裡面包含著一系列的協議,就比如我們所熟知的http協議,IP協議,TCP和UDP等等。這裡面的東西真要細究起來可以沒完沒了,沒完沒了。所幸我們也不是要全面解析TCP/IP協議。我們都知道最初為了把世界上各種不同的網路進行規範ISO組織提出了開放式系統互聯的參考模型, 也就是所謂的OSI參考模型。OSI參考模型一共有七層,而TCP/IP協議的參考模型只有四層。但是TCP/IP的四層卻基本包含了OIS七層的所有內容。因為OSI是一個標準化的參考模型,它考慮到幾乎所有的方面,整個模型過於臃腫,從OSI提出到現在很少有一個網路會完全的參照它的每一層來進行設計搭建。使用更多的則是簡化後的也就是我們使用至今的TCP/IP協議族。
那麼TCP/IP協議族到底是個什麼東西呢?打個比方吧,我們小時候應該都玩過各種類似抓迷藏之類的遊戲吧,那麼一個遊戲要想玩起來有一個必不可少的東西:那就是「規則」。規則其實就是規範了整個遊戲的玩法,有了規則這個遊戲才能很好的運行下去。「沒有規矩,不成方圓」此話說的是很走心了。其實換一個角度想想我們的語言又何嘗不是一種規則,有了這個規則我們不同的個體才能互相聯繫。那麼換成計算機網路也是一個意思,不同的計算機網路要怎麼樣才能交流,這就需要定義一種規則。而TCP/IP協議就是這麼一種規則。它把計算機網路通過既定的規則聯繫了起來,從而構成了我們今天看到的互聯網。TCP/IP協議族裡面的協議有很多,這次就挑幾個比較著名的講一講把。
TCP協議和UDP協議:這兩個都是傳輸層的協議,TCP(Transmission ControlProtocol,傳輸控制協議)和 UDP(User Data Protocol,用戶數據報協議)。TCP是面向連接的提供可靠的傳輸的協議。為了保證傳輸的可靠性TCP協議的連接和斷開會分別進行所謂的「三次握手」和「四次揮手」。握手和揮手的過程使用了TCP 的標誌(flag) —— SYN(synchronize) 和ACK(acknowledgement)。
三次握手:發送端首先向接收端發送一個帶SYN標誌的數據包,接收端接受到這個數據包後向發送端發送一個帶有SYN/ACK標誌的數據包表示傳達的消息已經確認,最後發送端在發送一個帶有ACK標誌的數據包,代表握手結束。
*圖取自《圖解HTTP》一書
四次揮手:首先客戶端向伺服器發送帶有FIN標誌的數據包,但是此時可能數據還沒有傳輸完畢,所以伺服器不會馬上返回一個FIN信號,而是先發送一個帶ACK標誌的數據包的確認信號,帶數據傳輸完畢後再次向客戶端發送帶有FIN標誌的信號,最後客戶端返回ACK信號表示連接結束。
TCP協議的握手和揮手的最低限度上(實際上也很大程度上 保證了)保證了連接的可靠性。
而UDP協議則不一樣,UDP協議是不可靠的,無連接的傳輸協議。UDP因為不用與客戶端建立鏈接,它的傳輸效率要比TCP協議高,適用於對傳輸效率要求高的運用。
*圖取自:TCP/IP 協議棧及 OSI 參考模型詳解
IP協議:IP協議也是一個極為重要的協議,也就是我們通常所說的IP地址。IP地址的作用主要是標識每一台不同的計算機,使得每一個機器在網路中都有唯一的地址,通過這個地址就能夠方便的找到傳輸的目的地。
HTTP協議:(HypertextTransfer Protocol)超文本傳輸協議。 用於傳輸那些構成萬維網上的頁面的文件。這個應該是我們接觸的最多的一個協議了。http協議屬於TCP/IP協議族參考模型的最上層,也就是應用層。HTTP是建立在TCP服務之上的一種應用。一個很顯著的特徵就是通過請求和響應的交換來達成通信。請求的一端稱為客戶端,而響應的一端則稱為伺服器。伺服器在沒有接受到請求的時候是不會做出響應的,一旦響應完成那麼這一次的鏈接就結束。而HTTP是一種不保存狀態的協議,也就是說一次的響應結束後,所有的東西都會消失。使用 HTTP 協議,每當有新的請求發送時,就會有對應的新響應產生。協議本身並不保留之前一切的請求或響應報文的信息。這是為了更快地處理大量事務,確保協議的可伸縮性,而特意把 HTTP 協議設計成如此簡單的。但是如果想保留一些登錄信息要怎麼辦呢?HTTP 雖然是無狀態協議,但為了實現期望的保持狀態功能,於是引入了 Cookie 技術。Cookie 是一個保存在客戶端本地的小文件,這個文件裡面記錄著上一次鏈接的一些信息,通過Cookie 就可以輕鬆的記住一些想要保留的信息了。
PS:就先寫這麼多吧。(其實是懶得繼續寫了)
推薦閱讀:
※大數據查詢網站
※小米為何要做自主處理器品牌「松果」
※2018互聯網公司兵器譜排名
※金蝶精斗雲APP V4.0發布,為何死死盯著財務這塊地?
※網路電視直播哪家好?