什么是傳輸層協(xié)議?丨智能百科

什么是傳輸層協(xié)議?丨智能百科

傳輸層協(xié)議是網(wǎng)絡(luò)的重要組成部分,因為其提供了一種將數(shù)據(jù)包從一個網(wǎng)絡(luò)節(jié)點傳輸?shù)搅硪粋€網(wǎng)絡(luò)節(jié)點的方法。傳輸協(xié)議有多種用途,例如流視頻、互聯(lián)網(wǎng)導(dǎo)航和執(zhí)行交易。兩個核心協(xié)議是TCP和UDP。

本文將介紹何時使用這些協(xié)議,以及診斷和排除所需的工具。TCP和UDP的基本性質(zhì)意味著,它們肯定會出現(xiàn)在任何網(wǎng)絡(luò)認(rèn)證中。

什么是傳輸層協(xié)議?

TCP和UDP協(xié)議與OSI模型的傳輸層相關(guān)聯(lián),并作為整個互聯(lián)網(wǎng)的基礎(chǔ)數(shù)據(jù)交換協(xié)議。簡而言之,傳輸層協(xié)議負(fù)責(zé)確保設(shè)備之間的端到端通信。其還執(zhí)行錯誤檢測(僅限TCP)、數(shù)據(jù)分段和數(shù)據(jù)重組。

尤其是TCP,其負(fù)責(zé)從加載網(wǎng)頁到在線游戲中交換數(shù)據(jù)的所有事務(wù)。讓我們看看它是如何做到的。

什么是傳輸控制協(xié)議(TCP)?

傳輸控制協(xié)議(TCP)是互聯(lián)網(wǎng)協(xié)議(IP)套件的核心協(xié)議,負(fù)責(zé)確??煽?、容錯的數(shù)據(jù)從一個點發(fā)送到另一個點。TCP在確保所有信息無損傳輸方面取得了長足的進(jìn)步。例如,TCP與UDP的區(qū)別之一是重傳丟失的數(shù)據(jù)。這是以一種特別聰明的方式完成的。

在TCP協(xié)議中,每個數(shù)據(jù)包都被賦予一個唯一的序列號。數(shù)據(jù)包發(fā)送者仔細(xì)跟蹤發(fā)送了哪些數(shù)據(jù)包。作為響應(yīng),接收系統(tǒng)發(fā)出一個ACK數(shù)據(jù)包(代表“確認(rèn)”),其中包含確認(rèn)收到的數(shù)據(jù)包的序列號。如果序列號不匹配或丟失,發(fā)送機(jī)器將重新發(fā)送數(shù)據(jù)包。這個過程會持續(xù)下去,直到匹配的ACK確認(rèn)傳輸成功。

數(shù)據(jù)重傳并不是TCP可靠的唯一方式。其還使用三向握手來建立持久的連接。

在TCP中,三向握手是一種通信機(jī)制,以確保所有數(shù)據(jù)的發(fā)送和正確接收。簡而言之,這發(fā)生在三個部分:

初始化(SYN):SYN是想要建立通信的設(shè)備發(fā)出的初始數(shù)據(jù)包。該數(shù)據(jù)包包含同步標(biāo)志(SYN)和接收者的IP地址。確認(rèn)啟動(SYN-ACK):接下來,接收者發(fā)回SYN-ACK數(shù)據(jù)包,假設(shè)它已準(zhǔn)備好并愿意進(jìn)行通信。最終確認(rèn)(ACK):一旦發(fā)送方收到SYN-ACK,就會發(fā)送最終ACK以確認(rèn)有效連接。

一旦這三個“握手”完成,傳輸就開始了。三向握手通常被描述為TCP的“面向連接”通信標(biāo)志。然而,錯誤檢測和流量控制等其他功能也成為TCP面向連接的本質(zhì)的支柱。

由于TCP在現(xiàn)代IT通信中無處不在,因此不可能列出TCP的每一個用例。然而,這里有一些用例來說明其用處。

電子郵件:所有電子郵件均使用TCP發(fā)送。如果以UDP方式發(fā)送,則電子郵件到達(dá)時可能會有丟失一些信息,這會嚴(yán)重阻礙通信。在線游戲:貨幣交易、登錄機(jī)制和任何關(guān)鍵通信都需要TCP。互聯(lián)網(wǎng)瀏覽:無論使用HTTP還是HTTPS,第4層協(xié)議通常是TCP。當(dāng)用戶導(dǎo)航到某個網(wǎng)址時,將使用TCP協(xié)議。該協(xié)議在用戶的網(wǎng)絡(luò)瀏覽器和網(wǎng)絡(luò)服務(wù)器之間建立并維護(hù)可靠的連接,確保網(wǎng)頁和相關(guān)資源準(zhǔn)確無誤地傳輸。

