udp是面向報文的傳輸方式,應用層交給udp多長的報文,udp就照樣傳送,即一次傳送乙個報文。因此,應用程式必須選擇合適大小的報文。若報文太長,則ip層需要分片分片,降低效率。若太短,會是ip太小。udp對應用成嬌小來的報文,既不合併,也不拆分,而是保留這些報文的邊界。
應用程式和tcp的互動是一次乙個資料塊(大小不等),但tcp把應用程式看成是一連傳的無結構的位元組流。tcp有乙個緩衝,當應用程式傳送資料塊太長,tcp就可以把它劃分短一些再傳送。如果應用程式一次只傳送乙個位元組,tcp也可以等待積累有足夠多的位元組後再構成報文傳送出去。
傳輸層協議
應用層協議
應用tcp
smtp
電子郵件
tcptelnet
遠端終端接入
全球資訊網tcp
ftp檔案傳輸
udpdns
名字轉換
udptftp
檔案傳輸
udpbootp dhcp
ip位址配置
udpsnmp
網路管理
udpnfs
遠端檔案伺服器 效能
tcpudp
可靠性可靠
不可靠連線性
面向連線
無連線報文
面向位元組流
面向報文
效率傳輸效率低
傳輸效率高
雙工性全雙工
一對一、一對多、多對
一、多對多
流量控制
有(滑動視窗)
無擁塞控制有無
面向連線如同兩個人之間打**通訊,二面向未連線如同郵政服務,使用者吧信函放在郵件中期待郵政處理,顯然,不可達代表不可靠。
tcp無邊界,客戶端連續傳送資料,只要服務端的這個函式的緩衝區足夠大,會一次性接受過來,即客戶端是分好幾次傳送過來,是有邊界的,而伺服器卻是一次性接受完成。
udp協議,客戶端連續傳送資料,即使福區段這個函式的緩衝區足夠大,也只會一次一次的接受,傳送多少次接受多少次,即客戶端分幾次傳送過來,伺服器就必須按幾次接受。這個種udp的通訊模式是有邊界的。
udp和tcp對首部和資料部分都進行校驗,而ip首部的校驗和僅僅對ip的首部進行校驗。tcp的校驗和是必選的,而udp的校驗和是可選的。
udp是不可靠的協議,沒有超時重傳功能,當udp資料封裝到ip收包傳輸時,如果丟失,會發生乙個icmp差錯報文給源主機,另外,如果udp資料報的傳送端沒有開啟udp校驗和,而接受端計算校驗和有差錯,那麼udp資料報將會被丟掉,也不會傳送icmp差錯報文。
由於udp最大資料的限制,大於這個限制的資料報會被截斷,從事發生資料丟失,且不會有任何資料報的丟失通知。
tcp沒有任何資訊邊界,tcp首部中沒有對tcp最長報文段的限制,因此tcp以**程式讀操作時所要求的長度來傳送資料,在草果mss值時會產生分段,不會發生資料截斷。
TCP IP協議 TCP協議
今天算是對了tcp協議有個膚淺的理解了 儘管tcp和udp都是一樣的網路層ip,但是tcp卻和udp實現著不一樣的服務,tcp是乙個面向連線的,可靠地位元組流服務!面向連線是指 兩個使用tcp的程式要建立乙個tcp連線才能交換資料。tcp以以下方式提供可靠性 1 應用程式被分為tcp認為合適傳送的資...
TCP IP協議棧 之 TCP協議
1 tcp的特點 2 tcp資料格式 tcp在ip協議的基礎上進行傳輸資料,tcp資料在ip報文中的位置如下 ip頭部 20位元組 tcp頭部 20字 tcp資料 tcp報文包含頭部和資料兩部分,其資料格式如下 源埠號 16位 目的埠號 16位 序列號 32位 確認號 32位 頭部長度 4位 保留 ...
學習《TCP IP詳解卷1 協議》 TCP
tcp 傳輸控制協議 儘管tcp和udp都使用相同的網路層 ip tcp卻向應用層提供與udp完全不同的服務。tcp提供一種面向連線的 可靠的位元組流服務。面向連線意味著兩個使用tcp的應用 通常是乙個客戶和乙個伺服器 在彼此交換資料之前必須先建立乙個tcp連線。tcp通過下列方式來提供可靠性 1....