本技術涉及(ji)通信,尤其涉及(ji)一種數(shu)據重傳方(fang)法、數(shu)據重傳裝置和(he)gpon系統。
背景技術:
1、數(shu)(shu)(shu)據(ju)重(zhong)傳(chuan)技術(shu)是一(yi)種在計算機網絡中常用的技術(shu),用于(yu)確保數(shu)(shu)(shu)據(ju)的可靠(kao)傳(chuan)輸。目前常見的數(shu)(shu)(shu)據(ju)重(zhong)傳(chuan)技術(shu)大多(duo)數(shu)(shu)(shu)是在網絡層(ceng)或傳(chuan)輸層(ceng)由(you)協議來實現,如(ru)tcp重(zhong)傳(chuan)技術(shu)等(deng)。然而,這種方式需要(yao)依賴于(yu)上層(ceng)傳(chuan)輸的數(shu)(shu)(shu)據(ju)和(he)協議,對(dui)需要(yao)重(zhong)傳(chuan)的數(shu)(shu)(shu)據(ju)有(you)一(yi)定(ding)的要(yao)求,使(shi)得適(shi)用性較(jiao)窄(zhai),且上層(ceng)傳(chuan)輸所耗費的時間也(ye)較(jiao)長(chang),使(shi)得當前數(shu)(shu)(shu)據(ju)重(zhong)傳(chuan)的效(xiao)率較(jiao)低(di)。
技術實現思路
1、本(ben)技(ji)術實施例提供一種數(shu)據重傳(chuan)方(fang)(fang)法、數(shu)據重傳(chuan)裝(zhuang)置、gpon系統(tong)、電子(zi)設備及存儲介質(zhi),用以解決當前數(shu)據重傳(chuan)方(fang)(fang)法適用性(xing)較窄且效率不高的技(ji)術問(wen)題。
2、為解決上(shang)述技(ji)術問題,本技(ji)術實施例提供以下技(ji)術方案:
3、本(ben)技(ji)術提(ti)供一(yi)種(zhong)數(shu)據重傳方法(fa),應(ying)用于(yu)gpon系統,所(suo)(suo)(suo)(suo)(suo)述(shu)gpon系統包(bao)括olt和onu,所(suo)(suo)(suo)(suo)(suo)述(shu)olt和所(suo)(suo)(suo)(suo)(suo)述(shu)onu中的(de)其中一(yi)者(zhe)(zhe)為發(fa)(fa)送端,另一(yi)者(zhe)(zhe)為接收(shou)端,所(suo)(suo)(suo)(suo)(suo)述(shu)方法(fa)應(ying)用于(yu)所(suo)(suo)(suo)(suo)(suo)述(shu)發(fa)(fa)送端,所(suo)(suo)(suo)(suo)(suo)述(shu)方法(fa)包(bao)括:
4、向(xiang)所(suo)(suo)述(shu)接(jie)收端發送第i個gtc數(shu)據(ju)(ju)幀(zhen)(zhen),所(suo)(suo)述(shu)第i個gtc數(shu)據(ju)(ju)幀(zhen)(zhen)包(bao)括至少一(yi)個gem數(shu)據(ju)(ju)幀(zhen)(zhen),每(mei)一(yi)所(suo)(suo)述(shu)gem數(shu)據(ju)(ju)幀(zhen)(zhen)的(de)幀(zhen)(zhen)頭均包(bao)括第一(yi)sn字(zi)段(duan)和第一(yi)ack字(zi)段(duan),所(suo)(suo)述(shu)第一(yi)sn字(zi)段(duan)包(bao)括對應(ying)gem數(shu)據(ju)(ju)幀(zhen)(zhen)的(de)序列號,所(suo)(suo)述(shu)第一(yi)ack字(zi)段(duan)包(bao)括預設ack值,i為正整(zheng)數(shu);
5、在第(di)(di)(di)k個(ge)超時周期結束時,判斷是否接(jie)收(shou)到所(suo)述(shu)(shu)(shu)(shu)(shu)接(jie)收(shou)端發(fa)送的(de)(de)gem確(que)認(ren)(ren)幀(zhen)(zhen)(zhen),所(suo)述(shu)(shu)(shu)(shu)(shu)gem確(que)認(ren)(ren)幀(zhen)(zhen)(zhen)由所(suo)述(shu)(shu)(shu)(shu)(shu)接(jie)收(shou)端對所(suo)述(shu)(shu)(shu)(shu)(shu)第(di)(di)(di)i個(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)確(que)認(ren)(ren)后(hou)生(sheng)成,所(suo)述(shu)(shu)(shu)(shu)(shu)gem確(que)認(ren)(ren)幀(zhen)(zhen)(zhen)的(de)(de)幀(zhen)(zhen)(zhen)頭包(bao)括第(di)(di)(di)二sn字(zi)(zi)段和第(di)(di)(di)二ack字(zi)(zi)段,所(suo)述(shu)(shu)(shu)(shu)(shu)第(di)(di)(di)二sn字(zi)(zi)段包(bao)括預設sn值或(huo)者所(suo)述(shu)(shu)(shu)(shu)(shu)gem確(que)認(ren)(ren)幀(zhen)(zhen)(zhen)的(de)(de)序(xu)列號(hao),所(suo)述(shu)(shu)(shu)(shu)(shu)第(di)(di)(di)二ack字(zi)(zi)段包(bao)括所(suo)述(shu)(shu)(shu)(shu)(shu)接(jie)收(shou)端期望收(shou)到的(de)(de)第(di)(di)(di)i+1個(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)中首個(ge)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的(de)(de)序(xu)列號(hao),所(suo)述(shu)(shu)(shu)(shu)(shu)首個(ge)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的(de)(de)序(xu)列號(hao)由所(suo)述(shu)(shu)(shu)(shu)(shu)接(jie)收(shou)端在對所(suo)述(shu)(shu)(shu)(shu)(shu)第(di)(di)(di)i個(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)確(que)認(ren)(ren)后(hou),根(gen)(gen)據(ju)(ju)(ju)(ju)所(suo)述(shu)(shu)(shu)(shu)(shu)第(di)(di)(di)i個(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)中各gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的(de)(de)確(que)認(ren)(ren)狀態確(que)定目標(biao)(biao)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen),根(gen)(gen)據(ju)(ju)(ju)(ju)所(suo)述(shu)(shu)(shu)(shu)(shu)目標(biao)(biao)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的(de)(de)第(di)(di)(di)一sn字(zi)(zi)段得到,k初始為1;
6、若是,根據(ju)所(suo)(suo)述第(di)二ack字段確(que)定第(di)i+1個gtc數據(ju)幀,并(bing)向所(suo)(suo)述接收端(duan)發(fa)送(song)所(suo)(suo)述第(di)i+1個gtc數據(ju)幀;若否,向所(suo)(suo)述接收端(duan)重復發(fa)送(song)所(suo)(suo)述第(di)i個gtc數據(ju)幀,并(bing)令k等于k+1;
7、循(xun)環執行在第(di)(di)k個超時周(zhou)期結束時判(pan)(pan)(pan)斷是否(fou)接(jie)(jie)收到所述(shu)接(jie)(jie)收端(duan)發(fa)送的(de)(de)(de)gem確認幀(zhen)的(de)(de)(de)操(cao)作(zuo)、判(pan)(pan)(pan)斷結果為(wei)是時向所述(shu)接(jie)(jie)收端(duan)發(fa)送第(di)(di)i+1個gtc數據(ju)幀(zhen)的(de)(de)(de)操(cao)作(zuo)、判(pan)(pan)(pan)斷結果為(wei)否(fou)時向所述(shu)接(jie)(jie)收端(duan)重復發(fa)送所述(shu)第(di)(di)i個gtc數據(ju)幀(zhen)的(de)(de)(de)操(cao)作(zuo)以及令k等于k+1的(de)(de)(de)操(cao)作(zuo),直至(zhi)k等于n,n為(wei)正整數;
8、若在(zai)k等于n時仍然沒有接收(shou)(shou)到所述接收(shou)(shou)端發送的(de)gem確認幀(zhen),停止向所述接收(shou)(shou)端重復(fu)發送所述第(di)i個(ge)gtc數據幀(zhen),并向所述接收(shou)(shou)端繼續發送第(di)i+1個(ge)gtc數據幀(zhen)。
9、本技術(shu)還提供一(yi)種數(shu)據重傳方法,應用(yong)于gpon系統,所述gpon系統包括olt和onu,所述olt和所述onu中的其中一(yi)者為發送端,另一(yi)者為接收端,所述方法應用(yong)于所述接收端,所述方法包括:
10、接收所述(shu)發送端(duan)發送的第(di)i個(ge)gtc數(shu)據(ju)幀(zhen),所述(shu)第(di)i個(ge)gtc數(shu)據(ju)幀(zhen)包(bao)(bao)括至少一(yi)(yi)個(ge)gem數(shu)據(ju)幀(zhen),每一(yi)(yi)所述(shu)gem數(shu)據(ju)幀(zhen)的幀(zhen)頭均包(bao)(bao)括第(di)一(yi)(yi)sn字段(duan)和第(di)一(yi)(yi)ack字段(duan),所述(shu)第(di)一(yi)(yi)sn字段(duan)包(bao)(bao)括對應gem數(shu)據(ju)幀(zhen)的序列號,所述(shu)第(di)一(yi)(yi)ack字段(duan)包(bao)(bao)括預設(she)ack值,i為正整數(shu);
11、在對(dui)所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)i個(ge)(ge)gtc數(shu)據(ju)(ju)幀(zhen)確認(ren)后,根據(ju)(ju)所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)i個(ge)(ge)gtc數(shu)據(ju)(ju)幀(zhen)中(zhong)各gem數(shu)據(ju)(ju)幀(zhen)的確認(ren)狀態確定目(mu)(mu)標(biao)(biao)gem數(shu)據(ju)(ju)幀(zhen),根據(ju)(ju)所(suo)(suo)(suo)述(shu)(shu)(shu)目(mu)(mu)標(biao)(biao)gem數(shu)據(ju)(ju)幀(zhen)的第(di)(di)(di)一(yi)sn字段(duan)(duan),得到期(qi)望收(shou)到的第(di)(di)(di)i+1個(ge)(ge)gtc數(shu)據(ju)(ju)幀(zhen)中(zhong)首個(ge)(ge)gem數(shu)據(ju)(ju)幀(zhen)的序(xu)列(lie)號(hao),生成并向所(suo)(suo)(suo)述(shu)(shu)(shu)發(fa)(fa)送端發(fa)(fa)送gem確認(ren)幀(zhen),所(suo)(suo)(suo)述(shu)(shu)(shu)gem確認(ren)幀(zhen)的幀(zhen)頭包括第(di)(di)(di)二(er)sn字段(duan)(duan)和第(di)(di)(di)二(er)ack字段(duan)(duan),所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)二(er)sn字段(duan)(duan)包括預設sn值(zhi)或者所(suo)(suo)(suo)述(shu)(shu)(shu)gem確認(ren)幀(zhen)的序(xu)列(lie)號(hao),所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)二(er)ack字段(duan)(duan)包括所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)i+1個(ge)(ge)gtc數(shu)據(ju)(ju)幀(zhen)中(zhong)首個(ge)(ge)gem數(shu)據(ju)(ju)幀(zhen)的序(xu)列(lie)號(hao);
12、接收(shou)所(suo)(suo)述(shu)發送(song)(song)端發送(song)(song)的(de)(de)第i+1個(ge)gtc數(shu)(shu)據(ju)(ju)幀(zhen),或者,接收(shou)所(suo)(suo)述(shu)發送(song)(song)端重復發送(song)(song)的(de)(de)所(suo)(suo)述(shu)第i個(ge)gtc數(shu)(shu)據(ju)(ju)幀(zhen);所(suo)(suo)述(shu)第i+1個(ge)gtc數(shu)(shu)據(ju)(ju)幀(zhen)由(you)所(suo)(suo)述(shu)發送(song)(song)端在(zai)第k個(ge)超時周期(qi)結束時,判斷(duan)是(shi)否接收(shou)到所(suo)(suo)述(shu)gem確(que)認幀(zhen),在(zai)判斷(duan)結果為是(shi)時,根據(ju)(ju)所(suo)(suo)述(shu)gem確(que)認幀(zhen)中的(de)(de)第二ack字段確(que)定并進(jin)行發送(song)(song),重復發送(song)(song)的(de)(de)所(suo)(suo)述(shu)第i個(ge)gtc數(shu)(shu)據(ju)(ju)幀(zhen)由(you)所(suo)(suo)述(shu)發送(song)(song)端在(zai)第k個(ge)超時周期(qi)結束時,判斷(duan)是(shi)否接收(shou)到所(suo)(suo)述(shu)gem確(que)認幀(zhen),在(zai)判斷(duan)結果為否時,令k等于k+1,并進(jin)行發送(song)(song);k初始(shi)為1;
13、停止接(jie)收(shou)(shou)所(suo)(suo)述(shu)發(fa)(fa)送(song)(song)(song)(song)端重(zhong)復(fu)發(fa)(fa)送(song)(song)(song)(song)的(de)(de)所(suo)(suo)述(shu)第(di)(di)i個(ge)(ge)(ge)gtc數據(ju)(ju)(ju)幀,并(bing)繼續(xu)接(jie)收(shou)(shou)所(suo)(suo)述(shu)發(fa)(fa)送(song)(song)(song)(song)端發(fa)(fa)送(song)(song)(song)(song)的(de)(de)第(di)(di)i+1個(ge)(ge)(ge)gtc數據(ju)(ju)(ju)幀;停止接(jie)收(shou)(shou)的(de)(de)第(di)(di)i個(ge)(ge)(ge)gtc數據(ju)(ju)(ju)幀由(you)所(suo)(suo)述(shu)發(fa)(fa)送(song)(song)(song)(song)端循環執行在第(di)(di)k個(ge)(ge)(ge)超時(shi)周期結束時(shi)判斷(duan)是否(fou)(fou)接(jie)收(shou)(shou)到gem確認幀的(de)(de)操作、判斷(duan)結果(guo)為(wei)是時(shi)發(fa)(fa)送(song)(song)(song)(song)第(di)(di)i+1個(ge)(ge)(ge)gtc數據(ju)(ju)(ju)幀的(de)(de)操作、判斷(duan)結果(guo)為(wei)否(fou)(fou)時(shi)重(zhong)復(fu)發(fa)(fa)送(song)(song)(song)(song)所(suo)(suo)述(shu)第(di)(di)i個(ge)(ge)(ge)gtc數據(ju)(ju)(ju)幀的(de)(de)操作以及令k等(deng)于(yu)k+1的(de)(de)操作,直(zhi)至(zhi)k等(deng)于(yu)n仍然沒有接(jie)收(shou)(shou)到gem確認幀時(shi),進(jin)(jin)行停止重(zhong)復(fu)發(fa)(fa)送(song)(song)(song)(song);繼續(xu)接(jie)收(shou)(shou)的(de)(de)第(di)(di)i+1個(ge)(ge)(ge)gtc數據(ju)(ju)(ju)幀由(you)所(suo)(suo)述(shu)發(fa)(fa)送(song)(song)(song)(song)端直(zhi)至(zhi)k等(deng)于(yu)n仍然沒有接(jie)收(shou)(shou)到gem確認幀時(shi),進(jin)(jin)行繼續(xu)發(fa)(fa)送(song)(song)(song)(song);n為(wei)正整數。
14、同時,本技術實施例還(huan)提供了一(yi)種數(shu)據重(zhong)傳裝置,應用(yong)于gpon系(xi)統,所(suo)述(shu)(shu)gpon系(xi)統包括(kuo)olt和onu,所(suo)述(shu)(shu)olt和所(suo)述(shu)(shu)onu中的其中一(yi)者為發送端(duan),另一(yi)者為接(jie)收端(duan),所(suo)述(shu)(shu)裝置設置于所(suo)述(shu)(shu)發送端(duan),所(suo)述(shu)(shu)裝置包括(kuo):
15、第一(yi)(yi)發送模塊,用于向所(suo)(suo)述接收端(duan)發送第i個(ge)(ge)gtc數(shu)據(ju)幀(zhen)(zhen),所(suo)(suo)述第i個(ge)(ge)gtc數(shu)據(ju)幀(zhen)(zhen)包括(kuo)至少(shao)一(yi)(yi)個(ge)(ge)gem數(shu)據(ju)幀(zhen)(zhen),每(mei)一(yi)(yi)所(suo)(suo)述gem數(shu)據(ju)幀(zhen)(zhen)的(de)幀(zhen)(zhen)頭均包括(kuo)第一(yi)(yi)sn字段(duan)和第一(yi)(yi)ack字段(duan),所(suo)(suo)述第一(yi)(yi)sn字段(duan)包括(kuo)對(dui)應gem數(shu)據(ju)幀(zhen)(zhen)的(de)序列號,所(suo)(suo)述第一(yi)(yi)ack字段(duan)包括(kuo)預(yu)設ack值,i為正整(zheng)數(shu);
16、判斷模塊,用(yong)于(yu)在第(di)k個(ge)(ge)(ge)超時(shi)周期(qi)結束時(shi),判斷是(shi)否(fou)接(jie)收(shou)到所(suo)(suo)述(shu)(shu)(shu)接(jie)收(shou)端發送的(de)(de)gem確(que)認(ren)幀(zhen)(zhen),所(suo)(suo)述(shu)(shu)(shu)gem確(que)認(ren)幀(zhen)(zhen)由所(suo)(suo)述(shu)(shu)(shu)接(jie)收(shou)端對所(suo)(suo)述(shu)(shu)(shu)第(di)i個(ge)(ge)(ge)gtc數(shu)(shu)據(ju)幀(zhen)(zhen)確(que)認(ren)后(hou)生(sheng)成(cheng),所(suo)(suo)述(shu)(shu)(shu)gem確(que)認(ren)幀(zhen)(zhen)的(de)(de)幀(zhen)(zhen)頭包(bao)括第(di)二(er)sn字(zi)段(duan)和第(di)二(er)ack字(zi)段(duan),所(suo)(suo)述(shu)(shu)(shu)第(di)二(er)sn字(zi)段(duan)包(bao)括預(yu)設sn值或(huo)者所(suo)(suo)述(shu)(shu)(shu)gem確(que)認(ren)幀(zhen)(zhen)的(de)(de)序(xu)列號(hao),所(suo)(suo)述(shu)(shu)(shu)第(di)二(er)ack字(zi)段(duan)包(bao)括所(suo)(suo)述(shu)(shu)(shu)接(jie)收(shou)端期(qi)望(wang)收(shou)到的(de)(de)第(di)i+1個(ge)(ge)(ge)gtc數(shu)(shu)據(ju)幀(zhen)(zhen)中首(shou)(shou)個(ge)(ge)(ge)gem數(shu)(shu)據(ju)幀(zhen)(zhen)的(de)(de)序(xu)列號(hao),所(suo)(suo)述(shu)(shu)(shu)首(shou)(shou)個(ge)(ge)(ge)gem數(shu)(shu)據(ju)幀(zhen)(zhen)的(de)(de)序(xu)列號(hao)由所(suo)(suo)述(shu)(shu)(shu)接(jie)收(shou)端在對所(suo)(suo)述(shu)(shu)(shu)第(di)i個(ge)(ge)(ge)gtc數(shu)(shu)據(ju)幀(zhen)(zhen)確(que)認(ren)后(hou),根據(ju)所(suo)(suo)述(shu)(shu)(shu)第(di)i個(ge)(ge)(ge)gtc數(shu)(shu)據(ju)幀(zhen)(zhen)中各gem數(shu)(shu)據(ju)幀(zhen)(zhen)的(de)(de)確(que)認(ren)狀(zhuang)態(tai)確(que)定目標gem數(shu)(shu)據(ju)幀(zhen)(zhen),根據(ju)所(suo)(suo)述(shu)(shu)(shu)目標gem數(shu)(shu)據(ju)幀(zhen)(zhen)的(de)(de)第(di)一sn字(zi)段(duan)得(de)到,k初始為1;
17、第二(er)(er)發(fa)送(song)模塊,用(yong)于若是,根據(ju)所述(shu)(shu)(shu)第二(er)(er)ack字段確定(ding)第i+1個gtc數據(ju)幀(zhen),并向(xiang)所述(shu)(shu)(shu)接收端發(fa)送(song)所述(shu)(shu)(shu)第i+1個gtc數據(ju)幀(zhen);若否,向(xiang)所述(shu)(shu)(shu)接收端重復(fu)發(fa)送(song)所述(shu)(shu)(shu)第i個gtc數據(ju)幀(zhen),并令k等于k+1;
18、循(xun)環模塊,用于循(xun)環執行在第(di)k個超(chao)時周期(qi)結(jie)束時判(pan)斷(duan)是否接(jie)收到所述(shu)接(jie)收端(duan)發送的(de)(de)gem確認幀的(de)(de)操作、判(pan)斷(duan)結(jie)果為(wei)是時向所述(shu)接(jie)收端(duan)發送第(di)i+1個gtc數(shu)據幀的(de)(de)操作、判(pan)斷(duan)結(jie)果為(wei)否時向所述(shu)接(jie)收端(duan)重復發送所述(shu)第(di)i個gtc數(shu)據幀的(de)(de)操作以(yi)及(ji)令k等于k+1的(de)(de)操作,直至k等于n,n為(wei)正整數(shu);
19、第(di)三(san)發送(song)模塊,用于(yu)若(ruo)在k等于(yu)n時(shi)仍(reng)然沒(mei)有接(jie)(jie)收(shou)到所述接(jie)(jie)收(shou)端(duan)(duan)發送(song)的gem確認幀(zhen),停止向(xiang)所述接(jie)(jie)收(shou)端(duan)(duan)重復發送(song)所述第(di)i個gtc數(shu)據幀(zhen),并向(xiang)所述接(jie)(jie)收(shou)端(duan)(duan)繼續(xu)發送(song)第(di)i+1個gtc數(shu)據幀(zhen)。
20、本技術實施例還提供(gong)了一(yi)種數據重傳(chuan)裝置,應用于gpon系統(tong),所(suo)(suo)述(shu)gpon系統(tong)包括olt和onu,所(suo)(suo)述(shu)olt和所(suo)(suo)述(shu)onu中的(de)其中一(yi)者為發送端(duan),另(ling)一(yi)者為接收端(duan),所(suo)(suo)述(shu)裝置設置于所(suo)(suo)述(shu)接收端(duan),所(suo)(suo)述(shu)裝置包括:
21、第(di)一(yi)(yi)(yi)接(jie)收(shou)模塊,用于接(jie)收(shou)所(suo)(suo)述(shu)(shu)發送(song)端發送(song)的第(di)i個gtc數據(ju)(ju)幀(zhen),所(suo)(suo)述(shu)(shu)第(di)i個gtc數據(ju)(ju)幀(zhen)包(bao)(bao)括(kuo)至(zhi)少(shao)一(yi)(yi)(yi)個gem數據(ju)(ju)幀(zhen),每一(yi)(yi)(yi)所(suo)(suo)述(shu)(shu)gem數據(ju)(ju)幀(zhen)的幀(zhen)頭均包(bao)(bao)括(kuo)第(di)一(yi)(yi)(yi)sn字(zi)(zi)段和第(di)一(yi)(yi)(yi)ack字(zi)(zi)段,所(suo)(suo)述(shu)(shu)第(di)一(yi)(yi)(yi)sn字(zi)(zi)段包(bao)(bao)括(kuo)對(dui)應(ying)gem數據(ju)(ju)幀(zhen)的序列號,所(suo)(suo)述(shu)(shu)第(di)一(yi)(yi)(yi)ack字(zi)(zi)段包(bao)(bao)括(kuo)預設ack值,i為正整(zheng)數;
22、生成(cheng)模塊,用于在(zai)對(dui)所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)(di)i個(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)確(que)(que)(que)認(ren)(ren)(ren)后,根據(ju)(ju)(ju)所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)(di)i個(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)中(zhong)各gem數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的確(que)(que)(que)認(ren)(ren)(ren)狀態確(que)(que)(que)定目(mu)標gem數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen),根據(ju)(ju)(ju)所(suo)(suo)(suo)述(shu)(shu)(shu)目(mu)標gem數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的第(di)(di)(di)(di)一sn字段(duan),得到期(qi)望收(shou)到的第(di)(di)(di)(di)i+1個(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)中(zhong)首(shou)個(ge)(ge)gem數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的序列號,生成(cheng)并向所(suo)(suo)(suo)述(shu)(shu)(shu)發(fa)送端發(fa)送gem確(que)(que)(que)認(ren)(ren)(ren)幀(zhen)(zhen)(zhen),所(suo)(suo)(suo)述(shu)(shu)(shu)gem確(que)(que)(que)認(ren)(ren)(ren)幀(zhen)(zhen)(zhen)的幀(zhen)(zhen)(zhen)頭包括第(di)(di)(di)(di)二sn字段(duan)和第(di)(di)(di)(di)二ack字段(duan),所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)(di)二sn字段(duan)包括預設sn值或者所(suo)(suo)(suo)述(shu)(shu)(shu)gem確(que)(que)(que)認(ren)(ren)(ren)幀(zhen)(zhen)(zhen)的序列號,所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)(di)二ack字段(duan)包括所(suo)(suo)(suo)述(shu)(shu)(shu)第(di)(di)(di)(di)i+1個(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)中(zhong)首(shou)個(ge)(ge)gem數(shu)(shu)(shu)據(ju)(ju)(ju)幀(zhen)(zhen)(zhen)的序列號;
23、第(di)(di)二接收(shou)模塊,用于接收(shou)所(suo)(suo)述(shu)(shu)(shu)(shu)發(fa)(fa)(fa)送端(duan)發(fa)(fa)(fa)送的第(di)(di)i+1個gtc數據(ju)幀(zhen),或者,接收(shou)所(suo)(suo)述(shu)(shu)(shu)(shu)發(fa)(fa)(fa)送端(duan)重復發(fa)(fa)(fa)送的所(suo)(suo)述(shu)(shu)(shu)(shu)第(di)(di)i個gtc數據(ju)幀(zhen);所(suo)(suo)述(shu)(shu)(shu)(shu)第(di)(di)i+1個gtc數據(ju)幀(zhen)由所(suo)(suo)述(shu)(shu)(shu)(shu)發(fa)(fa)(fa)送端(duan)在第(di)(di)k個超(chao)時(shi)周期結(jie)束時(shi),判(pan)斷(duan)是(shi)否(fou)接收(shou)到(dao)所(suo)(suo)述(shu)(shu)(shu)(shu)gem確(que)(que)認幀(zhen),在判(pan)斷(duan)結(jie)果(guo)為是(shi)時(shi),根據(ju)所(suo)(suo)述(shu)(shu)(shu)(shu)gem確(que)(que)認幀(zhen)中的第(di)(di)二ack字段確(que)(que)定并進(jin)行發(fa)(fa)(fa)送,重復發(fa)(fa)(fa)送的所(suo)(suo)述(shu)(shu)(shu)(shu)第(di)(di)i個gtc數據(ju)幀(zhen)由所(suo)(suo)述(shu)(shu)(shu)(shu)發(fa)(fa)(fa)送端(duan)在第(di)(di)k個超(chao)時(shi)周期結(jie)束時(shi),判(pan)斷(duan)是(shi)否(fou)接收(shou)到(dao)所(suo)(suo)述(shu)(shu)(shu)(shu)gem確(que)(que)認幀(zhen),在判(pan)斷(duan)結(jie)果(guo)為否(fou)時(shi),令k等于k+1,并進(jin)行發(fa)(fa)(fa)送;k初始為1;
24、第三接(jie)收(shou)模塊(kuai),用(yong)于(yu)(yu)停止(zhi)接(jie)收(shou)所(suo)(suo)述發送(song)(song)(song)端(duan)重(zhong)復(fu)發送(song)(song)(song)的(de)所(suo)(suo)述第i個(ge)(ge)gtc數(shu)(shu)(shu)(shu)據幀(zhen)(zhen),并(bing)繼續接(jie)收(shou)所(suo)(suo)述發送(song)(song)(song)端(duan)發送(song)(song)(song)的(de)第i+1個(ge)(ge)gtc數(shu)(shu)(shu)(shu)據幀(zhen)(zhen);停止(zhi)接(jie)收(shou)的(de)第i個(ge)(ge)gtc數(shu)(shu)(shu)(shu)據幀(zhen)(zhen)由(you)所(suo)(suo)述發送(song)(song)(song)端(duan)循(xun)環執行在(zai)第k個(ge)(ge)超時(shi)(shi)周期(qi)結(jie)束時(shi)(shi)判(pan)斷(duan)是(shi)否接(jie)收(shou)到(dao)(dao)gem確(que)認幀(zhen)(zhen)的(de)操作、判(pan)斷(duan)結(jie)果為(wei)是(shi)時(shi)(shi)發送(song)(song)(song)第i+1個(ge)(ge)gtc數(shu)(shu)(shu)(shu)據幀(zhen)(zhen)的(de)操作、判(pan)斷(duan)結(jie)果為(wei)否時(shi)(shi)重(zhong)復(fu)發送(song)(song)(song)所(suo)(suo)述第i個(ge)(ge)gtc數(shu)(shu)(shu)(shu)據幀(zhen)(zhen)的(de)操作以及令k等(deng)于(yu)(yu)k+1的(de)操作,直至k等(deng)于(yu)(yu)n仍然(ran)沒有(you)接(jie)收(shou)到(dao)(dao)gem確(que)認幀(zhen)(zhen)時(shi)(shi),進(jin)行停止(zhi)重(zhong)復(fu)發送(song)(song)(song);繼續接(jie)收(shou)的(de)第i+1個(ge)(ge)gtc數(shu)(shu)(shu)(shu)據幀(zhen)(zhen)由(you)所(suo)(suo)述發送(song)(song)(song)端(duan)直至k等(deng)于(yu)(yu)n仍然(ran)沒有(you)接(jie)收(shou)到(dao)(dao)gem確(que)認幀(zhen)(zhen)時(shi)(shi),進(jin)行繼續發送(song)(song)(song);n為(wei)正(zheng)整數(shu)(shu)(shu)(shu)。
25、本技術實施例(li)還(huan)提供了一(yi)種gpon系(xi)統,所(suo)(suo)述(shu)gpon系(xi)統包(bao)括olt和(he)onu,所(suo)(suo)述(shu)olt和(he)所(suo)(suo)述(shu)onu中(zhong)的其中(zhong)一(yi)者(zhe)為發送端,另一(yi)者(zhe)為接收端,其中(zhong):
26、所(suo)述(shu)發(fa)送端用于(yu),向所(suo)述(shu)接收端發(fa)送第(di)i個gtc數(shu)據(ju)幀(zhen)(zhen)(zhen)(zhen),所(suo)述(shu)第(di)i個gtc數(shu)據(ju)幀(zhen)(zhen)(zhen)(zhen)包括(kuo)至少一個gem數(shu)據(ju)幀(zhen)(zhen)(zhen)(zhen),每一所(suo)述(shu)gem數(shu)據(ju)幀(zhen)(zhen)(zhen)(zhen)的(de)幀(zhen)(zhen)(zhen)(zhen)頭均包括(kuo)第(di)一sn字段(duan)(duan)和(he)第(di)一ack字段(duan)(duan),所(suo)述(shu)第(di)一sn字段(duan)(duan)包括(kuo)對(dui)應gem數(shu)據(ju)幀(zhen)(zhen)(zhen)(zhen)的(de)序列號,所(suo)述(shu)第(di)一ack字段(duan)(duan)包括(kuo)預設ack值,i為正整(zheng)數(shu);
27、所述(shu)接收端用于,接收所述(shu)發送(song)端發送(song)的所述(shu)第i個gtc數據幀;
28、所(suo)述(shu)接收(shou)端還用于,在(zai)對所(suo)述(shu)第(di)(di)i個(ge)gtc數據(ju)幀(zhen)確(que)(que)認(ren)后,根據(ju)所(suo)述(shu)第(di)(di)i個(ge)gtc數據(ju)幀(zhen)中(zhong)各gem數據(ju)幀(zhen)的(de)確(que)(que)認(ren)狀態確(que)(que)定目標(biao)gem數據(ju)幀(zhen),根據(ju)所(suo)述(shu)目標(biao)gem數據(ju)幀(zhen)的(de)第(di)(di)一(yi)sn字段(duan),得到期望收(shou)到的(de)第(di)(di)i+1個(ge)gtc數據(ju)幀(zhen)中(zhong)首(shou)(shou)個(ge)gem數據(ju)幀(zhen)的(de)序列號,生成并向(xiang)所(suo)述(shu)發送(song)端發送(song)gem確(que)(que)認(ren)幀(zhen),所(suo)述(shu)gem確(que)(que)認(ren)幀(zhen)的(de)幀(zhen)頭包括(kuo)第(di)(di)二sn字段(duan)和第(di)(di)二ack字段(duan),所(suo)述(shu)第(di)(di)二sn字段(duan)包括(kuo)預設sn值(zhi)或者所(suo)述(shu)gem確(que)(que)認(ren)幀(zhen)的(de)序列號,所(suo)述(shu)第(di)(di)二ack字段(duan)包括(kuo)所(suo)述(shu)第(di)(di)i+1個(ge)gtc數據(ju)幀(zhen)中(zhong)首(shou)(shou)個(ge)gem數據(ju)幀(zhen)的(de)序列號;
29、所述發(fa)送端還用(yong)于,在第k個超時周期(qi)結(jie)束時,判斷是否接(jie)收(shou)到所述接(jie)收(shou)端發(fa)送的gem確認幀(zhen),k初(chu)始為1;
30、所(suo)(suo)述(shu)發送端(duan)還用于(yu),若(ruo)是,根據(ju)(ju)所(suo)(suo)述(shu)第(di)二(er)ack字段(duan)確定第(di)i+1個gtc數(shu)據(ju)(ju)幀,并向所(suo)(suo)述(shu)接收端(duan)發送所(suo)(suo)述(shu)第(di)i+1個gtc數(shu)據(ju)(ju)幀;若(ruo)否,向所(suo)(suo)述(shu)接收端(duan)重復發送所(suo)(suo)述(shu)第(di)i個gtc數(shu)據(ju)(ju)幀,并令k等于(yu)k+1;
31、所(suo)述接收(shou)端還(huan)用于,接收(shou)所(suo)述發(fa)送端發(fa)送的第(di)(di)i+1個(ge)gtc數據幀,或者,接收(shou)所(suo)述發(fa)送端重復(fu)發(fa)送的所(suo)述第(di)(di)i個(ge)gtc數據幀;
32、所(suo)(suo)述(shu)(shu)發送端還(huan)用于,循環執行(xing)在第(di)k個(ge)(ge)超時(shi)周(zhou)期結(jie)(jie)束時(shi)判斷是否(fou)接(jie)收(shou)(shou)到所(suo)(suo)述(shu)(shu)接(jie)收(shou)(shou)端發送的(de)(de)gem確(que)認幀的(de)(de)操作(zuo)、判斷結(jie)(jie)果為是時(shi)向所(suo)(suo)述(shu)(shu)接(jie)收(shou)(shou)端發送第(di)i+1個(ge)(ge)gtc數據幀的(de)(de)操作(zuo)、判斷結(jie)(jie)果為否(fou)時(shi)向所(suo)(suo)述(shu)(shu)接(jie)收(shou)(shou)端重(zhong)復(fu)發送所(suo)(suo)述(shu)(shu)第(di)i個(ge)(ge)gtc數據幀的(de)(de)操作(zuo)以及(ji)令k等于k+1的(de)(de)操作(zuo),直(zhi)至k等于n,n為正整數;
33、所(suo)述發送(song)端(duan)還(huan)用于(yu),若在k等于(yu)n時仍然沒有(you)接收(shou)(shou)(shou)到所(suo)述接收(shou)(shou)(shou)端(duan)發送(song)的(de)gem確認幀(zhen),停止(zhi)向(xiang)所(suo)述接收(shou)(shou)(shou)端(duan)重復發送(song)所(suo)述第(di)i個(ge)gtc數據幀(zhen),并向(xiang)所(suo)述接收(shou)(shou)(shou)端(duan)繼續發送(song)第(di)i+1個(ge)gtc數據幀(zhen);
34、所(suo)述(shu)接(jie)收端還用于,停止接(jie)收所(suo)述(shu)發送(song)端重復發送(song)的(de)所(suo)述(shu)第(di)i個gtc數據幀,并繼續接(jie)收所(suo)述(shu)發送(song)端發送(song)的(de)第(di)i+1個gtc數據幀。
35、本技術還(huan)提供(gong)一種電(dian)子設備,包(bao)括存(cun)儲器和處理器;所(suo)(suo)(suo)述存(cun)儲器存(cun)儲有應用(yong)程(cheng)序,所(suo)(suo)(suo)述處理器用(yong)于運行所(suo)(suo)(suo)述存(cun)儲器內(nei)的應用(yong)程(cheng)序,以執行上述任一項所(suo)(suo)(suo)述的數據重傳方法中的步驟。
36、本技術實施例提供一種(zhong)計算(suan)機可讀存儲(chu)介(jie)質,計算(suan)機可讀存儲(chu)介(jie)質存儲(chu)有多條指(zhi)令,指(zhi)令適于處理(li)器(qi)進(jin)行加載,以執行上述數據重傳(chuan)方法中的步驟(zou)。
37、有益效果:本技術(shu)提供(gong)一(yi)種(zhong)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)方(fang)法、數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)裝置、gpon系(xi)統、電子設備及(ji)存(cun)儲(chu)介質(zhi),該方(fang)法通過(guo)在(zai)(zai)gem幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)的幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)頭(tou)中增加sn字(zi)段和(he)ack字(zi)段,發(fa)(fa)(fa)(fa)送(song)(song)端(duan)(duan)(duan)(duan)發(fa)(fa)(fa)(fa)送(song)(song)的第(di)i個(ge)(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)中每一(yi)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)在(zai)(zai)第(di)一(yi)sn字(zi)段中攜帶(dai)對(dui)應(ying)(ying)(ying)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)的序列號,接(jie)收端(duan)(duan)(duan)(duan)可(ke)基于該字(zi)段得知(zhi)當前發(fa)(fa)(fa)(fa)送(song)(song)的是哪(na)(na)個(ge)(ge)(ge)或哪(na)(na)些(xie)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen),并對(dui)這些(xie)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)的狀態進(jin)行(xing)確(que)(que)認(ren)(ren)(ren)(ren),然(ran)后(hou)根據(ju)(ju)(ju)(ju)各gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)的確(que)(que)認(ren)(ren)(ren)(ren)狀態,確(que)(que)定是否需要重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)、如果需要重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)應(ying)(ying)(ying)該重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)哪(na)(na)些(xie)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)、如果不需要重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)應(ying)(ying)(ying)該繼(ji)續(xu)發(fa)(fa)(fa)(fa)送(song)(song)哪(na)(na)些(xie)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)等,最后(hou)向發(fa)(fa)(fa)(fa)送(song)(song)端(duan)(duan)(duan)(duan)返回gem確(que)(que)認(ren)(ren)(ren)(ren)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen),在(zai)(zai)gem確(que)(que)認(ren)(ren)(ren)(ren)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)的第(di)二ack字(zi)段中攜帶(dai)期望收到(dao)的第(di)i+1個(ge)(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)中首個(ge)(ge)(ge)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)的序列號;發(fa)(fa)(fa)(fa)送(song)(song)端(duan)(duan)(duan)(duan)在(zai)(zai)每個(ge)(ge)(ge)超時(shi)周(zhou)期結束時(shi),均可(ke)根據(ju)(ju)(ju)(ju)是否收到(dao)了gem確(que)(que)認(ren)(ren)(ren)(ren)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)來判斷下一(yi)次是需要發(fa)(fa)(fa)(fa)送(song)(song)第(di)i+1個(ge)(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)還是需要重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)第(di)i個(ge)(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen),并基于第(di)二ack字(zi)段知(zhi)曉下一(yi)次應(ying)(ying)(ying)該發(fa)(fa)(fa)(fa)送(song)(song)哪(na)(na)個(ge)(ge)(ge)或哪(na)(na)些(xie)gem數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen),再進(jin)行(xing)發(fa)(fa)(fa)(fa)送(song)(song);如果在(zai)(zai)n個(ge)(ge)(ge)超時(shi)周(zhou)期后(hou)仍然(ran)沒有收到(dao)gem確(que)(que)認(ren)(ren)(ren)(ren)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen),發(fa)(fa)(fa)(fa)送(song)(song)端(duan)(duan)(duan)(duan)才會停止重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)第(di)i個(ge)(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen),并繼(ji)續(xu)發(fa)(fa)(fa)(fa)送(song)(song)第(di)i+1個(ge)(ge)(ge)gtc數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)幀(zhen)(zhen)(zhen)(zhen)(zhen)(zhen)。通過(guo)上述方(fang)式,使得發(fa)(fa)(fa)(fa)送(song)(song)端(duan)(duan)(duan)(duan)和(he)接(jie)收端(duan)(duan)(duan)(duan)僅需要根據(ju)(ju)(ju)(ju)各sn字(zi)段和(he)各ack字(zi)段的具體內(nei)容,即(ji)可(ke)知(zhi)曉數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)(chuan)(chuan)輸(shu)情況(kuang)并進(jin)行(xing)后(hou)續(xu)重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)工作(zuo),不需要依(yi)賴上層(ceng)傳(chuan)(chuan)(chuan)(chuan)輸(shu)的數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)和(he)協議,實現了在(zai)(zai)鏈(lian)路層(ceng)中也能進(jin)行(xing)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan),擴寬了數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)技術(shu)的適用面,由于鏈(lian)路層(ceng)為下層(ceng),所需耗費的時(shi)間較短,使得數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)重(zhong)(zhong)(zhong)傳(chuan)(chuan)(chuan)(chuan)的效率也得到(dao)提升。