數(shù)據(jù)傳輸方法、設(shè)備及系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種數(shù)據(jù)傳輸方法,包括:通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包;在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包;若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路;通過(guò)所述UDP鏈路和TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。本發(fā)明還公開(kāi)了另外兩種數(shù)據(jù)傳輸方法、一種數(shù)據(jù)發(fā)送設(shè)備、一種數(shù)據(jù)接收設(shè)備和一種數(shù)據(jù)傳輸系統(tǒng)。本發(fā)明可以提高數(shù)據(jù)傳輸流暢度、優(yōu)化傳輸質(zhì)量。
【專(zhuān)利說(shuō)明】數(shù)據(jù)傳輸方法、設(shè)備及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)【技術(shù)領(lǐng)域】,尤其涉及一種數(shù)據(jù)傳輸方法及系統(tǒng)。
【背景技術(shù)】
[0002]在現(xiàn)有技術(shù)中,即時(shí)通訊通常使用TCP連接方式。比如在網(wǎng)絡(luò)游戲中,客戶(hù)端和服務(wù)器之間通常采用一條TCP連接進(jìn)行相互通信,但是如果客戶(hù)端開(kāi)了迅雷,或者客戶(hù)端同局域網(wǎng)的其他機(jī)器開(kāi)了迅雷或者其他下載軟件,會(huì)極大影響網(wǎng)絡(luò)游戲的網(wǎng)絡(luò)流暢度。根據(jù)實(shí)際的統(tǒng)計(jì)數(shù)據(jù),在網(wǎng)絡(luò)游戲中,使用TCP連接的情況下,客戶(hù)端的掉線(xiàn)率大約為30% -40%。這是因?yàn)門(mén)CP的主動(dòng)避讓機(jī)制導(dǎo)致的。TCP主動(dòng)避讓機(jī)制具體為:在網(wǎng)絡(luò)層發(fā)現(xiàn)第一次網(wǎng)絡(luò)異常(比如丟包)現(xiàn)象之后,TCP機(jī)制會(huì)主動(dòng)降低自己的網(wǎng)絡(luò)速率。例如,如果在網(wǎng)絡(luò)延時(shí)為50ms的時(shí)候,TCP第一次發(fā)生丟包,系統(tǒng)會(huì)在下一個(gè)50ms嘗試重傳,如果仍然丟包,會(huì)在下10ms重傳,如果仍然丟包,會(huì)在下200ms重傳。嘗試的時(shí)間等于上一次嘗試時(shí)間的一倍,這是一個(gè)指數(shù)的級(jí)別,重傳次數(shù)如果超過(guò)5次,重傳等待時(shí)間將會(huì)很恐怖,最終很可能掉線(xiàn)。因此客戶(hù)端和服務(wù)器之間采用TCP連接時(shí),當(dāng)網(wǎng)絡(luò)質(zhì)量不穩(wěn)定時(shí),例如如果網(wǎng)絡(luò)質(zhì)量突然很差,然后又恢復(fù)了,TCP嘗試重傳的時(shí)間會(huì)等待很久,由于等待時(shí)間太久,會(huì)導(dǎo)致客戶(hù)端掉線(xiàn)。
[0003]在某些應(yīng)用中也會(huì)使用UDP連接方式。比如在網(wǎng)絡(luò)游戲中,客戶(hù)端和服務(wù)器端之間使用一條UDP連接。但是UDP是不可靠協(xié)議,也就是說(shuō)服務(wù)器發(fā)送給客戶(hù)端的封包,客戶(hù)端不保證可以收到。另外,防火墻等某些軟件會(huì)限制UDP連接流量,因此當(dāng)采用UDP連接傳輸數(shù)據(jù)較多時(shí),會(huì)被限制流量,從而導(dǎo)致數(shù)據(jù)傳輸不夠流暢、掉線(xiàn)率增加,甚至導(dǎo)致數(shù)據(jù)傳輸中斷。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的技術(shù)問(wèn)題在于,提供一種提高數(shù)據(jù)傳輸流暢度、優(yōu)化傳輸質(zhì)量的數(shù)據(jù)傳輸方法及系統(tǒng)。
[0005]為解決以上技術(shù)問(wèn)題,本發(fā)明提供了一種數(shù)據(jù)傳輸方法,包括:
[0006]通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包;
[0007]在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包;
[0008]若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路;
[0009]通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
[0010]本發(fā)明還提供了另外一種數(shù)據(jù)傳輸方法,包括:
[0011]通過(guò)UDP鏈路接收數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包;
[0012]向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);
[0013]接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路;所述TCP鏈路建立請(qǐng)求是所述數(shù)據(jù)發(fā)送設(shè)備在檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí)發(fā)送的;
[0014]通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0015]本發(fā)明還提供了另外一種數(shù)據(jù)傳輸方法,包括:
[0016]數(shù)據(jù)發(fā)送設(shè)備通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包;
[0017]所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包;
[0018]所述數(shù)據(jù)接收設(shè)備向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);
[0019]所述數(shù)據(jù)發(fā)送設(shè)備在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);
[0020]所述數(shù)據(jù)發(fā)送設(shè)備若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備發(fā)送TCP鏈路建立請(qǐng)求;
[0021]所述數(shù)據(jù)接收設(shè)備接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路;
[0022]所述數(shù)據(jù)發(fā)送設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
[0023]所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0024]本發(fā)明還提供了一種數(shù)據(jù)發(fā)送設(shè)備,包括:
[0025]第一數(shù)據(jù)封包發(fā)送模塊,用于通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包;
[0026]超時(shí)檢測(cè)模塊,用于在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包;
[0027]TCP鏈路請(qǐng)求建立模塊,用于若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路;
[0028]第二數(shù)據(jù)封包發(fā)送模塊,用于通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
[0029]本發(fā)明還提供了一種數(shù)據(jù)接收設(shè)備,包括:
[0030]第一數(shù)據(jù)封包接收模塊,用于通過(guò)UDP鏈路接收數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包;
[0031]第一確認(rèn)響應(yīng)返回模塊,用于向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);
[0032]TCP鏈路建立模塊,用于接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路;所述TCP鏈路建立請(qǐng)求是所述數(shù)據(jù)發(fā)送設(shè)備在檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí)發(fā)送的;
[0033]第二數(shù)據(jù)封包接收模塊,用于通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0034]本發(fā)明還提供了一種數(shù)據(jù)傳輸系統(tǒng),
[0035]包括數(shù)據(jù)發(fā)送設(shè)備和數(shù)據(jù)接收設(shè)備,所述數(shù)據(jù)發(fā)送設(shè)備包括第一數(shù)據(jù)封包發(fā)送模塊、超時(shí)檢測(cè)模塊、TCP鏈路請(qǐng)求建立模塊和第二數(shù)據(jù)封包模塊,所述數(shù)據(jù)接收設(shè)備包括第一數(shù)據(jù)封包接收模塊、第一確認(rèn)響應(yīng)返回模塊、TCP鏈路建立模塊和第二數(shù)據(jù)封包接收模塊;其中:
[0036]所述第一數(shù)據(jù)封包發(fā)送模塊,用于數(shù)據(jù)發(fā)送設(shè)備通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包;
[0037]所述第一數(shù)據(jù)封包接收模塊,用于所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包;
[0038]所述第一確認(rèn)響應(yīng)返回模塊,用于所述數(shù)據(jù)接收設(shè)備向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);
[0039]所述超時(shí)檢測(cè)模塊,用于所述數(shù)據(jù)發(fā)送設(shè)備在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);
[0040]所述TCP鏈路請(qǐng)求建立模塊,用于所述數(shù)據(jù)發(fā)送設(shè)備若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)時(shí),向所述數(shù)據(jù)接收設(shè)備發(fā)送TCP鏈路建立請(qǐng)求;
[0041]所述TCP鏈路建立模塊,用于所述數(shù)據(jù)接收設(shè)備接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路;
[0042]所述第二數(shù)據(jù)封包發(fā)送模塊,用于所述數(shù)據(jù)發(fā)送設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包;
[0043]所述第二數(shù)據(jù)封包接收模塊,用于所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0044]本發(fā)明中,數(shù)據(jù)發(fā)送設(shè)備在通過(guò)UDP鏈路傳輸數(shù)據(jù)時(shí),數(shù)據(jù)接收設(shè)備會(huì)返回一個(gè)確認(rèn)響應(yīng),因此可以檢測(cè)到數(shù)據(jù)接收設(shè)備是否接收到發(fā)送的數(shù)據(jù);當(dāng)數(shù)據(jù)發(fā)送設(shè)備檢測(cè)到接收確認(rèn)響應(yīng)超時(shí)的時(shí)候,建立TCP鏈路,進(jìn)行輔助傳輸,之后的數(shù)據(jù)傳輸就會(huì)通過(guò)TCP鏈路和UDP鏈路同時(shí)傳輸數(shù)據(jù),因此可以保證數(shù)據(jù)能夠傳輸?shù)搅硪环?,可以有效解決防火墻等某些限制UDP數(shù)據(jù)流量的應(yīng)用導(dǎo)致的掉線(xiàn)、數(shù)據(jù)傳輸不流暢或中斷的問(wèn)題,可以增加網(wǎng)絡(luò)流暢度、降低掉線(xiàn)率、優(yōu)化數(shù)據(jù)傳輸質(zhì)量。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0045]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0046]圖1是本發(fā)明提供的數(shù)據(jù)傳輸方法的一個(gè)實(shí)施例的流程示意圖;
[0047]圖2是本發(fā)明提供的數(shù)據(jù)傳輸方法的另一個(gè)實(shí)施例的流程示意圖;
[0048]圖3是本發(fā)明提供的數(shù)據(jù)傳輸方法的又一個(gè)實(shí)施例的流程示意圖;
[0049]圖4是本發(fā)明提供的數(shù)據(jù)發(fā)送設(shè)備的一個(gè)實(shí)施例的功能模塊圖;
[0050]圖5是圖4中超時(shí)檢測(cè)模塊的模塊示意圖;
[0051]圖6是本發(fā)明提供的數(shù)據(jù)接收設(shè)備的一個(gè)實(shí)施例的功能模塊圖;
[0052]圖7是圖6中身份驗(yàn)證模塊的模塊示意圖;
[0053]圖8是本發(fā)明提供的數(shù)據(jù)傳輸系統(tǒng)的一個(gè)實(shí)施例的功能模塊圖。
【具體實(shí)施方式】
[0054]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0055]圖1是本發(fā)明提供的數(shù)據(jù)傳輸方法的一個(gè)實(shí)施例的流程示意圖,本實(shí)施例是針對(duì)于數(shù)據(jù)發(fā)送設(shè)備一側(cè)描述的,如圖1所示,本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸方法包括:
[0056]S101、通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包。
[0057]其中,數(shù)據(jù)發(fā)送設(shè)備可以是客戶(hù)端,數(shù)據(jù)接收設(shè)備可以對(duì)應(yīng)的是服務(wù)器;可以理解的,數(shù)據(jù)發(fā)送設(shè)備和數(shù)據(jù)接收設(shè)備也可以是兩個(gè)對(duì)等的終端,或者數(shù)據(jù)發(fā)送設(shè)備為服務(wù)器,數(shù)據(jù)接收設(shè)備對(duì)應(yīng)的為客戶(hù)端。
[0058]S102、將已發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中。
[0059]其中,已發(fā)送列表是隊(duì)列結(jié)構(gòu),其中保存了已發(fā)送的數(shù)據(jù)封包及其發(fā)送時(shí)間,用于之后的超時(shí)檢測(cè)。
[0060]S103、若接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間。
[0061]具體的,數(shù)據(jù)接收設(shè)備在接收到數(shù)據(jù)發(fā)送設(shè)備發(fā)送的數(shù)據(jù)封包后會(huì)返回一個(gè)確認(rèn)響應(yīng),表示接收到該數(shù)據(jù)封包。所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包。若數(shù)據(jù)發(fā)送設(shè)備接收到了確認(rèn)響應(yīng)后,會(huì)將對(duì)應(yīng)的數(shù)據(jù)封包及其發(fā)送時(shí)間從已發(fā)送列表中刪除,因此已發(fā)送列表中保存的都是沒(méi)有接收到確認(rèn)響應(yīng)的數(shù)據(jù)封包。
[0062]S104、在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0063]具體的,S104包括:
[0064]在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包;
[0065]若存在所述第一數(shù)據(jù)封包,則判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng);
[0066]當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定為超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
[0067]另外,若所述發(fā)送列表不存在所述第一數(shù)據(jù)封包,或者所述差值小于或等于預(yù)設(shè)時(shí)長(zhǎng),則繼續(xù)通過(guò)所述UDP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
[0068]其中,超時(shí)檢測(cè)是一個(gè)周期性的檢測(cè),可以是每隔500ms檢測(cè)一次,對(duì)應(yīng)的預(yù)設(shè)時(shí)長(zhǎng)可以為2s。其中已發(fā)送列表中保存的都是沒(méi)有接收到確認(rèn)響應(yīng)的數(shù)據(jù)封包,因此,如果已發(fā)送列表沒(méi)有所述第一數(shù)據(jù)封包,即表示所述第一數(shù)據(jù)封包已經(jīng)接收到第一數(shù)據(jù)封包。
[0069]S105、若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路。
[0070]具體的,檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示當(dāng)前的UDP鏈路有可能被限制或出現(xiàn)網(wǎng)絡(luò)問(wèn)題等,因此向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路。具體的,新建的TCP鏈路的連接IP和端口設(shè)定為和UDP鏈路的一樣。
[0071]步驟S104和步驟S105是針對(duì)數(shù)據(jù)發(fā)送設(shè)備發(fā)送的某一數(shù)據(jù)封包的超時(shí)檢測(cè)過(guò)程進(jìn)行描述的,在實(shí)際操作過(guò)程中,如果對(duì)數(shù)據(jù)發(fā)送設(shè)備發(fā)送的每一數(shù)據(jù)封包都進(jìn)行超時(shí)檢測(cè),那么會(huì)增加內(nèi)存消耗、降低效率,因此步驟S104和步驟S105在實(shí)際操作過(guò)程中的【具體實(shí)施方式】可以是:在超時(shí)檢測(cè)時(shí)刻,遍歷已發(fā)送列表中的前幾個(gè)數(shù)據(jù)封包(例如前7個(gè)),如果存在超過(guò)預(yù)設(shè)時(shí)長(zhǎng)沒(méi)有接收到確認(rèn)響應(yīng)的數(shù)據(jù)封包,則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路。即只對(duì)已發(fā)送列表的前幾個(gè)數(shù)據(jù)封包進(jìn)行遍歷和超時(shí)檢測(cè)。
[0072]S106、通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
[0073]其中,所述第二數(shù)據(jù)封包包含所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,以使所述數(shù)據(jù)接收設(shè)備能夠根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證,并在驗(yàn)證通過(guò)后通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0074]S107、接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路所述和TCP鏈路返回的數(shù)據(jù)封包,并對(duì)所述數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0075]具體的,當(dāng)接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路返回的數(shù)據(jù)封包時(shí),對(duì)接收的數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。因?yàn)閿?shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路返回的數(shù)據(jù)封包是相同的數(shù)據(jù)包,因此需要對(duì)重復(fù)的數(shù)據(jù)封包進(jìn)行過(guò)濾。
[0076]之后重復(fù)執(zhí)行步驟S106至S107進(jìn)行數(shù)據(jù)傳輸。
[0077]本發(fā)明實(shí)施例中,數(shù)據(jù)發(fā)送設(shè)備在通過(guò)UDP鏈路傳輸數(shù)據(jù)時(shí),數(shù)據(jù)接收設(shè)備會(huì)返回一個(gè)確認(rèn)響應(yīng),因此可以檢測(cè)到數(shù)據(jù)接收設(shè)備是否接收到發(fā)送的數(shù)據(jù);當(dāng)數(shù)據(jù)發(fā)送設(shè)備檢測(cè)到接收確認(rèn)響應(yīng)超時(shí)的時(shí)候,建立TCP鏈路,進(jìn)行輔助傳輸,之后的數(shù)據(jù)傳輸就會(huì)通過(guò)TCP鏈路和UDP鏈路同時(shí)傳輸數(shù)據(jù),因此可以保證數(shù)據(jù)能夠傳輸?shù)搅硪环?,可以有效解決防火墻等某些限制UDP數(shù)據(jù)流量的應(yīng)用導(dǎo)致的掉線(xiàn)、數(shù)據(jù)傳輸不流暢或中斷的問(wèn)題,可以增加網(wǎng)絡(luò)流暢度、降低掉線(xiàn)率、優(yōu)化數(shù)據(jù)傳輸質(zhì)量。
[0078]圖2是本發(fā)明提供的數(shù)據(jù)傳輸方法的另一個(gè)實(shí)施例的流程示意圖,本實(shí)施例是針對(duì)于數(shù)據(jù)接收設(shè)備一側(cè)描述的,如圖2所示,本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸方法包括:
[0079]S201、通過(guò)UDP鏈路接收數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包。
[0080]其中,數(shù)據(jù)發(fā)送設(shè)備可以是客戶(hù)端,數(shù)據(jù)接收設(shè)備可以對(duì)應(yīng)的是服務(wù)器;另外,數(shù)據(jù)發(fā)送設(shè)備和數(shù)據(jù)接收設(shè)備也可以是兩個(gè)對(duì)等的終端,或者數(shù)據(jù)發(fā)送設(shè)備為服務(wù)器,數(shù)據(jù)接收設(shè)備對(duì)應(yīng)的為客戶(hù)端。
[0081]S202、從所述第一數(shù)據(jù)封包解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。
[0082]具體的,可以從所述第一數(shù)據(jù)封包解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID和當(dāng)前UDP鏈路的鏈路ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。其中,數(shù)據(jù)發(fā)送設(shè)備信息列表可以保存多個(gè)數(shù)據(jù)發(fā)送設(shè)備的連接ID。具體的,數(shù)據(jù)發(fā)送設(shè)備信息列表可以是哈希表,哈希表的key是數(shù)據(jù)發(fā)送設(shè)備的連接ID,value是當(dāng)前UDP鏈路的鏈路ID。
[0083]S203、向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0084]具體的,數(shù)據(jù)接收設(shè)備在接收到數(shù)據(jù)發(fā)送設(shè)備發(fā)送的數(shù)據(jù)封包后都會(huì)返回一個(gè)確認(rèn)響應(yīng)。
[0085]S204、接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路。
[0086]其中,所述TCP鏈路建立請(qǐng)求是所述數(shù)據(jù)發(fā)送設(shè)備在檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí)發(fā)送的。
[0087]S205、通過(guò)所述UDP鏈路和TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包。
[0088]具體的,當(dāng)TCP鏈路建立后,數(shù)據(jù)發(fā)送設(shè)備會(huì)通過(guò)所述UDP鏈路和TCP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送相同的第二數(shù)據(jù)封包。其中,第二數(shù)據(jù)封包包含數(shù)據(jù)發(fā)送設(shè)備的連接ID。
[0089]S206、從通過(guò)TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證。
[0090]具體的,可以從通過(guò)TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID和當(dāng)前TCP鏈路的鏈路ID,并將當(dāng)前TCP鏈路的鏈路ID也保存于所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,具體保存在哈希表中key為當(dāng)前數(shù)據(jù)發(fā)送設(shè)備的連接ID的value中。
[0091]其中,身份驗(yàn)證主要是查看當(dāng)前的數(shù)據(jù)發(fā)送設(shè)備是否之前采用了 UDP連接。
[0092]其中,所述根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證具體包括:檢測(cè)所述連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中;若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,判定為身份驗(yàn)證通過(guò)。因?yàn)椋绻安捎昧?UDP連接,則會(huì)保存在數(shù)據(jù)發(fā)送設(shè)備信息列表中。
[0093]S207、若身份驗(yàn)證通過(guò),則通過(guò)所述UDP鏈路和所述TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0094]具體的,如果驗(yàn)證通過(guò),則表明之前采用了 UDP連接,因此針對(duì)于當(dāng)前數(shù)據(jù)發(fā)送設(shè)備,從數(shù)據(jù)發(fā)送設(shè)備信息列表中查找出key為當(dāng)前數(shù)據(jù)發(fā)送設(shè)備的連接ID的value,從value中查找出UDP鏈路的鏈路ID和TCP鏈路的鏈路ID,并通過(guò)對(duì)應(yīng)的UDP鏈路和TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0095]之后重復(fù)執(zhí)行步驟S205和S207進(jìn)行數(shù)據(jù)傳輸。
[0096]本發(fā)明實(shí)施例中,數(shù)據(jù)發(fā)送設(shè)備在通過(guò)UDP鏈路傳輸數(shù)據(jù)時(shí),數(shù)據(jù)接收設(shè)備會(huì)返回一個(gè)確認(rèn)響應(yīng),因此可以檢測(cè)到數(shù)據(jù)接收設(shè)備是否接收到發(fā)送的數(shù)據(jù);當(dāng)數(shù)據(jù)發(fā)送設(shè)備檢測(cè)到接收確認(rèn)響應(yīng)超時(shí)的時(shí)候,建立TCP鏈路,進(jìn)行輔助傳輸,之后的數(shù)據(jù)傳輸就會(huì)通過(guò)TCP鏈路和UDP鏈路同時(shí)傳輸數(shù)據(jù),因此可以保證數(shù)據(jù)能夠傳輸?shù)搅硪环?,可以有效解決防火墻等某些限制UDP數(shù)據(jù)流量的應(yīng)用導(dǎo)致的掉線(xiàn)、數(shù)據(jù)傳輸不流暢或中斷的問(wèn)題,可以增加網(wǎng)絡(luò)流暢度、降低掉線(xiàn)率、優(yōu)化數(shù)據(jù)傳輸質(zhì)量。
[0097]圖3是本發(fā)明提供的數(shù)據(jù)傳輸方法的又一個(gè)實(shí)施例的流程示意圖,本實(shí)施例是對(duì)于數(shù)據(jù)接收設(shè)備和數(shù)據(jù)發(fā)送設(shè)備兩側(cè)描述的,如圖3所示,本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸方法包括:
[0098]S301、數(shù)據(jù)發(fā)送設(shè)備通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包,并將已發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中。
[0099]其中,數(shù)據(jù)發(fā)送設(shè)備可以是客戶(hù)端,數(shù)據(jù)接收設(shè)備可以對(duì)應(yīng)的是服務(wù)器;可以理解的,數(shù)據(jù)發(fā)送設(shè)備和數(shù)據(jù)接收設(shè)備也可以是兩個(gè)對(duì)等的終端,或者數(shù)據(jù)發(fā)送設(shè)備為服務(wù)器,數(shù)據(jù)接收設(shè)備對(duì)應(yīng)的為客戶(hù)端。其中,已發(fā)送列表是隊(duì)列結(jié)構(gòu),其中保存了已發(fā)送的數(shù)據(jù)封包及其發(fā)送時(shí)間,用于之后的超時(shí)檢測(cè)。
[0100]S302、所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包,并從所述第一數(shù)據(jù)封包解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。
[0101]具體的,可以從所述第一數(shù)據(jù)封包解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID和當(dāng)前UDP鏈路的鏈路ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。其中,數(shù)據(jù)發(fā)送設(shè)備信息列表可以保存多個(gè)數(shù)據(jù)發(fā)送設(shè)備的連接ID。具體的,數(shù)據(jù)發(fā)送設(shè)備信息列表可以是哈希表,哈希表的key是數(shù)據(jù)發(fā)送設(shè)備的連接ID,value是當(dāng)前UDP鏈路的鏈路ID。
[0102]S303、所述數(shù)據(jù)接收設(shè)備向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0103]具體的,數(shù)據(jù)接收設(shè)備在接收到數(shù)據(jù)發(fā)送設(shè)備發(fā)送的數(shù)據(jù)封包后會(huì)返回一個(gè)確認(rèn)響應(yīng),表示接收到該數(shù)據(jù)封包。所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包。
[0104]S304、所述數(shù)據(jù)發(fā)送設(shè)備若接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間。
[0105]若數(shù)據(jù)發(fā)送設(shè)備接收到了確認(rèn)響應(yīng)后,會(huì)將對(duì)應(yīng)的數(shù)據(jù)封包及其發(fā)送時(shí)間從已發(fā)送列表中刪除,因此已發(fā)送列表中保存的都是沒(méi)有接收到確認(rèn)響應(yīng)的數(shù)據(jù)封包。
[0106]S305、所述數(shù)據(jù)發(fā)送設(shè)備在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0107]具體的,S305包括:
[0108]所述數(shù)據(jù)發(fā)送設(shè)備在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包;
[0109]若存在所述第一數(shù)據(jù)封包,則判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng);
[0110]當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
[0111]另外,若所述發(fā)送列表不存在所述第一數(shù)據(jù)封包,或者所述差值小于或等于預(yù)設(shè)時(shí)長(zhǎng),則繼續(xù)通過(guò)所述UDP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
[0112]其中,超時(shí)檢測(cè)是一個(gè)周期性的檢測(cè),可以是每隔500ms檢測(cè)一次,對(duì)應(yīng)的預(yù)設(shè)時(shí)長(zhǎng)可以為2s。其中已發(fā)送列表中保存的都是沒(méi)有接收到確認(rèn)響應(yīng)的數(shù)據(jù)封包,因此,如果已發(fā)送列表沒(méi)有所述第一數(shù)據(jù)封包,即表示所述第一數(shù)據(jù)封包已經(jīng)接收到第一數(shù)據(jù)封包。
[0113]S306、所述數(shù)據(jù)發(fā)送設(shè)備若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備發(fā)送TCP鏈路建立請(qǐng)求。
[0114]具體的,檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示當(dāng)前的UDP鏈路有可能被限制或出現(xiàn)網(wǎng)絡(luò)問(wèn)題等,因此向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路。具體的,新建的TCP鏈路的連接IP和端口設(shè)定為和UDP鏈路的一樣。
[0115]步驟S305和步驟S306是針對(duì)數(shù)據(jù)發(fā)送設(shè)備發(fā)送的某一數(shù)據(jù)封包的超時(shí)檢測(cè)過(guò)程進(jìn)行描述的,在實(shí)際操作過(guò)程中,如果對(duì)數(shù)據(jù)發(fā)送設(shè)備發(fā)送的每一數(shù)據(jù)封包都進(jìn)行超時(shí)檢測(cè),那么會(huì)增加內(nèi)存消耗、降低效率,因此步驟S305和步驟S306在實(shí)際操作過(guò)程中的【具體實(shí)施方式】可以是:在超時(shí)檢測(cè)時(shí)刻,遍歷已發(fā)送列表中的前幾個(gè)數(shù)據(jù)封包(例如前7個(gè)),如果存在超過(guò)預(yù)設(shè)時(shí)長(zhǎng)沒(méi)有接收到確認(rèn)響應(yīng)的數(shù)據(jù)封包,則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路。即只對(duì)已發(fā)送列表的前幾個(gè)數(shù)據(jù)封包進(jìn)行遍歷和超時(shí)檢測(cè)。
[0116]S307、所述數(shù)據(jù)接收設(shè)備接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路。
[0117]S308、所述數(shù)據(jù)發(fā)送設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
[0118]其中,所述第二數(shù)據(jù)封包包含所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,以使所述數(shù)據(jù)接收設(shè)備能夠根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證,并在驗(yàn)證通過(guò)后通過(guò)所述UDP鏈路和TCP鏈路向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0119]S309、所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0120]S310、所述數(shù)據(jù)接收設(shè)備從通過(guò)TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證。
[0121]具體的,可以從通過(guò)TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID和當(dāng)前TCP鏈路的鏈路ID,并將當(dāng)前TCP鏈路的鏈路ID也保存于所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,具體保存在哈希表中key為當(dāng)前數(shù)據(jù)發(fā)送設(shè)備的連接ID的value中。
[0122]其中,身份驗(yàn)證主要是查看當(dāng)前的數(shù)據(jù)發(fā)送設(shè)備是否之前采用了 UDP連接。
[0123]其中,所述根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證具體包括:檢測(cè)所述連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中;若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,判定為身份驗(yàn)證通過(guò)。因?yàn)椋绻安捎昧?UDP連接,則會(huì)保存在數(shù)據(jù)發(fā)送設(shè)備信息列表中。
[0124]S311、若身份驗(yàn)證通過(guò),則所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0125]具體的,如果驗(yàn)證通過(guò),則表明之前采用了 UDP連接,因此針對(duì)于當(dāng)前數(shù)據(jù)發(fā)送設(shè)備,從數(shù)據(jù)發(fā)送設(shè)備信息列表中查找出key為當(dāng)前數(shù)據(jù)發(fā)送設(shè)備的連接ID的value,從value中查找出UDP鏈路的鏈路ID和TCP鏈路的鏈路ID,并通過(guò)對(duì)應(yīng)的UDP鏈路和TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0126]S312、所述數(shù)據(jù)發(fā)送設(shè)備接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路返回的數(shù)據(jù)封包,并所述數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0127]具體的,當(dāng)接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路返回的數(shù)據(jù)封包時(shí),對(duì)接收的數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。因?yàn)閿?shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路返回的數(shù)據(jù)封包是相同的數(shù)據(jù)包,因此需要對(duì)重復(fù)的數(shù)據(jù)封包進(jìn)行過(guò)濾。
[0128]之后重復(fù)執(zhí)行步驟S308至S312進(jìn)行數(shù)據(jù)傳輸。
[0129]本發(fā)明實(shí)施例中,數(shù)據(jù)發(fā)送設(shè)備在通過(guò)UDP鏈路傳輸數(shù)據(jù)時(shí),數(shù)據(jù)接收設(shè)備會(huì)返回一個(gè)確認(rèn)響應(yīng),因此可以檢測(cè)到數(shù)據(jù)接收設(shè)備是否接收到發(fā)送的數(shù)據(jù);當(dāng)數(shù)據(jù)發(fā)送設(shè)備檢測(cè)到接收確認(rèn)響應(yīng)超時(shí)的時(shí)候,建立TCP鏈路,進(jìn)行輔助傳輸,之后的數(shù)據(jù)傳輸就會(huì)通過(guò)TCP鏈路和UDP鏈路同時(shí)傳輸數(shù)據(jù),因此可以保證數(shù)據(jù)能夠傳輸?shù)搅硪环剑梢杂行Ы鉀Q防火墻等某些限制UDP數(shù)據(jù)流量的應(yīng)用導(dǎo)致的掉線(xiàn)、數(shù)據(jù)傳輸不流暢或中斷的問(wèn)題,可以增加網(wǎng)絡(luò)流暢度、降低掉線(xiàn)率、優(yōu)化數(shù)據(jù)傳輸質(zhì)量。
[0130]圖4是本發(fā)明提供的數(shù)據(jù)發(fā)送設(shè)備的一個(gè)實(shí)施例的功能模塊圖,如圖4所示,本發(fā)明實(shí)施例提供的數(shù)據(jù)發(fā)送設(shè)備包括:
[0131 ] 第一數(shù)據(jù)封包發(fā)送模塊401,用于通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包;
[0132]數(shù)據(jù)保存模塊402,用于將所述第一數(shù)據(jù)封包發(fā)送模塊401發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中;
[0133]數(shù)據(jù)刪除模塊403,用于當(dāng)接收到所述數(shù)據(jù)接收設(shè)備返回的的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間;
[0134]超時(shí)檢測(cè)模塊404,用于在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包;
[0135]TCP鏈路請(qǐng)求建立模塊405,用于若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路;
[0136]第二數(shù)據(jù)封包發(fā)送模塊406,用于通過(guò)所述UDP鏈路和TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包;
[0137]重復(fù)數(shù)據(jù)過(guò)濾模塊407,用于接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路返回的數(shù)據(jù)封包,并對(duì)接收的數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0138]其中,如圖5所示,所述超時(shí)檢測(cè)模塊404具體包括:
[0139]已發(fā)送列表檢測(cè)單元4041,用于在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包;
[0140]超時(shí)計(jì)算單元4042,用于若存在所述第一數(shù)據(jù)封包,則判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng);
[0141]超時(shí)判定單元4043,用于當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
[0142]其中,所述第二數(shù)據(jù)封包包含所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,以使所述數(shù)據(jù)接收設(shè)備能夠根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證,并在驗(yàn)證通過(guò)后通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0143]本發(fā)明實(shí)施例與本發(fā)明提供的如圖1所示的數(shù)據(jù)傳輸方法的實(shí)施例一一對(duì)應(yīng),因此,各模塊的具體信息請(qǐng)參照本發(fā)明提供的數(shù)據(jù)傳輸方法的第一實(shí)施例,在此不再贅述。
[0144]本發(fā)明實(shí)施例中,數(shù)據(jù)發(fā)送設(shè)備在通過(guò)UDP鏈路傳輸數(shù)據(jù)時(shí),數(shù)據(jù)接收設(shè)備會(huì)返回一個(gè)確認(rèn)響應(yīng),因此可以檢測(cè)到數(shù)據(jù)接收設(shè)備是否接收到發(fā)送的數(shù)據(jù);當(dāng)數(shù)據(jù)發(fā)送設(shè)備檢測(cè)到接收確認(rèn)響應(yīng)超時(shí)的時(shí)候,建立TCP鏈路,進(jìn)行輔助傳輸,之后的數(shù)據(jù)傳輸就會(huì)通過(guò)TCP鏈路和UDP鏈路同時(shí)傳輸數(shù)據(jù),因此可以保證數(shù)據(jù)能夠傳輸?shù)搅硪环?,可以有效解決防火墻等某些限制UDP數(shù)據(jù)流量的應(yīng)用導(dǎo)致的掉線(xiàn)、數(shù)據(jù)傳輸不流暢或中斷的問(wèn)題,可以增加網(wǎng)絡(luò)流暢度、降低掉線(xiàn)率、優(yōu)化數(shù)據(jù)傳輸質(zhì)量。
[0145]圖6是本發(fā)明提供的數(shù)據(jù)接收設(shè)備的一個(gè)實(shí)施例的功能模塊圖,如圖6所示,本發(fā)明實(shí)施例提供的數(shù)據(jù)接收設(shè)備包括:
[0146]第一數(shù)據(jù)封包接收模塊501,用于通過(guò)UDP鏈路接收數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包;
[0147]第一數(shù)據(jù)封包解析模塊502,用于從所述第一數(shù)據(jù)封包接收模塊接收的第一數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中;
[0148]第一確認(rèn)響應(yīng)返回模塊503,用于向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);
[0149]TCP鏈路建立模塊504,用于接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路;所述TCP鏈路建立請(qǐng)求是所述數(shù)據(jù)發(fā)送設(shè)備在檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí)發(fā)送的;
[0150]第二數(shù)據(jù)封包接收模塊505,用于通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0151]身份驗(yàn)證模塊506,用于從通過(guò)所述TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證;
[0152]第二確認(rèn)響應(yīng)返回模塊507,用于在所述身份驗(yàn)證模塊判定為身份驗(yàn)證通過(guò)時(shí),通過(guò)所述UDP鏈路和所述TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0153]其中,如圖7所示,身份驗(yàn)證模塊506具體包括:
[0154]ID檢測(cè)單元5061,用于檢測(cè)從所述第二數(shù)據(jù)封包中解析出連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中;
[0155]驗(yàn)證判定單元5062,用于若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,則判定為身份驗(yàn)證通過(guò)。
[0156]本發(fā)明實(shí)施例與本發(fā)明提供的如圖2所示的數(shù)據(jù)傳輸方法的實(shí)施例一一對(duì)應(yīng),因此,各模塊的具體信息請(qǐng)參照本發(fā)明提供的數(shù)據(jù)傳輸方法的第二實(shí)施例,在此不再贅述。
[0157]本發(fā)明實(shí)施例中,數(shù)據(jù)發(fā)送設(shè)備在通過(guò)UDP鏈路傳輸數(shù)據(jù)時(shí),數(shù)據(jù)接收設(shè)備會(huì)返回一個(gè)確認(rèn)響應(yīng),因此可以檢測(cè)到數(shù)據(jù)接收設(shè)備是否接收到發(fā)送的數(shù)據(jù);當(dāng)數(shù)據(jù)發(fā)送設(shè)備檢測(cè)到接收確認(rèn)響應(yīng)超時(shí)的時(shí)候,建立TCP鏈路,進(jìn)行輔助傳輸,之后的數(shù)據(jù)傳輸就會(huì)通過(guò)TCP鏈路和UDP鏈路同時(shí)傳輸數(shù)據(jù),因此可以保證數(shù)據(jù)能夠傳輸?shù)搅硪环?,可以有效解決防火墻等某些限制UDP數(shù)據(jù)流量的應(yīng)用導(dǎo)致的掉線(xiàn)、數(shù)據(jù)傳輸不流暢或中斷的問(wèn)題,可以增加網(wǎng)絡(luò)流暢度、降低掉線(xiàn)率、優(yōu)化數(shù)據(jù)傳輸質(zhì)量。
[0158]圖8是本發(fā)明提供的數(shù)據(jù)傳輸系統(tǒng)的一個(gè)實(shí)施例的功能模塊圖,如圖8所示,本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸系統(tǒng)包括數(shù)據(jù)發(fā)送設(shè)備61和數(shù)據(jù)接收設(shè)備62,所述數(shù)據(jù)發(fā)送設(shè)備61包括第一數(shù)據(jù)封包發(fā)送模塊611、數(shù)據(jù)保存模塊612、數(shù)據(jù)刪除模塊613、超時(shí)檢測(cè)模塊614、TCP鏈路請(qǐng)求建立模塊615、第二數(shù)據(jù)封包模塊616和重復(fù)數(shù)據(jù)過(guò)濾模塊617,所述數(shù)據(jù)接收設(shè)備62包括第一數(shù)據(jù)封包接收模塊621、第一數(shù)據(jù)封包解析模塊622、第一確認(rèn)響應(yīng)返回模塊623、TCP鏈路建立模塊624、第二數(shù)據(jù)封包接收模塊625、身份驗(yàn)證模塊626和第二確認(rèn)響應(yīng)返回模塊627。
[0159]第一數(shù)據(jù)封包發(fā)送模塊611,用于數(shù)據(jù)發(fā)送設(shè)備61通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備62發(fā)送第一數(shù)據(jù)封包。
[0160]數(shù)據(jù)保存模塊612,用于將所述第一數(shù)據(jù)封包發(fā)送模塊發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中。
[0161]數(shù)據(jù)刪除模塊613,用于當(dāng)接收到所述數(shù)據(jù)接收設(shè)備62返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間。
[0162]第一數(shù)據(jù)封包接收模塊621,用于所述數(shù)據(jù)接收設(shè)備62通過(guò)所述UDP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備61發(fā)送的第一數(shù)據(jù)封包。
[0163]第一數(shù)據(jù)封包解析模塊622,用于從所述第一數(shù)據(jù)封包接收模塊接收的第一數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備61的連接ID和所述第一 UDP鏈路的鏈路ID,并保存于鏈路ID表中。
[0164]第一確認(rèn)響應(yīng)返回模塊623,用于所述數(shù)據(jù)接收設(shè)備62向所述數(shù)據(jù)發(fā)送設(shè)備61返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0165]超時(shí)檢測(cè)模塊614,用于所述數(shù)據(jù)發(fā)送設(shè)備61在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備62返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0166]TCP鏈路請(qǐng)求建立模塊615,用于所述數(shù)據(jù)發(fā)送設(shè)備61若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備62發(fā)送TCP鏈路建立請(qǐng)求。
[0167]TCP鏈路建立模塊624,用于所述數(shù)據(jù)接收設(shè)備62接收所述數(shù)據(jù)發(fā)送設(shè)備61發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備61建立TCP鏈路。
[0168]第二數(shù)據(jù)封包發(fā)送模塊616,用于所述數(shù)據(jù)發(fā)送設(shè)備61通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備62發(fā)送第二數(shù)據(jù)封包。
[0169]第二數(shù)據(jù)封包接收模塊625,用于所述數(shù)據(jù)接收設(shè)備62通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備61發(fā)送的第二數(shù)據(jù)封包。
[0170]身份驗(yàn)證模塊626,用于從通過(guò)所述TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備61的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備61進(jìn)行身份驗(yàn)證。
[0171]第二確認(rèn)響應(yīng)返回模塊627,用于在所述身份驗(yàn)證模塊判定為身份驗(yàn)證通過(guò)時(shí),通過(guò)所述UDP鏈路和TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備61返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
[0172]重復(fù)數(shù)據(jù)過(guò)濾模塊617,用于數(shù)據(jù)發(fā)送設(shè)備61接收所述數(shù)據(jù)接收設(shè)備62通過(guò)所述UDP鏈路和所述TCP鏈路返回的數(shù)據(jù)封包,并對(duì)所述數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
[0173]其中,超時(shí)檢測(cè)模塊614具體包括:
[0174]已發(fā)送列表檢測(cè)單元6141,用于在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包;
[0175]超時(shí)計(jì)算單元6142,用于若存在所述第一數(shù)據(jù)封包,判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng);
[0176]超時(shí)判定單元6143,用于當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
[0177]其中,身份驗(yàn)證模塊626具體包括:
[0178]ID檢測(cè)單元,用于檢測(cè)從所述第二數(shù)據(jù)封包中解析出連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中;
[0179]驗(yàn)證判定單元,用于若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,則判定為身份驗(yàn)證通過(guò)。
[0180]本發(fā)明實(shí)施例與本發(fā)明提供的圖3所示的數(shù)據(jù)傳輸方法的實(shí)施例一一對(duì)應(yīng),因此,各模塊的具體信息請(qǐng)參照本發(fā)明提供的數(shù)據(jù)傳輸方法的第三實(shí)施例,在此不再贅述。
[0181 ] 本發(fā)明實(shí)施例中,數(shù)據(jù)發(fā)送設(shè)備在通過(guò)UDP鏈路傳輸數(shù)據(jù)時(shí),數(shù)據(jù)接收設(shè)備會(huì)返回一個(gè)確認(rèn)響應(yīng),因此可以檢測(cè)到數(shù)據(jù)接收設(shè)備是否接收到發(fā)送的數(shù)據(jù);當(dāng)數(shù)據(jù)發(fā)送設(shè)備檢測(cè)到接收確認(rèn)響應(yīng)超時(shí)的時(shí)候,建立TCP鏈路,進(jìn)行輔助傳輸,之后的數(shù)據(jù)傳輸就會(huì)通過(guò)TCP鏈路和UDP鏈路同時(shí)傳輸數(shù)據(jù),因此可以保證數(shù)據(jù)能夠傳輸?shù)搅硪环?,可以有效解決防火墻等某些限制UDP數(shù)據(jù)流量的應(yīng)用導(dǎo)致的掉線(xiàn)、數(shù)據(jù)傳輸不流暢或中斷的問(wèn)題,可以增加網(wǎng)絡(luò)流暢度、降低掉線(xiàn)率、優(yōu)化數(shù)據(jù)傳輸質(zhì)量。
[0182]需要說(shuō)明的是,在本文中,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者裝置不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者裝置所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過(guò)程、方法、物品或者裝置中還存在另外的相同要素。
[0183]上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
[0184]在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)和方法可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的系統(tǒng)實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過(guò)一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
[0185]專(zhuān)業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開(kāi)的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來(lái)實(shí)現(xiàn),為了清楚地說(shuō)明硬件和軟件的可互換性,在上述說(shuō)明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專(zhuān)業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
[0186]結(jié)合本文中所公開(kāi)的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來(lái)實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤(pán)、可移動(dòng)磁盤(pán)、CD-ROM、或【技術(shù)領(lǐng)域】?jī)?nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。
[0187]對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專(zhuān)業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。
【權(quán)利要求】
1.一種數(shù)據(jù)傳輸方法,其特征在于,包括: 通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包; 在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包; 若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路; 通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
2.如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,在所述通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包之后,還包括: 接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路返回的數(shù)據(jù)封包,并對(duì)所述數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
3.如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,在所述通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包之后,還包括: 將已發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中; 當(dāng)接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間。
4.如權(quán)利要求3所述的數(shù)據(jù)傳輸方法,其特征在于,所述在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng),具體包括: 在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包; 若存在所述第一數(shù)據(jù)封包,則判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng); 當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
5.如權(quán)利要求1?4中任意一項(xiàng)所述的數(shù)據(jù)傳輸方法,其特征在于,所述第二數(shù)據(jù)封包包含所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,以使所述數(shù)據(jù)接收設(shè)備能夠根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證,并在驗(yàn)證通過(guò)后通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
6.一種數(shù)據(jù)傳輸方法,其特征在于,包括: 通過(guò)UDP鏈路接收數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包; 向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng); 接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路;所述TCP鏈路建立請(qǐng)求是所述數(shù)據(jù)發(fā)送設(shè)備在檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí)發(fā)送的; 通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
7.如權(quán)利要求6所述的數(shù)據(jù)傳輸方法,其特征在于,在所述通過(guò)UDP鏈路接收數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包之后,還包括: 從所述第一數(shù)據(jù)封包解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。
8.如權(quán)利要求7所述的數(shù)據(jù)傳輸方法,其特征在于,在所述通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾之后,還包括: 從通過(guò)所述TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證; 若身份驗(yàn)證通過(guò),則通過(guò)所述UDP鏈路和所述TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
9.如權(quán)利要求8所述的數(shù)據(jù)傳輸方法,其特征在于,所述根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證,具體包括: 檢測(cè)所述連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中; 若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,則判定為身份驗(yàn)證通過(guò)。
10.一種數(shù)據(jù)傳輸方法,其特征在于,包括: 數(shù)據(jù)發(fā)送設(shè)備通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包; 所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包; 所述數(shù)據(jù)接收設(shè)備向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng); 所述數(shù)據(jù)發(fā)送設(shè)備在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng); 所述數(shù)據(jù)發(fā)送設(shè)備若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備發(fā)送TCP鏈路建立請(qǐng)求; 所述數(shù)據(jù)接收設(shè)備接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路; 所述數(shù)據(jù)發(fā)送設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。 所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
11.如權(quán)利要求10所述的數(shù)據(jù)傳輸方法,其特征在于,在所述數(shù)據(jù)發(fā)送設(shè)備通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包之后,還包括: 將已發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中; 在所述數(shù)據(jù)接收設(shè)備向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng),之后還包括: 當(dāng)所述數(shù)據(jù)發(fā)送設(shè)備接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間。
12.如權(quán)利要求11所述的數(shù)據(jù)傳輸方法,其特征在于,所述數(shù)據(jù)發(fā)送設(shè)備在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng),具體包括: 在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包; 若存在所述第一數(shù)據(jù)封包,則判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng); 當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定為超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
13.如權(quán)利要求10所述的數(shù)據(jù)傳輸方法,其特征在于,在所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包之后,還包括: 所述數(shù)據(jù)接收設(shè)備從所述第一數(shù)據(jù)封包解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。
14.如權(quán)利要求13所述的數(shù)據(jù)傳輸方法,其特征在于,在所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾,之后還包括: 所述數(shù)據(jù)接收設(shè)備從通過(guò)TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證; 若身份驗(yàn)證通過(guò),則所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
15.如權(quán)利要求14所述的數(shù)據(jù)傳輸方法,其特征在于,所述根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證,具體包括: 檢測(cè)所述連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中; 若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,判定為身份驗(yàn)證通過(guò)。
16.如權(quán)利要求14或15所述的數(shù)據(jù)傳輸方法,其特征在于,在所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)之后,還包括: 所述數(shù)據(jù)發(fā)送設(shè)備接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和TCP鏈路返回的確認(rèn)響應(yīng),并對(duì)接收的確認(rèn)響應(yīng)進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
17.一種數(shù)據(jù)發(fā)送設(shè)備,其特征在于,包括: 第一數(shù)據(jù)封包發(fā)送模塊,用于通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包;超時(shí)檢測(cè)模塊,用于在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng);所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)表示所述數(shù)據(jù)接收設(shè)備接收到所述第一數(shù)據(jù)封包; TCP鏈路請(qǐng)求建立模塊,用于若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng),則向所述數(shù)據(jù)接收設(shè)備請(qǐng)求并建立TCP鏈路;和 第二數(shù)據(jù)封包發(fā)送模塊,用于通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包。
18.如權(quán)利要求17所述的數(shù)據(jù)發(fā)送設(shè)備,其特征在于,還包括: 重復(fù)數(shù)據(jù)過(guò)濾模塊,用于接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路返回的數(shù)據(jù)封包,并對(duì)所述數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
19.如權(quán)利要求17所述的數(shù)據(jù)發(fā)送設(shè)備,其特征在于,還包括: 數(shù)據(jù)保存模塊,用于將所述第一數(shù)據(jù)封包發(fā)送模塊發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中;和 數(shù)據(jù)刪除模塊,用于當(dāng)接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間。
20.如權(quán)利要求19所述的數(shù)據(jù)發(fā)送設(shè)備,其特征在于,所述超時(shí)檢測(cè)模塊具體包括: 已發(fā)送列表檢測(cè)單元,用于在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包; 超時(shí)計(jì)算單元,用于若存在所述第一數(shù)據(jù)封包,判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng);和 超時(shí)判定單元,用于當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
21.如權(quán)利要求17?20中任意一項(xiàng)所述的數(shù)據(jù)發(fā)送設(shè)備,其特征在于,所述第二數(shù)據(jù)封包包含所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,以使所述數(shù)據(jù)接收設(shè)備能夠根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證,并在驗(yàn)證通過(guò)后通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
22.—種數(shù)據(jù)接收設(shè)備,其特征在于,包括: 第一數(shù)據(jù)封包接收模塊,用于通過(guò)UDP鏈路接收數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包; 第一確認(rèn)響應(yīng)返回模塊,用于向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng); TCP鏈路建立模塊,用于接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路;所述TCP鏈路建立請(qǐng)求是所述數(shù)據(jù)發(fā)送設(shè)備在檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí)發(fā)送的;和 第二數(shù)據(jù)封包接收模塊,用于通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
23.如權(quán)利要求22所述的數(shù)據(jù)接收設(shè)備,其特征在于,還包括: 第一數(shù)據(jù)封包解析模塊,用于從所述第一數(shù)據(jù)封包接收模塊接收的第一數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。
24.如權(quán)利要求23所述的數(shù)據(jù)接收設(shè)備,其特征在于,還包括: 身份驗(yàn)證模塊,用于從通過(guò)所述TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證;和 第二確認(rèn)響應(yīng)返回模塊,用于在所述身份驗(yàn)證模塊判定為身份驗(yàn)證通過(guò)時(shí),通過(guò)所述UDP鏈路和TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
25.如權(quán)利要求24所述的數(shù)據(jù)接收設(shè)備,其特征在于,所述身份驗(yàn)證模塊,具體包括: ID檢測(cè)單元,用于檢測(cè)從所述第二數(shù)據(jù)封包中解析出連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中; 驗(yàn)證判定單元,用于若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,則判定為身份驗(yàn)證通過(guò)。
26.一種數(shù)據(jù)傳輸系統(tǒng),其特征在于,包括數(shù)據(jù)發(fā)送設(shè)備和數(shù)據(jù)接收設(shè)備,所述數(shù)據(jù)發(fā)送設(shè)備包括第一數(shù)據(jù)封包發(fā)送模塊、超時(shí)檢測(cè)模塊、TCP鏈路請(qǐng)求建立模塊和第二數(shù)據(jù)封包模塊,所述數(shù)據(jù)接收設(shè)備包括第一數(shù)據(jù)封包接收模塊、第一確認(rèn)響應(yīng)返回模塊、TCP鏈路建立模塊和第二數(shù)據(jù)封包接收模塊;其中: 所述第一數(shù)據(jù)封包發(fā)送模塊,用于數(shù)據(jù)發(fā)送設(shè)備通過(guò)UDP鏈路向數(shù)據(jù)接收設(shè)備發(fā)送第一數(shù)據(jù)封包; 所述第一數(shù)據(jù)封包接收模塊,用于所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第一數(shù)據(jù)封包; 所述第一確認(rèn)響應(yīng)返回模塊,用于所述數(shù)據(jù)接收設(shè)備向所述數(shù)據(jù)發(fā)送設(shè)備返回所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng); 所述超時(shí)檢測(cè)模塊,用于所述數(shù)據(jù)發(fā)送設(shè)備在超時(shí)檢測(cè)時(shí)刻,檢測(cè)是否接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng); 所述TCP鏈路請(qǐng)求建立模塊,用于所述數(shù)據(jù)發(fā)送設(shè)備若檢測(cè)到超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)時(shí),向所述數(shù)據(jù)接收設(shè)備發(fā)送TCP鏈路建立請(qǐng)求; 所述TCP鏈路建立模塊,用于所述數(shù)據(jù)接收設(shè)備接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的TCP鏈路建立請(qǐng)求,并與所述數(shù)據(jù)發(fā)送設(shè)備建立TCP鏈路; 所述第二數(shù)據(jù)封包發(fā)送模塊,用于所述數(shù)據(jù)發(fā)送設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路向所述數(shù)據(jù)接收設(shè)備發(fā)送第二數(shù)據(jù)封包; 所述第二數(shù)據(jù)封包接收模塊,用于所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路接收所述數(shù)據(jù)發(fā)送設(shè)備發(fā)送的第二數(shù)據(jù)封包,并對(duì)所述第二數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
27.如權(quán)利要求26所述的數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述數(shù)據(jù)發(fā)送設(shè)備還包括: 數(shù)據(jù)保存模塊,用于將所述第一數(shù)據(jù)封包發(fā)送模塊發(fā)送的第一數(shù)據(jù)封包及其發(fā)送時(shí)間保存于已發(fā)送列表中; 數(shù)據(jù)刪除模塊,用于當(dāng)接收到所述數(shù)據(jù)接收設(shè)備返回的所述第一數(shù)據(jù)封包的確認(rèn)響應(yīng)時(shí),從所述已發(fā)送列表中刪除所述第一數(shù)據(jù)封包及其發(fā)送時(shí)間。
28.如權(quán)利要求27所述的數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述超時(shí)檢測(cè)模塊具體包括: 已發(fā)送列表檢測(cè)單元,用于在超時(shí)檢測(cè)時(shí)刻,檢測(cè)所述已發(fā)送列表是否存在所述第一數(shù)據(jù)封包; 超時(shí)計(jì)算單元,用于若存在所述第一數(shù)據(jù)封包,判斷所述第一數(shù)據(jù)封包的發(fā)送時(shí)間與當(dāng)前時(shí)刻的差值是否大于預(yù)設(shè)時(shí)長(zhǎng); 超時(shí)判定單元,用于當(dāng)所述差值大于預(yù)設(shè)時(shí)長(zhǎng)時(shí),判定超過(guò)預(yù)設(shè)時(shí)長(zhǎng)仍未接收到所述確認(rèn)響應(yīng)。
29.如權(quán)利要求26所述的數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述數(shù)據(jù)接收設(shè)備還包括: 第一數(shù)據(jù)封包解析模塊,用于從所述第一數(shù)據(jù)封包接收模塊接收的第一數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并保存于數(shù)據(jù)發(fā)送設(shè)備信息列表中。
30.如權(quán)利要求29所述的數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述數(shù)據(jù)接收設(shè)備還包括: 身份驗(yàn)證模塊,用于從通過(guò)所述TCP鏈路接收的第二數(shù)據(jù)封包中解析出所述數(shù)據(jù)發(fā)送設(shè)備的連接ID,并根據(jù)所述連接ID對(duì)所述數(shù)據(jù)發(fā)送設(shè)備進(jìn)行身份驗(yàn)證;和 第二確認(rèn)響應(yīng)返回模塊,用于在所述身份驗(yàn)證模塊判定為身份驗(yàn)證通過(guò)時(shí),通過(guò)所述UDP鏈路和TCP鏈路向所述當(dāng)前數(shù)據(jù)發(fā)送設(shè)備返回所述第二數(shù)據(jù)封包的確認(rèn)響應(yīng)。
31.如權(quán)利要求30所述的數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述身份驗(yàn)證模塊,具體包括: ID檢測(cè)單元,用于檢測(cè)從所述第二數(shù)據(jù)封包中解析出連接ID是否在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中; 驗(yàn)證判定單元,用于若所述連接ID在所述數(shù)據(jù)發(fā)送設(shè)備信息列表中,則判定為身份驗(yàn)證通過(guò)。
32.如權(quán)利要求30或31所述的數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述數(shù)據(jù)發(fā)送設(shè)備還包括: 重復(fù)數(shù)據(jù)過(guò)濾模塊,用于接收所述數(shù)據(jù)接收設(shè)備通過(guò)所述UDP鏈路和所述TCP鏈路返回的數(shù)據(jù)封包,并對(duì)所述數(shù)據(jù)封包進(jìn)行重復(fù)數(shù)據(jù)封包判定和過(guò)濾。
【文檔編號(hào)】H04L12/26GK104283716SQ201410567867
【公開(kāi)日】2015年1月14日 申請(qǐng)日期:2014年10月22日 優(yōu)先權(quán)日:2014年10月22日
【發(fā)明者】徐星 申請(qǐng)人:網(wǎng)易(杭州)網(wǎng)絡(luò)有限公司