socket連線和http連線的區別

2022-03-28 01:00:07 字數 824 閱讀 1373

http是基於socket之上的。socket是一套完整的tcp,udp協議的介面。

http協議:簡單物件訪問協議,對應於應用層,http協議是基於tcp連線的。

tcp協議:對應於傳輸層。

ip協議:對應於網路層。

tcp/ip是傳輸層協議,主要解決資料如何在網路中傳輸,而http協議是應用層協議,主要解決如何包裝資料。

socket是對tcp/ip 協議的封裝,它本身不是協議,而是乙個呼叫介面,通過socket,我們才能使用tcp/ip協議。

http連線:就是所謂的短連線,即客戶端向伺服器端傳送一次請求,伺服器端響應後連線即會斷掉。

socket連線:就是所謂的長連線,理論上客戶端和伺服器端一旦建立起連線將不會主動斷掉,但是由於各種環境因素可能會使連線斷開。

http是客戶端用http協議進行請求,傳送請求時候需要封裝http請求頭,並繫結請求的資料,伺服器一般有web伺服器配合。http請求方式為客戶端主動發起請求,伺服器才能給響應,一次請求完畢後則斷開連線以節省資源。伺服器不能主動給客戶端響應。iphone主要使用的類是nsurlconnection。socket是客戶端跟伺服器直接使用socket「套接字」進行拼接,並沒有規定連線後斷開,所以客戶端和伺服器可以保持連線,雙方都可以主動傳送資料。一般在遊戲開發或者**開發這種即時性很強的並且保持傳送資料量比較大的場合使用。主要類是cfsocketref。

udp:是使用者資料報協議:主要用在實時性要求高以及對質量相對較弱的地方,但面對現在高質量的線路容易丟包。

tcp:是傳輸控制協議,是面向連線的,,執行環境必然要求其可靠性不可丟失包有良好的擁塞控制機制。

http的常用方式有:get,post。

socket連線和http連線的區別

http協議 簡單物件訪問協議,對應於應用層 http協議是基於tcp連線的 tcp協議 對應於傳輸層 ip協議 對應於網路層 tcp ip是傳輸層協議,主要解決資料如何在網路中傳輸 而http是應用層協議,主要解決如何包裝資料。socket是對tcp ip協議的封裝,socket本身並不是協議,而...

socket連線和http連線的區別

http協議 簡單物件訪問協議,對應於應用層 http協議是基於tcp連線的 tcp協議 對應於傳輸層 ip協議 對應於網路層 tcp ip是傳輸層協議,主要解決資料如何在網路中傳輸 而http是應用層協議,主要解決如何包裝資料。socket是對tcp ip協議的封裝,socket本身並不是協議,而...

Socket連線與HTTP連線

我們在傳輸資料時,可以只使用 傳輸層 tcp ip協議,但是那樣的話,如果沒有應用層,便無法識別資料內容,如果想要使傳輸的資料有意義,則必須使用到應用層協議,應用層協議有很多,比如http ftp telnet等,也可以自己定義應用層協議。web使用http協議作應用層協議,以封裝http文字資訊,...