當前位置:才華齋>計算機>網路技術>

IP、TCP和DNS與HTTP的關係

網路技術 閱讀(1.22W)

導語:IP、TCP和DNS與HTTP的關係是怎樣的呢?希望下面內容對你有所幫助,更多詳情請關注應屆畢業生考試網。

IP、TCP和DNS與HTTP的關係

  一、IP協議的概念與作用

  IP的概念:

英文為Internet Protocol,翻譯成網際協議,位於網路層。

這個網際協議這個名字聽起來有點誇張,但事實就是這樣,因為幾乎所有使用網路的系統都會用到IP協議。TCP/IP協議族中的IP指的是網際協議,它在協議名稱中佔據了一半的位置,從這可以知道IP協議是多麼的重要。這裡我們需要注意兩個概念,IP和IP地址,可能有人會把它搞混。IP其實是一種協議的名稱,而IP地址是一個地址。

  IP的作用:

把各種資料包傳送給對方。如果要保證確定傳送到對方那裡,則需要滿足各類條件,其中最重要的兩個條件是IP地址和MAC地址。

(1)IP地址:指明瞭節點被分配到的地址

(2)MAC地址:是指網絡卡所屬的固定地址

(3)區別:IP地址可變換,但MAC地址基本上不會更改。

如果你想要保證資料包傳送到對方去,那就必須滿足各種條件,其中最重要的兩個條件是IP地址和MAC地址。

什麼是IP地址呢?IP地址指明瞭節點被分配到的地址。而什麼又是MAC地址呢? MAC地址的網絡卡所屬的固定地址。形象一點來說,MAC地址就像我們的身份證號,每一個MAC地址是唯一的,並且基本不會改變。這裡我為什麼說基本不會改變呢?因為目前我們可以通過軟體修改,也就是用軟體來修改MAC地址。IP地址是可以和MAC地址進行配對的。

我們來了解一下使用ARP協議憑藉MAC地址進行通訊

什麼是ARP協議呢?ARP協議它是一種用以解析地址的協議,我們只要知道通訊方的IP地址,就可以反查出對應的MAC地址。也就是說IP間的通訊依賴於MAC地址。

我們來看一下這個圖:

在網路上,通訊的雙方通常都是要經過多臺計算機或者網路裝置中轉才能連線到對方。而在進行中轉時,會利用下一站中轉裝置的MAC地址來搜尋下一個中轉目標,這時我們就是靠ARP協議來進行處理。

  二、TCP協議的概念與作用

(1)TCP的概念:TCP英文為Transmission Control Protocol ,翻譯成傳輸控制協議,位於傳輸層。

(2)TCP有什麼作用呢?它是提供可靠的 位元組流服務。

(3)什麼是位元組流服務?所謂的位元組流服務指的是,為了方便傳輸,將大塊資料分割成 以報文段為單位的資料包 進行管理

(4)為何強調可靠呢?因為它能夠把資料準確可靠地傳送給對方。總而言之,TCP協議就是為了 更容易傳送大資料 才把資料分割,而且TCP協議能夠確認資料 最終是否送達對方。

(5)TCP協議如何才能保證提供可靠的服務?它採用了三次握手策略。 也就是用TCP協議 把資料包送出去後,它不會對傳送後的情況置之不理,它一定會想對方確認 是否成功送達。

  三、TCP協議的三次握手過程

我們來看一下這個圖:

握手過程中使用了TCP的標誌-SYN和ACK。傳送端首先發送一個S帶SYN標誌的資料包給對方。接收端接到後,就會回傳一個帶有SYN/ACK標誌的'資料包 以表示傳達確認資訊。最後,傳送端再回傳一個帶ACK標誌的資料包 給接收端, 此時代表“握手”結束。除了三次握手來保證通訊的可靠性,TCP協議還有其他各種手段來保證通訊的可靠性,這裡我就不過多講解了,大家可以自己翻閱相關資料去了解下。

  四、DNS的概念與作用

(1)DNS的概念:英文為Domain Name System ,翻譯成域名系統,位於應用層。

(2)DNS有什麼作用呢? 它是提供域名到IP地址之間的解析服務。

我們平時訪問一個網站,通常都是使用主機名或域名來訪問,而不是直接通過IP地址來訪問。為什麼我們不用IP地址去訪問呢?因為IP地址是一組純數字,比較難記。比如說,我們極客學院的IP地址為,而域名為。 如果我們用IP地址去訪問網站,那是很難記得住的。而用域名就比較容易記住了。但是呢,計算機和人不一樣,你要計算機去理解名稱,相對來說就比較困難了。計算機比較擅長處理一長串數字。為了解決這個問題,就有了DNS服務。DNS協議它是提供 通過域名 來查詢IP地址,或者逆向 從IP地址反查域名 的服務。

  五、HTTP與TCP、IP和DNS的關係

最後我們通過一張圖來了解一下HTTP與TCP、IP和DNS的關係,看看它們在通訊的過程中各種發揮了什麼作用。

我來拿我的部落格來舉個例子:

首先是,我想訪問網站,將域名傳送給DNS去解析,DNS解析後將網站的IP地址返回給客戶端,然後通過IP地址發起HTTP請求。HTTP此時的作用是 生成針對目標WEB伺服器(我們這裡指的是網站的伺服器)的HTTP請求報文,然後將請求報文傳送給傳輸層,此時為了方便通訊,TCP會將HTTP請求報文 分割成報文段,這些報文段會有一個序號,這裡的報文段哪一個先發送哪一個先到達,它們是按序傳送的。只要建立起TCP連線,客戶端與伺服器之間的報文交換就不會丟失,不會被破壞,也不會在接收時出現錯序。接著到了網路層,此時IP協議的職責是,搜尋對方的地址,一邊中轉一邊傳送。然後找到了伺服器的位置,此時伺服器的傳輸層中 TCP的職責是 接收到對方傳送過來的報文段後,對其進行重組,這裡的重組是按序號進行重組的。然後到了伺服器的應用層,HTTP會對客戶端請求的內容進行處理。處理完後,伺服器同樣會利用TCP/IP通訊協議向客戶端進行回傳響應。最後客戶端收到響應後,將內容輸出頁面顯示。即完成了一次HTTP事務。