本發(fā)明涉及計(jì)算機(jī)服務(wù)器技術(shù)領(lǐng)域,具體地說(shuō)是一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求裝置及方法。
背景技術(shù):
目前無(wú)論數(shù)據(jù)中心還是云服務(wù)器,網(wǎng)絡(luò)io部分必不可少,它是所有數(shù)據(jù)傳輸?shù)穆窂?。?duì)于這些應(yīng)用場(chǎng)景,每臺(tái)服務(wù)器上都有多塊網(wǎng)卡,然而處理網(wǎng)絡(luò)數(shù)據(jù)的cpu資源有限,如何充分利用這些資源是我們要解決的問(wèn)題,使有效的資源最大化利用,是業(yè)內(nèi)一大難題。
業(yè)界內(nèi)無(wú)論大型互聯(lián)網(wǎng)客戶還是小型企業(yè)級(jí)客戶,均選擇linux系統(tǒng)作為業(yè)務(wù)承載,是因?yàn)樗姆€(wěn)定性,當(dāng)前l(fā)inux系統(tǒng)通過(guò)平衡中斷程序的方式進(jìn)行cpu資源平衡分配。在多網(wǎng)卡存在的情況下,由于irqbalance的存在,會(huì)平均將cpu內(nèi)核分配給沒(méi)有網(wǎng)卡port,當(dāng)出現(xiàn)某個(gè)網(wǎng)絡(luò)端口a數(shù)據(jù)集中收發(fā)而其他網(wǎng)絡(luò)端口b沒(méi)有數(shù)據(jù)包收發(fā)的時(shí)候,cpu資源仍然被沒(méi)有數(shù)據(jù)流量的網(wǎng)絡(luò)端口b的中斷程序占用,從而導(dǎo)致cpu資源利用不充分的情況。
基于此,本發(fā)明提供一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求裝置及方法。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的技術(shù)任務(wù)是針對(duì)以上不足之處,提供一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求裝置及方法。
一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求裝置,包括,
監(jiān)控模塊,用于實(shí)時(shí)監(jiān)控網(wǎng)口數(shù)據(jù)流量狀態(tài),并將監(jiān)控信息發(fā)送給判斷模塊;
判斷模塊,根據(jù)接收到的監(jiān)控信息,判斷網(wǎng)口需要資源處理的數(shù)據(jù)流量;
分配模塊,選擇閑置網(wǎng)口的cpu資源,然后通過(guò)該cpu資源進(jìn)行網(wǎng)口的資源處理。
所述監(jiān)控模塊監(jiān)控的網(wǎng)口為服務(wù)器網(wǎng)口,該服務(wù)器包括機(jī)架服務(wù)器、刀片服務(wù)器和塔式服務(wù)器。
當(dāng)分配模塊選擇閑置網(wǎng)口的cpu資源時(shí),該閑置網(wǎng)口處于standby狀態(tài),即待機(jī)狀態(tài),以釋放出cpu資源來(lái)處理有數(shù)據(jù)傳輸需求的網(wǎng)口數(shù)據(jù)。
所述分配模塊通過(guò)cpu資源進(jìn)行網(wǎng)口的資源處理是指通過(guò)釋放的cpu資源處理網(wǎng)口的rx/tx中斷請(qǐng)求。
一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求方法,基于上述中斷請(qǐng)求裝置,其實(shí)現(xiàn)過(guò)程為:通過(guò)實(shí)時(shí)監(jiān)控各個(gè)網(wǎng)卡的網(wǎng)口網(wǎng)絡(luò)數(shù)據(jù)流量狀態(tài),實(shí)時(shí)分配cpu資源,即將閑置網(wǎng)口的cpu資源釋放來(lái)處理有數(shù)據(jù)傳輸?shù)木W(wǎng)口數(shù)據(jù)。
所述中斷請(qǐng)求裝置中,監(jiān)控模塊用于對(duì)各個(gè)網(wǎng)卡的網(wǎng)卡監(jiān)控,并由判斷模塊分析獲取網(wǎng)卡網(wǎng)絡(luò)流量狀態(tài),最后由分配模塊完成對(duì)cpu資源的分配。
被監(jiān)控的網(wǎng)口為服務(wù)器網(wǎng)口,該服務(wù)器包括機(jī)架服務(wù)器、刀片服務(wù)器和塔式服務(wù)器。
當(dāng)閑置網(wǎng)口的cpu資源釋放時(shí),該閑置網(wǎng)口處于standby狀態(tài),即待機(jī)狀態(tài),以釋放出cpu資源來(lái)處理有數(shù)據(jù)傳輸需求的網(wǎng)口數(shù)據(jù)。
通過(guò)cpu資源釋放來(lái)進(jìn)行網(wǎng)口的資源處理是指:通過(guò)釋放的cpu資源處理網(wǎng)口的rx/tx中斷請(qǐng)求。
本發(fā)明的一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求裝置及方法和現(xiàn)有技術(shù)相比,具有以下有益效果:
本發(fā)明的一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求裝置及方法,通過(guò)實(shí)時(shí)監(jiān)控各個(gè)網(wǎng)卡的網(wǎng)口網(wǎng)絡(luò)數(shù)據(jù)流量狀態(tài),實(shí)時(shí)合理的分配cpu資源,保證沒(méi)有數(shù)據(jù)流量的網(wǎng)口處于standby狀態(tài),釋放出cpu資源來(lái)處理有數(shù)據(jù)傳輸?shù)木W(wǎng)口數(shù)據(jù),本發(fā)明適用于目前所有l(wèi)inux服務(wù)器,具有良好的普及和推廣性,操作過(guò)程簡(jiǎn)潔、省時(shí),可以直接使用于各個(gè)平臺(tái),可以更科學(xué)、更有效的提升業(yè)務(wù)能力,實(shí)用性強(qiáng),適用范圍廣泛。
附圖說(shuō)明
附圖1為本發(fā)明裝置的結(jié)構(gòu)示意圖。
附圖2為本發(fā)明方法的實(shí)現(xiàn)流程圖。
具體實(shí)施方式
下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
如附圖1所示,一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求裝置,包括,
監(jiān)控模塊,用于實(shí)時(shí)監(jiān)控網(wǎng)口數(shù)據(jù)流量狀態(tài),并將監(jiān)控信息發(fā)送給判斷模塊;
判斷模塊,根據(jù)接收到的監(jiān)控信息,判斷網(wǎng)口需要資源處理的數(shù)據(jù)流量;
分配模塊,選擇閑置網(wǎng)口的cpu資源,然后通過(guò)該cpu資源進(jìn)行網(wǎng)口的資源處理。
所述監(jiān)控模塊監(jiān)控的網(wǎng)口為服務(wù)器網(wǎng)口,該服務(wù)器包括機(jī)架服務(wù)器、刀片服務(wù)器和塔式服務(wù)器。
當(dāng)分配模塊選擇閑置網(wǎng)口的cpu資源時(shí),該閑置網(wǎng)口處于standby狀態(tài),即待機(jī)狀態(tài),以釋放出cpu資源來(lái)處理有數(shù)據(jù)傳輸需求的網(wǎng)口數(shù)據(jù)。
所述分配模塊通過(guò)cpu資源進(jìn)行網(wǎng)口的資源處理是指通過(guò)釋放的cpu資源處理網(wǎng)口的rx/tx中斷請(qǐng)求。
如附圖2所示,一種給物理網(wǎng)卡分配cpu資源的中斷請(qǐng)求方法,基于上述中斷請(qǐng)求裝置,其實(shí)現(xiàn)過(guò)程為:通過(guò)實(shí)時(shí)監(jiān)控各個(gè)網(wǎng)卡的網(wǎng)口網(wǎng)絡(luò)數(shù)據(jù)流量狀態(tài),實(shí)時(shí)分配cpu資源,即將閑置網(wǎng)口的cpu資源釋放來(lái)處理有數(shù)據(jù)傳輸?shù)木W(wǎng)口數(shù)據(jù)。
所述中斷請(qǐng)求裝置中,監(jiān)控模塊用于對(duì)各個(gè)網(wǎng)卡的網(wǎng)卡監(jiān)控,并由判斷模塊分析獲取網(wǎng)卡網(wǎng)絡(luò)流量狀態(tài),最后由分配模塊完成對(duì)cpu資源的分配。
被監(jiān)控的網(wǎng)口為服務(wù)器網(wǎng)口,該服務(wù)器包括機(jī)架服務(wù)器、刀片服務(wù)器和塔式服務(wù)器。
當(dāng)閑置網(wǎng)口的cpu資源釋放時(shí),該閑置網(wǎng)口處于standby狀態(tài),即待機(jī)狀態(tài),以釋放出cpu資源來(lái)處理有數(shù)據(jù)傳輸需求的網(wǎng)口數(shù)據(jù)。
通過(guò)cpu資源釋放來(lái)進(jìn)行網(wǎng)口的資源處理是指:通過(guò)釋放的cpu資源處理網(wǎng)口的rx/tx中斷請(qǐng)求。
在現(xiàn)有技術(shù)中,linux內(nèi)核下軟件中斷的資源是有限的,內(nèi)核目前雖然只實(shí)現(xiàn)了10種類型的軟件中斷,但卻包括net_tx_softirq和net_rx_softirq。此方案通過(guò)監(jiān)控各個(gè)網(wǎng)絡(luò)端口數(shù)據(jù)流量情況,及時(shí)觸發(fā)網(wǎng)絡(luò)tx和rx的軟中斷,來(lái)讓cpu及時(shí)處理,保證cpu資源自動(dòng)合理的分配。
通過(guò)上面具體實(shí)施方式,所述技術(shù)領(lǐng)域的技術(shù)人員可容易的實(shí)現(xiàn)本發(fā)明。但是應(yīng)當(dāng)理解,本發(fā)明并不限于上述的具體實(shí)施方式。在公開(kāi)的實(shí)施方式的基礎(chǔ)上,所述技術(shù)領(lǐng)域的技術(shù)人員可任意組合不同的技術(shù)特征,從而實(shí)現(xiàn)不同的技術(shù)方案。
除說(shuō)明書(shū)所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。