非連線通訊的優點:
1. 簡單,不需要建立連線
2.靈活,每次訊息傳送都可以指定到不同的接收者。
3.高效,因為不需要建立和消除連線,避免了大量在網路中的傳遞訊息分組的開銷。
4.快速,不需要建立和拆除連線,只有訊息本身被傳送。
5.具有廣播能力,可以將乙個訊息同時向多個接收者傳送。
非連線通訊的缺點:
1.通訊過程不可靠。
2.多資料報的無序性。
3.訊息尺寸有限制。
例子:涉及到的函式:
你可以檢視一下它們怎麼用,
man sendto
man recvfrom
例子中使用udp資料報服務。
server在指定的埠接受time的格式串,然後把結果發回到傳送串的源主機。
client 先向指定主機的指定埠傳送time的格式串,之後等待其他主機向自己傳送資料。
你可能發現了在client中並沒有呼叫bind函式。那麼到我們從那個埠等待資料呢?等待那個主機給client傳送資料呢?因為bind的作用在於限制用於程序通訊的介面。如果我們省略了對bind的呼叫我們就可以使用任何乙個埠進行傳送和接受資料。可以向任何主機傳送,和從任何主機接受資料。就如同套介面被繫結了通用位址inaddr_none,通用埠 0。
面向連線的協議 2
面向連線的協議 伺服器端 由圖我們可以看出,伺服器與客戶的區別在於 伺服器必須進行套介面繫結。因為如果伺服器沒有位址,客戶就無法進行連線。s3 的作用在於告訴核心,在某個套介面上監聽並接收請求。伺服器需要監聽連線。下面,我們介紹一下有關的函式,int listen int sockfd,int ba...
HTTP協議的持續連線和非持續連線
在使用http 1.0的情況下,如果開啟乙個包含乙個html檔案和10個內聯圖象物件的網頁時,http就要建立11次tcp連線才能把檔案從服務機傳送到客戶機。而使用http 1.1的情況下,如果開啟同樣的檔案時,http建立一次tcp連線就可把檔案從服務機傳送到客戶機。使用一次tcp連線傳送乙個物件...
HTTP協議詳解 持久連線與非持久連線
最近寫作完http協議一節,略做總結 非持久連線是在http 1.0中定義,而對於http 1.1中預設的是持久連線 帶流水線 以下是詳細描述 非持久連線 的概念 某網頁由最基本的 html 和10個jpeg 影象構成,10個jpeg 影象檔案存放在同一臺伺服器中。設這個網頁的url為www.ser...