CSR配置字典之LswVlanInfo类
更新时间: 2025/07/22
在Gitcode上查看源码📋 文档信息
| 项目 | 内容 |
|---|---|
| 文档标题 | LswVlanInfo类配置字典 |
| 版本 | v1.0 |
| 创建日期 | 2025-01-27 |
| 最后更新 | 2026-06-22 |
| 维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
| 版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
|---|---|---|---|---|---|
| v1.0 | 2026-06-22 | 初始版本 | 创建LswVlanInfo类配置字典 | 全新文档 | 系统管理员 |
🎯 类概览
LswVlanInfo 类
| 属性 | 值 |
|---|---|
| 类名称 | LswVlanInfo |
| 功能描述 | 交换板VLAN信息配置对象 |
| 所属SIG组 | network |
| 所属组件 | 交换板管理 |
| 责任人 | 系统架构组 |
| 最后更新 | 2026-06-22 |
| 状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
Unit | U32 | 无 | - | - | 交换芯片ID | 指定VLAN所属的交换芯片 | 0 | CSR配置 | 软件 |
VlanId | U32 | 无 | 1~4094 | - | VLAN ID | VLAN标识配置 | 1 | CSR配置 | 软件 |
Member | U32 | 无 | - | - | VLAN成员端口位图 | VLAN成员端口配置 | 0xFF | CSR配置 | 软件 |
Untaged | U32 | 无 | - | - | VLAN未标记端口位图 | VLAN未标记端口配置 | 0x0F | CSR配置 | 软件 |
可选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
| 暂无 | - | - | - | - | - | - | - | - | - |
🔗 动态关联机制
语法规范
使用 #/xxx 和 <=/xxx 格式实现属性间的动态关联:
yaml
# 语法格式
属性名: "#/目标类.属性名" # 直接关联
属性名: "<=/目标类.属性名" # 条件关联
# LswVlanInfo类当前无动态关联配置关联说明
- 暂无动态关联: LswVlanInfo类当前所有属性均为静态配置,无需关联其他组件或扫描器
📂 分类标准
硬件属性
- 定义:直接从硬件获取或控制硬件的参数
- 特点:实时反映硬件状态,支持硬件控制操作
- 示例:
Member,Untaged
软件属性
- 定义:用于软件层面的VLAN管理和配置
- 特点:包含标识、配置、状态管理等功能
- 示例:
Unit,VlanId
📝 配置示例
标准单VLAN配置
json
{
"LswVlanInfo": {
"Unit": 0,
"VlanId": 1,
"Member": 255,
"Untaged": 15
}
}多VLAN配置(VLAN1)
json
{
"LswVlanInfo1": {
"Unit": 0,
"VlanId": 1,
"Member": 255,
"Untaged": 15
}
}多VLAN配置(VLAN2)
json
{
"LswVlanInfo2": {
"Unit": 0,
"VlanId": 2,
"Member": 240,
"Untaged": 0
}
}跨交换芯片VLAN配置
json
{
"LswVlanInfo_Chip2": {
"Unit": 1,
"VlanId": 1,
"Member": 255,
"Untaged": 15
}
}🔧 使用指南
配置步骤
- 设置交换芯片标识:配置Unit指定VLAN所属的交换芯片
- 配置VLAN ID:设置VlanId指定VLAN标识
- 设置成员端口:配置Member指定VLAN包含的成员端口位图
- 配置未标记端口:设置Untaged指定VLAN未标记端口位图
注意事项
- VlanId范围:VlanId取值范围为1~4094,需符合IEEE 802.1Q标准
- Member位图:Member使用位图方式表示VLAN成员端口,每一位对应一个端口
- Untaged位图:Untaged使用位图方式表示未标记端口,这些端口发送不带VLAN标签的帧
- 端口关联:Member和Untaged的位图需与LswPortInfo的端口配置保持一致
- 跨芯片配置:不同交换芯片(Unit)上的VLAN需独立配置
性能建议
- VLAN规划:合理规划VLAN ID分配,避免VLAN ID冲突
- 端口位图:根据实际业务需求精简Member和Untaged位图
- 资源优化:根据实际网络拓扑配置VLAN参数
- 标签策略:合理配置Untaged位图,控制帧标签剥离策略
ID体系说明
- Unit (U32): VLAN所属交换芯片ID,标识VLAN归属
- VlanId (U32): VLAN标识,1~4094范围,交换芯片内唯一
位图机制说明
- Member (U32): VLAN成员端口位图,每一位代表一个端口是否属于该VLAN
- Untaged (U32): VLAN未标记端口位图,每一位代表该端口是否发送未标记帧
常见问题
- Q: Member和Untaged有什么区别?
- A: Member位图表示哪些端口属于该VLAN,Untaged位图表示哪些端口在发送帧时剥离VLAN标签
- Q: VlanId为什么最大是4094?
- A: 符合IEEE 802.1Q标准,VLAN ID为12位字段,有效范围1~4094
- Q: Untaged位图中的端口与Member位图的关系?
- A: Untaged位图中的端口必须是Member位图中包含的端口,即未标记端口必须是VLAN成员
- Q: 跨交换芯片如何配置相同VLAN?
- A: 需在不同Unit上分别配置相同VlanId的VLAN,各自独立管理成员端口