日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

TCP与UDP特点与区别

發(fā)布時(shí)間:2023/12/13 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TCP与UDP特点与区别 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

TCP/IP協(xié)議

IP地址(IP Address)
計(jì)算機(jī)分布在世界各地,要想和它們通信,必須要知道確切的位置。確定計(jì)算機(jī)位置的方式有多種,IP 地址是最常用的,例如,114.114.114.114 是國(guó)內(nèi)第一個(gè)、全球第三個(gè)開放的 DNS 服務(wù)地址,127.0.0.1 是本機(jī)地址。

其實(shí),我們的計(jì)算機(jī)并不知道 IP 地址對(duì)應(yīng)的地理位置,當(dāng)要通信時(shí),只是將 IP 地址封裝到要發(fā)送的數(shù)據(jù)包中,交給路由器去處理。路由器有非常智能和高效的算法,很快就會(huì)找到目標(biāo)計(jì)算機(jī),并將數(shù)據(jù)包傳遞給它,完成一次單向通信。

目前大部分軟件使用 IPv4 地址,但 IPv6 也正在被人們接受,尤其是在教育網(wǎng)中,已經(jīng)大量使用。

端口(Port)
有了 IP 地址,雖然可以找到目標(biāo)計(jì)算機(jī),但仍然不能進(jìn)行通信。一臺(tái)計(jì)算機(jī)可以同時(shí)提供多種網(wǎng)絡(luò)服務(wù),例如Web服務(wù)、FTP服務(wù)(文件傳輸服務(wù))、SMTP服務(wù)(郵箱服務(wù))等,僅有 IP 地址,計(jì)算機(jī)雖然可以正確接收到數(shù)據(jù)包,但是卻不知道要將數(shù)據(jù)包交給哪個(gè)網(wǎng)絡(luò)程序來處理,所以通信失敗。

為了區(qū)分不同的網(wǎng)絡(luò)程序,計(jì)算機(jī)會(huì)為每個(gè)網(wǎng)絡(luò)程序分配一個(gè)獨(dú)一無二的端口號(hào)(Port Number),例如,Web服務(wù)的端口號(hào)是 80,FTP 服務(wù)的端口號(hào)是 21,SMTP 服務(wù)的端口號(hào)是 25。

端口(Port)是一個(gè)虛擬的、邏輯上的概念。可以將端口理解為一道門,數(shù)據(jù)通過這道門流入流出,每道門有不同的編號(hào),就是端口號(hào)。

協(xié)議(Protocol)
協(xié)議(Protocol)就是網(wǎng)絡(luò)通信的約定,通信的雙方必須都遵守才能正常收發(fā)數(shù)據(jù)。協(xié)議有很多種,例如 TCP、UDP、IP 等,通信的雙方必須使用同一協(xié)議才能通信。協(xié)議是一種規(guī)范,由計(jì)算機(jī)組織制定,規(guī)定了很多細(xì)節(jié),例如,如何建立連接,如何相互識(shí)別等。
協(xié)議僅僅是一種規(guī)范,必須由計(jì)算機(jī)軟件來實(shí)現(xiàn)。例如 IP 協(xié)議規(guī)定了如何找到目標(biāo)計(jì)算機(jī),那么各個(gè)開發(fā)商在開發(fā)自己的軟件時(shí)就必須遵守該協(xié)議,不能另起爐灶。

所謂協(xié)議族(Protocol Family),就是一組協(xié)議(多個(gè)協(xié)議)的統(tǒng)稱。最常用的是 TCP/IP 協(xié)議族,它包含了 TCP、IP、UDP、Telnet、FTP、SMTP 等上百個(gè)互為關(guān)聯(lián)的協(xié)議,由于 TCP、IP 是兩種常用的底層協(xié)議,所以把它們統(tǒng)稱為 TCP/IP 協(xié)議族。

TCP UDP 介紹

TCP(Transmission Control Protocol,傳輸控制協(xié)議):是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。

UDP(User Datagram Protocol,用戶數(shù)據(jù)報(bào)協(xié)議):,是 OSI(Open System Interconnection,開放式系統(tǒng)互聯(lián)) 參考模型中一種無連接的傳輸層協(xié)議,提供面向事務(wù)的簡(jiǎn)單不可靠信息傳送服務(wù)。

TCP UDP 特點(diǎn)

TCP特點(diǎn):
  1、tcp是面向連接的,通信之前需要建立連接,通信結(jié)束之后還需釋放連接(三次握手,四次揮手)
  2、tcp提供了很可靠的支付服務(wù),可靠也就是說:tcp的數(shù)據(jù)沒有重復(fù)、沒有丟失、沒有錯(cuò)誤、并且和發(fā)送端的數(shù)據(jù)是一致的。
  3、tcp是面向字節(jié)流的。也就是tcp是以字節(jié)為單位,雖然傳輸?shù)倪^程中數(shù)據(jù)被劃分為了一個(gè)一個(gè)數(shù)據(jù)報(bào)文,但是這只是為了方便傳輸,接收端最終接受到的數(shù)據(jù)和發(fā)送端接收到的數(shù)據(jù)是一樣的。
  4、tcp提供全雙工通信:就是tcp的兩端即可以作為發(fā)送端,也可以作為接收端。
  5、最重要的一點(diǎn)就是一個(gè)tcp的連接只能有兩個(gè)端點(diǎn),支持一對(duì)一通信。
  6、tcp首部含有20個(gè)字節(jié)。

