一般像bcm和qca生产的CPU芯片都内置一个switch(交换芯片),但内置的switch不能满足要求,所以就要在外面加了一个1000Mbps外置switch芯片QCA8337。本文讲的是关于qca芯片外置switch的上层配置方式

cpu芯片有一个gmac,它通过sgmii与外置switch芯片qca8337相连,默认连接在port 0。8337有7个port口,分别是0~6,我们将wan口置为port 1,lan 口置为port 2~5。

1)现划分两个vlan,vid分别为1与2。vid=1对应lan,包含port 0,2,3,4,5。 vid=2对应wan,包含port 0,1。命令如下:

ssdk_sh vlan entry create <vlan_id>
ssdk_sh vlan member add <vlan_id> <port_id> <unmodified|untagged|tagged> #其中每个vlan中port 0对应tagged,其他为untagged.

2)vlan有两种模式,一是802.1q VLAN模式(这种模式下通过vlan table实现port隔离),另一种是port-based VLAN模式(这种模式下不同的port有自己的port-membership,不同VLAN之间的port没有这种membership关系,即实现了隔离)。802.1q VLAN使用vlan table,即前面配置的vlan entry;而port-based VLAN使用portVlan进行配置。通过配置portVlan的ingress模式来进行选择。

802.1q PID miss VLAN member vlolation No violation
Secure Drop Drop Forward – Use VLAN table result
Check Drop Forward – Use VLAN table result Forward – Use VLAN table result
Fallback Forward – Use port-based VLAN Forward – Use VLAN table result Forward – Use VLAN table result
Disable Forward – Use port-based VLAN Forward – Use port-based VLAN Forward – Use port-based VLAN

由上图,选择port 0的ingress模式为secure,即只允许802.1q模式,其他port口的模式为fallback,同时允许两种模式。命令如下:

ssdk_sh portVlan ingress set  <port_id> <disable|secure|check|fallback>

P.S. 这里对于每个port口模式的选择,switch的配置方式可以分为三种,一种是port-based VLAN模式,即所有port口均设为disable;一种是802.1q模式,即所有port口均设为secure;另一种即上面采用的这一种,两种模式均采用。

接下来配置port-based Vlan, 配置命令如下:

ssdk_sh portVlan member add <port_id> <memport_id> # port_id 指要配置的port,memport_id指除port_id外本vlan内其他port中的一个,循环调用此命令或调用下面一个命令
ssdk_sh portVlan member update  <port_id> <port_bitmap>  # port_bitmap中每一位代表一个port

3)最后将每个port与自身所处vlan的vid联系起来,调用命令:

ssdk_sh portVlan defaultCVid set  <port_id> <vlan_id>  # 其中port 0口对应的vid为0,其余均为自身vlan的vid.

4)另外对每个口的其他配置如速率,单双工,是否自动协商等,命令如下:

ssdk_sh port duplex set  <port_id> <half|full>
ssdk_sh port speed set  <port_id> <10|100|1000>
ssdk_sh port autoNeg enable  <port_id>

5)(全双工)流量控制/(半双工)背压,具体背景知识请参考

http://wenku.baidu.com/link?url=lI6zyw2wQ2tBp2qADadoeJ0jglHyAUHX_x7JPYxyw7WVGVahXx1tEGGRjzxP8dXUWoWRhMOURQaM1zVcSJRCJtUQZTwsc21fqXCTkJu4MeS

设置全双工流控命令如下:

ssdk_sh port flowCtrl set <port_id> <enable|disable> # 注意CPU口必须开启流量控制,否则会出现这样的情况,LAN与WAN口各自设置的速率不同,那么从LAN向WAN口ping的话,小的数据包可以通,但大的数据包不能ping通,通过上面的知识可以得出两口速率不同,大包会造成瞬时过载导致缓冲区溢出从而产生不必要的帧丢失。这时需要全双工流控技术来解决这个问题。

ssdk_sh port txfcstatus set <port_id> <enable|disable> # tx flow control status ,CPU口的tx flow control要打开
ssdk_sh port rxfcstatus set <port_id> <enable|disable> # rx flow control status ,CPU口的rx flow control要打开

设置半双工背压命令如下:

ssdk_sh port bpstatus set <port_id> <enable|disable> 一般所有口的背压要打开

设置tx mac status 和 rx mac status(目的未知):

ssdk_sh port rxmacstatus set <port_id> <enable|disable> # CPU口要设置enable
ssdk_sh port txmacstatus set <port_id> <enable|disable> # CPU口要设置enable

QCA switch的配置方式如上,BCM switch芯片配置类似,只是配置工具使用的是自家的et.

