1.一種數(shù)據(jù)傳輸方法,用于在節(jié)點(diǎn)間進(jìn)行數(shù)據(jù)傳輸,其特征在于,方法包括:
S1,第一節(jié)點(diǎn)將所述數(shù)據(jù)進(jìn)行分片,得到多個(gè)數(shù)據(jù)分片;
S2,第一節(jié)點(diǎn)將每個(gè)數(shù)據(jù)分片分別發(fā)送至第一節(jié)點(diǎn)下一跳的第二節(jié)點(diǎn),在發(fā)送完所有數(shù)據(jù)分片后,第一節(jié)點(diǎn)向第二節(jié)點(diǎn)發(fā)送結(jié)束消息;
S3,第二節(jié)點(diǎn)收到所述結(jié)束消息后,向第一節(jié)點(diǎn)發(fā)送接收狀態(tài)消息;
S4,第一節(jié)點(diǎn)根據(jù)第二節(jié)點(diǎn)發(fā)送的當(dāng)前接收狀態(tài)信息,判斷第二節(jié)點(diǎn)是否接收到了所有數(shù)據(jù)分片,當(dāng)判斷出一個(gè)或多個(gè)數(shù)據(jù)分片未被第二節(jié)點(diǎn)所接收到時(shí),第一節(jié)點(diǎn)重新將一個(gè)或多個(gè)數(shù)據(jù)分片發(fā)送至第二節(jié)點(diǎn)。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,所述步驟S2中,第一節(jié)點(diǎn)向第二節(jié)點(diǎn)發(fā)送結(jié)束消息后,在第一時(shí)間閾值內(nèi)未收到第二節(jié)點(diǎn)發(fā)送的接收狀態(tài)消息,則重新發(fā)送結(jié)束消息至第二節(jié)點(diǎn)。
3.根據(jù)權(quán)利要求2所述的數(shù)據(jù)傳輸方法,其特征在于,所述第一節(jié)點(diǎn)連續(xù)發(fā)送M次結(jié)束消息至第二節(jié)點(diǎn)后,均未收到第二節(jié)點(diǎn)發(fā)送的接收狀態(tài)消息,則將選擇其他節(jié)點(diǎn)作為第二節(jié)點(diǎn),并執(zhí)行步驟S1~S4,M為大于等2的整數(shù)。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)傳輸方法,其特征在于,所述步驟S2中,第二節(jié)點(diǎn)在接收多個(gè)數(shù)據(jù)分片時(shí),若在接收到一個(gè)數(shù)據(jù)分片后的第二時(shí)間閾值內(nèi),未接收到下一個(gè)數(shù)據(jù)分片,則第二節(jié)點(diǎn)刪除本地已接收的數(shù)據(jù)分片,并結(jié)束接收流程。
5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)傳輸方法,其特征在于,所述步驟S3中,第二節(jié)點(diǎn)在接收到所有數(shù)據(jù)分片后,在第二時(shí)間閾值內(nèi)未接收到第一節(jié)點(diǎn)發(fā)送的結(jié)束消息,則第二節(jié)點(diǎn)刪除本地已接收的數(shù)據(jù)分片,并結(jié)束接收流程。
6.根據(jù)權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,所述步驟S2還包括,在第二節(jié)點(diǎn)中生成一個(gè)長(zhǎng)度為數(shù)據(jù)分片個(gè)數(shù)的二進(jìn)制序列,該二進(jìn)制序列的每一位表示對(duì)應(yīng)數(shù)據(jù)分片是否被第二節(jié)點(diǎn)接收,其中,第二節(jié)點(diǎn)向第一節(jié)點(diǎn)發(fā)送的接收狀態(tài)消息中包含有所述二進(jìn)制序列,所述第一節(jié)點(diǎn)根據(jù)所述二進(jìn)制序列判斷是否相應(yīng)的數(shù)據(jù)分片未被第二節(jié)點(diǎn)所接收。
7.根據(jù)權(quán)利要求6所述的數(shù)據(jù)傳輸方法,其特征在于,所述二進(jìn)制序列中,0表示相應(yīng)的數(shù)據(jù)分片未被第二節(jié)點(diǎn)接收,1表示相應(yīng)的數(shù)據(jù)分片已被第二節(jié)點(diǎn)接收,第二節(jié)點(diǎn)每接收到一個(gè)數(shù)據(jù)分片時(shí),將二進(jìn)制序列相應(yīng)位置為1。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)傳輸方法,其特征在于,第二節(jié)點(diǎn)在收到第一節(jié)點(diǎn)發(fā)送的結(jié)束消息后,判斷所述二進(jìn)制序列是否全為1,若是,則將接收到的所有數(shù)據(jù)分片聚合成完整的數(shù)據(jù)并存儲(chǔ)。
9.根據(jù)權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,每一個(gè)數(shù)據(jù)分片均至少包括以下信息:所述數(shù)據(jù)的標(biāo)識(shí)、所述數(shù)據(jù)的總分片數(shù)及該數(shù)據(jù)分片的序號(hào)。
10.根據(jù)權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,第二節(jié)點(diǎn)還將本地已接收的數(shù)據(jù)分片發(fā)送至第二節(jié)點(diǎn)下一跳的第三節(jié)點(diǎn),其中,第二節(jié)點(diǎn)并行地進(jìn)行數(shù)據(jù)分片接收和數(shù)據(jù)分片發(fā)送。
11.根據(jù)權(quán)利要求10所述的數(shù)據(jù)傳輸方法,其特征在于,第二節(jié)點(diǎn)在收到第一節(jié)點(diǎn)發(fā)送的結(jié)束消息后,將該結(jié)束消息轉(zhuǎn)發(fā)至下一跳的第三節(jié)點(diǎn)。