UDP特點(diǎn):
  1、首先udp是無連接的,通信結(jié)束也不需要釋放連接。
  2、upd是一種不可靠的協(xié)議,發(fā)出去就不管了。
  3、udp是一種面向報(bào)文的鏈接;udp數(shù)據(jù)傳輸?shù)膯挝皇菆?bào)文,而且不會(huì)對(duì)數(shù)據(jù)做任何的拆分和拼接操作。在發(fā)送端,應(yīng)用程序給傳輸層的udp什么樣的數(shù)據(jù),udp不會(huì)對(duì)數(shù)據(jù)進(jìn)行拆分,最會(huì)增加一個(gè)udp頭并且交給網(wǎng)絡(luò)層。在接收端,udp收到網(wǎng)絡(luò)層的數(shù)據(jù)之后,除去ip(網(wǎng)絡(luò)層協(xié)議)數(shù)據(jù)報(bào)頭部后便交給應(yīng)用層,不會(huì)做任何的拼接操作。
  4、udp是不存在擁塞控制的,并且始終就是用恒定的速率發(fā)送數(shù)據(jù),并不會(huì)根據(jù)網(wǎng)絡(luò)擁塞情況對(duì)發(fā)送速率做調(diào)整。這個(gè)狀況下就會(huì)存在優(yōu)勢(shì)和弊端;弊端就是:網(wǎng)絡(luò)擁塞時(shí)有些報(bào)文就會(huì)丟失,所以才說udp是不可靠的協(xié)議;他的優(yōu)點(diǎn)就是有些使用場(chǎng)景允許報(bào)文丟失,比如:直播,語音通話,但是對(duì)實(shí)時(shí)性要求比較高。
  5、udp支持一對(duì)一,一對(duì)多,多對(duì)多,多對(duì)一通信。
  6、udp首部的開銷比較小,只有8個(gè)字節(jié)。相對(duì)于tcp來說,效率還是很高的。

TCP UDP 優(yōu)缺點(diǎn)

TCP優(yōu)點(diǎn):可靠,穩(wěn)定。tcp的可靠體現(xiàn)在tcp在傳遞數(shù)據(jù)之前,會(huì)有三次握手來建立連接,而且在數(shù)據(jù)傳遞時(shí),有確認(rèn),窗口,重傳,擁塞控制機(jī)制,在數(shù)據(jù)傳完后,還會(huì)斷開連接用來節(jié)約系統(tǒng)資源。

TCP缺點(diǎn):速度慢,效率低,占用系統(tǒng)資源高,易被攻擊。TCP在傳遞數(shù)據(jù)之前,要先建連接,這會(huì)消耗時(shí)間,而且在數(shù)據(jù)傳遞時(shí),確認(rèn)機(jī)制,重傳機(jī)制,擁塞機(jī)制等都會(huì)消耗大量的時(shí)間,而且要在每臺(tái)設(shè)備上維護(hù)所有的傳輸連接,事實(shí)上,每個(gè)連接都會(huì)占用系統(tǒng)的CPU,內(nèi)存等硬件資源。而且,因?yàn)門CP有確認(rèn)機(jī)制,三次握手機(jī)制,這些也導(dǎo)致TCP容易被人利用,實(shí)現(xiàn)DOS,DDOS,CC等攻擊。

UDP優(yōu)點(diǎn):速度快,比TCP稍安全。UDP沒有TCP的握手,確認(rèn),窗口,重傳,擁塞控制等機(jī)制。UDP是一個(gè)無狀態(tài)的傳輸協(xié)議,所以它在傳遞數(shù)據(jù)時(shí)非常快。沒有TCP的這些機(jī)制,UDP較TCP被攻擊者利用的漏洞就要少一些。但UDP也是無法避免攻擊的。比如:UDP Flood攻擊。

UDP缺點(diǎn):不可靠,不穩(wěn)定。因?yàn)閁DP沒有TCP那些可靠的機(jī)制,在數(shù)據(jù)傳遞時(shí),如果網(wǎng)絡(luò)質(zhì)量不好,就會(huì)容易丟包。

TCP UDP 區(qū)別

TCP基于連接,需要經(jīng)過三次握手建立可靠連接,可簡(jiǎn)單類比打電話過程:A打給B(1),B接通電話并向A問好(2),A聽到B的問好后向B問好(3),之后開始聊正事,且聊天過程式實(shí)時(shí)同步有序的。

UDP不基于連接,類似于線上聊天,給對(duì)方發(fā)消息不經(jīng)過對(duì)方同意,發(fā)送的消息對(duì)方可能未收到,也可能收到亂序的消息。

UDPTCP
是否連接無連接連接
是否可靠不可靠傳輸,不使用流量控制和擁塞控制可靠傳輸,使用流量控制和擁塞控制
占用資源
連接對(duì)象個(gè)數(shù)支持一對(duì)一,一對(duì)多,多對(duì)一和多對(duì)多交互通信只能是一對(duì)一通信
傳輸方式面向報(bào)文面向字節(jié)流
首部開銷首部開銷小,僅8字節(jié)首部最小20字節(jié),最大60字節(jié)
適用場(chǎng)景適用于實(shí)時(shí)應(yīng)用(IP電話、視頻會(huì)議、直播等)適用于要求可靠傳輸?shù)膽?yīng)用,例如文件傳輸

總結(jié)

以上是生活随笔為你收集整理的TCP与UDP特点与区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。