[發(fā)明專利]一種交換機的數(shù)據(jù)包緩存的老化方法及裝置有效
| 申請?zhí)枺?/td> | 201711471380.7 | 申請日: | 2017-12-29 |
| 公開(公告)號: | CN108173784B | 公開(公告)日: | 2021-12-28 |
| 發(fā)明(設(shè)計)人: | 郭敏;謝海春;廖北平;蔣漢柏 | 申請(專利權(quán))人: | 湖南恒茂高科股份有限公司 |
| 主分類號: | H04L12/865 | 分類號: | H04L12/865;H04L12/863;H04L12/823;H04L12/879;H04L12/883 |
| 代理公司: | 深圳市千納專利代理有限公司 44218 | 代理人: | 何耀煌 |
| 地址: | 412200 湖南*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 交換機 數(shù)據(jù)包 緩存 老化 方法 裝置 | ||
本發(fā)明公開了一種交換機的數(shù)據(jù)包緩存的老化方法及裝置,該方法在每一個未發(fā)送報文隊列設(shè)置一個計數(shù)器,在調(diào)度周期開始后,將未發(fā)送報文隊列的計數(shù)器都加1;當未發(fā)送報文隊列在該調(diào)度周期內(nèi)有數(shù)據(jù)包進行發(fā)送時,將對應(yīng)的計數(shù)器清零;當未發(fā)送報文隊列在該調(diào)度周期內(nèi)沒有數(shù)據(jù)包進行發(fā)送時,按照老化配置文件表對未發(fā)送報文隊列的數(shù)據(jù)包進行老化。該裝置包括老化配置文件表和設(shè)置于未發(fā)送報文隊列頭部的計數(shù)器。本發(fā)明不僅能夠保障高優(yōu)先級的隊列傳輸,而且能夠使得低優(yōu)先級隊列及時進行數(shù)據(jù)包的老化,使得交換機內(nèi)存得到回收。
技術(shù)領(lǐng)域
本發(fā)明涉及交換機的報文緩存引擎領(lǐng)域,尤其涉及一種交換機的數(shù)據(jù)包緩存的老化方法及裝置。
背景技術(shù)
以太網(wǎng)數(shù)據(jù)的傳輸和交換速度制約了以太網(wǎng)的發(fā)展,需要更高性能的網(wǎng)絡(luò)設(shè)備提高網(wǎng)絡(luò)的速度,交換機作為重要的二層交換網(wǎng)絡(luò)設(shè)備,在網(wǎng)絡(luò)架構(gòu)中,它是信息中轉(zhuǎn)站,將從某個端口接收到的數(shù)據(jù),根據(jù)一定的規(guī)則,從其他端口轉(zhuǎn)發(fā)出去。其性能直接影響著所在網(wǎng)絡(luò)的整體網(wǎng)絡(luò)速度。高性能交換機的實現(xiàn)難度很大。
在數(shù)據(jù)包的中轉(zhuǎn)過程中,需要將網(wǎng)絡(luò)數(shù)據(jù)包,按優(yōu)先級存放進入數(shù)據(jù)包緩存引擎中,數(shù)據(jù)包緩存引擎包含多個數(shù)據(jù)包緩存隊列,當前現(xiàn)有的技術(shù)方案,針對某一個高優(yōu)先級的隊列長期有包,并且處于不停的交換邏輯(接收和發(fā)送)時,低優(yōu)先級的隊列無法進行交換邏輯,會導(dǎo)致低優(yōu)先級隊列越來越長,最終占用整個交換機的內(nèi)存。
以下詳細說明:
報文緩存引擎是交換機報文處理引擎的重要組成部分。交換機在進行數(shù)據(jù)轉(zhuǎn)發(fā)的過程中,需要將數(shù)據(jù)包接收到內(nèi)存,然后進行解析,根據(jù)一定的策略進行數(shù)據(jù)填充、修改、復(fù)制和轉(zhuǎn)發(fā)。報文緩存引擎就是進行數(shù)據(jù)緩存的功能模塊,有如下幾個功能特性:
(1)內(nèi)存管理:對交換機的內(nèi)存進行集中管理;
(2)空閑內(nèi)存列表:維護交換的空閑內(nèi)存列表,使得能夠快速的得到空閑內(nèi)存;
(3)報文隊列管理:對收到未轉(zhuǎn)發(fā)的報文進行隊列管理;
(4)內(nèi)存回收:對已經(jīng)發(fā)送的報文,進行內(nèi)存回收,放入空閑內(nèi)存。
目前交換機的報文緩存引擎的數(shù)據(jù)緩存機制如下:
如圖1所示,交換機報文緩存引擎將整體的交換機內(nèi)存分為三個部分,分別為數(shù)據(jù)包緩存數(shù)據(jù)包緩存塊管理、空閑內(nèi)存鏈表和未發(fā)送報文隊列。
Ⅰ、數(shù)據(jù)包緩存數(shù)據(jù)包緩存塊管理:
一般來說,交換機將整個數(shù)據(jù)包緩存拆分為N個固定長度的數(shù)據(jù)包緩存塊進行管理,根據(jù)包的數(shù)據(jù)大小,一個包可以占用一個或者多個數(shù)據(jù)包緩存塊,每個數(shù)據(jù)包緩存塊使用地址的起始位置作為訪問數(shù)據(jù)包緩存塊的索引,即數(shù)據(jù)包緩存塊的數(shù)據(jù)包緩存索引。N個數(shù)據(jù)包緩存塊分別對應(yīng)數(shù)據(jù)包緩存索引0~數(shù)據(jù)包緩存索引N,如圖2所示.
數(shù)據(jù)包緩存塊被使用之后,直到數(shù)據(jù)報文被轉(zhuǎn)發(fā),或者丟棄,不能被第二個數(shù)據(jù)報文使用,為了在新的數(shù)據(jù)報文到達時能夠快速找到可用的空閑的數(shù)據(jù)包緩存塊,交換機使用空閑內(nèi)存鏈表來存放所有的未使用的數(shù)據(jù)包緩存塊。
Ⅱ、空閑內(nèi)存鏈表(FreeList):
在交換機系統(tǒng)初始化階段,交換機報文緩存引擎將所有的數(shù)據(jù)包緩存塊放入空閑內(nèi)存鏈表,得到一個有序且長度為N的鏈表,如圖3所示。
新的數(shù)據(jù)包到達交換機時,報文緩存引擎從空閑內(nèi)存鏈表的表頭取出1個或者多個數(shù)據(jù)包緩存塊,供數(shù)據(jù)包進行存放。當數(shù)據(jù)包完成發(fā)送以后,對應(yīng)的數(shù)據(jù)包緩存塊的內(nèi)存將會釋放,此時將釋放的內(nèi)存放入空閑內(nèi)存鏈表的隊列的尾部。當空閑內(nèi)存鏈表為空的時候,表示此時交換機沒有可用的空閑數(shù)據(jù)包緩存塊可以使用,新收到的數(shù)據(jù)報文因為無法緩存,會被直接丟棄。
空閑內(nèi)存鏈表有一個頭指針(Header PTR)來指向這個隊列(Queue)和第一個包的Queue link list內(nèi)存,如圖4所示。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于湖南恒茂高科股份有限公司,未經(jīng)湖南恒茂高科股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711471380.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種消息處理方法和系統(tǒng)
- 下一篇:一種帶寬分配方法及終端
- 通過冗余提高數(shù)據(jù)傳輸速度的方法
- 數(shù)據(jù)包調(diào)度方法和裝置
- 一種數(shù)據(jù)包的轉(zhuǎn)發(fā)方法和設(shè)備
- 網(wǎng)絡(luò)通信主體確認方法及系統(tǒng)
- 一種轉(zhuǎn)發(fā)數(shù)據(jù)包的方法、裝置和路由設(shè)備
- 一種數(shù)據(jù)報文接收方法及裝置
- 一種降低語音丟包統(tǒng)計量的方法及基站
- 數(shù)據(jù)包的處理方法、裝置、電子設(shè)備及存儲介質(zhì)
- 一種數(shù)據(jù)包處理方法、裝置及電子設(shè)備和存儲介質(zhì)
- 一種數(shù)據(jù)傳輸方法、裝置、設(shè)備及存儲介質(zhì)