雖然TCP以其可靠性而聞名,但也因其延遲和高開銷著稱。TCP確保每個數(shù)據(jù)包都被發(fā)送和記錄,但這可能不適合所有用例。例如,視頻流不需要每個數(shù)據(jù)包都能到達(dá)用戶——這就是UDP的用武之地。

什么是用戶數(shù)據(jù)報協(xié)議(UDP)?

UDP是TCP的無連接、輕量級版本。與TCP相反,UDP的主要目標(biāo)是盡可能快地發(fā)送數(shù)據(jù)報,即數(shù)據(jù)包。

我們可以把UDP想象成一個人把乒乓球扔進(jìn)桶里。投擲者是發(fā)送者,乒乓球是數(shù)據(jù)包,水桶是接收者。是否每一個乒乓球都能進(jìn)桶并不重要,重要的是大多數(shù)都能進(jìn)桶。扔球的人自然會丟幾個球——這沒關(guān)系。這就是為什么UDP通常被稱為“盡力而為的交付”。

盡力而為交付的最佳用例在于媒體傳輸領(lǐng)域。讓我們看幾個例子:

VoIP呼叫:VoIP呼叫通常使用UDP進(jìn)行。這就是為什么時常會出現(xiàn)畫面輕微停頓、人聲跳躍或聽起來像機(jī)器人的原因。在語音流中,每個數(shù)據(jù)包是否完美到達(dá)并不重要。畢竟,人們善于把握語境,在交流中不需要那么嚴(yán)格。在線游戲:在線游戲的某些方面也使用UDP。每當(dāng)用戶移動一個字符時,這通常是一個UDP連接?;旧希魏涡枰唔憫?yīng)時間的非關(guān)鍵數(shù)據(jù)都將使用UDP。DNS:UDP用于DNS查詢和響應(yīng)。這是因為DNS解析需要快速,且不需要持續(xù)的通信。

如何在TCP和UDP之間選擇?

決定使用哪種協(xié)議時,需要考慮幾個因素。讓我們回顧一下其中的一些:

可靠性:TCP提供可靠、經(jīng)過審計的數(shù)據(jù),并確保接收到每一條數(shù)據(jù)。如果應(yīng)用程序需要高保真度,那么TCP是最佳選擇。延遲和速度:當(dāng)接收每條數(shù)據(jù)并不重要時,使用UDP。例如,流媒體音樂可能不需要每個數(shù)據(jù)包?;蛘?,如果通信只是為了通知另一個應(yīng)用程序執(zhí)行其他操作。錯誤處理:TCP有內(nèi)置的錯誤處理,可以精確地指出遇到的問題。而對于UDP,開發(fā)人員將必須開發(fā)自定義解決方案。

總之,如果每個信息包的成功傳輸都很重要,那么就使用TCP。如果存在某種可接受的數(shù)據(jù)丟失程度,那么UDP是最佳選擇。選擇協(xié)議的另一個關(guān)鍵方面是,了解如何在網(wǎng)絡(luò)中有效地掃描它們。接下來讓我們介紹一下。

哪些工具可以掃描網(wǎng)絡(luò)端口?

經(jīng)過培訓(xùn)的網(wǎng)絡(luò)工程師可以使用多種工具;訣竅在于知道何時何地使用它們。具體來說,網(wǎng)絡(luò)端口掃描儀是一種工具,允許掃描目標(biāo)設(shè)備并查看哪些端口是開放的,從而容易受到攻擊。本文將介紹幾種可能派上用場的不同端口掃描儀,首先是Nmap。

需要注意的是,不要只掃描想要的任何域,因為這可能會產(chǎn)生法律和道德影響。

Nmap

Nmap是一個功能強(qiáng)大的偵察工具,用于發(fā)現(xiàn)網(wǎng)絡(luò)主機(jī)和服務(wù)。其還被筆測試人員、系統(tǒng)管理員和安全工程師用作端口掃描器。Nmap使用各種技術(shù)來掃描端口,例如TCP連接掃描、SYN掃描和UDP掃描。

Netcat

