1. 程式人生 > >應用層的 TCP/UDP 協議,和 HTTP、FTP、SMTP 等區別?

應用層的 TCP/UDP 協議,和 HTTP、FTP、SMTP 等區別?


OSI 模型主要作為一個通用模型來做理論分析,而TCP/IP 協議模型是網際網路的實際通訊協議,兩者一般做對映分析,以下不做嚴格區分和宣告(好吧,比較懶);

OSI 整個模型層次大致可以分為3個主要層面來看
|.............主機...............| 作業系統和軟體等 應用、表示、會話
|.............網路...............| 網際網路絡和相關協議 傳輸、網路 (TCP/IP)
|.............介質...............| 物理介質相關 資料鏈路、物理
下圖模型為OSI
<img src="https://pic3.zhimg.com/891de21f79560846700f344b1196323e_b.jpg" data-rawwidth="849" data-rawheight="539" class="origin_image zh-lightbox-thumb" width="849" data-original="https://pic3.zhimg.com/891de21f79560846700f344b1196323e_r.jpg">

1,主機需要網路傳輸資料,網路本質上是一種服務,主機和網路之間靠傳輸層介面,就好比你要叫快遞送東西;
2,網路可以提供兩種服務:
1)可靠,面向連線;(TCP) 就像靠譜的快遞,每一步都有反饋和監控,當然價格也是呵呵...
2)不可靠,盡力而為的傳輸 (UDP) 就像某些不靠譜的快遞或者聽都沒聽過的XX快遞,價格低,但是能不能到就靠運氣了。
3,兩種服務無所謂好壞,TCP 的可靠是需要消耗很多資源的,效率低 (大塊,重要的檔案等)
UDP 不保證可靠性,但是效率高(視訊,語音,不重要的小檔案等)

4,而其他的“HTTP、FTP、SMTP 等所謂的“Application-layer Protocol”協議
”指的是在TCP/IP 通訊協議框架下具體實現特定功能的應用(HTTP 用來實現超文字傳輸,FTP檔案傳輸,SMTP處理郵件等等),兩者的關係,咳咳,關係通俗的說:

TCP和UDP以及IP 協議是網際網路絡通訊的基礎,就像《憲法》,而應用協議就像具體的《刑法》、《民法》、《婚姻法》、《未成年人保護法》......等等,在某個領域的特定應用和具體實現,但是最基本的一條:違憲無效。
下圖模型為TCP/IP棧

<img src="https://pic2.zhimg.com/0192769f6dab9a46decb0ac3b8548531_b.jpg" data-rawwidth="942" data-rawheight="551" class="origin_image zh-lightbox-thumb" width="942" data-original="https://pic2.zhimg.com/0192769f6dab9a46decb0ac3b8548531_r.jpg">

相關推薦

應用TCP/UDP 協議 HTTPFTPSMTP 區別

OSI 模型主要作為一個通用模型來做理論分析,而TCP/IP 協議模型是網際網路的實際通訊協議,兩者一般做對映分析,以下不做嚴格區分和宣告(好吧,比較懶); OSI 整個模型層次大致可以分為3個主要層面來看 |.............主機...............| 作業系統和軟體等 應用、表示、會話

圖解TCP/IP協議(六)傳輸(TCP/UDP)tcp三次握手四次揮手

傳輸層最常見的兩種傳輸協議,分別是TCP和UDP協議。 一、TCP協議 TCP 是面向有連線的流協議。流就是指不間斷的資料結構,可以把它想象成排水管道中的水流。TCP為提供可靠傳輸,實行“順序控制”或“重發控制”機制。 TCP/IP的眾多應用大多以客戶端/服務端的形式執行。作為服

嵌入式Linux網路程式設計網路基礎OSI七模型TCP/IP四模型TCP/IP通訊模型協議結構封包與拆包TCP/UDP協議特點及適用情況

文章目錄 1,TCP協議分成了兩個不同的協議----->TCP/IP協議誕生 2,網路的體系結構 2.1,OSI開放系統互聯模型 2.2,TCP/IP協議族的體系結構 3,TCP/IP協議通訊模型 3.1

socket協議 http協議區別長短連線tcp/udp協議區別

socket http協議的區別簡單來說,我們平常瀏覽的網頁如果已http://開頭的都是http協議傳輸到我們的瀏覽器的,而http是基於socket之上的,就是說http攜帶資料,socket提供傳輸的動力。socket不是一個協議,只是一個介面或者說是api,socke

網絡編程—網絡基礎概覽socketTCP/UDP協議

又是 輕量級 多次 所有 兩臺 瀏覽器 進行 網遊 max 網絡基礎概覽 socket概覽 socket模塊—TCP/UDP的實現 TCP/UDP總結 網絡基礎概覽 osi七層協議各層主要的協議 # 物理層傳輸電信號1010101010 # 數據鏈路層,以太網協議

傳輸Udp協議 Tcp協議

傳輸層是負責資料能夠從傳送端傳輸接收端。負責端與端之間的傳輸。端與端就相當於是兩個程序之間的資料傳輸。 埠號 埠號是傳輸層協議的內容: 埠號是一個2位元組16位的無符號整數;(0-65535之間一個數字,0-1023不推薦使用) 埠號用來標識一個程序,告訴作業系統,當前資料要交給哪一個程序

