本發(fā)明涉及網(wǎng)絡(luò)存儲領(lǐng)域的NVMe over Fabric存儲領(lǐng)域,尤其涉及NVMe over Fabric存儲高效網(wǎng)絡(luò)連接系統(tǒng)及方法。
背景技術(shù):
隨著分布式存儲和NVMeSSD技術(shù)的快速發(fā)展,NVMe over Fabric技術(shù)被提出用來在以太網(wǎng)上高速互聯(lián)分布在不同服務(wù)器里的NVMe SSD存儲模塊,以太網(wǎng)是個(gè)隨機(jī)復(fù)用機(jī)制的盡力而為轉(zhuǎn)發(fā)的網(wǎng)絡(luò)模型,不保證數(shù)據(jù)的可靠傳輸,如何在以太網(wǎng)基礎(chǔ)上為NVMe over Fabric存儲提供高效的轉(zhuǎn)發(fā)是一個(gè)難題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的存儲的管理模塊可以和網(wǎng)絡(luò)管理模塊建立協(xié)商交互機(jī)制,使用網(wǎng)絡(luò)已有的帶寬管理機(jī)制加上存儲管理的靈活性可以較好的解決如上難題,通過兩個(gè)模塊的交互可以為NVMe over Fabric存儲提供高效網(wǎng)絡(luò)連接。為此,本發(fā)明提供NVMe over Fabric存儲高效網(wǎng)絡(luò)連接系統(tǒng)及方法,它具有能為NVMe over Fabric存儲提供高效的轉(zhuǎn)發(fā)的優(yōu)點(diǎn)。
為了實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案。
一種存儲高效網(wǎng)絡(luò)連接系統(tǒng),包含,存儲系統(tǒng)和網(wǎng)絡(luò)系統(tǒng),存儲系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)通過建立服務(wù)端-客戶端(server-client)連接進(jìn)行通訊,網(wǎng)絡(luò)系統(tǒng)屬于提供服務(wù)方,存儲系統(tǒng)屬于被服務(wù)方;
存儲系統(tǒng)包含,
網(wǎng)絡(luò)參數(shù)需求模塊,負(fù)責(zé)下發(fā)存儲系統(tǒng)里的網(wǎng)絡(luò)連接需求和網(wǎng)絡(luò)帶寬需求給網(wǎng)絡(luò)系統(tǒng);
副本狀態(tài)控制模塊,負(fù)責(zé)切換副本的主用非主用狀態(tài);
網(wǎng)絡(luò)系統(tǒng)包含,
網(wǎng)絡(luò)參數(shù)設(shè)置模塊,負(fù)責(zé)設(shè)置網(wǎng)絡(luò)接入點(diǎn)和各網(wǎng)絡(luò)路徑的保證帶寬和速率限制;
網(wǎng)絡(luò)資源監(jiān)控模塊,負(fù)責(zé)監(jiān)控網(wǎng)絡(luò)帶寬使用情況、是否發(fā)生擁塞;
存儲網(wǎng)絡(luò)處理模塊,負(fù)責(zé)分析存儲系統(tǒng)的網(wǎng)絡(luò)需求,負(fù)責(zé)分析網(wǎng)絡(luò)擁塞是否對存儲系統(tǒng)造成影響;
鏈路擁塞通知模塊,負(fù)責(zé)通知存儲系統(tǒng)網(wǎng)絡(luò)鏈路擁塞。
一種存儲高效網(wǎng)絡(luò)連接方法,存儲系統(tǒng)的網(wǎng)絡(luò)初始設(shè)置處理的流程包含以下步驟:
S01、存儲系統(tǒng)的網(wǎng)絡(luò)參數(shù)需求模塊把其網(wǎng)絡(luò)連接需求、帶寬需求和各副本狀態(tài)通知給網(wǎng)絡(luò)系統(tǒng)的存儲網(wǎng)絡(luò)處理模塊;
S02、存儲網(wǎng)絡(luò)處理模塊依據(jù)存儲系統(tǒng)的連接需求分析出需求的網(wǎng)絡(luò)路徑;
S03、存儲網(wǎng)絡(luò)處理模塊根據(jù)存儲系統(tǒng)的帶寬需求、需求的網(wǎng)絡(luò)路徑上可用的帶寬資源和副本狀態(tài)調(diào)用網(wǎng)絡(luò)參數(shù)設(shè)置模塊設(shè)置網(wǎng)絡(luò);
S04、網(wǎng)絡(luò)參數(shù)設(shè)置模塊設(shè)置網(wǎng)絡(luò)接入點(diǎn)和各網(wǎng)絡(luò)路徑的保證帶寬和速率限制;
存儲網(wǎng)絡(luò)鏈路擁塞處理流程包含以下步驟:
S11、網(wǎng)絡(luò)資源監(jiān)控模塊檢測到網(wǎng)絡(luò)發(fā)生擁塞;
S12、調(diào)用存儲網(wǎng)絡(luò)處理模塊分析擁塞鏈路對于存儲系統(tǒng)的影響;
S13、判斷擁塞的鏈路是否為主用副本使用的鏈路;
S14、如果發(fā)現(xiàn)擁塞的鏈路不是主用副本使用的鏈路則直接結(jié)束;
S15、否則調(diào)用鏈路擁塞通知模塊通知存儲系統(tǒng)主用副本網(wǎng)絡(luò)鏈路擁塞和備用副本網(wǎng)絡(luò)鏈路的使用情況;
S16、存儲系統(tǒng)依據(jù)當(dāng)前各副本存儲狀態(tài)判斷是否可以切換主用副本從而避免因網(wǎng)絡(luò)擁塞對存儲性能造成的影響;
S17、如果判斷后認(rèn)為不可以切換則直接結(jié)束;
S18、否則依據(jù)各非主用副本存儲狀態(tài)和其網(wǎng)絡(luò)鏈路使用情況選擇一個(gè)非主用副本做主用副本使用;
S19、副本狀態(tài)控制模塊把主用副本切換成非主用狀態(tài);
S20、把S18選擇的非主用副本切換成主用狀態(tài);
S21、對于新的主用副本的報(bào)文給予其較高的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置;
S22、對于原主用副本的報(bào)文給予其低一些的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置。
優(yōu)選的,存儲系統(tǒng)的網(wǎng)絡(luò)初始設(shè)置處理的流程,還包括:
S05、網(wǎng)絡(luò)參數(shù)設(shè)置模塊對于主用副本的報(bào)文給予其較高的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置;
S06、網(wǎng)絡(luò)參數(shù)設(shè)置模塊對于非主用副本的報(bào)文給予其低一些的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置。
本發(fā)明的有益效果:本發(fā)明提供NVMe over Fabric存儲高效網(wǎng)絡(luò)連接系統(tǒng)及方法,它具有能為NVMe over Fabric存儲提供高效的轉(zhuǎn)發(fā)的優(yōu)點(diǎn)。在盡力而為的以太網(wǎng)轉(zhuǎn)發(fā)模型下通過兩個(gè)系統(tǒng)的交互解決網(wǎng)絡(luò)擁塞帶來的存儲系統(tǒng)性能下降的問題。
附圖說明
圖1是本實(shí)施例存儲高效網(wǎng)絡(luò)連接系統(tǒng)連接部署圖。
圖2是本實(shí)施例存儲高效網(wǎng)絡(luò)連接系統(tǒng)模塊關(guān)系圖。
圖3是本實(shí)施例存儲高效網(wǎng)絡(luò)連接方法初始設(shè)置處理流程圖。
圖4是本實(shí)施例存儲高效網(wǎng)絡(luò)連接方法鏈路擁塞處理流程圖。
具體實(shí)施方式
下面結(jié)合附圖與實(shí)施例對本發(fā)明作進(jìn)一步說明。
如圖1所示,NVMe over Fabric存儲高效網(wǎng)絡(luò)連接系統(tǒng)涉及的幾個(gè)組件及其關(guān)系,其中服務(wù)器里有0到N塊NVMe的SSD硬盤,由支持NVMeover Fabric的網(wǎng)卡通過外部交換機(jī)互聯(lián)。
如圖2所示,NVMe over Fabric存儲高效網(wǎng)絡(luò)連接系統(tǒng)包含,存儲系統(tǒng)和網(wǎng)絡(luò)系統(tǒng);
存儲系統(tǒng)包含,
網(wǎng)絡(luò)參數(shù)需求模塊,負(fù)責(zé)下發(fā)存儲系統(tǒng)里的網(wǎng)絡(luò)連接需求和網(wǎng)絡(luò)帶寬需求給網(wǎng)絡(luò)系統(tǒng);
副本狀態(tài)控制模塊,負(fù)責(zé)切換副本的主用非主用狀態(tài);
網(wǎng)絡(luò)系統(tǒng)包含,
網(wǎng)絡(luò)參數(shù)設(shè)置模塊,負(fù)責(zé)設(shè)置網(wǎng)絡(luò)接入點(diǎn)和各網(wǎng)絡(luò)路徑的保證帶寬和速率限制;
網(wǎng)絡(luò)資源監(jiān)控模塊,負(fù)責(zé)監(jiān)控網(wǎng)絡(luò)帶寬使用情況、是否發(fā)生擁塞;
存儲網(wǎng)絡(luò)處理模塊,負(fù)責(zé)分析存儲系統(tǒng)的網(wǎng)絡(luò)需求,負(fù)責(zé)分析網(wǎng)絡(luò)擁塞是否對存儲系統(tǒng)造成影響;
鏈路擁塞通知模塊,負(fù)責(zé)通知存儲系統(tǒng)網(wǎng)絡(luò)鏈路擁塞。
如圖3、圖4所示,NVMe over Fabric存儲高效網(wǎng)絡(luò)連接方法,存儲系統(tǒng)的網(wǎng)絡(luò)初始設(shè)置處理的流程包含以下步驟:
S01、存儲系統(tǒng)的網(wǎng)絡(luò)參數(shù)需求模塊把其網(wǎng)絡(luò)連接需求、帶寬需求和各副本狀態(tài)通知給網(wǎng)絡(luò)系統(tǒng)的存儲網(wǎng)絡(luò)處理模塊;
S02、存儲網(wǎng)絡(luò)處理模塊依據(jù)存儲系統(tǒng)的連接需求分析出需求的網(wǎng)絡(luò)路徑;
S03、存儲網(wǎng)絡(luò)處理模塊根據(jù)存儲系統(tǒng)的帶寬需求、需求的網(wǎng)絡(luò)路徑上可用的帶寬資源和副本狀態(tài)調(diào)用網(wǎng)絡(luò)參數(shù)設(shè)置模塊設(shè)置網(wǎng)絡(luò);
S04、網(wǎng)絡(luò)參數(shù)設(shè)置模塊設(shè)置網(wǎng)絡(luò)接入點(diǎn)和各網(wǎng)絡(luò)路徑的保證帶寬和速率限制;
S05、網(wǎng)絡(luò)參數(shù)設(shè)置模塊對于主用副本的報(bào)文給予其較高的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置;
S06、網(wǎng)絡(luò)參數(shù)設(shè)置模塊對于非主用副本的報(bào)文給予其低一些的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置。
存儲網(wǎng)絡(luò)鏈路擁塞處理流程包含以下步驟:
S11、網(wǎng)絡(luò)資源監(jiān)控模塊檢測到網(wǎng)絡(luò)發(fā)生擁塞;
S12、調(diào)用存儲網(wǎng)絡(luò)處理模塊分析擁塞鏈路對于存儲系統(tǒng)的影響;
S13、判斷擁塞的鏈路是否為主用副本使用的鏈路;
S14、如果發(fā)現(xiàn)擁塞的鏈路不是主用副本使用的鏈路則直接結(jié)束;
S15、否則調(diào)用鏈路擁塞通知模塊通知存儲系統(tǒng)主用副本網(wǎng)絡(luò)鏈路擁塞和備用副本網(wǎng)絡(luò)鏈路的使用情況;
S16、存儲系統(tǒng)依據(jù)當(dāng)前各副本存儲狀態(tài)判斷是否可以切換主用副本從而避免因網(wǎng)絡(luò)擁塞對存儲性能造成的影響;
S17、如果判斷后認(rèn)為不可以切換則直接結(jié)束;
S18、否則依據(jù)各非主用副本存儲狀態(tài)和其網(wǎng)絡(luò)鏈路使用情況選擇一個(gè)非主用副本做主用副本使用;
S19、副本狀態(tài)控制模塊把主用副本切換成非主用狀態(tài);
S20、把S18選擇的非主用副本切換成主用狀態(tài);
S21、對于新的主用副本的報(bào)文給予其較高的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置;
S22、對于原主用副本的報(bào)文給予其低一些的數(shù)據(jù)轉(zhuǎn)發(fā)優(yōu)先級設(shè)置。
上述雖然結(jié)合附圖對本發(fā)明的具體實(shí)施方式進(jìn)行了描述,但并非對本發(fā)明保護(hù)范圍的限制,所屬領(lǐng)域技術(shù)人員應(yīng)該明白,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以內(nèi)。