CN105743814A - 一种网络芯片内存管理方法 - Google Patents
一种网络芯片内存管理方法 Download PDFInfo
- Publication number
- CN105743814A CN105743814A CN201610045232.8A CN201610045232A CN105743814A CN 105743814 A CN105743814 A CN 105743814A CN 201610045232 A CN201610045232 A CN 201610045232A CN 105743814 A CN105743814 A CN 105743814A
- Authority
- CN
- China
- Prior art keywords
- message
- priority
- data
- threshold value
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/23—Bit dropping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明揭示了一种网络芯片内存管理方法,包括:当网络芯片的数据接收模块收到一个报文时,通过解析报文的关键字段将其映射到相应的优先级上;根据映射到的优先级查到相应的存储阈值,并将所述存储阈值与存储器内统计内存使用情况的计数器的值进行对比,根据对比结果选择丢弃或存储当前报文;若存储器内计数器的值超过置PAUSE帧阈值,则在数据接收模块中产生PAUSE帧通知所有数据通道的报文发送端暂停发送数据。本发明对不同优先级的报文进行差异化的内存管理,并对所有数据通道进行流控,保证网络中高优先级报文不会因为网络芯片超带宽而发生丢包,增强网络管理能力。
Description
技术领域
本发明涉及网络芯片内存管理技术领域,尤其是涉及一种对不同优先级的报文进行差异化的内存管理的网络芯片内存管理方法。
背景技术
在高密度网络芯片中,如图1所示,多通道的数据汇聚到数据接收模块并调度至芯片内部进行处理。随着外部输入带宽的增加,会出现数据接收模块输出带宽小于输入带宽的现象,称之为网络芯片超带宽。在网络芯片超带宽时,数据接收模块内部的存储器入口流量大于出口流量,引起存储器被占满,进而导致新的数据因为没有存储器而被丢弃。
流控是指当接收端预判由于拥塞将无法接受报文时,为了防止丢包,需要通知报文的发送端一段时间内停止发送报文。接收端通过发送一种特殊的数据帧来通知发送端,停止发送报文,这种特殊的数据帧称为暂停(PAUSE)帧。如果数据报文的接收端在发送PAUSE帧后可以处理数据报文,则再发送一个等待时间为0的PAUSE帧通知数据发送端开始发送数据。
传统的网络芯片数据接收模块未对网络中不同优先级的数据进行差异化管理,也未将上述流控技术应用在因网络超带宽而产生拥塞的数据接收模块中,因而导致在网络芯片超带宽时,报文会在数据接收模块中被概率性的丢弃,不利于网络芯片对不同类型报文的服务和管理。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种网络芯片内存管理方法,通过对不同优先级的报文进行差异化的内存管理,并对所有数据通道进行流控,防止高优先级报文因为网络超带宽而被丢弃。
为实现上述目的,本发明提出如下技术方案:一种网络芯片内存管理方法,包括:
当网络芯片的数据接收模块收到一个报文时,通过解析报文的关键字段将其映射到相应的优先级上;
根据映射到的优先级查到相应的存储阈值,并将所述存储阈值与存储器内统计内存使用情况的计数器的值进行对比,根据对比结果选择丢弃或存储当前报文;
若存储器内计数器的值超过置PAUSE帧阈值,则在数据接收模块中产生PAUSE帧通知所有数据通道的报文发送端暂停发送数据。
优选地,当数据接收模块收到一个报文时,根据报文的关键字段及通道属性给报文标识优先级,进而得到该报文的存储阈值。
优选地,根据报文的关键字段及通道属性给报文标识优先级的过程包括:根据报文不同的关键字段将报文标识为不同的优先级,选择出等级最高的优先级作为所述报文的优先级。
优选地,将报文按优先级从高到低依次划分为最高优先级、高优先级、中优先级和低优先级四个优先级,不同的优先级对应不同的存储阈值。
优选地,所述数据接收模块的存储器用一个全局的计数器来统计其总的使用情况。
优选地,当有数据写进存储器时,对应计数器加1;当数据从存储器中调度出来时,对应计数器减1。
优选地,若计数器的值大于存储阈值,则丢弃当前的报文;若计数器的值小于存储阈值,则存储当前的报文。
优选地,若存储器内计数器的值小于置PAUSE帧阈值,且已发送过PAUSE帧,则数据接收模块发送一个等待时间为0的PAUSE帧通知数据发送端开始发送数据。
本发明的有益效果是:本发明通过解析报文的关键字段,将其映射到相应的优先级上,对不同优先级的报文进行差异化的内存管理,并对所有数据通道进行流控,保证网络中高优先级报文不会因为网络芯片超带宽而发生丢包,增强网络管理能力。
附图说明
图1是现有网络芯片结构示意图;
图2是本发明数据接收模块中内存管理的原理示意图;
图3是本发明网络芯片内存管理方法的流程示意图。
具体实施方式
下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。
如图3所示,本发明实施例所揭示的一种网络芯片内存管理方法,适用于网络芯片数据接收模块,包括以下步骤:
步骤1,当数据接收模块收到一个报文时,通过解析报文的关键字段将其映射到相应的优先级上。
具体地,本实施例中,当数据接收模块收到一个报文时,根据网络应用的需要将报文按照配置(如关键字段及通道属性)标识为不同的优先级,进而得到该报文的存储阈值。
结合图2所示,本实施例中,数据接收模块中的内存空间分为四个优先级:
a、最高优先级,该优先级只支持bpdu(bridgeprotocoldataunit,网桥协议数据单元)和pause帧存储;
b、高优先级,该优先级支持高优先级通道和特定的数据字段存储;
c、中优先级,该优先级支持特定的数据字段存储;
d、低优先级,支持除了上述优先级报文外所有的普通报文存储。
不同的优先级对应不同的存储阈值,存储阈值是每个优先级的存储器所设定的能最大化存储的数据量。
例如:
解析报文的目的MAC地址(macda)字段,如果满足bpdu和pause帧条件,会被标识为最高优先级;
解析报文IEEE802.1pVLAN字段,如果满足配置则根据VlanCOS将报文标识为高优先级;
解析报文IPDSCP字段,如果满足配置则根据DSCP将报文标识为高优先级;
解析通道优先级属性,根据配置将该通道所有报文标识为中优先级;
最后,根据以上四种情况,选择出等级最高的优先级做为该报文的优先级。
步骤2,根据映射到的优先级查到相应的存储阈值,并将存储阈值与存储器内统计内存使用情况的计数器的值进行对比,根据对比结果选择丢弃或存储当前报文。
具体地,如上述实施例中,根据得到的报文的优先级查找到相应的存储阈值。
本发明中,用一个全局的计数器来统计数据接收模块的存储器总的使用情况,当有数据写进存储器时,对应计数器加1;当数据从存储器中调度出来时,对应计数器减1。
将查找到的存储阈值与相应优先级存储器内的计数器的值进行对比,若计数器的值大于存储阈值,则丢弃当前的报文;若计数器的值小于存储阈值,则存储当前的报文。
但是本发明对于优先级较高的报文,如这里标识为最高优先级的报文,其在计数器的值超过存储阈值时,不能简单丢弃,而是采用相应的流控技术对其进行管理,防止其丢包。具体地,对于标识为最高优先级的报文,若其相应的存储器内计数器的值超过其存储阈值,则数据接收模块产生pause帧通知数据发送端暂停发送数据,当计数器的值小于其存储阈值且已发送过pause帧,则数据接收模块发送一个等待时间为0的pause帧通知数据发送端开始发送数据。这样,可以保证网络中高优先级报文不会因为网络芯片超带宽而发生丢包,提高网络的管理能力。
本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。
Claims (8)
1.一种网络芯片内存管理方法,其特征在于,包括:
当网络芯片的数据接收模块收到一个报文时,通过解析报文的关键字段将其映射到相应的优先级上;
根据映射到的优先级查到相应的存储阈值,并将所述存储阈值与存储器内统计内存使用情况的计数器的值进行对比,根据对比结果选择丢弃或存储当前报文;
若存储器内计数器的值超过置PAUSE帧阈值,则在数据接收模块中产生PAUSE帧通知所有数据通道的报文发送端暂停发送数据。
2.根据权利要求1所述的方法,其特征在于,当数据接收模块收到一个报文时,根据报文的关键字段及通道属性给报文标识优先级,进而得到该报文的存储阈值。
3.根据权利要求2所述的方法,其特征在于,根据报文的关键字段及通道属性给报文标识优先级的过程包括:根据报文不同的关键字段将报文标识为不同的优先级,选择出等级最高的优先级作为所述报文的优先级。
4.根据权利要求1~3任意一项所述的方法,其特征在于,将报文按优先级从高到低依次划分为最高优先级、高优先级、中优先级和低优先级四个优先级,不同的优先级对应不同的存储阈值。
5.根据权利要求1所述的方法,其特征在于,所述数据接收模块的存储器用一个全局的计数器来统计其总的使用情况。
6.根据权利要求5所述的方法,其特征在于,当有数据写进存储器时,对应计数器加1;当数据从存储器中调度出来时,对应计数器减1。
7.根据权利要求1所述的方法,其特征在于,若计数器的值大于存储阈值,则丢弃当前的报文;若计数器的值小于存储阈值,则存储当前的报文。
8.根据权利要求1所述的方法,其特征在于,若存储器内计数器的值小于置PAUSE帧阈值,且已发送过PAUSE帧,则数据接收模块发送一个等待时间为0的PAUSE帧通知数据发送端开始发送数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610045232.8A CN105743814A (zh) | 2016-01-22 | 2016-01-22 | 一种网络芯片内存管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610045232.8A CN105743814A (zh) | 2016-01-22 | 2016-01-22 | 一种网络芯片内存管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105743814A true CN105743814A (zh) | 2016-07-06 |
Family
ID=56246445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610045232.8A Withdrawn CN105743814A (zh) | 2016-01-22 | 2016-01-22 | 一种网络芯片内存管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105743814A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114415969A (zh) * | 2022-02-09 | 2022-04-29 | 杭州云合智网技术有限公司 | 交换芯片报文动态存储方法 |
WO2022252085A1 (zh) * | 2021-05-31 | 2022-12-08 | 华为技术有限公司 | 计算机***及总线流量控制方法 |
US20240143169A1 (en) * | 2019-11-04 | 2024-05-02 | Suzhou Centec Communications Co., Ltd. | Method for Improving Message Storage Efficiency of Network Chip, Device, and Storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047615A (zh) * | 2006-05-14 | 2007-10-03 | 华为技术有限公司 | 一种以太网数据流量控制方法 |
CN101800699A (zh) * | 2010-02-09 | 2010-08-11 | 上海华为技术有限公司 | 一种丢弃报文的方法及装置 |
CN104378308A (zh) * | 2014-11-19 | 2015-02-25 | 盛科网络(苏州)有限公司 | 报文发送速率检测方法及装置 |
-
2016
- 2016-01-22 CN CN201610045232.8A patent/CN105743814A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047615A (zh) * | 2006-05-14 | 2007-10-03 | 华为技术有限公司 | 一种以太网数据流量控制方法 |
CN101800699A (zh) * | 2010-02-09 | 2010-08-11 | 上海华为技术有限公司 | 一种丢弃报文的方法及装置 |
CN104378308A (zh) * | 2014-11-19 | 2015-02-25 | 盛科网络(苏州)有限公司 | 报文发送速率检测方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240143169A1 (en) * | 2019-11-04 | 2024-05-02 | Suzhou Centec Communications Co., Ltd. | Method for Improving Message Storage Efficiency of Network Chip, Device, and Storage medium |
WO2022252085A1 (zh) * | 2021-05-31 | 2022-12-08 | 华为技术有限公司 | 计算机***及总线流量控制方法 |
CN114415969A (zh) * | 2022-02-09 | 2022-04-29 | 杭州云合智网技术有限公司 | 交换芯片报文动态存储方法 |
CN114415969B (zh) * | 2022-02-09 | 2023-09-29 | 杭州云合智网技术有限公司 | 交换芯片报文动态存储方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9467522B2 (en) | Ingress based headroom buffering for switch architectures | |
US20120320751A1 (en) | Method and system for communicating data packets | |
US20130250762A1 (en) | Method and apparatus for Lossless Behavior For Multiple Ports Sharing a Buffer Pool | |
EP2530889B1 (en) | Method and Apparatus for Controlling Stream to Receive Data in Parallel | |
WO2018108093A1 (zh) | 拥塞控制方法及装置和计算机存储介质 | |
US6636509B1 (en) | Hardware TOS remapping based on source autonomous system identifier | |
CN105743814A (zh) | 一种网络芯片内存管理方法 | |
US8787160B2 (en) | Method, apparatus, and system for judging path congestion | |
US10050896B2 (en) | Management of an over-subscribed shared buffer | |
CN106954101B (zh) | 一种低延迟实时视频流媒体无线传输的丢帧控制方法 | |
US8908578B2 (en) | Method for requesting and allocating uplink resource in wireless communication system | |
US11109273B2 (en) | Data packet distribution method, sender device, receiver device, and storage medium | |
CN106664440B (zh) | 用于在多媒体***中接收和发送信息的方法和设备 | |
KR101017532B1 (ko) | 통신 시스템에서 흐름 제어 방법 | |
US20080192633A1 (en) | Apparatus and method for controlling data flow in communication system | |
CN111131179B (zh) | 业务处理方法、装置、网络设备及存储介质 | |
WO2016150020A1 (zh) | 基于调度流标识的报文调度方法和装置 | |
CN107347197A (zh) | 一种业务传输方法及装置 | |
US11601375B2 (en) | Electronic device and frame transmission method of electronic device | |
EP4181479A1 (en) | Method for identifying flow, and apparatus | |
CN106131914B (zh) | 业务请求的处理方法及处理装置 | |
US9917752B1 (en) | Optimization of contention paramaters for quality of service of VOIP (voice over internet protocol) calls in a wireless communication network | |
CN112787944B (zh) | 流量控制方法、设备及计算机可读存储介质 | |
EP3941096A1 (en) | Method and apparatus for responding to data received via multiple links | |
CN104022966A (zh) | 基于NC的PON中保障QoS的ONU内部调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20160706 |
|
WW01 | Invention patent application withdrawn after publication |