2正常网络端口
除非另有说明,否则以下讨论假定端口处于正常网络模式(即,在端口偏移0x04处FrameMode = 0x0)。
2.1入口策略
入口策略块通常用于限制允许帧进入的位置,用于修改通过交换机的正常数据包流。 使用行业标准机制。 所有端口具有相同的入口策略功能,如下所示。(如果端口连接了内部管理处理器则不能支持所有的模式)
1、 可以阻止非管理帧进入交换机以支持生成树协议(2.2.1节的传统的802.1D和2.2.3节的802.1S协议)
2、 可以对帧的源MAC地址进行身份认证,并且可以将帧丢弃或映射到CPU以支持802.1X协议(1.2.7节和2.1.2节)
3、 可以基于帧的DA,SA,VID,以太网类型和/或如果帧是UDP广播和/或DHCP选项82(第2.1.3节),执行第2层策略操作(镜像,trap或丢弃)。
4、 在交换机的数据库中找不到帧的内容(称为“丢失”),可以被配置为对于SA的镜像或VID“丢失”,或捕获为DA,SA,VID或TCAM“丢失”(第2.1.4节)。
5、 支持TCAM的那些设备上的三元内容可寻址内存(TCAM)支持具有切换策略替代功能的深度数据包检查(第2.1.5节)。
6、 基于端口的VLAN和/或802.1Q VLAN用于防止帧从某些端口流出(第2.2节)
7、 交换机管理端口状态,802.1s(每个VLAN生成树)或802.1Q用于完全阻止帧进入交换机(第2.2.3节)。
8、 可以丢弃所有IEEE 802.1Q标记的帧(第2.2.2.4节),也可以丢弃所有未标记的帧(第2.2.2.3节)。
9、 每个端口有五个独立的TCP / IP风暴限制计数器/资源(第2.5节),每个端口有三个同步时隙计量器(ISTM)(第???节),支持入口速率限制(IRL)或管制。见Ingress Rate Limiting (IRL)节
10、 可以使用IRL资源通过对每个“ n”帧中的每个镜像仅进行镜像来对任何第2层策略镜像和任何Ingress Monitor Source镜像(第5节)进行统计采样。
2.1.1 802.1D生成树的端口状态过滤
该设备每个端口支持四个802.1D端口状态,如表6所示(每个VLAN端口状态也支持802.1s-请参阅第2.2.3节)。 设备中的队列控制器(请参见第2.6节)使用802.1D端口状态来调整缓冲区分配。 入口策略块使用它们来控制允许哪些帧类型进入和离开交换机,以便可以支持生成树或网桥环路检测软件。 端口控制寄存器中的PortState位(端口偏移0x04)确定每个端口的端口状态(假设未使用每个VLAN端口状态的802.1s),并且可以在任何时间修改这些位,而不会在传输的帧上引起任何错误。
表6列出了端口状态并对其进行了描述。 这两个端口状态要求检测管理(MGMT)帧(MGMT帧在5.2节中定义)。 它们的主要目的是支持IEEE 802.1协议,例如生成树协议(参见5.2节)。
1、 能够通过阻塞的端口进行隧道传输
2、 源地址学习是不会在管理帧上被执行的
3、 管理帧忽略了在入口和出口(802.1Q和基于端口)的VLAN规则
4、 在管理帧上组播侦听也是不能执行的。
5、 不执行速率限制(如果在IRL(2.5节)中将管理帧选择为非速率限制。)
6、 管理帧的速率限制也是可能的,为了防止拒绝服务(DoS)攻击。
这意味着管理帧始终会转到由分配给地址数据库中帧的目标地址(DA)的目标端口向量(DPV)所指示的端口,或设备的CPUDest端口或AltCPUDest端口(全局1偏移量0x1A索引0x30和0x31) ),具体取决于所使用的MGMT检测模式(第5.2节)。 MGMT帧通常用于802.1D生成树桥协议数据单元(BPDU)和其他802.1协议,但是可以将任何多播或任何单播地址定义为MGMT以支持新的或专有的协议。
1、 禁用:不允许帧进入(进入)或离开(出口)一个禁用端口。 学习不会在“已禁用”端口上进行。
2、 阻塞、监听:仅允许管理帧进入(进入)或离开(离开)阻塞端口。 所有其他帧类型都将被丢弃。在阻塞的端口上禁用学习。
3、 学习:仅允许MGMT框架进入(进入)或离开(离开)学习端口。 所有其他帧类型都将被丢弃,但是也会在所有由于过滤而未丢弃的良好非管理帧上进行学习。
4、 转发:正常运行。 允许所有帧进入(进入)和离开(离开)转发端口。 在所有由于过滤而未被丢弃的良好非MGMT帧上进行学习。
NOTE:可以出于多种原因对帧进行过滤,包括第2层策略(第2.1.3节),端口状态(第2.1.1节和第2.2.3节),802.1 MAC身份验证(第2.1.2.1节),802.1Q违规(第2.2.2节),反向802.1X MAC身份验证(第2.1.2.3节)或其标记与预期的不匹配(第2.2.2.3节和第2.2.2.4节) ), 等等。
交换机中所有端口的默认端口状态可以禁用或转发,具体取决于NO_CPU引脚的值(有关详细信息,请参见设备的数据表)。 除非将NO_CPU配置为CPU附加模式,否则这些端口将处于“转发端口状态”。 这样,CPU可以在启动端口之前完全启动,并开始接受帧,包括正在运行的网桥循环或生成树检测或路由软件。
NOTE: 只要将NO_CPU引脚配置为“ CPU附加模式”,内部和外部PHY就会在掉电状态下复位。在这种模式下,必须先将PHY的PwrDwn位清零(PHY偏移量0x00),然后才能接通PHY的电源。引导后,软件仅需为PHY通电一次。这样可以确保PHY的链接伙伴不会看到链接,直到CPU有时间启动并准备好接受来自其链接伙伴的MGMT帧。
受管交换机应通过配置NO_CPU引脚来使用CPU连接模式。但是,即使是这些设计,也可能需要PCB上的跳线或测试点,以便可以将开关重置为NO_CPU引脚的“无CPU连接”模式设置。这可以帮助设计的交换器部分进行初始PCB调试和/或制造测试,因为该交换器无需任何软件即可在任何地方为转发帧供电,但这仅是一种调试模式,并且不能用于具有CPU的生产设计中已连接(否则,其他帧将在引导CPU时通过交换机,这可能会造成网络故障)。
2.1.2源地址过滤
该设备支持源地址的过滤:
1、802.1X MAC身份认证
2、如果需要的话,在完全验证SA之前将帧捕获到CPU进一步检查
3、反向802.1X MAC身份验证可帮助防止拒绝服务(DoS)攻击。这是通过将特定的寻址以及每个端口模式位一起加载到地址数据库中来完成的。 第2.1.2.4节介绍了如何为上述每个应用程序最佳地将这些特殊地址加载到地址数据库中(静态或动态)。
2.1.2.1 802.1X MAC地址认证(锁定时)
如果端口的SA过滤位设置为0x1,则启用丢包锁定模式(端口偏移0x04),则在端口上使用未认证的源MAC地址接收的所有非MGMT1(非管理)帧都将被丢弃。在这种模式下,只有具有认证SA的帧(或MGMT帧)才允许进入交换机进行进一步处理。如果帧的SA存在于地址数据库中,并且其内容与帧进入交换机的源端口相关联,则认为该帧的SA被认证了。
在第6.3节中定义了如何将这些地址输入ATU地址数据库的机制。建议在支持基于MAC的802.1X身份验证的端口(即处于此DropOnLock模式的端口)上使用CPU定向地址学习(第1.2.6节)。
在CPU验证地址之前,它可能需要检查某些帧的内容。这可以使用源MAC帧陷阱(第2.1.2.2节)来完成。在这种模式下,可以屏蔽来自被拒绝的源地址的过多中断(请参见第1.2.7节)。
PS:如果端口过滤位置1,则未认证的源MAC接收到的非管理帧都会被丢弃,只有认证了的SA或在地址库中的才能被进一步处理。
2.1.2.2源MAC帧的捕获(到cpu)
源MAC帧捕获与802.1XMAC地址认证(2.1.2.1节)一起使用,并且如果端口的SA过滤位设置为0x3则在端口上启用了源MAC帧捕获,从而启用了Drop to CPU模式(端口偏移0x04在15:14位)。它的目的是在对源MAC进行身份验证之前获取CPU更多的数据。在标准的.1X中,CPU只能仅基于SA认证SA。而Drop to CPU模式允许将帧从发出请求的SA捕获到CPU,以进行进一步的检查。这样CPU可以查看整个帧的内容,以帮助做出身份验证决策。
Drop to CPU模式与Drop on lock模式大致相同。它增加了半认证MAC地址的概念,其中具有半认证SA的帧被映射到CPU的端口(基于CPUDest的值,全局1偏移量0x1A,索引0x30)。在这种模式下,只有带有认证或半认证SA的帧(或MGMT帧)才允许进入交换机进行进一步处理。如果SA没有在地址数据库中,那么该地址是未认证的而未认证的源MAC地址收到的非管理帧都将会被丢弃。反之如果已存在于地址数据库中则认为其已被认证。
如果SA作为静态ATU条目出现在地址数据库中,并且其目标端口矢量(DPV和“ T”位/true)都为零,则认为该SA是半授权的。这些帧会捕获到CPU。
条目的输出端口号(DPV)为零,其他端口无法将帧传到此,同时允许有该SA的帧发送到此,让CPU进一步检查。
PS:数据包在进入未被认证的端口时先放入cpu等待认证完成,如果未认证则是Drop on lock丢弃这些帧如果成功则用Drop on unlock进一步细分帧。
2.1.2.3反向802.1X MAC地址认证(解锁时丢弃)
反向802.1X MAC地址认证(解锁时丢弃)接受来自所有源MAC地址的帧,但是拒绝那些特殊标记的MAC地址。当此功能与地址学习限制(1.2.4节)或CPU定向学习(1.2.6节)一起使用时,它们可用于防止DoS攻击。(偏移量0x04)启用该功能后丢弃半授权源MAC地址的所有非管理帧,而其他帧进入交换机进行进一步的处理。
PS:如果SA在地址数据库非零则认为它的SA是已知的。那么它就可以通过自动学习和CPU定向学习进入地址数据库。
如果SA在地址数据库中全为零,且T也为零则SA是半授权的那么其可确保其他端口的帧不能传输到此,因为全为零则其他帧将其作为DA时会被丢弃。此功能可以防止DoS攻击。
2.1.2.4用于源地址过滤器的静态或动态地址
当CPU在地址数据库中加载MAC地址以用于SA过滤,是将地址加载成动态还是静态呢?两种都可以,由应用程序决定。
802.1X中的Drop on Lock模式不能接受帧除非帧的SA是在地址数据库中与入口端口相关联的。 乍一看应该被当做静态条目被加载,但是同一时间有大量的MAC地址认证被使用所以就当成动态地址被加载了。为了防止老化可以启用HoldAt1位(偏移量为0x0B),启用刷新锁定位(0x0B)来让他们自我刷新。如果该地址被最近使用过的地址撞掉了,CPU可以通过缓存快速重新加载,CPU也可以通过配置来执行刷新其老化的时间,这样可以防止ATU满了导致CPU无法加载的情况。(6.3.6节)
802.1.X Drop to CPU模式应将认证地址加载为动态地址(参考上文)但是半认证的地址必须以静态方式加载,那么只有第一帧会被CPU捕获。而其他帧会被认为是非认证的帧。如果CPU只要查看几个帧的内容那么其他帧可以被加载为未认证的帧。
Drop to CPU模式下允许用少量的地址进行自动学习,可能会被载入到防止DoS攻击。由于半授权的地址的数量非常少,因此CPU可以将这些地址静态加载。CPU也会在一段时间后将它们卸载,以便重新加载。
2.1.3二层策略的控制列表
设备支持2层PCLs(控制列表)。每个端口支持的策略操作是:
1、 普通帧切换(即无特殊操作)
2、 策略镜像(复制)帧到MirrorDest端口(全局1偏移量为0x1A索引为0x22)
3、 政策陷阱(重定向)帧到CPUDest端口(全局1偏移量为0x1A索引为0x33)
4、 策略丢弃(过滤)帧
下图显示了可在每个端口基础上选择上述策略的框架中的字段。
每个端口可以互不影响地使用八个策略项目(偏移量0x0e)中的每一个。因此一个帧可以支持多个策略操作。单个帧既可以被策略捕获也可以被策略镜像,如果有丢弃则该帧会被丢弃。
2.1.3.1目的地址,源地址和VID策略
当每个帧进入交换机时,其DA和SA都将查找到地址数据库中。如果在ATU中找到了DA则在启用DA的端口执行二层策略,同理在ATU中找到了SA也执行。每个进入交换机的帧会提取一个VID或将其分配给该帧。然后在Vlan数据库中查找VID。如果找到了则其Policy位置1则将在启用VTU第2层PCL的端口(端口偏移量0x0e)上执行2层策略。
NOTE:相同的MAC地址可以同时成为端口5到0的策略丢弃,端口6和7可以正常交换。但是一旦这样配置了端口,所有在ATU中有策略条目状态的MAC垏将在这些端口上以相同的方式工作。ATU中的DA和SA策略条目必须是静态条目,因此只能由CPU手动清除。
2.1.3.2以太类型策略
当每个帧进入交换机时,将提取并比较其以太类型。如果帧的以太类型为0x8863,则将在启用PPPoE第2层PCL的端口(0x0e)上的该帧执行第2层策略。如果以太类型为0x8200,则将启用VBAS第2层PCL的端口上执行2层策略。如果与端口PortEType寄存器(0x0f)相匹配则将在启用EType第二层执行2层策略。
2.1.3.3 DHCP选项82
DHCP(动态主机配置协议)选项82是一种特殊策略功能,它超出了第2层的字段。如果进入端口的帧与IPv4/6帧格式匹配并且启用了端口的Opt82则在此有2层策略。必须匹配白色的字段,而不检查灰色背景中的那些字段。
2.1.3.4UDP广播
UDP广播是另一种特殊策略功能它超出了帧的第2层字段。如果进入端口的帧与IPv4/6 UDP Farme format相匹配那么在此有2层策略。必须匹配白色的字段,而不检查灰色背景中的那些字段。
2.1.4丢失Traps(重定向)和镜像
设置支持丢失Traping 或镜像。每个端口支持的丢失操作是:
1、 普通帧切换(无特殊操作)
2、 丢失镜像(复制)帧到MirrorDest端口(全局1偏移0x1A,索引0x22)
3、 丢失陷阱(重定向)帧到CPUDest端口(全局1偏移量0x1A,索引0x30)
丢失镜像可以被配置在每个端口的基础上,遵循以下的丢失类型:
4、 SA丢失,即在地址数据库中找不到帧的源地址(第1.2.2节)
5、 VTU丢失,即在VLAN数据库中未发现VID有效的帧(第6.2.5节)
可以针对以下丢失类型在每个端口上配置丢失Trap
6、 DA丢失,即在地址数据库中找不到帧的目的地址(第1.2.2节)
7、 SA丢失,即在地址数据库中找不到帧的源地址(第1.2.2节)
8、 VTU丢失,即在VLAN数据库中未发现VID有效的帧(第6.2.5节)
9、 TCAM丢失,即该帧与TCAM中的任何条目都不匹配(第2.1.5节)
Miss镜像和Miss陷阱在端口偏移量0x0D中配置。
2.1.5 TCAM入口策略(仅支持TCAM的设备)
如果设置支持三进制内容可寻址内存(TCAM),则可用于执行自定义的深度数据包的检查,从而导致可编程的交换机操作会覆盖交换机当前配置的策略。可以将TCAM看作是一个可编程策略引擎,所有网络链路都是全速运行。
该设备的TCAM功能强大而又简单。它可以匹配每个帧的前48个字节或96个字节中的每个字节的每个位。这意味着可以匹配任何当前或将来的协议帧格式。
1、48字节的TCAM条目或以匹配所有802.1层2字段和所有IPv4标头字段。
2、96字节的TCAM条目可以匹配所有IPv6标头字段。96字节的TCAM条目是通过两个48字节的TCAM条目组合在一起而构成的。TCAM中可以同时存在48字节和96字节的条目。
可以对TCAM进行编程,使其对一个帧执行以下操作(当TCAM发生匹配时):
1、 覆盖分配给帧的VLAN ID(VID)2.2.2.5节
2、 覆盖分配给帧的优先级(FPri和QPri)2.4节
3、 通过覆盖分配给帧的DPV来覆盖端口出口的帧1.2.2节
4、 定义LAG负载均衡
通过配置TCAM模式位(端口偏移0x0D),可以在端口上启用TCAM。对于端口需要检查数据包的最坏情况的深度数据包检查深度,需要启用这些位。如果仅将48字节TCAM条目分配给端口,则可以为48字节搜索启用端口的TCAM模式。如果一个端口甚至分配了一个96字节的TCAM条目,则必须启用该端口的TCAM模式以进行96字节的搜索。
有关TCAM功能以及如何加载TCAM条目的更多信息,请参见6.1节
版权说明:如非注明,本站文章均为 扬州驻场服务-网络设备调试-监控维修-南京泽同信息科技有限公司 原创,转载请注明出处和附带本文链接。
请在这里放置你的在线分享代码