網(wǎng)站制作NEWS
什么是數(shù)據(jù)接收包
什么是數(shù)據(jù)包?
您在互聯(lián)網(wǎng)上做的一切都涉及到數(shù)據(jù)包。例如,您接收的每個(gè)網(wǎng)頁都以一系列數(shù)據(jù)包的形式傳入,您發(fā)送的每封電子郵件都以一系列數(shù)據(jù)包的形式傳出。以小型數(shù)據(jù)包傳輸數(shù)據(jù)的網(wǎng)絡(luò)稱為數(shù)據(jù)包交換網(wǎng)絡(luò)。
在互聯(lián)網(wǎng)上,網(wǎng)絡(luò)以字節(jié)為單位將電子郵件分割為多個(gè)大小固定的部分。這些部分就是數(shù)據(jù)包。每個(gè)數(shù)據(jù)包都承載著引導(dǎo)它到達(dá)目的地的信息——發(fā)件人的IP地址、目標(biāo)收件人的IP地址以及其他一些信息,以告訴網(wǎng)絡(luò)此電子郵件分割成了多少個(gè)數(shù)據(jù)包和這些數(shù)據(jù)包的編號(hào)。數(shù)據(jù)包根據(jù)互聯(lián)網(wǎng)所用的協(xié)議承載數(shù)據(jù):傳數(shù)控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)。每個(gè)數(shù)據(jù)包都包含郵件正文的一部分。典型的數(shù)據(jù)包可能包含1,000或1,500字節(jié)。
然后每個(gè)數(shù)據(jù)包通過最佳可用路由發(fā)送到目的地——要么郵件的所有其他數(shù)據(jù)包都采用該路由,要么所有其他數(shù)據(jù)包都不采用。這使得網(wǎng)絡(luò)的效率更高。首先,網(wǎng)絡(luò)可以平衡每毫秒內(nèi)各個(gè)設(shè)備間的負(fù)載。其次,如果傳輸郵件時(shí)網(wǎng)絡(luò)中的一件設(shè)備出現(xiàn)故障,數(shù)據(jù)包也可以經(jīng)路由繞過故障,確保整封郵件的傳遞成功。
根據(jù)網(wǎng)絡(luò)類型的不同,數(shù)據(jù)包可能使用其他名字:
幀
塊
單元
段
大部分?jǐn)?shù)據(jù)包分為三個(gè)部分:
報(bào)頭——報(bào)頭包含對(duì)數(shù)據(jù)包所承載數(shù)據(jù)的說明。這些說明可包括: 數(shù)據(jù)包長度(一些網(wǎng)絡(luò)使用固定長度的數(shù)據(jù)包,而一些則依賴報(bào)頭來包含此信息)
同步(若干字節(jié)的數(shù)據(jù),用于幫助數(shù)據(jù)包匹配網(wǎng)絡(luò))
數(shù)據(jù)包編號(hào)(表示這是數(shù)據(jù)包序列中的第幾個(gè))
協(xié)議(在傳輸多種類型信息的網(wǎng)絡(luò)上,協(xié)議定義所要傳輸數(shù)據(jù)包的類型:電子郵件、網(wǎng)頁或流視頻等)
目標(biāo)地址(數(shù)據(jù)包的目的地)
發(fā)出地址(數(shù)據(jù)包的來源)
負(fù)載——也稱為數(shù)據(jù)包正文或數(shù)據(jù)。這是數(shù)據(jù)包向目的地發(fā)送的實(shí)際數(shù)據(jù)。如果數(shù)據(jù)包的長度固定,則負(fù)載可能以空白信息填補(bǔ)以達(dá)到正確的長度。
報(bào)尾——報(bào)尾有時(shí)也稱為頁腳,通常包含幾個(gè)字節(jié)的數(shù)據(jù),用于通知接收設(shè)備該處已是數(shù)據(jù)包的末尾。它還可能具有某種類型的錯(cuò)誤檢查功能,其中最常見的是循環(huán)冗余碼校驗(yàn)(CRC)。CRC非常簡潔。它在某些計(jì)算機(jī)網(wǎng)絡(luò)中的工作方式是,先取出負(fù)載中所有的1并相加,然后將結(jié)果以十六進(jìn)制的形式保存在報(bào)尾中。接收設(shè)備將負(fù)載中的1值相加,并與報(bào)尾中保存的值比較。如果兩值相同,則證明數(shù)據(jù)包是完好的;如果兩值不同,接收設(shè)備就會(huì)向發(fā)出設(shè)備發(fā)送請(qǐng)求,請(qǐng)其重新發(fā)送數(shù)據(jù)包。
讓我們來看看電子郵件是怎樣分割為若干數(shù)據(jù)包的。假設(shè)您向朋友發(fā)送一封電子郵件,大小約為3,500 字節(jié)(3.5KB)。用來發(fā)送郵件的網(wǎng)絡(luò)使用固定長度為1,024字節(jié)(1KB)的數(shù)據(jù)包。每個(gè)數(shù)據(jù)包的報(bào)頭長度為96字節(jié),報(bào)尾為32字節(jié),剩下的896字節(jié)分配給負(fù)載。要將3,500字節(jié)的郵件分割,您需要4個(gè)數(shù)據(jù)包(3,500除以896)。三個(gè)數(shù)據(jù)包包含896字節(jié)負(fù)載,第四個(gè)包含812字節(jié)。下面是其中一個(gè)數(shù)據(jù)包的內(nèi)容:
每個(gè)數(shù)據(jù)包的報(bào)頭都包含相應(yīng)的協(xié)議、發(fā)出地址(您的計(jì)算機(jī)的IP地址)、目標(biāo)地址(接收電子郵件的計(jì)算機(jī)的IP地址)和數(shù)據(jù)包編號(hào)(1、2、3或4,因?yàn)橐还灿?個(gè)數(shù)據(jù)包)。網(wǎng)絡(luò)中的路由器將查看報(bào)頭中的目標(biāo)地址,并將其與查詢表中的內(nèi)容進(jìn)行比較,以確定數(shù)據(jù)包的發(fā)送目的地。當(dāng)數(shù)據(jù)包到達(dá)目的地后,您朋友的計(jì)算機(jī)將從每個(gè)數(shù)據(jù)包中剔除報(bào)頭和報(bào)尾,并按照數(shù)據(jù)包的編號(hào)順序重新組合電子郵件。
多重隨機(jī)標(biāo)簽