一種調(diào)整cpu數(shù)據(jù)流的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實(shí)施例涉及無(wú)線(xiàn)網(wǎng)絡(luò)的技術(shù)領(lǐng)域,尤其涉及一種調(diào)整CPU數(shù)據(jù)流的方法及
目.Ο
【背景技術(shù)】
[0002]隨著4G無(wú)線(xiàn)網(wǎng)絡(luò)趨于穩(wěn)定和成熟,通過(guò)4G無(wú)線(xiàn)通信終端無(wú)線(xiàn)上網(wǎng)等無(wú)線(xiàn)網(wǎng)絡(luò)業(yè)務(wù)已經(jīng)極大普及。在有關(guān)等部門(mén)對(duì)無(wú)線(xiàn)網(wǎng)絡(luò)安全的要求,需要有一套全方位防護(hù)4G網(wǎng)絡(luò)的空口監(jiān)測(cè)設(shè)備。
[0003]移動(dòng)通信領(lǐng)域目前采用了類(lèi)似4G基站設(shè)備的方案設(shè)計(jì)4G信號(hào)監(jiān)測(cè)設(shè)備,但是由于對(duì)設(shè)備有低功耗低成本、個(gè)人攜帶等的要求,所以不能完全使用基站的設(shè)計(jì)方案,因此此類(lèi)設(shè)備通常會(huì)使用低功耗并且處理能力相對(duì)較低CPU和基帶數(shù)字信號(hào)處理等芯片。
[0004]在該類(lèi)設(shè)備中的CPU不只是系統(tǒng)管理的核心單元,還要處理來(lái)自多個(gè)基帶信號(hào)處理芯片的協(xié)議數(shù)據(jù),同時(shí)處理來(lái)自以太網(wǎng)的控制數(shù)據(jù)。但在CPU發(fā)展迅速的今天,人們往往忽視了 CPU的使用效率。當(dāng)前,4G通信業(yè)務(wù)數(shù)據(jù)大量提升,并且人機(jī)交互和芯片間交互的控制數(shù)據(jù)更加頻繁,就經(jīng)常會(huì)導(dǎo)致CPU不堪重負(fù),嚴(yán)重影響系統(tǒng)的運(yùn)行效率,甚至導(dǎo)致系統(tǒng)癱瘓。因此,對(duì)CPU的數(shù)據(jù)流進(jìn)行有效管理,保證系統(tǒng)的服務(wù)質(zhì)量,提高CPU的運(yùn)行能力就非常重要。
[0005]目前主要解決CPU處理數(shù)據(jù)的方法,是采用限制上送CPU的數(shù)據(jù)速率來(lái)實(shí)現(xiàn)對(duì)CPU的保護(hù),CPU通過(guò)選擇合適的隊(duì)列調(diào)度機(jī)制來(lái)收發(fā)數(shù)據(jù)。上述方法的缺陷很明顯,由于對(duì)CPU通信端口的限速值是固定的,會(huì)導(dǎo)致在CPU不“繁忙”時(shí),且通信端口有大量數(shù)據(jù)需要處理的時(shí)候,CPU端口上的有效數(shù)據(jù)被丟棄,且CPU沒(méi)有得到充分的利用。
【發(fā)明內(nèi)容】
[0006]本發(fā)明實(shí)施例提出一種調(diào)整CPU數(shù)據(jù)流的方法及裝置,旨在提高CPU的使用效率。
[0007]第一方面,一種調(diào)整CPU數(shù)據(jù)流的方法,所述方法包括:
[0008]獲取中央處理器CPU接收控制數(shù)據(jù)Rc的當(dāng)前控制數(shù)據(jù)Rc的速率;
[0009]根據(jù)所述CPU的當(dāng)前空閑率P確定數(shù)據(jù)流的控制數(shù)據(jù)取的速率的范圍;
[0010]確定所述當(dāng)前控制數(shù)據(jù)取的速率是否在所述數(shù)據(jù)流的控制數(shù)據(jù)取的速率的范圍內(nèi);
[0011]若確定所述當(dāng)前控制數(shù)據(jù)RC的速率不在所述數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍內(nèi),則根據(jù)所述數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍調(diào)整所述當(dāng)前控制數(shù)據(jù)說(shuō)的速率,以使得所述當(dāng)前控制數(shù)據(jù)RC的速率在所述數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍內(nèi)。
[0012]優(yōu)選地,所述獲取CPU接收控制數(shù)據(jù)RC的當(dāng)前控制數(shù)據(jù)說(shuō)的速率,包括:
[0013]根據(jù)所述CPU的當(dāng)前空閑率P和預(yù)設(shè)的空閑率的計(jì)算公式,獲取所述當(dāng)前控制數(shù)據(jù)RC的速率。
[0014]優(yōu)選地,所述獲取CPU接收數(shù)據(jù)的當(dāng)前控制數(shù)據(jù)RC的速率之前,還包括:
[0015]基于至少兩個(gè)設(shè)定周期內(nèi)的協(xié)議數(shù)據(jù)RP的速率、控制數(shù)據(jù)RC的速率和CPU的空閑率,確定空閑率計(jì)算公式中的系數(shù);
[0016]其中,所述計(jì)算公式為以數(shù)據(jù)速率為自變量、以空閑率為因變量的高階多項(xiàng)式,所述數(shù)據(jù)速率包括所述CHJ接收協(xié)議數(shù)據(jù)RP的速率和控制數(shù)據(jù)RC的速率;
[0017]所述獲取中央處理器CPU接收控制數(shù)據(jù)Rc的當(dāng)前控制數(shù)據(jù)Rc的速率,包括:
[0018]獲取所述RP的速率;
[0019]根據(jù)所述高階多項(xiàng)式、所述當(dāng)前空閑率P和所述協(xié)議數(shù)據(jù)RP的速率,獲取所述當(dāng)前控制數(shù)據(jù)Rc的速率。
[°02°] 優(yōu)選地,所述空閑率的計(jì)算公式為P = aXR2+b XR+c,所述a、b和c為二項(xiàng)式系數(shù),所述R為所述數(shù)據(jù)速率,R=Rp+Rc,R的單位為比特每秒bps。
[0021 ]優(yōu)選地,所述根據(jù)所述CHJ的當(dāng)前空閑率P確定數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍,包括:
[0022]若所述當(dāng)前空閑率P小于預(yù)設(shè)最大空閑率PH且大于預(yù)設(shè)最小空閑率PL,則確定所述CPU處于穩(wěn)定階段,與所述穩(wěn)定階段對(duì)應(yīng)的控制數(shù)據(jù)RC的速率范圍為小于等于正常工作時(shí)的端口速率RM;
[0023]若所述當(dāng)前空閑率P大于預(yù)設(shè)最大空閑率PH,則確定所述CPU處于高空閑階段,與所述高空閑階段對(duì)應(yīng)的控制數(shù)據(jù)Rc的速率范圍為無(wú)窮大;
[0024]若所述當(dāng)前空閑率P小于預(yù)設(shè)最小空閑率PL,則確定所述CPU處于低空閑階段,與所述低空閑階段對(duì)應(yīng)的控制數(shù)據(jù)RC的速率范圍為小于等于端口速率的限制速率Rl。
[0025]優(yōu)選地,所述根據(jù)所述的當(dāng)前空閑率P確定數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍,包括:
[0026]根據(jù)所述CPU的當(dāng)前空閑率P確定所述數(shù)據(jù)流的控制數(shù)據(jù)RC的優(yōu)先級(jí);
[0027]根據(jù)所述控制數(shù)據(jù)RC的優(yōu)先級(jí)確定所述數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍。
[0028]優(yōu)選地,所述根據(jù)所述的當(dāng)前空閑率P確定所述數(shù)據(jù)流的控制數(shù)據(jù)RC的優(yōu)先級(jí),包括:
[0029]在設(shè)置接收協(xié)議數(shù)據(jù)RP為高優(yōu)先級(jí)的情況下:
[0030]當(dāng)所述CPU運(yùn)行在高空閑階段時(shí),所述控制數(shù)據(jù)RC的優(yōu)先級(jí)為高優(yōu)先級(jí);
[0031]當(dāng)所述CPU運(yùn)行在穩(wěn)定階段,所述控制數(shù)據(jù)RC的優(yōu)先級(jí)為中優(yōu)先級(jí);
[0032]當(dāng)所述CPU運(yùn)行在低空閑階段,所述控制數(shù)據(jù)RC的優(yōu)先級(jí)為低優(yōu)先級(jí);
[0033]其中,所述穩(wěn)定階段為當(dāng)前空閑率P小于預(yù)設(shè)最大空閑率PH且大于預(yù)設(shè)最小空閑率Pl的階段;所述高空閑階段為所述當(dāng)前空閑率P大于預(yù)設(shè)最大空閑率Ph;所述低空閑階段為所述當(dāng)前空閑率P小于預(yù)設(shè)最小空閑率Pl。
[0034]優(yōu)選地,所述獲取CPU接收控制數(shù)據(jù)RC的當(dāng)前控制數(shù)據(jù)RC的速率之前,還包括:
[0035]檢測(cè)是否達(dá)到預(yù)設(shè)的調(diào)整所述CPU數(shù)據(jù)流的時(shí)間;
[0036]若是,則執(zhí)行獲取CPU接收數(shù)據(jù)的當(dāng)前控制數(shù)據(jù)RC的速率的步驟;
[0037]若檢測(cè)未達(dá)到預(yù)設(shè)的調(diào)整所述CPU數(shù)據(jù)流的時(shí)間,則返回執(zhí)行檢測(cè)是否達(dá)到預(yù)設(shè)的調(diào)整所述CPU數(shù)據(jù)流的時(shí)間的步驟。
[0038]優(yōu)選地,所述方法還包括:
[0039]若確定所述當(dāng)前控制數(shù)據(jù)RC的速率在所述數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍內(nèi),則返回執(zhí)行獲取CPU接收數(shù)據(jù)的當(dāng)前控制數(shù)據(jù)RC的速率的步驟。
[0040]第二方面,一種調(diào)整CPU數(shù)據(jù)流的裝置,所述裝置包括:
[0041 ]獲取模塊,用于獲取中央處理器CPU接收控制數(shù)據(jù)RC的當(dāng)前控制數(shù)據(jù)RC的速率;
[0042]第一確定模塊,用于根據(jù)所述CPU的當(dāng)前空閑率P確定數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍;
[0043]第二確定模塊,用于確定所述當(dāng)前控制數(shù)據(jù)辦的速率是否在所述數(shù)據(jù)流的控制數(shù)據(jù)Rc的速率的范圍內(nèi);
[0044]調(diào)整模塊,用于若確定所述當(dāng)前控制數(shù)據(jù)RC的速率不在所述數(shù)據(jù)流的控制數(shù)據(jù)Rc的速率的范圍內(nèi),則根據(jù)所述數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍調(diào)整所述當(dāng)前控制數(shù)據(jù)Rc的速率,以使得所述當(dāng)前控制數(shù)據(jù)RC的速率在所述數(shù)據(jù)流的控制數(shù)據(jù)RC的速率的范圍內(nèi)。
[0045]優(yōu)選地,所述獲取模塊,具體用于:
[0046]根據(jù)所述CPU的當(dāng)前空閑率P和預(yù)設(shè)的空閑率的計(jì)算公式,獲取所述當(dāng)前控制數(shù)據(jù)Rc的速率。
[0047]優(yōu)選地,所述裝置還包括:
[0048]第三確定模塊,用于獲取CPU接收數(shù)據(jù)的當(dāng)前控制數(shù)據(jù)RC的速率之前,基于至少兩個(gè)設(shè)定周期內(nèi)的協(xié)議數(shù)據(jù)Rp的速率、控制數(shù)據(jù)Rc的速率和CPU的空閑率,確定空閑率計(jì)算公式中的系數(shù);
[0049]其中,所述計(jì)算公式為以數(shù)據(jù)速率為自變量、以空閑率為因變量的高階多項(xiàng)式,所述數(shù)據(jù)速率包括所述CHJ接收協(xié)議數(shù)據(jù)RP的速率和控制數(shù)據(jù)RC的速率;
[0050]所述獲取模塊,具體用于:
[0051 ] 獲取所述RP的速率;
[0052]根據(jù)所述高階多項(xiàng)式、所述當(dāng)前空閑率P、所述協(xié)議數(shù)據(jù)RP的速率,獲取所述當(dāng)前控制數(shù)據(jù)Rc的速率。
[°°53] 優(yōu)選地,所述空閑率的計(jì)算公式為P = aXR2+b XR+c,所述a、b和c為二項(xiàng)式系數(shù),所述R為所述數(shù)據(jù)速率,R=Rp+Rc,所述R的單位為比特每秒bps。
[0054]優(yōu)選地,所述第一確定模塊,包括:
[0055]第一確定單元,用于若所述當(dāng)前空閑率P小于預(yù)設(shè)最大空閑率PH且大于預(yù)設(shè)最小空閑率PL,則確定所述CPU處于穩(wěn)定階段,與所述穩(wěn)定階段對(duì)應(yīng)的控制數(shù)據(jù)RC的速率范圍為小于等于正常工作時(shí)的端口速率Rm;
[0056]第二確定單元,用于若所述當(dāng)前空閑率P大于預(yù)設(shè)最大空閑率PH,則確定所述CPU處于高空閑階段,與所述高空閑階段對(duì)應(yīng)的控制數(shù)據(jù)Rc的速率范圍為無(wú)窮大;
[0057]第三確定單元,用于若所述當(dāng)前空閑率P小于預(yù)設(shè)最小空閑率PL,則確定所述CPU處于低空閑階段,與所述低空閑階段對(duì)應(yīng)的控制數(shù)據(jù)Rc的速率范圍為小于等于端口速率的限制速率Rl。
[0058]優(yōu)選地,所述第一確定模塊,包括:
[0059]第四確