QCA switch芯片配置说明相关推荐

  1. IT66352是 HDMI一分二的switch芯片,2 路HDMI 2.0输入

    IT66352 IT66321 IT66322   IT66352是 HDMI一分二的switch芯片,2 路HDMI 2.0输入,一路HDMI 2.0输出,分辨率可达4K60,芯片通过IIC控制. ...

  2. switch芯片和phy芯片的区别_感应式芯片卡CPU卡的FM1208-9和FM1208-10有什么区别,你知道吗?...

    感应式CPU卡是目前芯片卡中安全系统较高的芯片,使用范围也较为广泛,但是这款CPU分为FM1208-9和FM1208-10,那你们知道分别代表什么意思呢?他们之间有什么不同呢? CPU白卡 FM是什么 ...

  3. 以太网Switch和PHY芯片产商名录及产品列表

    以太网Switch和PHY芯片产商名录及产品列表 2008年,以太网器件市场年销售额已经超过了20亿美元.然而伴随着全球性的经济衰退,2009年的销售额又萎缩至20亿美金以下.预计该市场会在2011年 ...

  4. 5-->详解《switch 数据接收驱动框架、mtk7621集成交换芯片mt7530》之一

    一. MTK7621 网络通讯原理简述 本篇博文分析的是mtk7621的芯片所内嵌的交换芯片mt7530的驱动程序,MTK7621采用内部的 MDIO 接口管理MT7530 的 switch 芯片:M ...

  5. 6 -->详解《switch 数据接收驱动框架、mtk7621集成交换芯片mt7530》之二

    一. MTK7621 网络通讯原理简述 本篇博文分析的是mtk7621的芯片所内嵌的交换芯片mt7530的驱动程序,MTK7621采用内部的 MDIO 接口管理MT7530 的 switch 芯片:M ...

  6. AR/QCA SPI 启动原理和 ART 地址定位原理

    转自:http://www.right.com.cn 本贴主要讲解 Bootloader 是如何在使用 SPI Flash 的 AR/QCA 的芯片上启动的,以及 OpenWrt 代码 ar71xx ...

  7. Openwrt switch vlan配置

    1.基本概念 1.1.wan lan LAN:Local Area Network 的英文简称,即局域网 我们计算机和路由连在一起就是接这个口 WAN: Wide Area Network 的英文简称 ...

  8. 星宸科技嵌入式CPU-SSD222D芯片在人脸门锁应用

    星宸科技SSD222D芯片是新推的一款嵌入式CPU芯片.支持点屏,支持摄像头,支持以太网口,支持WIFI等功能.采用ARM双核Cortex-A7内核,主频1GHz:内置128MB DDR3:内置2D图 ...

  9. PCIe Switch高级功能及应用

    PCI-E Switch芯片,估计不少人已经听说过这个东西了.但是估计多数人对其基本功能知之甚少.PCI-E Switch作为最先进的生产力,已经被广泛应用在了传统存储系统,以及少量品牌/型号的服务器 ...

最新文章

  1. 【Java Web前端开发】web概念概述和HTML基础部分
  2. ios保存gif到相册_iOS相册中的GIF图片的读取与保存
  3. Java -- 内部类(一)
  4. Spring基础学习笔记-Bean的基础知识
  5. 一位合格的博士生需要有哪些条件和素质?
  6. 进程线程协程-基本概念及特点
  7. 一天一个小算法的学习之选择排序
  8. LabView常用快捷键
  9. regexp函数mysql_mysql中regexp_like()函数的例子解析
  10. 计算机网络驱动坏了怎么解决办法,网卡驱动异常怎么办_网卡驱动异常解决办法_飞翔教程...
  11. Unity模拟科学计算器
  12. hdu4747(求mex区间之和)
  13. word打开文档很久很慢_打开Word文档出现假死或超慢的原因及解决方法
  14. 为什么我带的00后后辈在职场平步青云,比我还先升职了该走还是留?
  15. 2019百度地图离线地图制作
  16. 试述现代计算机系统的多级层次结构,计算机系统结构测验题(一)答案.ppt
  17. 使用 Spring Quartz组件实现定时任务
  18. 全国计算机等级考试二级教程c语言程序设计的基本概念有哪些,《全国计算机等级考试二级教程C语言程序设计》讲解.doc...
  19. CSS基础学习--6 CSS Text(文本)
  20. c语言招生信息查询系统,《C语言程序设计》课程设计报-招生信息查询系统.docx...

热门文章

  1. 网络工程师学习笔记——RIP路由汇总实验配置精讲
  2. 计算机开机自启文件夹,开机启动文件夹在哪
  3. c:if标签多条件的逻辑判断
  4. OMAP3530-mini调试笔记(2)
  5. Git命令及集成IDEA、Gitee/GitHub/GitLab
  6. 地图数据赋能ADAS的探索与实践
  7. 由xubuntu桌面系统恢复到ubuntu桌面系统
  8. 英语口语练习系列-C41-食物词汇-鹊桥仙
  9. makex机器人程序_MakeX总决赛现场参赛选手在进行机器人编程
  10. PHP程序设计读书笔记七