Netcat,也稱為nc,是一種通用且眾所周知的網(wǎng)絡(luò)工具,可以在TCP/IP套件上執(zhí)行幾乎任何操作。其最顯著的用途是作為TCP代理、網(wǎng)絡(luò)守護(hù)程序測試、端口掃描、遠(yuǎn)程shell等等。

要使用nc執(zhí)行端口掃描,請輸入以下命令:

nc-zv target_host start_port-end_port

“z”執(zhí)行掃描,而不是建立連接?!皏”代表詳細(xì),以便可以看到返回值。目標(biāo)主機(jī)將是一個URL。start_port是要掃描的第一個端口,end_port將是最后一個。

這是一個實際的例子:

nc-zv www.mywebsite.com 80-100

如果使用的是Mac或Linux,只需打開終端并輸入man nc即可了解如何在設(shè)備上使用它。(或者在Windows上輸入nc/?。)

Zenmap

其他示例僅是CLI,但Zenmap為前面提到的Nmap提供了GUI。Zenmap提供了一種更加用戶友好和結(jié)構(gòu)化的方法來利用Nmap。

Zenmap的優(yōu)點包括允許保存Nmap配置文件供以后使用、提供更深入的結(jié)果分析,以及通過方便的復(fù)選框和其他用戶界面使用所有Nmap功能。

這是一個來自維基百科的開源軟件可視化圖:

現(xiàn)在我們已經(jīng)討論了用于掃描網(wǎng)絡(luò)的各種工具,下面討論一些用于評估網(wǎng)絡(luò)漏洞的技術(shù)。

6種網(wǎng)絡(luò)端口掃描技術(shù)和結(jié)果解釋

雖然端口掃描的最終結(jié)果是相同的,但了解用于實現(xiàn)目的的不同技術(shù)非常重要。與TCP和UDP一樣,不同的技術(shù)也需要權(quán)衡,例如速度與安全性。首先我們來看看nc默認(rèn)的一個常用技術(shù)——TCP連接掃描。

TCP連接掃描

這是安全工程師用來評估設(shè)備端口漏洞的常用工具。其解析了三向握手,因此一般不會引發(fā)入侵檢測警報。TCP連接掃描通過每個端口并記錄所有端口,從而使其能夠解析三向握手。然而,其非常緩慢。

SYN(隱形)掃描

SYN掃描,也稱為半端口掃描,旨在比傳統(tǒng)TCP掃描更快地驗證端口的漏洞。SYN掃描通過SYN-ACK數(shù)據(jù)包等待接收方確認(rèn),而不是完成整個握手過程。

這使得其比TCP連接掃描快得多,但更容易受到入侵檢測系統(tǒng)的攻擊。未打開的端口將發(fā)送RST信號,而不是SYN-ACK數(shù)據(jù)包。

UDP掃描

由于UDP不是面向連接的,因此很難確定UDP端口是否打開。UDP掃描需要依賴于不一定到達(dá)的ACK信號。然而,它仍然是一個重要的安全評估工具,但確定性仍然不如TCP掃描。

全面的掃描選項和配置

Nmap中可以應(yīng)用的掃描選項數(shù)量幾乎無法計算。Nmap在掃描端口的方式、內(nèi)容和時間方面提供了很大的靈活性。

下面羅列出一些掃描選項:

nmap-sS-Pn-sV--version-all-O-p 1-65535<some-target>

-sS:執(zhí)行SYN掃描(隱形)。-Pn:跳過主機(jī)發(fā)現(xiàn)(假設(shè)目標(biāo)已啟動)。-sV--version-all:嘗試識別服務(wù)版本。-O:嘗試操作系統(tǒng)檢測。-p 1-65535:掃描所有端口(1到65,535)。

nmap-p--T4-A-v<some-target>

-p-:掃描所有65,535個TCP端口。-T4:設(shè)置激進(jìn)(快速)掃描的計時模板。-A:啟用操作系統(tǒng)檢測、版本檢測、腳本掃描和traceroute。-v:啟用詳細(xì)結(jié)果的詳細(xì)輸出。

nmap-p--sS-sU-T4-A-v<some-target>

-sS:執(zhí)行SYN掃描(TCP)以進(jìn)行端口掃描。-sU:除了TCP之外,還包括UDP端口掃描。-T4:激進(jìn)的計時模板,可加快掃描速度。-A:啟用操作系統(tǒng)檢測、版本檢測、腳本掃描和路由跟蹤。-v:詳細(xì)輸出的詳細(xì)結(jié)果。

如何解釋端口掃描結(jié)果?

