bcm53314笔记 联系客服

发布时间 : 星期日 文章bcm53314笔记更新完毕开始阅读

VLAN Mirroring

UNI 输入镜像

输入: 包输入UNI端口转发向MTP 输出: 向MTP输出,不修改包

NNI 输入镜像

输入: 包输入UNI端口转发向MTP 输出: 向MTP输出,不修改包

Management VLAN(管理VLAN)

网友3:native vlan本质来说,就是不带vlan ID的vlan,无论是802.1q或者isl。因为不带vlan ID,如何交换机都可以接受和传递它的包,无论是不支持3层的还是一个hub。

而在此基础上提出了managerment vlan。这个概念其实是源于以前有isl和802.1q共存环境,因为这时候,因为部分vlan的prune修剪。全部交换机都可以传输的就是native vlan,这个vlan就变成了管理vlan。

NNI:把管理包当作单S-TAG

UNI:用S-VID代替管理VLAN的VID

? 在UNI输入端口:管理VLAN的TPID需要配置成芯片的内部TPID。使得管理包到达UNI的时候被当作C-tagged包 VLAN FP 或 ingress VLAN translation必须被配置为把管理VID转换成S-VID。

? 在NNI输入端口:管理VLAN tag的TPID需要配置成允许的外层TPID之一使得管理包到达NNI端口时被当作S-tagged包处理。

? 在UNI输出端口:对于管理VID,EGR_VLAN.UT_PORT_BITMAP应该被配置为零,来保护管理VLAN的tag不被去掉。而且,基于每个端口的EGR_VLAN_CONTROL_1.VT_MISS_DROP位和

VT_MISS_UNTAG都应该为0,避免万一VLAN转换失败时丢弃管理包和去掉管理包的tag。然而,这样做会导致其他在输出VLAN转换表里查找不到的非管理包不被扔掉和不被去掉tag。这不是想要的效果。因此我们需要确保非管理包在输出VLAN转换表里能查找到。因此输出VLAN转换表必须配置成以下其中一种:

-管理包在表里总是能找到

-管理包的VID被转换成相同的值

? 在NNI输出端口:对于管理VID, EGR_VLAN.UT_PORT_BITMAP应该被配置为零,来保护管理VLAN的tag不被去掉。EGR_VLAN_CONTROL_1.OUTER_TPID_SEL 应该设置成1,这样外层TPID就以EGR_VLAN.OUTER_TPID_INDEX为索引,从管理VLAN的EGR_OUTER_TPID寄存器获得。

缓存管理(Buffer Management Mechanisms)

Ingress Backpressure

1、 输入背压,用作流控

2、 IBPPKTCOUNT和IBPCELLCOUNT记录输入数量(包或cell) 3、 IBPBKSTATUS表示背压状态

4、 IBPCELLSETLIMIT or IBPPKTSETLIMIT设置限制值 5、 当超过限制值,端口进入背压状态。

6、 端口进入背压状态,发送值为0xFFFF的pause帧。当解除背压状态,发送值为0x00的pause帧

7、

PAUSE 测量(Pause Metering)

1、 用来做输入限速

2、 有一个漏桶结构,如图

3、

4、 每个包到达时,相应个数的标记会增加到桶里,每个标记代表0.5bit。每7.8125微秒自动减去

REFRESHCOUNT个标记。因此,假设REFRESHCOUNT=0x61A,每秒减去0x61A × (1000000÷7.8125)= 199936000个标记,因为每个标记0.5bit,约等于1Mbps。也就是说带宽100M。 5、 每发出一个cell,桶更新一次,MMU检测到有一定数据流,通知输入端口进行更新。 6、 当BUCKET_COUNT到达DISCARD_THD后,丢包,直至低于RESUME_THD。

HOL保护

