TPC IP與HTTP的區別

2021-09-25 17:01:05 字數 2253 閱讀 1111

tpc/ip協議是傳輸層協議,主要解決資料如何在網路中傳輸,而http是應用層協議,主要解決如何包裝資料。關於tcp/ip和http協議的關係,網路有一段比較容易理解的介紹:「我們在傳輸資料時,可以只使用(傳輸層)tcp/ip協議,但是那樣的話,如果沒有應用層,便無法識別資料內容,如果想要使傳輸的資料有意義,則必須使用到應用層協議,應用層協議有很多,比如http、ftp、telnet等,也可以自己定義應用層協議。web使用http協議作應用層協議,以封裝http 文字資訊,然後使用tcp/ip做傳輸層協議將它發到網路上。」

術語tcp/ip代表傳輸控制協議/網際協議,指的是一系列協議。「ip」代表網際協議,tcp和udp使用該協議從乙個網路傳送資料報到另乙個網路。把ip想像成一種高速公路,它允許其它協議在上面行駛並找到到其它電腦的出口。tcp和udp是高速公路上的「卡車」,它們攜帶的貨物就是像http,檔案傳輸協議ftp這樣的協議等。 

你應該能理解,tcp和udp是ftp,http和smtp之類使用的傳輸層協議。雖然tcp和udp都是用來傳輸其他協議的,它們卻有乙個顯著的不同:tcp提供***的資料傳輸,而udp不提供。這意味著tcp有乙個特殊的機制來確保資料安全的不出錯的從乙個端點傳到另乙個端點,而udp不提供任何這樣的保證。

http(超文字傳輸協議)是利用tcp在兩台電腦(通常是web伺服器和客戶端)之間傳輸資訊的協議。客戶端使用web瀏覽器發起http請求給web伺服器,web伺服器傳送被請求的資訊給客戶端。

下面的圖表試圖顯示不同的tcp/ip和其他的協議在最初osi模型中的位置:

7應用層例如http、smtp、snmp、ftp、telnet、sip、ssh、nfs、rtsp、xmpp、whois、enrp

6表示層

5會話層

4傳輸層

3網路層例如ip、icmp、igmp、ipx、bgp、ospf、rip、igrp、eigrp、arp、rarp、 x.25

2資料鏈路層例如乙太網、令牌環、hdlc、幀中繼、isdn、atm、ieee 802.11、fddi、ppp

1物理層例如線路、無線電、光纖、信鴿

2.傳送請求

開啟乙個連線後,客戶機把請求訊息送到伺服器的停留埠上,完成提出請求動作。

http/1.0 請求訊息的格式為:

請求訊息=請求行(通用資訊|請求頭|實體頭)crlf[實體內容]

請求 行=方法 請求url http版本號 crlf

方 法=get|head|post|擴充套件方法

u r l=協議名稱+宿主名+目錄與檔名

請求行中的方法描述指定資源中應該執行的動作,常用的方法有get、head和post。不同的請求物件對應get的結果是不同的,對應關係如下:

物件 get的結果

檔案 檔案的內容

程式 該程式的執行結果

資料庫查詢 查詢結果

head??要求伺服器查詢某物件的元資訊,而不是物件本身。

post??從客戶機向伺服器傳送資料,在要求伺服器和cgi做進一步處理時會用到post方法。post主要用於傳送html文字中form的內容,讓cgi程式處理。

乙個請求的例子為:

get networking.zju.edu.cn/zju/index.htmhttp/1.0 頭資訊又稱為元資訊,即資訊的資訊,利用元資訊可以實現有條件的請求或應答。

請求頭??告訴伺服器怎樣解釋本次請求,主要包括使用者可以接受的資料型別、壓縮方法和語言等。

實體頭??實體資訊型別、長度、壓縮方法、最後一次修改時間、資料有效期等。

實體??請求或應答物件本身。

3.傳送響應

伺服器在處理完客戶的請求之後,要向客戶機傳送響應訊息。

http/1.0的響應訊息格式如下:

響應訊息=狀態行(通用資訊頭|響應頭|實體頭) crlf 〔實體內容〕

狀態行=http版本號 狀態碼 原因敘述

狀態碼表示響應型別

1×× 保留

2×× 表示請求成功地接收

3×× 為完成請求客戶需進一步細化請求

4×× 客戶錯誤

5×× 伺服器錯誤

響應頭的資訊包括:服務程式名,通知客戶請求的url需要認證,請求的資源何時能使用。

4.關閉連線

客戶和伺服器雙方都可以通過關閉套接字來結束tcp/ip對話

http 與 https 的區別

https secure hypertext transfer protocol 安全超文字傳輸協議 它是乙個安全通訊通道,它基於http開發,用於在客戶計算機和伺服器之間交換資訊。它使用安全套接字層 ssl 進行資訊交換,簡單來說它是http的安全版。它是由netscape開發並內置於其瀏覽器中,...

HTTPS與HTTP的區別

最近學習網路相關的知識,看到https和http,兩個有區別,於是在網上找了相關的資料,放在自己的部落格,作為學習筆記吧。ssl介紹 ssl secure socket layer 為netscape所研發,用以保障在internet上資料傳輸之安全,利用 資料加密 encryption 技術,可確...

http與https的區別

在url前加https 字首表明是用ssl加密的。你的電腦與伺服器之間收發的資訊傳輸將更加安全。web伺服器啟用ssl需要獲得乙個伺服器證書並將該證書與要使用ssl的伺服器繫結。http和https使用的是完全不同的連線方式,用的埠也不一樣,前者是80,後者是443 https協議是由ssl htt...