[發(fā)明專利]一種網(wǎng)絡(luò)收包模式自動調(diào)節(jié)方法有效
| 申請?zhí)枺?/td> | 202010361721.0 | 申請日: | 2020-04-30 |
| 公開(公告)號: | CN111580949B | 公開(公告)日: | 2023-08-22 |
| 發(fā)明(設(shè)計(jì))人: | 劉佳;范淵;吳永越;鄭學(xué)新;劉韜 | 申請(專利權(quán))人: | 成都安恒信息技術(shù)有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48;G06F9/50 |
| 代理公司: | 成都君合集專利代理事務(wù)所(普通合伙) 51228 | 代理人: | 尹新路 |
| 地址: | 610000 四川省成都市自由貿(mào)易試驗(yàn)區(qū)成*** | 國省代碼: | 四川;51 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 網(wǎng)絡(luò) 模式 自動 調(diào)節(jié) 方法 | ||
本發(fā)明提出了一種實(shí)現(xiàn)網(wǎng)絡(luò)收包模式自動調(diào)節(jié)的方法。首先,對軟件接收處理網(wǎng)絡(luò)報(bào)文的模式劃分為全中斷,中斷批處理,間隔輪詢,忙等輪詢四種收包模式;然后,設(shè)計(jì)一個(gè)網(wǎng)絡(luò)收包調(diào)度程序,根據(jù)收包隊(duì)列的讀寫統(tǒng)計(jì)計(jì)算出當(dāng)前的網(wǎng)絡(luò)負(fù)載情況,并根據(jù)網(wǎng)絡(luò)負(fù)載情況調(diào)節(jié)收包模式。本方案可以通過收包模式的自動調(diào)節(jié)取得網(wǎng)絡(luò)IO處理性能和CPU利用率之間的較好平衡。
技術(shù)領(lǐng)域
本發(fā)明屬于計(jì)算機(jī)程序運(yùn)行領(lǐng)域,具體地說,涉及一種網(wǎng)絡(luò)收包模式自動調(diào)節(jié)方法。
背景技術(shù)
隨著通用處理器性能的提升,云計(jì)算技術(shù)的興起,越來越多的網(wǎng)絡(luò)設(shè)備逐步轉(zhuǎn)向通用處理器軟件實(shí)現(xiàn)。在帶來靈活性和低成本的同時(shí),基于內(nèi)核中斷的軟件收包處理方式逐漸成為性能瓶頸。究其原因,當(dāng)網(wǎng)絡(luò)設(shè)備收到大量網(wǎng)絡(luò)報(bào)文時(shí),中斷會頻繁發(fā)生,頻繁打斷報(bào)文處理邏輯的執(zhí)行,使得大量CPU處理時(shí)間消耗在上下文切換上。
為了解決中斷收包性能較低的問題,出現(xiàn)了一些基于忙等輪詢模式的高性能網(wǎng)絡(luò)解決方案,例如PF_RING和DPDK。忙等輪詢模式避免了頻繁中斷引起的CPU開銷,在網(wǎng)絡(luò)負(fù)載很高時(shí),使CPU獲得更高的網(wǎng)絡(luò)報(bào)文處理能力。但是,輪詢模式也存在問題,在網(wǎng)絡(luò)負(fù)載不高時(shí),忙等輪詢程序仍會持續(xù)占用CPU,持續(xù)訪問空的收包隊(duì)列,CPU不能處理其他計(jì)算任務(wù),造成整機(jī)性能下降,功耗上升。
有的技術(shù)方案試圖結(jié)合中斷和輪詢方式,以期獲得兩種模式的優(yōu)點(diǎn)。例如,Linux內(nèi)核的NAPI網(wǎng)絡(luò)驅(qū)動程序,允許在一次中斷后執(zhí)行多次輪詢收包,輪詢的次數(shù)和輪詢的時(shí)間間隔可配置。本文稱這種模式為中斷批處理模式。使用這種方式,可以通過輪詢次數(shù)和輪詢間隔的配置,適應(yīng)更廣的網(wǎng)絡(luò)負(fù)載場景。但是,中斷批處理模式仍缺少一種根據(jù)負(fù)載自動調(diào)整輪詢間隔和次數(shù)的機(jī)制,導(dǎo)致其輪詢調(diào)整不夠及時(shí),不能獲得最好的CPU和網(wǎng)絡(luò)性能平衡。網(wǎng)絡(luò)設(shè)備的收包負(fù)載情況會隨時(shí)間發(fā)生變化,而目前的網(wǎng)絡(luò)設(shè)備軟件收包方案,收包模式不夠靈活,在網(wǎng)絡(luò)負(fù)載變化時(shí)不能及時(shí)調(diào)整收包模式,導(dǎo)致網(wǎng)絡(luò)IO性能不足或者CPU利用率不高。例如,網(wǎng)絡(luò)負(fù)載很低時(shí),使用中斷收包模式可以避免輪詢空隊(duì)列帶來的CPU空耗,而使用輪詢忙等方式就會造成CPU的利用率降低;網(wǎng)絡(luò)負(fù)載很高時(shí),輪詢忙等收包模式可以避免頻繁發(fā)生CPU中斷帶來的上下文切換開銷,獲得最高網(wǎng)絡(luò)處理性能,而中斷收包模式會造成CPU被空耗在中斷上下文的切換上,網(wǎng)絡(luò)性能下降。
術(shù)語介紹:
中斷:中斷是指計(jì)算機(jī)運(yùn)行過程中,出現(xiàn)某些意外情況需主機(jī)干預(yù)時(shí),機(jī)器能自動停止正在運(yùn)行的程序并轉(zhuǎn)入處理新情況的程序,處理完畢后又返回原被暫停的程序繼續(xù)運(yùn)行
輪詢:由CPU定時(shí)發(fā)出詢問,依序詢問每一個(gè)對象是否需要其服務(wù),有即給予服務(wù),服務(wù)結(jié)束后再詢問下一個(gè)對象,不斷周而復(fù)始。
發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有技術(shù)不能很好地平衡網(wǎng)絡(luò)IO處理性能和CPU的利用率的問題,提出了一種網(wǎng)絡(luò)收包模式自動調(diào)節(jié)方法,通過劃分全中斷,中斷批處理,間隔輪詢,忙等輪詢四種收包模式,并設(shè)定一個(gè)收包調(diào)度程序,實(shí)現(xiàn)了網(wǎng)絡(luò)IO處理性能和CPU利用率之間的較好平衡。
本發(fā)明具體實(shí)現(xiàn)內(nèi)容如下:
本發(fā)明提出了一種網(wǎng)絡(luò)收包模式自動調(diào)節(jié)方法,根據(jù)收包處理線程的負(fù)載,也就是收包處理線程的收包處理速率,設(shè)定四種收包處理模式:完全中斷模式、中斷批處理模式、間隔輪詢模式、忙等輪詢模式;并設(shè)置收包調(diào)度程序同時(shí)對多個(gè)收包處理線程的模式進(jìn)行切換。
為了更好地實(shí)現(xiàn)本發(fā)明,進(jìn)一步地,給收包處理線程的四個(gè)模式分別設(shè)定處理負(fù)載的范圍;對于收包處理線程的模式切換,具體操作如下:
當(dāng)處于完全中斷模式的收包處理線程的負(fù)載超過完全中斷模式所設(shè)定的范圍時(shí),由收包調(diào)度程序?qū)⑹瞻幚砭€程的模式從完全中斷模式切換為中斷批處理模式;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于成都安恒信息技術(shù)有限公司,未經(jīng)成都安恒信息技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010361721.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 網(wǎng)絡(luò)和網(wǎng)絡(luò)終端
- 網(wǎng)絡(luò)DNA
- 網(wǎng)絡(luò)地址自適應(yīng)系統(tǒng)和方法及應(yīng)用系統(tǒng)和方法
- 網(wǎng)絡(luò)系統(tǒng)及網(wǎng)絡(luò)至網(wǎng)絡(luò)橋接器
- 一種電力線網(wǎng)絡(luò)中根節(jié)點(diǎn)網(wǎng)絡(luò)協(xié)調(diào)方法和系統(tǒng)
- 一種多網(wǎng)絡(luò)定位方法、存儲介質(zhì)及移動終端
- 網(wǎng)絡(luò)裝置、網(wǎng)絡(luò)系統(tǒng)、網(wǎng)絡(luò)方法以及網(wǎng)絡(luò)程序
- 從重復(fù)網(wǎng)絡(luò)地址自動恢復(fù)的方法、網(wǎng)絡(luò)設(shè)備及其存儲介質(zhì)
- 神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法、裝置及存儲介質(zhì)
- 網(wǎng)絡(luò)管理方法和裝置
- 調(diào)節(jié)板風(fēng)量調(diào)節(jié)裝置
- 調(diào)節(jié)腳及調(diào)節(jié)裝置
- 調(diào)節(jié)腳及調(diào)節(jié)裝置
- 配置文件的調(diào)節(jié)方法、調(diào)節(jié)裝置、調(diào)節(jié)系統(tǒng)以及記錄介質(zhì)
- 調(diào)節(jié)裝置、調(diào)節(jié)系統(tǒng)、調(diào)節(jié)方法和調(diào)節(jié)控制裝置
- 調(diào)節(jié)板及調(diào)節(jié)總成
- 調(diào)節(jié)機(jī)構(gòu)及調(diào)節(jié)系統(tǒng)
- 調(diào)節(jié)裝置和調(diào)節(jié)系統(tǒng)
- 調(diào)節(jié)裝置和調(diào)節(jié)系統(tǒng)
- 調(diào)節(jié)裝置及其調(diào)節(jié)方法