TCP/UDP協議——資料流資料包

TCP/UDP協議——資料流和資料包 資料流可以分成多個有序的資料包。 TCP傳輸:有連線的資料流服務。tcp提供可靠的傳輸機制,也就是說只要是被髮送的資料都會被接收方接收到,並且雙方也知道被正確接收了。 UDP傳輸:無連線的資料報服務。udp不負責可靠傳輸,他只知道盡最大的努力把資料傳

應用上的協議http

應用層上的協議http HTTP http://www.runoob.com/http/http-tutorial.html https://www.cnblogs.com/houfee/articles/9161847.html   瀏覽器作為HTTP客戶端通過URL向HTTP服務端即W

day 27 網際網路TCPUDP協議 三次握手四次揮手

一 . OSI七層模型(網際網路核心協議,從下往上的順序是物理層<資料鏈路層<網路層<傳輸層<會話層<表示層<應用層)         也瞭解下五層通訊的流程: 二 . socket      

TCP/IP協議HTTP協議

1、TCP TCP協議是一種面向連線的、 可靠的、基於位元組流的運輸層通訊協議。通過TCP協議傳輸,得到的是一個順序的無差錯的資料流。 三次握手        在TCP/IP協議中,TCP協議提供可靠的連線服務,連線是通過 三次握手進行初始化的。三

初夏小談:淺談位元組序TCP,UDP協議

接下來先來說說位元組序 網路位元組序:大小端 CPU在對資料在記憶體中進行存取方向的不同出現了大小端 MIPS ---> RISC處理器 ---> 大端                 &nb

第9章 應用(6)_SMTPPOP3/IMAP協議

7. 電子郵件 7.1 電子郵件傳送和接收過程 (1)圖解電子郵件的傳送   ①一個電子郵件系統應具備三個主要組成構件:A使用者代理(如Outlook)、B郵件伺服器、C郵件傳送和接收協議(分別為SMTP和POP3協議)(POP3是郵局協議,Post Office Protocol

Android中的TCP/IP協議SocketHttp協議間的關係

前提:本片文章的名字叫做"Android開發中的TCP/IP協議,Socket程式設計",其實TCP/IP協議是一種網路協議,並不是在Android中才有的,也不只是在java中有,其他的開發語言中同樣也可以使用TCP/IP協議進行網路程式設計。之所以這麼說是因為在不久的以前

Unity C# 自定義TCP傳輸協議以及封包拆包解決粘包問題(網路應用協議

本文只是初步實現了一個簡單的基於TCP的自定協議,更為複雜的協議可以根據這種方式去擴充套件。 網路應用層協議,通俗一點的講,它是一種基於socket傳輸的由傳送方和接收方事先協商好的一種訊息包組成結構,主要由訊息頭和訊息體組成。  眾所周知,基於socket的資訊互動有兩

TCP/IP協議HTTP協議與webSocket協議區別

http協議(識別資料內容)與webSocket協議 同:建立在TCP之上,同http一樣通過TCP來傳輸資料 不同: HTTP協議為單向協議,即瀏覽器只能向伺服器請求資源,伺服器才能將資料傳送給瀏覽器,而伺服器不能主動向瀏覽器傳遞資料。分為長連線和短連線,短連線是

26 API-網路程式設計(網路概述,Socket通訊機制,UDP協議傳送接收資料,TCP協議傳送接收資料)

1:網路程式設計(理解) (1)網路程式設計:用Java語言實現計算機間資料的資訊傳遞和資源共享(2)網路程式設計模型 l網路模型一般是指 OSI(Open System Interconnection開放系統互連)參考模型 TCP/IP參考模型 (3)網路程式

如何通俗地解釋一下 TCP/UDP 協議和 HTTPFTPSMTP 協議之間的區別

先來假設沒有TCP,甚至沒有IP層,只有MAC對應的資料鏈路層,HTTP等協議能跑多遠? 直接把HTTP封裝在Ethernet Frame 裡,可以嗎?當然可以,在同一個二層廣播域裡,通過MAC地址來識別對方,然後HTTP的資料通過網絡卡介面函式完成傳送和接收。 那問題來了,如何保證資料萬無一失地到達對方?讓

基於TCP協議基於UDP協議

TCP與UDP區別 TCP---傳輸控制協議,提供的是面向連線、可靠的位元組流服務。當客戶和伺服器彼此交換資料前,必須先在雙方之間建立一個TCP連線,之後才能傳輸資料。TCP提供超時重發,丟棄重複資料,檢驗資料,流量控制等功能,保證資料能從一端傳到另一端。 UDP--

HTTP SCOKET 通訊的區別? TCP,UDP 的連線方法?HTTP 幾種常用方式

http 和 scoket 通訊的區別:         http 是客戶端用 http 協議進行請求,傳送請求的時候,需要封裝http 請求頭,並繫結請求的資料,伺服器一般有 web伺服器進行配合(

TCP/UDP協議

lan 有時 body aik htm 默認 tab 協調 不同 TCP和UDP是OSI模型中的運輸層中的協議。TCP提供可靠的通信傳輸,而UDP則常被用於讓廣播和細節控制交給應用的通信傳輸。 連接: 面向連接的TCP "面向連接"就是在正式通信前必須要與對方建立起連接。比