|
H3C 模拟器 hardcfg.tcl 使用说明
WVRP可以用图形界面,也可以用TCL的脚本来实现。其实用图界面时,也是生成tcl脚本的,下面就是对tcl脚本的使用说明,熟悉了这个,也可以像写Dynamips的bat文件一样来生成拓扑了。
说明:
1. 本说明将配置命令分为两部分分别说明
A. 从V3直接继承过来的配置命令,使用方法基本和V3一致
B. V5接口管理融合项目系统测试阶段新增加的添加各种接口类型的配置命令。
这一部分为V5新增加部分,V3上不适用。由于主要目的是提供接口管理系统
测试时使用,接口驱动模拟不是很全面,功能并不完善。
凡下面描述中提到的旧驱动,指的是A部分的代码实现,新驱动指B部分的代码实现
2. hardcfg.tcl 实际上就是一个TCL脚本,完全遵循TCL脚本语言的语法规则,支持
所有TCL脚本语言的内嵌命令,如:set, for, if等
3. 特别说明,TCL语言语法中注释必须是以"#"开头的行,而不是从"#"到行结束
也就是说在有效命令同一行后面用 #注释说明是不合法的
4. 关于设备板间通讯占用socket端口说明:
分布式WVRP同一台设备间的板间通讯和状态同步是使用UDP socket完成的,每个
WVRP会按照下面的算法占用4个端口,其中offset是SetWinSockOffset设置值,
没有设置的时候为0,slot为SetSelfSlot设置值
2000 + offset + slot
3000 + offset + slot
3120 + offset + slot
4000 + offset + slot
另外还会产生一个 (2000 + offset)%100 为名字的信号量,供主控板和备用板使用
所以设置offset时候必须特别小心,不能让不同设备占用相同的端口和信号量
建议设置值在100-900,间隔100
5. 默认配置情况下,WVRP启动的时候旧驱动部分会自动添加一个Console接口,和8个
子卡号为4的二层不可切换的FE接口(如Ethernet0/4/0),旧驱动模拟了二层接口的
芯片转发的功能,涉及到VLAN,协议等请使用这些接口。
6. WVRP之间接口的链接通过UDP socket模拟完成,配置链接的时候必须指定socket
参数。使用AddLink的时候参数略有不同(括号内的参数),但意义相同:
-local(-localip) X.X.X.X 本设备接口socket使用的IP地址
-lport(-localport) XXXX 本设备接口socket使用的端口号
-dest(-dstip) X.X.X.X 对端设备接口socket使用的IP地址
-dport(-dstport) XXXX 对端设备接口socket使用的端口号
上面四个参数必须同时设置才有效。两台设备接口链接本地和对端的配置
必须一一对应。
由于2000-5000之间的端口容易被WVRP内部通讯端口占用,建议绑定接口的时候使用
6000以上的端口
PART A: 继承V3 WVRP配置命令部分
设备内存
SetMemorySize 128
本板的板号,分布式WVRP必须
SetSelfSlot 0
主控板板号,分布式WVRP必须
SetMainSlot 0
备用板板号,分布式WVRP必须
SetSlaveSlot 1
板间通讯使用的socket偏移,使用多台分布式WVRP时必须。
同一WVRP设置值必须一致,不同WVRP需设置不同的值
建议值在100-900,间隔100。具体参见说明4
SetWinSockOffset 200
桥MAC,多台WVRP互通的时候必须,参数是两个十进制整数
SetMac 00 52
WVRP窗口标题名称
SetWVRPInstanceName DUT1
Console 接口绑定的telnet端口号,有效范围 [2000-3000]
不设置时使用windows控制台输入
SetConsoleCom 2022
增加一个三层以太网接口,所有参数可选
-index 指定绑定的计算机网卡编号,从1开始
-vnet 指定以太网接口mac地址的第三个字节,默认为5E, 使用十进制参数
-slot 指定接口子卡号,默认是1
AddEthernet -index 2 -vnet 1 -slot 1
增加一个同步串口,前4个参数必须,具体参见说明6;-slot指定子卡号,可选,默认2
AddSerial -local 127.0.0.1 -lport 6010 -dest 127.0.0.1 -dport 6020 -slot 2
增加一个ATM接口,前4个参数必须,具体参见说明6;-slot指定子卡号,可选,默认3
本接口实现不完整,建议不要使用,可以使用新驱动
AddATM -local 127.0.0.1 -lport 6011 -dest 127.0.0.1 -dport 6021 -slot 3
增加一个E1控制器,前4个参数必须,具体参见说明6;-slot指定子卡号,可选,默认4
本接口实现不完整,建议不要使用,可以使用新驱动
AddE1Port -local 127.0.0.1 -lport 6013 -dest 127.0.0.1 -dport 6023 -slot 4
设置板类型,V5上用来设置旧驱动二层以太网接口数量和子卡号。设置时第一二个参数
必须,第三个参数可选。第一个参数目前无意义。第二个参数指定板上创建的二层以太
网接口数量有效值为8,16,24,默认8。-slot指定以太网接口子卡号,默认是4
参见说明5
SetBrdType 0 24 -slot 4
为旧驱动二层以太网接口增加socket连接,-portnum指定要增加连接的端口,1表示第一个
端口,对应EthernetX/Y/0,2对应EthernetX/Y/1,依次类推。Y是在SetBrdType -slot中
指定的子卡号,-portnum不能大于SetBrdType中指定的最大端口数量。其他参数见说明6
AddLink -portnum 2 -localip 127.0.0.1 -localport 7012 -dstip 127.0.0.1 -dstport 7022
为旧驱动二层以太网接口增加网卡绑定,-port指定绑定端口,含义同AddLink的-portnum
-adaptor指定以太网索引,从1开始
BindPortWithAdaptor -port 3 -adaptor 2
PART B: V5 新增WVRP配置命令部分
注意:
1. 由于新驱动可以自由指定接口物理槽号和子卡号,但不能指定最后一维,同一个物
理槽&子卡上的接口偏移从0开始递增。添加的接口时不要与旧驱动增加的接口冲突。
2. 所有参数由"-"开头,部分参数后面会要求具体的值,不同的参数之间没有顺序要求
3. 新驱动二层以太网接口没有模拟芯片转发,而是收到的报文不做任何处理直接上送
给平台。不要使用它测试二层特性。建议使用旧驱动接口。
4. 部分参数所有新驱动接口通用,各个接口通用的option有:
-slot x 接口物理槽号,一般和SetSelfSlot一致(光板时例外),必须
-subslot x 接口子卡号,必须
-local x.x.x.x 接口本地ip,参见说明6
-lport xxxx 接口本地端口号,参见说明6
-dest x.x.x.x 对端接口ip,参见说明6
-dport xxxx 对端接口端口号,参见说明6
-backup 当前接口所在的光板或子卡,在系统启动的时候不在位
(用于光板或子卡的热插拔模拟)
下面的参数在以太网接口中通用
-level2/-level3 二三层属性,默认是三层接口,不能同时使用
-canswitch 接口可做二三层切换
-management 接口是管理以太口,不能和-level2 -canswitch -speed 10000 同时使用
-speed {10|100|1000|10000} 指定接口速率
10, 100 时接口名为Ethernet,有-management时M-Ethernet
1000 时接口名为GigabitEthernet,有-management时M-GigabitEthernet
10000 时接口名为Ten-GigabitEthernet
-combo {21|22|31} 接口是combo口
21 二层单Combo端口
31 三层单Combo端口
22 二层双Combo端口,一次会增加偏移量相邻的两个接口,互为combo
-bindadaptor x 绑定网卡,不完善,需要有旧驱动接口绑定网卡后方能使用
PosX/X/X
AddPos -slot 0 -subslot 0
BriX/X/X
AddBri -slot 0 -subslot 0
AuxX/X/X
AddAux -slot 0 -subslot 0
EncryptX/X/X
AddIpsec -slot 0 -subslot 0
Subscriber-LineX/X/X
AddVoice -slot 0 -subslot 0
AsyncX/X/X
AddAsync -slot 0 -subslot 0
AnalogmodemX/X/X
AddAsync -analogmodem -slot 0 -subslot 0
ATMX/X/X,通过-phytype指定接口具体物理类型
-phytype PHY_ATM_25M
PHY_ATM_155M
PHY_ATM_622M
PHY_ATM_ADSL
PHY_ATM_SHDSL
PHY_ATM_E1
PHY_ATM_E3
PHY_ATM_T1
PHY_ATM_T3
PHY_ATM_ADSL_2PLUS
PHY_ATM_SHDSL_4WIRE
AddATMNew -phytype PHY_ATM_25M -slot 0 -subslot 0
SerialX/X/X 普通同异步串口
AddSerialNew -slot 0 -subslot 0
SerialX/X/X FE1接口
AddE1 -fe1 -slot 0 -subslot 0
SerialX/X/X FT1接口
AddT1 -ft1 -slot 0 -subslot 0
E1 X/X/X
AddE1 -e1 -slot 0 -subslot 0
T1 X/X/X
AddT1 -t1 -slot 0 -subslot 0
E3 X/X/X
-e3 不可通道化E3控制器
-ce3 可通道化E3控制器
AddE3 -e3 -slot 0 -subslot 0
AddE3 -ce3 -slot 0 -subslot 0
T3 X/X/X
-t3 不可通道化T3控制器
-ct3 可通道化T3控制器
AddT3 -t3 -slot 0 -subslot 0
AddT3 -ct3 -slot 0 -subslot 0
CposX/X/X
-ce1 可通道化出CE1接口的CPOS控制器
-ct1 可通道化出CT1接口的CPOS控制器
-e1 可通道化出E1接口的CPOS控制器
-e3 可通道化出E3接口的CPOS控制器
-t1 可通道化出T1接口的CPOS控制器
-t3 可通道化出T1接口的CPOS控制器
AddCpos -ce1 -slot 0 -subslot 0
AddCpos -ct1 -slot 0 -subslot 0
AddCpos -e1 -slot 0 -subslot 0
AddCpos -e3 -slot 0 -subslot 0
AddCpos -t1 -slot 0 -subslot 0
AddCpos -t3 -slot 0 -subslot 0
M-EthernetX/X/X 100M管理以太网接口
AddEthNew -management -speed 10 -slot 0 -subslot 0
AddEthNew -management -speed 100 -slot 0 -subslot 0
M-GigabitEthernetX/X/X
AddEthNew -management -speed 1000 -slot 0 -subslot 0
EthernetX/X/X
三层不可切换
AddEthNew -speed 10 -slot 0 -subslot 0
AddEthNew -speed 100 -slot 0 -subslot 0
三层可切换
AddEthNew -speed 10 -canswitch -slot 0 -subslot 0
AddEthNew -speed 100 -canswitch -slot 0 -subslot 0
二层不可切换
AddEthNew -speed 10 -level2 -slot 0 -subslot 0
AddEthNew -speed 100 -level2 -slot 0 -subslot 0
二层可切换
AddEthNew -speed 10 -level2 -canswitch -slot 0 -subslot 0
AddEthNew -speed 100 -level2 -canswitch -slot 0 -subslot 0
GigabitEthernetX/X/X
AddEthNew -speed 1000 -slot 0 -subslot 0
AddEthNew -speed 1000 -canswitch -slot 0 -subslot 0
AddEthNew -speed 1000 -level2 -slot 0 -subslot 0
AddEthNew -speed 1000 -level2 -canswitch -slot 0 -subslot 0
Ten-GigabitEthernetX/X/X
AddEthNew -speed 10000 -slot 0 -subslot 0
AddEthNew -speed 10000 -canswitch -slot 0 -subslot 0
AddEthNew -speed 10000 -level2 -slot 0 -subslot 0
AddEthNew -speed 10000 -level2 -canswitch -slot 0 -subslot 0
NATX/X/X
AddNat -slot 0 -subslot 0
EACLX/X/X
AddEacl -slot 0 -subslot 0
Net-StreamX/X/X
AddNetStream -slot 0 -subslot 0
URPFX/X/X
AddUrpf -slot 0 -subslot 0
MPLS-VPLSX/X/X
AddMplsVpls -slot 0 -subslot 0
MPLS-VLLX/X/X
AddMplsVll -slot 0 -subslot 0
MPLS-L3VPNX/X/X
AddMplsL3vpn -slot 0 -subslot 0
MPLSX/X/X
AddMpls -slot 0 -subslot 0
该贴已经同步到 COCO999的微博 |
|