傳輸數(shù)據(jù)的校驗(yàn)方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,具體而言,涉及一種傳輸數(shù)據(jù)的校驗(yàn)方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)通信的目的是可以將數(shù)據(jù)信息安全可靠的傳輸給接收方,但由于傳輸距離、傳輸網(wǎng)絡(luò)的狀態(tài)、傳輸干擾以及黑客截取等原因,導(dǎo)致設(shè)備終端之間傳輸數(shù)據(jù)會(huì)發(fā)生一些無法預(yù)測(cè)的錯(cuò)誤,而傳輸數(shù)據(jù)的錯(cuò)誤如果無法及時(shí)發(fā)現(xiàn)則會(huì)導(dǎo)致傳輸數(shù)據(jù)失敗,浪費(fèi)網(wǎng)絡(luò)流量。
[0003]為了解決上述問題,現(xiàn)有的技術(shù)中,用戶通過發(fā)送客戶端向外部的客戶端傳輸數(shù)據(jù)時(shí),可以采用在發(fā)送客戶端傳輸數(shù)據(jù)之前對(duì)待傳輸?shù)奈募M(jìn)行校驗(yàn),并在傳輸?shù)侥繕?biāo)客戶端之后進(jìn)行傳輸后的校驗(yàn),具體的,可以采用全量/分塊在傳輸?shù)侥康膶?duì)象時(shí)進(jìn)行傳輸后的校驗(yàn)。
[0004]分析上述方案可知,現(xiàn)有技術(shù)由于進(jìn)行的是傳輸后的校驗(yàn),因此一旦傳輸后由于網(wǎng)絡(luò)原因?qū)е缕茡p,用戶仍然需要承擔(dān)傳輸后破損的后果,需要重新拉取傳輸,從而無法避免耗費(fèi)流量的問題,而且無法盡可能的減少傳輸文件錯(cuò)誤的風(fēng)險(xiǎn)。
[0005]針對(duì)上述無法降低傳輸文件錯(cuò)誤的風(fēng)險(xiǎn)的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0006]本發(fā)明實(shí)施例提供了一種傳輸數(shù)據(jù)的校驗(yàn)方法、裝置及系統(tǒng),以至少解決無法降低傳輸文件錯(cuò)誤的風(fēng)險(xiǎn)的技術(shù)問題。
[0007]根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種傳輸數(shù)據(jù)的校驗(yàn)方法,該方法包括:發(fā)送客戶端在本地模擬一個(gè)虛擬接收模塊;在將待傳輸文件的數(shù)據(jù)塊劃分為η個(gè)數(shù)據(jù)段之后,通過第一傳輸通道將η個(gè)數(shù)據(jù)段依次傳輸至虛擬接收模塊;每傳輸一個(gè)數(shù)據(jù)段,生成一個(gè)對(duì)應(yīng)的校驗(yàn)碼,并將每個(gè)數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼依次通過第二傳輸通道發(fā)送至虛擬接收模塊;虛擬接收模塊對(duì)依次接收到的數(shù)據(jù)段依次進(jìn)行校驗(yàn),將校驗(yàn)成功的數(shù)據(jù)段通過第一傳輸通道進(jìn)行轉(zhuǎn)發(fā),并將校驗(yàn)成功的數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼通過第二傳輸通道進(jìn)行轉(zhuǎn)發(fā)。
[0008]根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種傳輸數(shù)據(jù)的校驗(yàn)裝置,該裝置包括:模擬模塊,用于發(fā)送客戶端在本地模擬一個(gè)虛擬接收模塊;第一傳輸模塊,用于在將待傳輸文件的數(shù)據(jù)塊劃分為η個(gè)數(shù)據(jù)段之后,通過第一傳輸通道將η個(gè)數(shù)據(jù)段依次傳輸至虛擬接收模塊;第二傳輸模塊,用于每傳輸一個(gè)數(shù)據(jù)段,生成一個(gè)對(duì)應(yīng)的校驗(yàn)碼,并將每個(gè)數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼依次通過第二傳輸通道發(fā)送至虛擬接收模塊;本地校驗(yàn)處理模塊,用于虛擬接收模塊對(duì)依次接收到的數(shù)據(jù)段依次進(jìn)行校驗(yàn),將校驗(yàn)成功的數(shù)據(jù)段通過第一傳輸通道進(jìn)行轉(zhuǎn)發(fā),并將校驗(yàn)成功的數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼通過第二傳輸通道進(jìn)行轉(zhuǎn)發(fā)。
[0009]根據(jù)本發(fā)明實(shí)施例的又一方面,還提供了一種傳輸數(shù)據(jù)的校驗(yàn)系統(tǒng),該系統(tǒng)包括:發(fā)送客戶端,用于在本地模擬一個(gè)虛擬接收模塊,在將待傳輸文件的數(shù)據(jù)塊劃分為η個(gè)數(shù)據(jù)段之后,通過第一傳輸通道將η個(gè)數(shù)據(jù)段依次傳輸至虛擬接收模塊,同時(shí),每傳輸一個(gè)數(shù)據(jù)段,生成一個(gè)對(duì)應(yīng)的校驗(yàn)碼,并將每個(gè)數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼依次通過第二傳輸通道發(fā)送至虛擬接收模塊,并對(duì)依次接收到的數(shù)據(jù)段依次進(jìn)行校驗(yàn),將校驗(yàn)成功的數(shù)據(jù)段通過第一傳輸通道進(jìn)行轉(zhuǎn)發(fā),并將校驗(yàn)成功的數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼通過第二傳輸通道進(jìn)行轉(zhuǎn)發(fā)。
[0010]在本發(fā)明實(shí)施例中,采用發(fā)送客戶端在本地模擬一個(gè)虛擬接收模塊;在將待傳輸文件的數(shù)據(jù)塊劃分為η個(gè)數(shù)據(jù)段之后,通過第一傳輸通道將η個(gè)數(shù)據(jù)段依次傳輸至虛擬接收模塊;每傳輸一個(gè)數(shù)據(jù)段,生成一個(gè)對(duì)應(yīng)的校驗(yàn)碼,并將每個(gè)數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼依次通過第二傳輸通道發(fā)送至虛擬接收模塊;虛擬接收模塊對(duì)依次接收到的數(shù)據(jù)段依次進(jìn)行校驗(yàn),將校驗(yàn)成功的數(shù)據(jù)段通過第一傳輸通道進(jìn)行轉(zhuǎn)發(fā),并將校驗(yàn)成功的數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼通過第二傳輸通道進(jìn)行轉(zhuǎn)發(fā)的方式,上述方案通過在發(fā)送客戶端本地模擬一個(gè)虛擬接收裝置,傳輸?shù)臄?shù)據(jù)段需要先經(jīng)過本地的虛擬接收裝置并進(jìn)行驗(yàn)證后再進(jìn)行對(duì)外傳輸,既虛擬接收裝置用于將細(xì)?;蟮拇齻鬏敂?shù)據(jù)段進(jìn)行本地校驗(yàn),同時(shí)使用兩個(gè)獨(dú)立的傳輸通道分別傳輸數(shù)據(jù)段和校驗(yàn)碼,由于發(fā)送客戶端的本地校驗(yàn)是實(shí)時(shí)的,且校驗(yàn)的數(shù)據(jù)段粒度較小,因此達(dá)到了將傳輸前的本地文件校驗(yàn)結(jié)合傳輸過程的動(dòng)態(tài)文件塊校驗(yàn)來降低傳輸數(shù)據(jù)出錯(cuò)的目的,從而實(shí)現(xiàn)了降低傳輸文件出錯(cuò)風(fēng)險(xiǎn)的技術(shù)效果,進(jìn)而解決了無法降低傳輸文件錯(cuò)誤的風(fēng)險(xiǎn)的技術(shù)問題。
【附圖說明】
[0011]此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
[0012]圖1是根據(jù)本發(fā)明實(shí)施例一的傳輸數(shù)據(jù)的校驗(yàn)系統(tǒng)結(jié)構(gòu)示意圖;
[0013]圖2是根據(jù)本發(fā)明實(shí)施例二的傳輸數(shù)據(jù)的校驗(yàn)方法的流程示意圖;
[0014]圖3是根據(jù)本發(fā)明圖2所示實(shí)施例的發(fā)送客戶端進(jìn)行發(fā)送前數(shù)據(jù)傳輸校驗(yàn)的詳細(xì)流程示意圖;
[0015]圖4是根據(jù)本發(fā)明圖2所示實(shí)施例的接收客戶端進(jìn)行發(fā)送后數(shù)據(jù)校驗(yàn)的詳細(xì)流程示意圖;以及
[0016]圖5是根據(jù)本發(fā)明實(shí)施例三的傳輸數(shù)據(jù)的校驗(yàn)裝置結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0017]需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。
[0018]為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
[0019]需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤4送?,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
[0020]實(shí)施例1
[0021]在描述本申請(qǐng)的各實(shí)施例的進(jìn)一步細(xì)節(jié)之前,將參考圖1來描述可用于實(shí)現(xiàn)本申請(qǐng)的原理的一個(gè)合適的計(jì)算體系結(jié)構(gòu)。在以下描述中,除非另外指明,否則將參考由一個(gè)或多個(gè)計(jì)算機(jī)執(zhí)行的動(dòng)作和操作的符號(hào)表示來描述本申請(qǐng)的各實(shí)施例。由此,可以理解,有時(shí)被稱為計(jì)算機(jī)執(zhí)行的這類動(dòng)作和操作包括計(jì)算機(jī)的處理單元對(duì)以結(jié)構(gòu)化形式表示數(shù)據(jù)的電信號(hào)的操縱。這一操縱轉(zhuǎn)換了數(shù)據(jù)或在計(jì)算機(jī)的存儲(chǔ)器系統(tǒng)中的位置上維護(hù)它,這以本領(lǐng)域的技術(shù)人員都理解的方式重配置或改變了計(jì)算機(jī)的操作。維護(hù)數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)是具有數(shù)據(jù)的格式所定義的特定屬性的存儲(chǔ)器的物理位置。然而,盡管在上述上下文中描述本申請(qǐng),但它并不意味著限制性的,如本領(lǐng)域的技術(shù)人員所理解的,后文所描述的動(dòng)作和操作的各方面也可用硬件來實(shí)現(xiàn)。
[0022]在其最基本的配置中,圖1是根據(jù)本發(fā)明實(shí)施例一的傳輸數(shù)據(jù)的校驗(yàn)系統(tǒng)結(jié)構(gòu)示意圖。出于描述的目的,所繪的體系結(jié)構(gòu)僅為合適環(huán)境的一個(gè)示例,并非對(duì)本申請(qǐng)的使用范圍或功能提出任何局限。也不應(yīng)將該計(jì)算系統(tǒng)解釋為對(duì)圖1所示的任一組件或其組合具有任何依賴或需求。
[0023]如圖1所示,該傳輸數(shù)據(jù)的校驗(yàn)系統(tǒng)可以包括:一發(fā)送客戶端10。
[0024]該發(fā)送客戶端10,用于在本地模擬一個(gè)虛擬接收模塊,在將待傳輸文件的數(shù)據(jù)塊劃分為η個(gè)數(shù)據(jù)段之后,通過第一傳輸通道將η個(gè)數(shù)據(jù)段依次傳輸至虛擬接收模塊,同時(shí),每傳輸一個(gè)數(shù)據(jù)段,生成一個(gè)對(duì)應(yīng)的校驗(yàn)碼,并將每個(gè)數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼依次通過第二傳輸通道發(fā)送至虛擬接收模塊,并對(duì)依次接收到的數(shù)據(jù)段依次進(jìn)行校驗(yàn),將校驗(yàn)成功的數(shù)據(jù)段通過第一傳輸通道進(jìn)行轉(zhuǎn)發(fā),并將校驗(yàn)成功的數(shù)據(jù)段對(duì)應(yīng)的校驗(yàn)碼通過第二傳輸通道進(jìn)行轉(zhuǎn)發(fā)。
[0025]本申請(qǐng)上述發(fā)送客戶端實(shí)現(xiàn)了在將待傳輸文件的數(shù)據(jù)塊劃分為η個(gè)數(shù)據(jù)段之前,可以將待傳輸文件切割成m個(gè)數(shù)據(jù)塊,并自定義每個(gè)數(shù)據(jù)塊的大小。此處需要說明的是,上述虛擬接收模塊可以用于模擬發(fā)送客戶端與接收客戶端之間的網(wǎng)絡(luò)傳輸通道,其中,發(fā)送客戶端的發(fā)送模塊與虛擬接收模塊之間采用網(wǎng)絡(luò)傳輸協(xié)議進(jìn)行通信,且發(fā)送模塊與虛擬接收模塊之間的傳輸通道包括第一傳輸通道和第二傳輸通道,即在每一個(gè)數(shù)據(jù)段在傳輸之前,還需要?jiǎng)?chuàng)建兩個(gè)獨(dú)立的數(shù)據(jù)傳輸通道,兩個(gè)獨(dú)立的傳輸通道中的第一傳輸通道用于依次傳輸η個(gè)數(shù)據(jù)段,兩個(gè)獨(dú)立的傳輸通道中的第二傳輸通道(即校驗(yàn)通道)用于傳輸數(shù)據(jù)塊對(duì)應(yīng)的校驗(yàn)碼。上述虛擬接收模塊按照數(shù)據(jù)段的傳輸次序依次進(jìn)行本地校驗(yàn),從而在本地驗(yàn)證待傳輸?shù)奈募欠翊嬖阱e(cuò)誤。此處需要說明的是,上述方法步驟中,數(shù)據(jù)段和對(duì)應(yīng)的校驗(yàn)碼分別采用獨(dú)立的傳輸通道進(jìn)行傳輸,其中,第一傳輸通道為用戶傳輸數(shù)據(jù)段的數(shù)據(jù)傳輸通道