线头阻塞(Head-of-line blocking, HOL)是一种出现在缓存式通信网络交换中的一种现象。交换通常由缓存式输入端口、一个交换架构(Switch Fabric)以及缓存式输出端口组成。当在不同的输入端口上到达的包被指向相同的输出端口的时候就会出现线头阻塞。由于输入缓存以及交换设计的FIFO特性,交换架构在每一个周期中只能交换缓存头部的包。如果某一缓存头部的包由于拥塞而不能交换到一个输出端口,那么该缓存中余下的包也会被线头包所阻塞,即使这些包的目的端口并没有拥塞。

1、 支持基于cell和packet的保护机制,两种机制同时生效,都可以配置。

2、

3、 4、 5、 Cell基于每个队列总缓存空间,packet基于每个队列指定的包数量

这种机制的目的是:支持有损的缓存管理、管理Cos粒度和输出端口的缓存资源 通过丢包实现这一功能,当输入端发生拥塞时,新到的包丢包。

通过MISCCONFIG寄存器的DYNAMIC_MEMORY_EN字段,设置是否打开动态内存分配。

6、 7、

8、

静态分配:COSLCCOUNT.LCCOUNT为当前队列cells数,超过LWMCOSCELLSETLIMIT.寄存器的CELLSETLIMIT时进入HOL状态,低于CELLRESETLIMIT解除HOL状态 动态分配:LWMCOSCELLSETLIMIT.寄存器的CELLSETLIMIT指定每个队列的静态分配的cell数目,这个值必须比cell总数(4096)少,然后剩下部分作为所有队列共享的动态分配数目。每个cell代表128字节

TOTALDYNOVERLIMIT表示动态内存是否可分配,若超过TOTALDYNCELLLIMIT,变成true;若低于TOTALDYNCELLRESETLIMITSEL,变false

拥塞位(congestion Bits)

1、 拥塞位通过DSCP表或者CAP计量引擎设置 2、 拥塞位用来表示红绿黄三种颜色。

3、 CNGCOSPKTLIMIT寄存器提供一个阈值限制每个输出端口或队列的速率。

4、 CNGCOSPKTSETLIMIT0用来比较红色包,CNGCOSPKTSETLIMIT1用来比较黄色包。当

COSPKTCOUNT超过限制,丢包。

sRED (SIMPLE RANDOM EARLY DETECTION)

1、 通过随机丢包来保护TCP同步

2、 通过概率性丢弃有颜色的包实现活跃的队列管理,实现sRED

3、 活跃的队列管理是一种算法,这种算法尝试预先丢包或标记某些帧。目的是发现严重的拥塞情况并提前采取措施,使TCP源有助于拥塞后退

4、 实现颜色识别、概率性丢包,提前丢弃指定颜色的包避免缓存满。

5、 每次包到达都检测队列深度,如果小于某个较低的值,队列没有或有较小的拥塞。如果超过某个较大的值,队列很拥塞,丢包。如果在两个值之间,队列拥塞适中,通过计算得出一个丢包概率

DIFFERENTIATED SERVICES QOS(区分服务Qos)

区分服务模型是一种能够区分QoS需求的多业务模型(一种计算机联网体系结构)。它指定了一种简单、可伸缩、粗粒度的机制来分类、管理网络业务流,并在现代IP网络上提供了服务质量保证。例如,DiffServ可以用于为关键网络流量(例如语音和视频)提供低延时、保证型业务,同时又为非关键业务(例如web流量和文件传输)提供了尽力而为的业务保证。然而,与综合服务模型不同,使用区分服务的应用在发送数据之前不需要显式地通知路由器。

对于区分服务,网络根据每一个报文指定的QoS来提供一个特定类型的服务。这种指定可以使用多种方式实现,例如,使用IP报文中的IP优先级比特或者源和目的地址。网络使用QoS规范来分类、标记、整形、监管流量,并执行智能化的排队。

1、 IEEE 802.1D定义了8个级别的优先级,优先级7为最高优先级,优先级信息被携带在一个3bot的VLAV tag字段里并应用于所有端口。