本發明(ming)涉及數據(ju)(ju)傳輸技術領域,更(geng)具體地說,涉及一種io數據(ju)(ju)處理方法及系統。
背景技術:
隨著計(ji)算(suan)機技術的(de)飛速發展,很多技術都有了(le)(le)大幅度(du)(du)的(de)提升,尤(you)其是對(dui)(dui)后(hou)端存(cun)儲系(xi)統分區的(de)成功使用,滿(man)足(zu)了(le)(le)服務器主機下發數(shu)據(ju)的(de)安全(quan)性和(he)穩定性的(de)要求(qiu)(qiu),并且緩存(cun)和(he)閃(shan)存(cun)的(de)成功使用,滿(man)足(zu)了(le)(le)各個計(ji)算(suan)機領域對(dui)(dui)于計(ji)算(suan)資源和(he)計(ji)算(suan)速率(lv)的(de)需求(qiu)(qiu),這種處(chu)理方(fang)式(shi)極大地加快了(le)(le)數(shu)據(ju)處(chu)理的(de)速度(du)(du),然而(er)通用的(de)主機與(yu)存(cun)儲系(xi)統的(de)io數(shu)據(ju)傳輸方(fang)式(shi),并沒有加強主機與(yu)存(cun)儲系(xi)統之(zhi)間(jian)數(shu)據(ju)傳輸的(de)效率(lv),使得這種極速的(de)數(shu)據(ju)處(chu)理速度(du)(du)陷入了(le)(le)瓶頸(jing)。
技術實現要素:
有鑒于此(ci),本發明的目的在于提(ti)供(gong)一種io數據(ju)處理方法,能夠有效的提(ti)高主機與存(cun)儲系統之(zhi)間的數據(ju)傳輸速率和(he)安全性(xing)。
為(wei)實現(xian)上述目的,本發(fa)明提供如下技(ji)術方案:
一種(zhong)io數據處理方(fang)法,應用于存儲系統,所(suo)述方(fang)法包(bao)括以下步驟:
接收與所述存儲系統相(xiang)連(lian)的主機下發的命(ming)令;
將(jiang)接收到的所述命令進行分類處理;
將接收到的(de)所述(shu)命令(ling)進行優化處理;
基于分類(lei)處(chu)理(li)結果和優(you)化(hua)處(chu)理(li)結果將(jiang)所(suo)述主機發(fa)送的數(shu)據傳輸至所(suo)述存儲系統(tong)。
優選地,所述(shu)將接(jie)收(shou)到的所述(shu)命令進行分類處理(li)包括:
對接收到的io讀(du)寫命(ming)令(ling)和非io讀(du)寫的計算(suan)機(ji)與外部(bu)設備之間的接口標準命(ming)令(ling)進行區分;
基于中央處理(li)器核數按比例開(kai)啟(qi)快速路徑線(xian)程和(he)慢速路徑線(xian)程;
判斷(duan)所述(shu)主(zhu)機(ji)下發(fa)所述(shu)io讀寫命令是否嚴重(zhong)超時(shi);
當所(suo)(suo)(suo)述(shu)(shu)主(zhu)機下發所(suo)(suo)(suo)述(shu)(shu)io讀(du)寫命令嚴重超(chao)時(shi)時(shi),由所(suo)(suo)(suo)述(shu)(shu)快速路(lu)徑轉為所(suo)(suo)(suo)述(shu)(shu)慢速路(lu)徑處理所(suo)(suo)(suo)述(shu)(shu)io讀(du)寫命令。
優選地,所述將接收到的(de)所述命令進(jin)行優化處理包括:
組建主機命(ming)令(ling)控制塊機構,將命(ming)令(ling)區分(fen)為io標(biao)志和非(fei)io標(biao)志;
封裝傳輸數據地址。
一種io數據處理系統,應用(yong)于存(cun)儲系統,包括:
接(jie)收(shou)模塊,用于接(jie)收(shou)與所述(shu)存儲系(xi)統相連的主機(ji)下(xia)發的命令(ling);
分類處理模(mo)塊,用于將接收到的所(suo)述命令進行分類處理;
優(you)化處(chu)理模塊,用(yong)于將接收到的所(suo)述命令進行(xing)優(you)化處(chu)理;
傳輸模塊,用于基于分類處理(li)結(jie)果和優化處理(li)結(jie)果將(jiang)所(suo)述主機發送的數據傳輸至(zhi)所(suo)述存(cun)儲系統(tong)。
優(you)選(xuan)地,所述分(fen)類處理模塊包括(kuo):
第一區分單元,用于對接收到(dao)的(de)io讀寫命(ming)令(ling)和非io讀寫的(de)計算機與外部設備之間(jian)的(de)接口標準命(ming)令(ling)進行區分;
線程(cheng)(cheng)(cheng)開(kai)(kai)啟單元,用(yong)于基于中央處理器核(he)數按比例(li)開(kai)(kai)啟快速路徑(jing)線程(cheng)(cheng)(cheng)和慢速路徑(jing)線程(cheng)(cheng)(cheng);
判斷單(dan)元(yuan),用于判斷所述主機下發所述io讀寫命令(ling)是否嚴(yan)重超時;
轉(zhuan)換(huan)單元,用于當所(suo)(suo)述(shu)(shu)主機下發所(suo)(suo)述(shu)(shu)io讀寫命令嚴(yan)重超時時,由(you)所(suo)(suo)述(shu)(shu)快速路(lu)徑轉(zhuan)為所(suo)(suo)述(shu)(shu)慢速路(lu)徑處理所(suo)(suo)述(shu)(shu)io讀寫命令。
優選地(di),所(suo)述優化處理模塊(kuai)包(bao)括:
第二區分單(dan)元,用于組建(jian)主機命令(ling)(ling)控制塊(kuai)機構,將命令(ling)(ling)區分為(wei)io標志和非(fei)io標志;
封裝(zhuang)單元(yuan),用于封裝(zhuang)傳輸數據(ju)地址。
從上述(shu)技術方案(an)可以(yi)看出,本發(fa)明公開了一(yi)種io數(shu)據(ju)處理(li)方法,當需(xu)要將(jiang)主機中的(de)數(shu)據(ju)傳(chuan)輸至(zhi)存(cun)儲(chu)系(xi)統(tong)(tong)時,首先接(jie)收(shou)與存(cun)儲(chu)系(xi)統(tong)(tong)相連的(de)主機下(xia)發(fa)的(de)命令,然后將(jiang)接(jie)收(shou)到的(de)命令進(jin)行分類(lei)處理(li)和優化處理(li),根據(ju)分類(lei)處理(li)結果(guo)和優化處理(li)結果(guo)將(jiang)主機發(fa)送的(de)數(shu)據(ju)傳(chuan)輸至(zhi)存(cun)儲(chu)系(xi)統(tong)(tong),通過將(jiang)命令進(jin)行分類(lei)和優化有效的(de)提高主機與存(cun)儲(chu)系(xi)統(tong)(tong)之間的(de)數(shu)據(ju)傳(chuan)輸速率(lv)和安(an)全(quan)性。
附圖說明
為了更清楚地(di)說明(ming)本發(fa)明(ming)實施(shi)例(li)或現有(you)技術(shu)中(zhong)的技術(shu)方案,下面將對(dui)實施(shi)例(li)或現有(you)技術(shu)描述中(zhong)所(suo)需要使用的附(fu)圖(tu)(tu)作簡單(dan)地(di)介紹,顯而易見(jian)地(di),下面描述中(zhong)的附(fu)圖(tu)(tu)僅僅是本發(fa)明(ming)的一些實施(shi)例(li),對(dui)于本領(ling)域(yu)普(pu)通技術(shu)人員來講,在(zai)不付出(chu)創造(zao)性勞(lao)動的前提下,還(huan)可(ke)以根據這(zhe)些附(fu)圖(tu)(tu)獲得其它(ta)的附(fu)圖(tu)(tu)。
圖1為本發(fa)明公開的一種(zhong)io數據處理(li)方法實施例1的流(liu)程(cheng)圖;
圖2為本發明(ming)公開的一種io數據(ju)處(chu)理(li)方法實施例2的流(liu)程圖;
圖3為本發明公開的一(yi)種io數據處理系(xi)統實施(shi)例(li)1的結構示意圖;
圖4為本發明(ming)公開的一種io數據處理(li)系統實(shi)施例2的結構示(shi)意圖。
具體實施方式
下面將結合本(ben)發明(ming)實(shi)(shi)施(shi)例(li)中(zhong)(zhong)的附圖,對本(ben)發明(ming)實(shi)(shi)施(shi)例(li)中(zhong)(zhong)的技術方案進(jin)行清楚、完(wan)整地(di)描(miao)述(shu)(shu),顯然,所描(miao)述(shu)(shu)的實(shi)(shi)施(shi)例(li)僅(jin)僅(jin)是(shi)(shi)本(ben)發明(ming)一部分(fen)實(shi)(shi)施(shi)例(li),而不是(shi)(shi)全(quan)部的實(shi)(shi)施(shi)例(li)。基于本(ben)發明(ming)中(zhong)(zhong)的實(shi)(shi)施(shi)例(li),本(ben)領域普通技術人員在沒(mei)有做出(chu)創造性勞動前提下所獲得(de)的所有其它實(shi)(shi)施(shi)例(li),都屬(shu)于本(ben)發明(ming)保(bao)護的范圍。
如圖(tu)1所示,為本發(fa)明公開(kai)的一種io數(shu)據(ju)處理方法的實施例1的流程圖(tu),本方法應用(yong)于存儲系(xi)統(tong),可以包(bao)括以下步驟:
s101、接收與存儲系統(tong)相連(lian)的主機(ji)下(xia)發的命令(ling);
s102、將接收到的命令進行分類處理(li);
s103、將接收(shou)到的(de)命令進行優化處理;
s104、基(ji)于分(fen)類處理結果和優化處理結果將(jiang)主機(ji)發送的數據(ju)傳輸至存儲系(xi)統。
本實(shi)施(shi)例(li)涉(she)及主機(ji)對存(cun)儲(chu)(chu)(chu)(chu)(chu)系(xi)統(tong)(tong)進行(xing)讀寫數(shu)(shu)(shu)(shu)據(ju)(ju)時,為(wei)了加(jia)快(kuai)數(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)送速(su)度,優(you)化(hua)(hua)傳(chuan)(chuan)輸(shu)(shu)數(shu)(shu)(shu)(shu)據(ju)(ju)安(an)全(quan)(quan)管(guan)理(li),創造出一種(zhong)新型(xing)(xing)的(de)(de)(de)(de)(de)io數(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸(shu)(shu)的(de)(de)(de)(de)(de)方法(fa)和(he)技術,目(mu)的(de)(de)(de)(de)(de)在(zai)于改進主機(ji)與(yu)(yu)存(cun)儲(chu)(chu)(chu)(chu)(chu)系(xi)統(tong)(tong)之間的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸(shu)(shu)的(de)(de)(de)(de)(de)管(guan)理(li)方法(fa),由原(yuan)來(lai)的(de)(de)(de)(de)(de)主機(ji)與(yu)(yu)后(hou)端(duan)存(cun)儲(chu)(chu)(chu)(chu)(chu)系(xi)統(tong)(tong)的(de)(de)(de)(de)(de)卷或者虛擬卷直接傳(chuan)(chuan)輸(shu)(shu)命(ming)(ming)令(ling)和(he)數(shu)(shu)(shu)(shu)據(ju)(ju)io的(de)(de)(de)(de)(de)模式,改善為(wei)在(zai)存(cun)儲(chu)(chu)(chu)(chu)(chu)系(xi)統(tong)(tong)中加(jia)入一個io處(chu)理(li)系(xi)統(tong)(tong),從而(er)使(shi)得(de)主機(ji)向(xiang)存(cun)儲(chu)(chu)(chu)(chu)(chu)系(xi)統(tong)(tong)發布(bu)命(ming)(ming)令(ling)并(bing)進行(xing)數(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸(shu)(shu)時,io處(chu)理(li)系(xi)統(tong)(tong)先將主機(ji)下(xia)發命(ming)(ming)令(ling)進行(xing)分(fen)類,并(bing)將命(ming)(ming)令(ling)進行(xing)封裝優(you)化(hua)(hua)處(chu)理(li),使(shi)用快(kuai)速(su)路(lu)徑(jing)和(he)慢(man)速(su)路(lu)徑(jing)兩種(zhong)類型(xing)(xing)的(de)(de)(de)(de)(de)線程(cheng)來(lai)處(chu)理(li)已分(fen)類的(de)(de)(de)(de)(de)命(ming)(ming)令(ling);并(bing)優(you)化(hua)(hua)主機(ji)向(xiang)后(hou)端(duan)存(cun)儲(chu)(chu)(chu)(chu)(chu)系(xi)統(tong)(tong)進行(xing)數(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸(shu)(shu)的(de)(de)(de)(de)(de)方式,將命(ming)(ming)令(ling)和(he)數(shu)(shu)(shu)(shu)據(ju)(ju)獨立區分(fen),只(zhi)進行(xing)命(ming)(ming)令(ling)和(he)數(shu)(shu)(shu)(shu)據(ju)(ju)地址的(de)(de)(de)(de)(de)傳(chuan)(chuan)輸(shu)(shu),以確保數(shu)(shu)(shu)(shu)據(ju)(ju)的(de)(de)(de)(de)(de)安(an)全(quan)(quan)性和(he)并(bing)且在(zai)最大程(cheng)度上減(jian)少系(xi)統(tong)(tong)資源的(de)(de)(de)(de)(de)消耗。此發明(ming)極(ji)大地改善了存(cun)儲(chu)(chu)(chu)(chu)(chu)系(xi)統(tong)(tong)io的(de)(de)(de)(de)(de)轉發能力,并(bing)且根據(ju)(ju)命(ming)(ming)令(ling)塊的(de)(de)(de)(de)(de)優(you)化(hua)(hua),只(zhi)進行(xing)數(shu)(shu)(shu)(shu)據(ju)(ju)塊地址的(de)(de)(de)(de)(de)傳(chuan)(chuan)送,這就極(ji)大地提高了數(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸(shu)(shu)的(de)(de)(de)(de)(de)快(kuai)速(su)性和(he)安(an)全(quan)(quan)性。
如圖(tu)2所示(shi),為(wei)本(ben)發明公開的一(yi)種(zhong)io數據(ju)處理方法(fa)的實施例(li)1的流(liu)程圖(tu),本(ben)方法(fa)應用于存儲系統,可(ke)以包括以下步驟:
s201、接(jie)收(shou)與所述存儲系(xi)統相連的(de)主機下發的(de)命令;
s202、對(dui)接收到的io讀(du)寫命令和非io讀(du)寫的計算機與外部設備之(zhi)間的接口標準命令進行(xing)區(qu)分;
s203、基于中央處理器(qi)核數(shu)按(an)比例開啟快速路徑(jing)線(xian)程和慢速路徑(jing)線(xian)程;
s204、判(pan)斷所述主機下發所述io讀寫命令(ling)是否嚴重超時;
s205、當(dang)所述(shu)主(zhu)機下發(fa)所述(shu)io讀(du)寫(xie)命令嚴(yan)重超(chao)時(shi)時(shi),由所述(shu)快(kuai)速(su)(su)路徑轉(zhuan)為所述(shu)慢速(su)(su)路徑處(chu)理所述(shu)io讀(du)寫(xie)命令;
s206、組建主機(ji)命令控制塊機(ji)構(gou),將命令區分為io標志和非io標志;
s207、封裝傳輸(shu)數據地址;
s208、基于(yu)分類處理結果和優化處理結果將所述(shu)(shu)主機發送的(de)數據傳輸至所述(shu)(shu)存儲系統。
本(ben)實(shi)施例(li)涉及主(zhu)機(ji)對(dui)存(cun)儲系(xi)統(tong)進(jin)行讀(du)(du)寫數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)時,為(wei)了加快(kuai)數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)送(song)速(su)(su)度(du),優化傳(chuan)(chuan)輸數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)安全管理,創造出一(yi)種新型的(de)(de)(de)(de)(de)(de)(de)(de)(de)io數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸的(de)(de)(de)(de)(de)(de)(de)(de)(de)方法和(he)(he)(he)(he)技(ji)術(shu),目的(de)(de)(de)(de)(de)(de)(de)(de)(de)在(zai)于改(gai)進(jin)主(zhu)機(ji)與存(cun)儲系(xi)統(tong)之間(jian)(jian)的(de)(de)(de)(de)(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸的(de)(de)(de)(de)(de)(de)(de)(de)(de)管理方法,由(you)原來的(de)(de)(de)(de)(de)(de)(de)(de)(de)主(zhu)機(ji)與后(hou)端存(cun)儲系(xi)統(tong)的(de)(de)(de)(de)(de)(de)(de)(de)(de)卷或者虛擬卷直(zhi)接(jie)傳(chuan)(chuan)輸命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)和(he)(he)(he)(he)數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)io的(de)(de)(de)(de)(de)(de)(de)(de)(de)模(mo)(mo)式,改(gai)善為(wei)在(zai)存(cun)儲系(xi)統(tong)中(zhong)(zhong)加入一(yi)個(ge)頂層處理所有scsi(smallcomputersysteminterface,計算機(ji)與外部設備之間(jian)(jian)的(de)(de)(de)(de)(de)(de)(de)(de)(de)接(jie)口標(biao)準)命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)的(de)(de)(de)(de)(de)(de)(de)(de)(de)io處理系(xi)統(tong),由(you)其進(jin)行主(zhu)機(ji)所有命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)的(de)(de)(de)(de)(de)(de)(de)(de)(de)分(fen)類、轉發(fa)與回復,并(bing)(bing)提(ti)供存(cun)儲系(xi)統(tong)的(de)(de)(de)(de)(de)(de)(de)(de)(de)識別與認(ren)證(zheng),確(que)認(ren)主(zhu)機(ji)下(xia)(xia)發(fa)的(de)(de)(de)(de)(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)路(lu)徑(jing)正確(que)性。在(zai)該系(xi)統(tong)中(zhong)(zhong),系(xi)統(tong)將(jiang)(jiang)主(zhu)機(ji)下(xia)(xia)發(fa)命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)進(jin)行分(fen)類,將(jiang)(jiang)scsi命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)中(zhong)(zhong)的(de)(de)(de)(de)(de)(de)(de)(de)(de)普(pu)通命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)如inquiry、reportlun等(deng),和(he)(he)(he)(he)io讀(du)(du)寫命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling),如write(10)、write(16)、read(10)、read(16)等(deng)進(jin)行區(qu)分(fen),然后(hou)根據(ju)(ju)區(qu)分(fen)開的(de)(de)(de)(de)(de)(de)(de)(de)(de)命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling),分(fen)別走基于中(zhong)(zhong)央處理器核數(shu)(shu)(shu)(shu)(shu)(shu)(shu)按比例(li)調度(du)出的(de)(de)(de)(de)(de)(de)(de)(de)(de)多(duo)條快(kuai)速(su)(su)路(lu)徑(jing)線(xian)程和(he)(he)(he)(he)慢(man)速(su)(su)路(lu)徑(jing)線(xian)程。其中(zhong)(zhong)快(kuai)速(su)(su)路(lu)徑(jing)只能(neng)處理goodio,慢(man)速(su)(su)路(lu)徑(jing)可以處理普(pu)通非io命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling),以及failio及超(chao)過等(deng)待時間(jian)(jian)閾值的(de)(de)(de)(de)(de)(de)(de)(de)(de)io,以保(bao)障最大(da)(da)限度(du)的(de)(de)(de)(de)(de)(de)(de)(de)(de)提(ti)高(gao)io讀(du)(du)寫速(su)(su)度(du)。并(bing)(bing)且在(zai)主(zhu)機(ji)向(xiang)存(cun)儲系(xi)統(tong)發(fa)布命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)并(bing)(bing)進(jin)行數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸時,將(jiang)(jiang)主(zhu)機(ji)下(xia)(xia)發(fa)的(de)(de)(de)(de)(de)(de)(de)(de)(de)命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)進(jin)行封裝優化處理,主(zhu)要是對(dui)主(zhu)機(ji)下(xia)(xia)發(fa)的(de)(de)(de)(de)(de)(de)(de)(de)(de)命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)進(jin)行封裝,組建(jian)hccb(hostcommandcontrolblock,主(zhu)機(ji)命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)控制塊(kuai))結構,制定命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)的(de)(de)(de)(de)(de)(de)(de)(de)(de)旗,即(ji)io和(he)(he)(he)(he)非io標(biao)志,并(bing)(bing)且封裝傳(chuan)(chuan)輸數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)地址,隔(ge)離數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)在(zai)此模(mo)(mo)塊(kuai)的(de)(de)(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)輸,只進(jin)行數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)地址的(de)(de)(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)輸,完(wan)成數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)由(you)驅動(dong)層直(zhi)接(jie)到高(gao)速(su)(su)緩存(cun)層的(de)(de)(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)遞。本(ben)發(fa)明(ming)極大(da)(da)地改(gai)善了存(cun)儲系(xi)統(tong)io的(de)(de)(de)(de)(de)(de)(de)(de)(de)轉發(fa)能(neng)力,并(bing)(bing)且根據(ju)(ju)命(ming)(ming)(ming)(ming)(ming)令(ling)(ling)(ling)(ling)塊(kuai)的(de)(de)(de)(de)(de)(de)(de)(de)(de)優化,只進(jin)行數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)塊(kuai)地址的(de)(de)(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)說,極大(da)(da)地提(ti)高(gao)了數(shu)(shu)(shu)(shu)(shu)(shu)(shu)據(ju)(ju)傳(chuan)(chuan)輸的(de)(de)(de)(de)(de)(de)(de)(de)(de)快(kuai)速(su)(su)性和(he)(he)(he)(he)安全性。
如圖3所(suo)示(shi),為本(ben)發明公開的一種io數據處理系統的實施例1的結(jie)構示(shi)意圖,本(ben)系統應用于(yu)存儲系統,可以包(bao)括:
接收(shou)模塊301,用于接收(shou)與存儲(chu)系統相連的(de)主機下發(fa)的(de)命令;
分(fen)類(lei)處(chu)理模塊302,用于將接(jie)收到的命(ming)令進行分(fen)類(lei)處(chu)理;
優化處(chu)理模塊(kuai)303,用于將接收(shou)到的命(ming)令進行優化處(chu)理;
傳輸模塊304,用于(yu)基(ji)于(yu)分類(lei)處理結(jie)果和優(you)化處理結(jie)果將主機發送的(de)數據傳輸至存儲系統(tong)。
本實施例涉及主機(ji)對存(cun)(cun)(cun)儲(chu)(chu)系(xi)(xi)(xi)(xi)統(tong)(tong)進(jin)行(xing)(xing)讀寫數(shu)據(ju)(ju)(ju)(ju)時,為(wei)了(le)(le)加(jia)快(kuai)數(shu)據(ju)(ju)(ju)(ju)傳送(song)速(su)(su)度,優(you)化傳輸(shu)(shu)(shu)數(shu)據(ju)(ju)(ju)(ju)安全(quan)(quan)(quan)管理(li)(li)(li)(li),創(chuang)造出(chu)一種新型(xing)的(de)(de)io數(shu)據(ju)(ju)(ju)(ju)傳輸(shu)(shu)(shu)的(de)(de)方(fang)法和(he)(he)(he)(he)技術,目的(de)(de)在(zai)于改進(jin)主機(ji)與(yu)存(cun)(cun)(cun)儲(chu)(chu)系(xi)(xi)(xi)(xi)統(tong)(tong)之(zhi)間(jian)的(de)(de)數(shu)據(ju)(ju)(ju)(ju)傳輸(shu)(shu)(shu)的(de)(de)管理(li)(li)(li)(li)方(fang)法,由原來的(de)(de)主機(ji)與(yu)后(hou)端(duan)(duan)存(cun)(cun)(cun)儲(chu)(chu)系(xi)(xi)(xi)(xi)統(tong)(tong)的(de)(de)卷或者(zhe)虛擬(ni)卷直(zhi)接傳輸(shu)(shu)(shu)命(ming)(ming)(ming)令(ling)和(he)(he)(he)(he)數(shu)據(ju)(ju)(ju)(ju)io的(de)(de)模(mo)(mo)式,改善(shan)為(wei)在(zai)存(cun)(cun)(cun)儲(chu)(chu)系(xi)(xi)(xi)(xi)統(tong)(tong)中(zhong)加(jia)入一個io處理(li)(li)(li)(li)系(xi)(xi)(xi)(xi)統(tong)(tong),包(bao)括接收模(mo)(mo)塊301、分(fen)(fen)類處理(li)(li)(li)(li)模(mo)(mo)塊302、優(you)化處理(li)(li)(li)(li)模(mo)(mo)塊303和(he)(he)(he)(he)傳輸(shu)(shu)(shu)模(mo)(mo)塊304,從而使(shi)得(de)主機(ji)向存(cun)(cun)(cun)儲(chu)(chu)系(xi)(xi)(xi)(xi)統(tong)(tong)發布命(ming)(ming)(ming)令(ling)并進(jin)行(xing)(xing)數(shu)據(ju)(ju)(ju)(ju)傳輸(shu)(shu)(shu)時,io處理(li)(li)(li)(li)系(xi)(xi)(xi)(xi)統(tong)(tong)先將主機(ji)下發命(ming)(ming)(ming)令(ling)進(jin)行(xing)(xing)分(fen)(fen)類,并將命(ming)(ming)(ming)令(ling)進(jin)行(xing)(xing)封裝優(you)化處理(li)(li)(li)(li),使(shi)用快(kuai)速(su)(su)路徑(jing)和(he)(he)(he)(he)慢速(su)(su)路徑(jing)兩種類型(xing)的(de)(de)線程來處理(li)(li)(li)(li)已分(fen)(fen)類的(de)(de)命(ming)(ming)(ming)令(ling);并優(you)化主機(ji)向后(hou)端(duan)(duan)存(cun)(cun)(cun)儲(chu)(chu)系(xi)(xi)(xi)(xi)統(tong)(tong)進(jin)行(xing)(xing)數(shu)據(ju)(ju)(ju)(ju)傳輸(shu)(shu)(shu)的(de)(de)方(fang)式,將命(ming)(ming)(ming)令(ling)和(he)(he)(he)(he)數(shu)據(ju)(ju)(ju)(ju)獨立區分(fen)(fen),只進(jin)行(xing)(xing)命(ming)(ming)(ming)令(ling)和(he)(he)(he)(he)數(shu)據(ju)(ju)(ju)(ju)地址的(de)(de)傳輸(shu)(shu)(shu),以確保數(shu)據(ju)(ju)(ju)(ju)的(de)(de)安全(quan)(quan)(quan)性(xing)和(he)(he)(he)(he)并且在(zai)最(zui)大程度上減少系(xi)(xi)(xi)(xi)統(tong)(tong)資源的(de)(de)消耗(hao)。此發明(ming)極大地改善(shan)了(le)(le)存(cun)(cun)(cun)儲(chu)(chu)系(xi)(xi)(xi)(xi)統(tong)(tong)io的(de)(de)轉發能力(li),并且根據(ju)(ju)(ju)(ju)命(ming)(ming)(ming)令(ling)塊的(de)(de)優(you)化,只進(jin)行(xing)(xing)數(shu)據(ju)(ju)(ju)(ju)塊地址的(de)(de)傳送(song),這就極大地提(ti)高了(le)(le)數(shu)據(ju)(ju)(ju)(ju)傳輸(shu)(shu)(shu)的(de)(de)快(kuai)速(su)(su)性(xing)和(he)(he)(he)(he)安全(quan)(quan)(quan)性(xing)。
如圖4所示,為本(ben)發明公開(kai)的(de)一(yi)種(zhong)io數據(ju)處理系(xi)統的(de)實(shi)施例2的(de)結構示意圖,本(ben)系(xi)統應用于存儲系(xi)統,可以包(bao)括:
接(jie)(jie)收模塊401,用于接(jie)(jie)收與所述存儲系統(tong)相連的(de)主機下(xia)發(fa)的(de)命(ming)令;
第(di)一(yi)區(qu)分單元(yuan)402,用于對接收(shou)到的io讀寫(xie)命(ming)令(ling)和非io讀寫(xie)的計算機與外部設備之間(jian)的接口標準命(ming)令(ling)進行區(qu)分;
線(xian)(xian)程(cheng)開(kai)啟(qi)單元403,用于基于中央(yang)處理器核(he)數按比(bi)例開(kai)啟(qi)快速(su)路徑線(xian)(xian)程(cheng)和慢速(su)路徑線(xian)(xian)程(cheng);
判斷(duan)單元404,用于判斷(duan)所述(shu)主機下發所述(shu)io讀寫命(ming)令是否(fou)嚴重超時(shi);
轉換單元405,用(yong)于(yu)當(dang)所述(shu)主機下發所述(shu)io讀(du)寫命令(ling)嚴重超時時,由所述(shu)快速路(lu)徑(jing)轉為所述(shu)慢速路(lu)徑(jing)處(chu)理所述(shu)io讀(du)寫命令(ling);
第二(er)區分(fen)(fen)單元(yuan)406,用于組建主(zhu)機(ji)命(ming)令控(kong)制塊機(ji)構,將命(ming)令區分(fen)(fen)為io標志和非io標志;
封裝(zhuang)單元407,用于封裝(zhuang)傳(chuan)輸數據地址;
傳輸模塊408,用于基于分類處理(li)結果和優化處理(li)結果將所述主機發送的數據(ju)傳輸至所述存儲系統(tong)。
本(ben)實施例涉(she)及主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)對存(cun)儲(chu)系(xi)統(tong)(tong)進(jin)行(xing)(xing)(xing)讀寫數(shu)(shu)據(ju)(ju)(ju)(ju)時,為了(le)加快(kuai)數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)送速(su)(su)度(du),優化傳(chuan)(chuan)輸數(shu)(shu)據(ju)(ju)(ju)(ju)安全管(guan)理(li)(li),創造出(chu)一(yi)種新型(xing)的(de)(de)(de)(de)(de)(de)(de)io數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)輸的(de)(de)(de)(de)(de)(de)(de)方法(fa)和(he)技術,目的(de)(de)(de)(de)(de)(de)(de)在(zai)于改(gai)進(jin)主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)與(yu)存(cun)儲(chu)系(xi)統(tong)(tong)之間(jian)(jian)的(de)(de)(de)(de)(de)(de)(de)數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)輸的(de)(de)(de)(de)(de)(de)(de)管(guan)理(li)(li)方法(fa),由(you)原來(lai)的(de)(de)(de)(de)(de)(de)(de)主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)與(yu)后端存(cun)儲(chu)系(xi)統(tong)(tong)的(de)(de)(de)(de)(de)(de)(de)卷或(huo)者虛擬(ni)卷直接傳(chuan)(chuan)輸命(ming)(ming)(ming)令(ling)(ling)(ling)和(he)數(shu)(shu)據(ju)(ju)(ju)(ju)io的(de)(de)(de)(de)(de)(de)(de)模式,改(gai)善為在(zai)存(cun)儲(chu)系(xi)統(tong)(tong)中加入一(yi)個頂層(ceng)處(chu)(chu)理(li)(li)所有scsi(smallcomputersysteminterface,計算機(ji)(ji)(ji)(ji)與(yu)外部設(she)備之間(jian)(jian)的(de)(de)(de)(de)(de)(de)(de)接口標準)命(ming)(ming)(ming)令(ling)(ling)(ling)的(de)(de)(de)(de)(de)(de)(de)io處(chu)(chu)理(li)(li)系(xi)統(tong)(tong),由(you)其進(jin)行(xing)(xing)(xing)主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)所有命(ming)(ming)(ming)令(ling)(ling)(ling)的(de)(de)(de)(de)(de)(de)(de)分類、轉發(fa)(fa)(fa)與(yu)回復,并提(ti)供(gong)存(cun)儲(chu)系(xi)統(tong)(tong)的(de)(de)(de)(de)(de)(de)(de)識別(bie)與(yu)認證,確(que)(que)認主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)下(xia)發(fa)(fa)(fa)的(de)(de)(de)(de)(de)(de)(de)數(shu)(shu)據(ju)(ju)(ju)(ju)路(lu)(lu)徑(jing)正確(que)(que)性。在(zai)該系(xi)統(tong)(tong)中,系(xi)統(tong)(tong)將主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)下(xia)發(fa)(fa)(fa)命(ming)(ming)(ming)令(ling)(ling)(ling)進(jin)行(xing)(xing)(xing)分類,將scsi命(ming)(ming)(ming)令(ling)(ling)(ling)中的(de)(de)(de)(de)(de)(de)(de)普通(tong)命(ming)(ming)(ming)令(ling)(ling)(ling)如inquiry、reportlun等(deng),和(he)io讀寫命(ming)(ming)(ming)令(ling)(ling)(ling),如write(10)、write(16)、read(10)、read(16)等(deng)進(jin)行(xing)(xing)(xing)區(qu)(qu)分,然(ran)后根據(ju)(ju)(ju)(ju)區(qu)(qu)分開的(de)(de)(de)(de)(de)(de)(de)命(ming)(ming)(ming)令(ling)(ling)(ling),分別(bie)走基于中央處(chu)(chu)理(li)(li)器核數(shu)(shu)按比例調度(du)出(chu)的(de)(de)(de)(de)(de)(de)(de)多條快(kuai)速(su)(su)路(lu)(lu)徑(jing)線程和(he)慢速(su)(su)路(lu)(lu)徑(jing)線程。其中快(kuai)速(su)(su)路(lu)(lu)徑(jing)只能處(chu)(chu)理(li)(li)goodio,慢速(su)(su)路(lu)(lu)徑(jing)可以(yi)處(chu)(chu)理(li)(li)普通(tong)非(fei)io命(ming)(ming)(ming)令(ling)(ling)(ling),以(yi)及failio及超(chao)過等(deng)待時間(jian)(jian)閾值的(de)(de)(de)(de)(de)(de)(de)io,以(yi)保障最大(da)限度(du)的(de)(de)(de)(de)(de)(de)(de)提(ti)高(gao)io讀寫速(su)(su)度(du)。并且在(zai)主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)向存(cun)儲(chu)系(xi)統(tong)(tong)發(fa)(fa)(fa)布命(ming)(ming)(ming)令(ling)(ling)(ling)并進(jin)行(xing)(xing)(xing)數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)輸時,將主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)下(xia)發(fa)(fa)(fa)的(de)(de)(de)(de)(de)(de)(de)命(ming)(ming)(ming)令(ling)(ling)(ling)進(jin)行(xing)(xing)(xing)封(feng)裝(zhuang)(zhuang)優化處(chu)(chu)理(li)(li),主(zhu)(zhu)(zhu)(zhu)(zhu)要是對主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)下(xia)發(fa)(fa)(fa)的(de)(de)(de)(de)(de)(de)(de)命(ming)(ming)(ming)令(ling)(ling)(ling)進(jin)行(xing)(xing)(xing)封(feng)裝(zhuang)(zhuang),組建hccb(hostcommandcontrolblock,主(zhu)(zhu)(zhu)(zhu)(zhu)機(ji)(ji)(ji)(ji)命(ming)(ming)(ming)令(ling)(ling)(ling)控制塊)結構(gou),制定命(ming)(ming)(ming)令(ling)(ling)(ling)的(de)(de)(de)(de)(de)(de)(de)旗,即io和(he)非(fei)io標志,并且封(feng)裝(zhuang)(zhuang)傳(chuan)(chuan)輸數(shu)(shu)據(ju)(ju)(ju)(ju)地(di)(di)址(zhi),隔離數(shu)(shu)據(ju)(ju)(ju)(ju)在(zai)此模塊的(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)輸,只進(jin)行(xing)(xing)(xing)數(shu)(shu)據(ju)(ju)(ju)(ju)地(di)(di)址(zhi)的(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)輸,完成數(shu)(shu)據(ju)(ju)(ju)(ju)由(you)驅動層(ceng)直接到(dao)高(gao)速(su)(su)緩存(cun)層(ceng)的(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)遞。本(ben)發(fa)(fa)(fa)明極(ji)(ji)大(da)地(di)(di)改(gai)善了(le)存(cun)儲(chu)系(xi)統(tong)(tong)io的(de)(de)(de)(de)(de)(de)(de)轉發(fa)(fa)(fa)能力,并且根據(ju)(ju)(ju)(ju)命(ming)(ming)(ming)令(ling)(ling)(ling)塊的(de)(de)(de)(de)(de)(de)(de)優化,只進(jin)行(xing)(xing)(xing)數(shu)(shu)據(ju)(ju)(ju)(ju)塊地(di)(di)址(zhi)的(de)(de)(de)(de)(de)(de)(de)傳(chuan)(chuan)說,極(ji)(ji)大(da)地(di)(di)提(ti)高(gao)了(le)數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)輸的(de)(de)(de)(de)(de)(de)(de)快(kuai)速(su)(su)性和(he)安全性。
本說明書中各個實(shi)(shi)施例(li)采用遞(di)進的(de)方式描述,每個實(shi)(shi)施例(li)重點(dian)說明的(de)都是(shi)與其它實(shi)(shi)施例(li)的(de)不(bu)同之處,各個實(shi)(shi)施例(li)之間相同相似部分互相參(can)見即可。
對所公(gong)開的(de)(de)實(shi)施(shi)(shi)例的(de)(de)上(shang)述說明(ming)(ming),使本(ben)(ben)領域專業(ye)技術人(ren)員能夠實(shi)現或使用本(ben)(ben)發(fa)明(ming)(ming)。對這些(xie)實(shi)施(shi)(shi)例的(de)(de)多種(zhong)修改對本(ben)(ben)領域的(de)(de)專業(ye)技術人(ren)員來說將(jiang)是顯而(er)易見的(de)(de),本(ben)(ben)文(wen)中所定義的(de)(de)一(yi)般原理(li)可以在不(bu)(bu)脫離本(ben)(ben)發(fa)明(ming)(ming)的(de)(de)精神或范圍的(de)(de)情(qing)況下,在其它實(shi)施(shi)(shi)例中實(shi)現。因此,本(ben)(ben)發(fa)明(ming)(ming)將(jiang)不(bu)(bu)會被限制(zhi)于本(ben)(ben)文(wen)所示的(de)(de)這些(xie)實(shi)施(shi)(shi)例,而(er)是要符(fu)合(he)與本(ben)(ben)文(wen)所公(gong)開的(de)(de)原理(li)和新穎特點相(xiang)一(yi)致的(de)(de)最寬的(de)(de)范圍。