国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種在PowerPCDPAA模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法與流程

      文檔序號:11216218閱讀:1460來源:國知局
      一種在PowerPC DPAA模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法與流程

      本發(fā)明涉及計算機(jī)技術(shù)領(lǐng)域,尤具體地說是一種實用性強(qiáng)、在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法。



      背景技術(shù):

      隨著云計算、大數(shù)據(jù)等技術(shù)的日益成熟和廣泛應(yīng)用,對網(wǎng)絡(luò)處理性能要求的日益提高,powerpc由于采用dpaa技術(shù),即數(shù)據(jù)路徑加速架構(gòu),能夠大幅度提升網(wǎng)絡(luò)處理性能,在云平臺接入、大數(shù)據(jù)分布式存儲領(lǐng)域應(yīng)用日益廣泛。但由于dpaa底層技術(shù)采用硬件實現(xiàn),對于變化的網(wǎng)絡(luò)接口環(huán)境,powerpc在dpaa模式下還不具備網(wǎng)絡(luò)接口自適應(yīng)的功能,只能通過手動配置實現(xiàn),無法滿足靈活部署的要求。

      基于此,本發(fā)明提出了一種在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法。



      技術(shù)實現(xiàn)要素:

      本發(fā)明的技術(shù)任務(wù)是針對以上不足之處,提供一種實用性強(qiáng)、在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法。

      一種在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法,應(yīng)用于powerpc架構(gòu)的dpaa模式下,powerpc硬件架構(gòu)采用powerpc多核網(wǎng)絡(luò)處理器,配置千兆phy芯片,并采用dpaa模式,其實現(xiàn)過程為:

      首先獲取當(dāng)前網(wǎng)絡(luò)狀態(tài)數(shù)據(jù);

      然后將讀取到的網(wǎng)絡(luò)狀態(tài)數(shù)據(jù)配置到powerpc網(wǎng)絡(luò)接口下的相關(guān)寄存器中,實現(xiàn)接口模式的配置,最終實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)。

      其具體實現(xiàn)過程為:

      獲取狀態(tài)數(shù)據(jù):首先讀取千兆phy芯片的模式狀態(tài)寄存器,獲取當(dāng)前的網(wǎng)絡(luò)接口速度狀態(tài)以及網(wǎng)絡(luò)連接狀態(tài);

      配置寄存器:將讀取到的網(wǎng)絡(luò)接口速度以及連接狀態(tài)進(jìn)行配置以太網(wǎng)控制寄存器和mac配置寄存器,從而實現(xiàn)了接口模式的配置,最終可實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)。

      所述狀態(tài)數(shù)據(jù)通過mdio內(nèi)核驅(qū)動模塊讀取獲得,具體為:

      1)內(nèi)核模塊與用戶空間的網(wǎng)絡(luò)通信程序通過netlink機(jī)制進(jìn)行通信的;當(dāng)內(nèi)核模塊被加載后,運(yùn)行用戶空間程序,由用戶空間發(fā)起netlink會話,和內(nèi)核模塊進(jìn)行數(shù)據(jù)交換,該內(nèi)核模塊的數(shù)據(jù)交換是在多核處理器中的一個核中開辟一個進(jìn)程來實現(xiàn);

      2)通過mdio的內(nèi)核驅(qū)動模塊對千兆phy設(shè)備進(jìn)行打開并對其模式狀態(tài)寄存器進(jìn)行讀取。

      在獲取當(dāng)前網(wǎng)絡(luò)接口狀態(tài)后,對powerpc的網(wǎng)絡(luò)接口ecntrl寄存器的接口模式控制位、maccfg2寄存器的i/f模式位進(jìn)行配置。

      在配置寄存器的過程中,還包括配置狀態(tài)變化標(biāo)志位的步驟,通過檢測該變量的狀態(tài)來判斷是否重新讀取phy芯片的模式狀態(tài)寄存器,減少對千兆phy芯片的狀態(tài)寄存器的讀取次數(shù)。

      狀態(tài)變化標(biāo)志位的具體配置過程為:首先設(shè)置網(wǎng)絡(luò)速度狀態(tài)變化標(biāo)志變量,由此來記錄上次的網(wǎng)絡(luò)狀態(tài);通過檢測該變量的狀態(tài)來判斷是否重新讀取phy的模式狀態(tài)寄存器而不是直接再次讀取phy的模式狀態(tài)寄存器;根據(jù)判斷的結(jié)果,進(jìn)行網(wǎng)絡(luò)狀態(tài)的配置或者保持原來的配置,并對狀態(tài)標(biāo)志變量根據(jù)當(dāng)前的網(wǎng)絡(luò)設(shè)置進(jìn)行重新賦值歸位。

      網(wǎng)絡(luò)速度狀態(tài)變化標(biāo)志變量分別為flag_1g、flag_100、flag_10,其中,

      flag_1g用于確定上次狀態(tài)是否為千兆速度,當(dāng)flag_1g=0時表示上次狀態(tài)不是千兆速度;

      flag_100用于確定上次狀態(tài)是否為百兆速度,當(dāng)flag_100=0時表示上次狀態(tài)不是百兆速度;

      flag_10用于確定上次狀態(tài)是否為十兆速度,當(dāng)flag_10=0時表示上次狀態(tài)不是十兆速度。

      根據(jù)獲取的狀態(tài)數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)速度狀態(tài)變化標(biāo)志變量的配置過程為,

      根據(jù)獲取的狀態(tài)數(shù)據(jù),首先查看網(wǎng)絡(luò)中是否為千兆速度且flag_1g=0,是則將以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行千兆設(shè)置,使flag_1g=1、flag_100=0、flag_10=0;

      當(dāng)不是千兆速度時,則查看網(wǎng)絡(luò)中是否為百兆速度且flag_100=0,是則將以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行百兆設(shè)置,使flag_1g=0、flag_100=1、flag_10=0;

      當(dāng)也不是百兆速度時,則查看網(wǎng)絡(luò)中是否為十兆速度且flag_10=0,是則將以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行十兆設(shè)置,使flag_1g=0、flag_100=0、flag_10=1。

      本發(fā)明的一種在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法,具有以下優(yōu)點:

      本發(fā)明的一種在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法,通過mdio內(nèi)核驅(qū)動模塊讀取千兆phy的模式狀態(tài)寄存器獲取速度狀態(tài),依次對以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行相應(yīng)配置,實現(xiàn)了網(wǎng)口自適應(yīng),節(jié)約系統(tǒng)資源,實現(xiàn)靈活部署,自動完成配置過程,配置效率高,實用性強(qiáng),適用范圍廣泛,易于推廣。

      附圖說明

      附圖1為本發(fā)明的實現(xiàn)流程圖。

      附圖2為本發(fā)明的實現(xiàn)框圖。

      具體實施方式

      下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步說明。

      如附圖1、圖2所示,一種在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法,對于在網(wǎng)絡(luò)加速模式下不支持網(wǎng)絡(luò)接口自適應(yīng)的powerpc若要實現(xiàn)不同網(wǎng)絡(luò)接口速度的切換,傳統(tǒng)的方法是通過手動配置以太網(wǎng)控制寄存器和mac配置寄存器實現(xiàn)的,而本方法可以實現(xiàn)網(wǎng)絡(luò)接口的自適應(yīng)。本方法通過mdio內(nèi)核驅(qū)動模塊讀取千兆phy的模式狀態(tài)寄存器獲取速度狀態(tài),依次對以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行相應(yīng)配置,實現(xiàn)了網(wǎng)口自適應(yīng)。

      本發(fā)明應(yīng)用于powerpc架構(gòu)的dpaa模式下,powerpc硬件架構(gòu)采用powerpc多核網(wǎng)絡(luò)處理器,配置千兆phy芯片,并采用dpaa模式,其實現(xiàn)過程為:

      首先獲取當(dāng)前網(wǎng)絡(luò)狀態(tài)數(shù)據(jù);

      然后將讀取到的網(wǎng)絡(luò)狀態(tài)數(shù)據(jù)配置到powerpc網(wǎng)絡(luò)接口下的相關(guān)寄存器中,實現(xiàn)接口模式的配置,最終實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)。

      其具體實現(xiàn)過程為:

      獲取狀態(tài)數(shù)據(jù):首先讀取千兆phy芯片的模式狀態(tài)寄存器,獲取當(dāng)前的網(wǎng)絡(luò)接口速度狀態(tài)以及網(wǎng)絡(luò)連接狀態(tài);

      配置寄存器:將讀取到的網(wǎng)絡(luò)接口速度以及連接狀態(tài)進(jìn)行配置以太網(wǎng)控制寄存器和mac配置寄存器,從而實現(xiàn)了接口模式的配置,最終可實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)。

      所述狀態(tài)數(shù)據(jù)通過mdio內(nèi)核驅(qū)動模塊讀取獲得,具體為:

      1)內(nèi)核模塊與用戶空間的網(wǎng)絡(luò)通信程序通過netlink機(jī)制進(jìn)行通信的;當(dāng)內(nèi)核模塊被加載后,運(yùn)行用戶空間程序,由用戶空間發(fā)起netlink會話,和內(nèi)核模塊進(jìn)行數(shù)據(jù)交換,該內(nèi)核模塊的數(shù)據(jù)交換是在多核處理器中的一個核中開辟一個進(jìn)程來實現(xiàn);

      2)通過mdio的內(nèi)核驅(qū)動模塊對千兆phy設(shè)備進(jìn)行打開并對其模式狀態(tài)寄存器進(jìn)行讀取。

      在通信程序中,根據(jù)網(wǎng)絡(luò)狀態(tài)對powerpc的dtsec(datapaththree-speedethernetcontroller)接口的以太網(wǎng)控制寄存器ecntrl的接口模式控制位和maccfg2的i/f模式位進(jìn)行相應(yīng)的配置。

      在上述技術(shù)中,maccfg2和ecntrl兩個寄存器非常重要,它們主要是用來是配置mac對phy的接口,且ecntrl用于復(fù)位、配置和初始化tsec,由于兩個寄存器都屬于現(xiàn)有技術(shù)內(nèi)容,故在此不再贅述。

      在配置寄存器的過程中,還包括配置狀態(tài)變化標(biāo)志位的步驟,由于網(wǎng)絡(luò)接口環(huán)境變量的隨機(jī)性,同時考慮到一直連續(xù)通過mdio讀取phy的模式狀態(tài)寄存器比較占用系統(tǒng)資源,本方法設(shè)立了狀態(tài)變化標(biāo)志變量,通過檢測該變量的狀態(tài)來判斷是否重新讀取phy的模式狀態(tài)寄存器,不直接再次讀取phy的模式狀態(tài)寄存器,有效節(jié)約了系統(tǒng)資源。

      狀態(tài)變化標(biāo)志位的具體配置過程為:首先設(shè)置網(wǎng)絡(luò)速度狀態(tài)變化標(biāo)志變量,由此來記錄上次的網(wǎng)絡(luò)狀態(tài);通過檢測該變量的狀態(tài)來判斷是否重新讀取phy的模式狀態(tài)寄存器而不是直接再次讀取phy的模式狀態(tài)寄存器;根據(jù)判斷的結(jié)果,進(jìn)行網(wǎng)絡(luò)狀態(tài)的配置或者保持原來的配置,并對狀態(tài)標(biāo)志變量根據(jù)當(dāng)前的網(wǎng)絡(luò)設(shè)置進(jìn)行重新賦值歸位。

      網(wǎng)絡(luò)速度狀態(tài)變化標(biāo)志變量分別為flag_1g、flag_100、flag_10,其中,

      flag_1g用于確定上次狀態(tài)是否為千兆速度,當(dāng)flag_1g=0時表示上次狀態(tài)不是千兆速度;

      flag_100用于確定上次狀態(tài)是否為百兆速度,當(dāng)flag_100=0時表示上次狀態(tài)不是百兆速度;

      flag_10用于確定上次狀態(tài)是否為十兆速度,當(dāng)flag_10=0時表示上次狀態(tài)不是十兆速度。

      根據(jù)獲取的狀態(tài)數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)速度狀態(tài)變化標(biāo)志變量的配置過程為,

      根據(jù)獲取的狀態(tài)數(shù)據(jù),首先查看網(wǎng)絡(luò)中是否為千兆速度且flag_1g=0,是則將以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行千兆設(shè)置,使flag_1g=1、flag_100=0、flag_10=0;

      當(dāng)不是千兆速度時,則查看網(wǎng)絡(luò)中是否為百兆速度且flag_100=0,是則將以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行百兆設(shè)置,使flag_1g=0、flag_100=1、flag_10=0;

      當(dāng)也不是百兆速度時,則查看網(wǎng)絡(luò)中是否為十兆速度且flag_10=0,是則將以太網(wǎng)控制寄存器和mac配置寄存器進(jìn)行十兆設(shè)置,使flag_1g=0、flag_100=0、flag_10=1。

      上述具體實施方式僅是本發(fā)明的具體個案,本發(fā)明的專利保護(hù)范圍包括但不限于上述具體實施方式,任何符合本發(fā)明的一種在powerpcdpaa模式下實現(xiàn)網(wǎng)絡(luò)接口自適應(yīng)的方法的權(quán)利要求書的且任何所述技術(shù)領(lǐng)域的普通技術(shù)人員對其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護(hù)范圍。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1