了解開放、關(guān)閉和過濾端口

分析結(jié)果時要記住的一件事是,永遠(yuǎn)不應(yīng)該打開不知道的端口。只有具有特定用途的端口才能開放通信。過濾端口是對掃描完全沒有響應(yīng)的端口。當(dāng)防火墻阻止端口,或某些其他網(wǎng)絡(luò)配置阻止有效響應(yīng)時,可能會發(fā)生這種情況。

基于掃描結(jié)果分析潛在安全風(fēng)險

開放且不受監(jiān)管的端口是IT領(lǐng)域最大的攻擊媒介之一。在分析安全結(jié)果時,確定哪些端口是開放的以及哪些服務(wù)正在使用該端口非常重要。

例如,如果端口668使用Telnet,且沒有人知道原因,那么這就是一個需要解決的嚴(yán)重問題。黑客可能會通過telnet竊取該端口上的數(shù)據(jù)。這只是一個示例,但理解和可視化結(jié)果對于增強(qiáng)和維持適當(dāng)?shù)陌踩珣B(tài)勢非常重要。

總結(jié)

本文介紹了端口到端口通信中使用哪些協(xié)議:TCP和UDP。請記住,TCP用于傳輸過程中不會丟失的關(guān)鍵數(shù)據(jù)。相比之下,UDP速度更快,適用于能夠承受一定量數(shù)據(jù)丟失的應(yīng)用程序。

已經(jīng)開發(fā)出工具來通過驗證使用這些協(xié)議的端口和服務(wù)來監(jiān)視這些協(xié)議。這些工具是Netcat、Nmap及其GUI對應(yīng)工具Zenmap。

掃描端口的技術(shù)有很多種,分別是TCP連接掃描、SYN掃描和UDP掃描。TCP連接掃描速度較慢,但更安全。SYN掃描可能會觸發(fā)入侵檢測系統(tǒng),但速度更快。UDP掃描通常很難解釋,因為UDP不是面向連接的,并且也不一定要向發(fā)送方發(fā)送響應(yīng)。

相關(guān)推薦:

2023年最常見物聯(lián)網(wǎng)協(xié)議和標(biāo)準(zhǔn)指南一文讀懂ZigBee協(xié)議的技術(shù)特點及用例MQTT:一種用于物聯(lián)網(wǎng)通信的輕量級協(xié)議Thread協(xié)議的優(yōu)勢及其如何應(yīng)用于KNX IoTHTTPS有多安全?保護(hù)大部分網(wǎng)絡(luò)的協(xié)議入門

CIBIS峰會

由千家網(wǎng)主辦的2023年第24屆CIBIS建筑智能化峰會即將正式拉開帷幕,本屆峰會主題為“智慧連接,‘筑’就未來”, 將攜手全球知名智能化品牌及業(yè)內(nèi)專家,共同探討物聯(lián)網(wǎng)、AI、云計算、大數(shù)據(jù)、IoT、智慧建筑、智能家居、智慧安防等熱點話題與最新技術(shù)應(yīng)用,分享如何利用更知慧、更高效、更安全的智慧連接技術(shù),“筑”就未來美好智慧生活。歡迎建筑智能化行業(yè)同仁報名參會,分享交流!

報名方式

成都站(10月24日):https://www.huodongxing.com/event/6715336669000

西安站(10月26日):https://www.huodongxing.com/event/3715335961700

長沙站(11月09日):https://www.huodongxing.com/event/7715337579900

上海站(11月21日):https://www.huodongxing.com/event/9715337959000

北京站(11月23日):https://www.huodongxing.com/event/3715338464800

廣州站(12月07日):https://www.huodongxing.com/event/6715338767700

更多2023年CIBIS峰會信息,詳見峰會官網(wǎng):http://summit.qianjia.com/

極客網(wǎng)企業(yè)會員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進(jìn)一步核實,并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。

2023-10-09
什么是傳輸層協(xié)議?丨智能百科
傳輸層協(xié)議是網(wǎng)絡(luò)的重要組成部分,因為其提供了一種將數(shù)據(jù)包從一個網(wǎng)絡(luò)節(jié)點傳輸?shù)搅硪粋€網(wǎng)絡(luò)節(jié)點的方法。傳輸協(xié)議有多種用途,例如流視頻、互聯(lián)網(wǎng)導(dǎo)航和執(zhí)行交易。兩個核心協(xié)議是TCP和UDP。

長按掃碼 閱讀全文