TCP UDP 協議 HTTP協議

2021-06-29 11:57:56 字數 2558 閱讀 6218

2010-02-08 16:33

3166人閱讀收藏 

舉報tcp

網路web服務

internet

手機windows

1. tcp/udp

面向連線的tcp

「面向連線」就是在正式通訊前必須要與對方建立起連線。比如你給別人打**,必須等線路接通了、對方拿起話筒才能相互通話。 

圖1

tcp(transmission control protocol,傳輸控制協議)是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次「對話」才能 建立起來,其中的過程非常複雜,我們這裡只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。

我們來看看這三次對話的簡單過程:

1. 主機a向主機b發出連 接請求資料報:「我想給你發資料,可以嗎?」,這是第一次對話;

2. 主機b向主機a傳送同意連線和要求同步(同步就是兩台主機乙個在傳送,乙個在接收,協調工 作)的資料報:「可以,你什麼時候發?」,這是第二次對話;

3. 主機a再發出乙個資料報確認主機b的要求同步:「我現在就發,你接著吧!」,這是第三次對話。

三次「對話」的目的是使資料報的傳送和接收同步,經過三次「對話」之後,主機a才向主機b正式傳送資料。

tcp協議能為應用程式提供可靠的通訊連線,使一台計算機發出的位元組流無差錯地發往網路上的其他計算機,對可靠性要求高的資料通訊系統往往使用tcp協議傳輸資料。

圖2

我 們來做乙個實驗,用計算機a(安裝windows 2000 server作業系統)從「網路上的芳鄰」上的一台計算機b拷貝大小為8,644,608位元組的檔案,通過狀態列右下角網絡卡的傳送和接收指標就會發現:雖然是 資料流是由計算機b流向計算機a,但是計算機a仍傳送了3,456個資料報,如圖2所示。這些資料報是怎樣產生的呢?因為檔案傳輸時使用了tcp/ip協 議,更確切地說是使用了面向連線的tcp協議,計算機a接收資料報的時候,要向計算機b回發資料報,所以也產生了一些通訊量。

圖3

如果事先用網路監視器監視網路流量,就會發現由此產生的資料流量是9,478,819位元組,比檔案大小多出10.96%(如圖3所示),原因不僅在於資料報和幀本身占用了一些空間,而且也在於tcp協議面向連線的特性導致了一些額外的通訊量的產生。

面向非連線的udp協議

「面向非連線」就是在正式通訊前不必與對方先建立連線,不管對方狀態就直接傳送。這與現在風行的手機簡訊非常相似:你在發簡訊的時候,只需要輸入對方手機號就ok了。

udp(user data protocol,使用者資料報協議)是與tcp相對應的協議。它是面向非連線的協議,它不與對方建立連線,而是直接就把資料報傳送過去!

圖4

udp 適用於一次只傳送少量資料、對可靠性要求不高的應用環境。

比如,我們經常使用「ping」命令來測試兩台主機之間tcp/ip通訊是否正常,其實 「ping」命令的原理就是向對方主機傳送udp資料報,然後對方主機確認收到資料報,如果資料報是否到達的訊息及時反饋回來,那麼網路就是通的。例如, 在預設狀態下,一次「ping」操作傳送4個資料報(如圖2所示)。大家可以看到,傳送的資料報數量是4包,收到的也是4包(因為對方主機收到後會發回一 個確認收到的資料報)。這充分說明了udp協議是面向非連線的協議,沒有建立連線的過程。正因為udp協議沒有連線的過程,所以它的通訊效果高;但也正因 為如此,它的可靠性不如tcp協議高。qq就使用udp發訊息,因此有時會出現收不到訊息的情況。

附表:tcp協議和udp協議的差別

tcpudp

是否連線

面向連線

面向非連線

傳輸可靠性

可靠的不可靠的

應用場合

傳輸大量的資料

少量資料速度慢

tcp協議和udp協議各有所長、各有所短,適用於不同要求的通訊環境。tcp協議和udp協議之間的差別如附表所示。

http:是用於www瀏覽的乙個協議。 

tcp:是機器之間建立連線用的到的乙個協議。

http是超文字傳輸協議,是客戶端瀏覽器或其他程式與web伺服器之間的應用層通訊協議。在internet上的web伺服器上存放的都是超文字資訊,客戶機需要通過http協議傳輸所要訪問的超文字資訊。http包含命令和傳輸資訊,不僅可用於web訪問,也可以用於其他網際網路/內聯網應用系統之間的通訊,從而實現各類應用資源超**訪問的整合

tcp (傳輸控制協議) 

通過序列化應答和必要時重發資料報,tcp 為應用程式提供了可靠的傳輸流和虛擬連線服務。tcp 主要提供資料流轉送,可靠傳輸,有效流控制,全雙工操作和多路傳輸技術。可查閱 tcp 部分獲取更多詳細資料。 

至於http協議,它是tcp協議族中的一種。使用tcp80埠

http是應用層協議,tcp是傳輸層協議!

資料報在網路傳輸過程中,http被封裝在tcp包內!!

TCP UDP 協議 HTTP協議

http 是用於www瀏覽的乙個協議。tcp 是機器之間建立連線用的到的乙個協議。http是超文字傳輸協議,是客戶端瀏覽器或其他程式與web伺服器之間的應用層通訊協議。在internet上的web伺服器上存放的都是超文字資訊,客戶機需要通過http協議傳輸所要訪問的超文字資訊。http包含命令和傳輸...

HTTP協議,TCP UDP協議

http主要內容分為三部分,超文字,傳輸,協議。上面這些概念可以統稱為資料,傳輸就是資料需要經過一系列的物理介質從乙個端系統傳送到另外乙個端系統的過程。通常我們把傳輸資料報的一方稱為請求方,把接到二進位制資料報的一方稱為應答方。而協議指的就是是網路中 包括網際網路 傳遞 管理資訊的一些規範。如同人與...

傳輸層協議(TCP UDP協議)

tcp和udp都是 tcp ip協議族的傳輸層協議tcp將若干個位元組構成乙個分組,叫報文段 tcp報文段封裝在ip資料報中 tcp建立連線的過程稱為三次握手 女孩想了想認真的問男孩子 你真的要和我在一起嗎?你真的喜歡我嗎 男孩肯定的回答 我是認真的,在一起吧 還有一種情況 男孩在表白女孩後,女孩確...