华为环网双机接入IPTV网络部署案例
环网双机接入IPTV网络部署案例
组网图形
方案简介
随着IPTV业务的迅速发展,IPTV平台承载的用户也越来越多,用户对IPTV直播业务的可靠性要求越来越高。IPTV作为视频类业务,最终用户对业务体验的连续性要求极高,需要保障日常维护中的用户业务体验连续,在重大事件保障、重大版本升级保障中保证业务的延续性。
如图1所示是某个地区广电基本组网图。为了保证广电直播流的质量,广电组播源服务器发送的直播流需要先转发到MRF转码服务器进行转码,然后由转码服务器再转发给接收者。转码服务器通过环网双机备份的方式接入IPTV组网,提高网络可靠性。
- 组播源服务器发送的组播流正常转发路径是:Core->PE1->LSW1->CDN->转码服务器。
- 转码服务器转换后的组播流正常转发路径是:转码服务器->CDN->LSW1->PE1->AGG->ACC1和ACC2。
- 录制服务器到接收者单播流正常转发路径是:录制服务器->CDN->LSW1->PE1->AGG->ACC1和ACC2。
配置注意事项
本举例中Core、PE1和PE2使用框式交换机为例,其他设备以盒式交换机为例。本举例中的交换机可以使用S系列交换机所有产品。
组网需求
如图2所示为某地区IPTV组网图,接收者可以点播直播节目,也可以回看电视节目。具体需求如下:
- 组播源服务器发送的组播直播流,先转发到CDN服务器转码录制后,再转发给接收者。
- 接收者也可以通过单播方式回看电视节目。
- 通过部署三层组播、二三层组播混跑和IGMP Snooping功能,实现组播流转发。
- 通过OSPF协议实现三层流量互通。LSW1、LSW2与PE1、PE2通过OSPF 1区域1建立邻居关系,Core与PE1、PE2通过OSPF 1区域0建立邻居关系。
- CDN、LSW1和LSW2部署MSTP破环协议,LSW1和LSW2部署VRRP,提高网络可靠性。
- 为保证接入安全,LSW1和LSW2通过流策略限制组播源服务器的接入。
数据规划
参数项 | 描述 |
---|---|
VLAN 33 | ACC1下挂用户所属的VLAN。 |
VLAN 34 | ACC2下挂用户所属的VLAN。 |
VLAN 88 | 用户回看节目使用的VLAN。 |
VLAN 301 | LSW1和LSW2使用的VLAN。 |
VLAN 400 | 组播直播流转码后使用的VLAN。 |
VLAN 530 | 组播直播流未转码前使用的VLAN。 |
产品名称 | 参数项 | 描述 |
---|---|---|
Core | GE1/0/1:66.1.1.3/24 | 上行连接组播源服务器的三层接口。 |
GE1/0/2:20.1.1.3/24 | 连接PE2的三层接口。 | |
GE1/0/3:12.1.1.2/24 | 连接PE1的三层接口。 | |
LoopBack0:1.1.1.3 | - | |
PE1 | GE1/0/2:12.1.1.1/24 | 上行连接Core的三层接口。 |
GE1/0/3:60.1.1.1/24 | 连接PE2的三层接口。 | |
Vlanif10:10.1.1.1/24,对应物理接口是GE1/0/1 | 连接LSW1的接口。 | |
Vlanif11:11.1.1.1/24,对应物理接口是GE1/0/4 | 连接AGG的接口。 | |
LoopBack0:1.1.1.1 | - | |
PE2 | GE1/0/2:20.1.1.2/24 | 上行连接Core的三层接口。 |
GE1/0/3:60.1.1.2/24 | 连接PE1的三层接口。 | |
Vlanif10:10.1.2.1/24,对应物理接口是GE1/0/1 | 连接LSW2的接口。 | |
Vlanif22:22.1.1.2/24,对应物理接口是GE1/0/4 | 连接AGG的接口。 | |
LoopBack0:1.1.1.2 | - | |
AGG | Vlanif11:11.1.1.8/24,对应物理接口是GE0/0/4 | 连接PE1的接口。 |
Vlanif22:22.1.1.8/24,对应物理接口是GE0/0/5 | 连接PE2的接口。 | |
Vlanif33:33.1.1.8/24,对应物理接口是GE0/0/1 | 连接ACC1的接口。 | |
Vlanif34:34.1.1.8/24,对应物理接口是GE0/0/2 | 连接ACC2的接口。 | |
LoopBack0:1.1.1.4 | - | |
LSW1 | Vlanif10:10.1.1.2/24,对应物理接口是GE0/0/1 | 连接PE1的接口。 |
Vlanif88:88.1.1.7/24,对应物理接口是GE0/0/2 | 用于与录制服务器通信。 | |
Vlanif301:31.1.1.1/24,对应物理接口是GE0/0/3和GE0/0/4 | 连接LSW2的接口。GE0/0/3和GE0/0/4绑定为Eth-Trunk1。 | |
Vlanif400:4.1.1.2/24,对应物理接口是GE0/0/2 | 用于与转码后的服务器通信。 | |
Vlanif530:5.1.1.2/24,对应物理接口是GE0/0/2 | 用于与转码前的服务器通信。 | |
LSW2 | Vlanif10:10.1.2.2/24,对应物理接口是GE0/0/1 | 连接PE2的接口。 |
Vlanif88:88.1.1.5/24,对应物理接口是GE0/0/2 | 用于与录制服务器通信。 | |
Vlanif301:31.1.1.2/24,对应物理接口是GE0/0/3和GE0/0/4 | 连接LSW1的接口。GE0/0/3和GE0/0/4绑定为Eth-Trunk1。 | |
Vlanif400:4.1.1.3/24,对应物理接口是GE0/0/2 | 用于与转码后的服务器通信。 | |
Vlanif530:5.1.1.3/24,对应物理接口是GE0/0/2 | 用于与转码前的服务器通信。 |
配置思路
采用如下的思路进行配置:
- 创建VLAN并配置各接口所属VLAN。
- 配置STP破环功能。
- 配置各VLANIF接口的IP地址。
- 配置VRRP功能,实现网关备份。
- 配置OSPF功能,实现三层互通。
- 配置三层组播功能。
- 配置IGMP Snooping二层组播功能。
- 配置流策略,控制组播源的接入。
操作步骤
- 创建VLAN并配置各接口所属VLAN
# 在ACC1上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname ACC1 [ACC1] vlan batch 33 [ACC1] interface gigabitethernet 0/0/1 [ACC1-GigabitEthernet0/0/1] description ACC1***to***AGG [ACC1-GigabitEthernet0/0/1] port link-type trunk [ACC1-GigabitEthernet0/0/1] port trunk allow-pass vlan 33 [ACC1-GigabitEthernet0/0/1] quit [ACC1] interface gigabitethernet 0/0/2 [ACC1-GigabitEthernet0/0/2] port link-type access [ACC1-GigabitEthernet0/0/2] port default vlan 33 [ACC1-GigabitEthernet0/0/2] quit [ACC1] interface gigabitethernet 0/0/3 [ACC1-GigabitEthernet0/0/3] port link-type access [ACC1-GigabitEthernet0/0/3] port default vlan 33 [ACC1-GigabitEthernet0/0/3] quit # 在ACC2上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname ACC2 [ACC2] vlan batch 34 [ACC2] interface gigabitethernet 0/0/1 [ACC2-GigabitEthernet0/0/1] description ACC2***to***AGG [ACC2-GigabitEthernet0/0/1] port link-type trunk [ACC2-GigabitEthernet0/0/1] port trunk allow-pass vlan 34 [ACC2-GigabitEthernet0/0/1] quit [ACC2] interface gigabitethernet 0/0/2 [ACC2-GigabitEthernet0/0/2] port link-type access [ACC2-GigabitEthernet0/0/2] port default vlan 34 [ACC2-GigabitEthernet0/0/2] quit [ACC2] interface gigabitethernet 0/0/3 [ACC2-GigabitEthernet0/0/3] port link-type access [ACC2-GigabitEthernet0/0/3] port default vlan 34 [ACC2-GigabitEthernet0/0/3] quit # 在AGG上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname AGG [AGG] vlan batch 11 22 33 to 34 [AGG] interface gigabitethernet 0/0/1 [AGG-GigabitEthernet0/0/1] description AGG***to***ACC1 [AGG-GigabitEthernet0/0/1] port link-type trunk [AGG-GigabitEthernet0/0/1] port trunk allow-pass vlan 33 [AGG-GigabitEthernet0/0/1] quit [AGG] interface gigabitethernet 0/0/2 [AGG-GigabitEthernet0/0/2] description AGG***to***ACC2 [AGG-GigabitEthernet0/0/2] port link-type trunk [AGG-GigabitEthernet0/0/2] port trunk allow-pass vlan 34 [AGG-GigabitEthernet0/0/2] quit [AGG] interface gigabitethernet 0/0/4 [AGG-GigabitEthernet0/0/4] description AGG***to***PE1 [AGG-GigabitEthernet0/0/4] port link-type trunk [AGG-GigabitEthernet0/0/4] port trunk allow-pass vlan 11 [AGG-GigabitEthernet0/0/4] quit [AGG] interface gigabitethernet 0/0/5 [AGG-GigabitEthernet0/0/5] description AGG***to***PE2 [AGG-GigabitEthernet0/0/5] port link-type trunk [AGG-GigabitEthernet0/0/5] port trunk allow-pass vlan 22 [AGG-GigabitEthernet0/0/5] quit # 在PE1上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname PE1 [PE1] vlan batch 10 to 11 [PE1] interface gigabitethernet 1/0/1 [PE1-GigabitEthernet1/0/1] description PE1***to***LSW1 [PE1-GigabitEthernet1/0/1] port link-type access [PE1-GigabitEthernet1/0/1] port default vlan 10 [PE1-GigabitEthernet1/0/1] quit [PE1] interface gigabitethernet 1/0/4 [PE1-GigabitEthernet1/0/4] description PE1***to***AGG [PE1-GigabitEthernet1/0/4] port link-type trunk [PE1-GigabitEthernet1/0/4] port trunk allow-pass vlan 11 [PE1-GigabitEthernet1/0/4] quit # 在PE2上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname PE2 [PE2] vlan batch 10 22 [PE2] interface gigabitethernet 1/0/1 [PE2-GigabitEthernet1/0/1] description PE2***to***LSW2 [PE2-GigabitEthernet1/0/1] port link-type access [PE2-GigabitEthernet1/0/1] port default vlan 10 [PE2-GigabitEthernet1/0/1] quit [PE2] interface gigabitethernet 1/0/4 [PE2-GigabitEthernet1/0/4] description PE2***to***AGG [PE2-GigabitEthernet1/0/4] port link-type trunk [PE2-GigabitEthernet1/0/4] port trunk allow-pass vlan 22 [PE2-GigabitEthernet1/0/4] quit # 在LSW1上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname LSW1 [LSW1] vlan batch 10 88 301 400 530 [LSW1] interface eth-trunk1 [LSW1-Eth-Trunk1] description LSW1***to***LSW2 [LSW1-Eth-Trunk1] port link-type trunk [LSW1-Eth-Trunk1] port trunk allow-pass vlan 88 301 400 530 [LSW1-Eth-Trunk1] quit [LSW1] interface gigabitethernet 0/0/3 [LSW1-GigabitEthernet0/0/3] eth-trunk 1 [LSW1-GigabitEthernet0/0/3] quit [LSW1] interface gigabitethernet 0/0/4 [LSW1-GigabitEthernet0/0/4] eth-trunk 1 [LSW1-GigabitEthernet0/0/4] quit [LSW1] interface gigabitethernet 0/0/1 [LSW1-GigabitEthernet0/0/1] description LSW1***to***PE1 [LSW1-GigabitEthernet0/0/1] port link-type access [LSW1-GigabitEthernet0/0/1] port default vlan 10 [LSW1-GigabitEthernet0/0/1] quit [LSW1] interface gigabitethernet 0/0/2 [LSW1-GigabitEthernet0/0/2] description LSW1***to***CDN [LSW1-GigabitEthernet0/0/2] port link-type trunk [LSW1-GigabitEthernet0/0/2] port trunk allow-pass vlan 88 301 400 530 [LSW1-GigabitEthernet0/0/2] quit # 在LSW2上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname LSW2 [LSW2] vlan batch 10 88 301 400 530 [LSW2] interface eth-trunk1 [LSW2-Eth-Trunk1] description LSW1***to***LSW2 [LSW2-Eth-Trunk1] port link-type trunk [LSW2-Eth-Trunk1] port trunk allow-pass vlan 88 301 400 530 [LSW2-Eth-Trunk1] quit [LSW2] interface gigabitethernet 0/0/3 [LSW2-GigabitEthernet0/0/3] eth-trunk 1 [LSW2-GigabitEthernet0/0/3] quit [LSW2] interface gigabitethernet 0/0/4 [LSW2-GigabitEthernet0/0/4] eth-trunk 1 [LSW2-GigabitEthernet0/0/4] quit [LSW2] interface gigabitethernet 0/0/1 [LSW2-GigabitEthernet0/0/1] description LSW2***to***PE2 [LSW2-GigabitEthernet0/0/1] port link-type access [LSW2-GigabitEthernet0/0/1] port default vlan 10 [LSW2-GigabitEthernet0/0/1] quit [LSW2] interface gigabitethernet 0/0/2 [LSW2-GigabitEthernet0/0/2] description LSW2***to***CDN [LSW2-GigabitEthernet0/0/2] port link-type trunk [LSW2-GigabitEthernet0/0/2] port trunk allow-pass vlan 88 301 400 530 [LSW2-GigabitEthernet0/0/2] quit # 在CDN上创建VLAN,并将接口加入VLAN。 <HUAWEI> system-view [HUAWEI] sysname CDN [CDN] vlan batch 88 301 400 530 [CDN] interface gigabitethernet 0/0/1 [CDN-GigabitEthernet0/0/1] description CDN***to***LSW2 [CDN-GigabitEthernet0/0/1] port link-type trunk [CDN-GigabitEthernet0/0/1] port trunk allow-pass vlan 88 301 400 530 [CDN-GigabitEthernet0/0/1] quit [CDN] interface gigabitethernet 0/0/2 [CDN-GigabitEthernet0/0/2] description CDN***to***LSW1 [CDN-GigabitEthernet0/0/2] port link-type trunk [CDN-GigabitEthernet0/0/2] port trunk allow-pass vlan 88 301 400 530 [CDN-GigabitEthernet0/0/2] quit [CDN] interface gigabitethernet 0/0/3 [CDN-GigabitEthernet0/0/3] description CDN***to***HMS-Server [CDN-GigabitEthernet0/0/3] port link-type access [CDN-GigabitEthernet0/0/3] port default vlan 88 [CDN-GigabitEthernet0/0/3] quit [CDN] interface gigabitethernet 0/0/4 [CDN-GigabitEthernet0/0/4] description CDN***to***MRF-IN [CDN-GigabitEthernet0/0/4] port link-type access [CDN-GigabitEthernet0/0/4] port default vlan 400 [CDN-GigabitEthernet0/0/4] quit [CDN] interface gigabitethernet 0/0/5 [CDN-GigabitEthernet0/0/5] description CDN***to***MRF-OUT [CDN-GigabitEthernet0/0/5] port link-type access [CDN-GigabitEthernet0/0/5] port default vlan 530 [CDN-GigabitEthernet0/0/5] quit
- 配置STP。LSW1、LSW2和CDN组成二层环路,通过MSTP进行破环。
# 在LSW1配置MSTP域并使能STP功能。 [LSW1] stp region-configuration [LSW1-mst-region] region-name IPTV [LSW1-mst-region] instance 1 vlan 530 [LSW1-mst-region] instance 2 vlan 88 301 400 [LSW1-mst-region] active region-configuration [LSW1-mst-region] quit [LSW1] stp instance 1 root primary [LSW1] stp instance 2 root secondary [LSW1] stp enable //缺省情况下,交换机全局和接口下都已使能STP功能。下面仅需要将不需要参与STP计算的接口去使能STP功能。 [LSW1] interface gigabitethernet 0/0/1 [LSW1-GigabitEthernet0/0/1] stp disable [LSW1-GigabitEthernet0/0/1] quit # 在LSW2配置MSTP域并使能STP功能。 [LSW2] stp region-configuration [LSW2-mst-region] region-name IPTV [LSW2-mst-region] instance 1 vlan 530 [LSW2-mst-region] instance 2 vlan 88 301 400 [LSW2-mst-region] active region-configuration [LSW2-mst-region] quit [LSW2] stp instance 1 root secondary [LSW2] stp instance 2 root primary [LSW2] stp enable //缺省情况下,交换机全局和接口下都已使能STP功能。下面仅需要将不需要参与STP计算的接口去使能STP功能。 [LSW2] interface gigabitethernet 0/0/1 [LSW2-GigabitEthernet0/0/1] stp disable [LSW2-GigabitEthernet0/0/1] quit# 在CDN配置MSTP域并使能STP功能。 [CDN] stp region-configuration [CDN-mst-region] region-name IPTV [CDN-mst-region] instance 1 vlan 530 [CDN-mst-region] instance 2 vlan 88 301 400 [CDN-mst-region] active region-configuration [CDN-mst-region] quit [CDN] stp enable //缺省情况下,交换机全局和接口下都已使能STP功能。下面仅需要将不需要参与STP计算的接口去使能STP功能。 [CDN] interface gigabitethernet 0/0/3 [CDN-GigabitEthernet0/0/3] stp disable [CDN-GigabitEthernet0/0/3] quit [CDN] interface gigabitethernet 0/0/4 [CDN-GigabitEthernet0/0/4] stp disable [CDN-GigabitEthernet0/0/4] quit [CDN] interface gigabitethernet 0/0/5 [CDN-GigabitEthernet0/0/4] stp disable [CDN-GigabitEthernet0/0/4] quit
- 配置各接口的IP地址
# 在Core配置接口的IP地址。 <HUAWEI> system-view [HUAWEI] sysname Core [Core] interface gigabitethernet 1/0/1 [Core-GigabitEthernet1/0/1] undo portswitch [Core-GigabitEthernet1/0/1] description Core***to***Sever [Core-GigabitEthernet1/0/1] ip address 66.1.1.3 255.255.255.0 [Core-GigabitEthernet1/0/1] quit [Core] interface gigabitethernet 1/0/2 [Core-GigabitEthernet1/0/2] undo portswitch [Core-GigabitEthernet1/0/2] description Core***to***PE2 [Core-GigabitEthernet1/0/2] ip address 20.1.1.3 255.255.255.0 [Core-GigabitEthernet1/0/2] quit [Core] interface gigabitethernet 1/0/3 [Core-GigabitEthernet1/0/3] undo portswitch [Core-GigabitEthernet1/0/3] description Core***to***PE1 [Core-GigabitEthernet1/0/3] ip address 12.1.1.2 255.255.255.0 [Core-GigabitEthernet1/0/3] quit [Core] interface LoopBack0 [Core-LoopBack0] ip address 1.1.1.3 255.255.255.255 [Core-LoopBack0] quit # 在PE1配置接口的IP地址。 [PE1] interface vlanif 10 [PE1-Vlanif10] description to***LSW1 [PE1-Vlanif10] ip address 10.1.1.1 255.255.255.0 [PE1-Vlanif10] quit [PE1] interface vlanif 11 [PE1-Vlanif11] description to***AGG [PE1-Vlanif11] ip address 11.1.1.1 255.255.255.0 [PE1-Vlanif11] quit [PE1] interface gigabitethernet 1/0/2 [PE1-GigabitEthernet1/0/2] undo portswitch [PE1-GigabitEthernet1/0/2] description PE1***to***Core [PE1-GigabitEthernet1/0/2] ip address 12.1.1.1 255.255.255.0 [PE1-GigabitEthernet1/0/2] quit [PE1] interface gigabitethernet 1/0/3 [PE1-GigabitEthernet1/0/3] undo portswitch [PE1-GigabitEthernet1/0/3] description PE1***to***PE2 [PE1-GigabitEthernet1/0/3] ip address 60.1.1.1 255.255.255.0 [PE1-GigabitEthernet1/0/3] quit [PE1] interface LoopBack0 [PE1-LoopBack0] ip address 1.1.1.1 255.255.255.255 [PE1-LoopBack0] quit # 在PE2配置接口的IP地址。 [PE2] interface vlanif 10 [PE2-Vlanif10] description to***LSW2 [PE2-Vlanif10] ip address 10.1.2.1 255.255.255.0 [PE2-Vlanif10] quit [PE2] interface vlanif 22 [PE2-Vlanif22] description to***AGG [PE2-Vlanif22] ip address 22.1.1.2 255.255.255.0 [PE2-Vlanif22] quit [PE2] interface gigabitethernet 1/0/2 [PE2-GigabitEthernet1/0/2] undo portswitch [PE2-GigabitEthernet1/0/2] description PE2***to***Core [PE2-GigabitEthernet1/0/2] ip address 20.1.1.2 255.255.255.0 [PE2-GigabitEthernet1/0/2] quit [PE2] interface gigabitethernet 1/0/3 [PE2-GigabitEthernet1/0/3] undo portswitch [PE2-GigabitEthernet1/0/3] description PE2***to***PE1 [PE2-GigabitEthernet1/0/3] ip address 60.1.1.2 255.255.255.0 [PE2-GigabitEthernet1/0/3] quit [PE2] interface LoopBack0 [PE2-LoopBack0] ip address 1.1.1.2 255.255.255.255 [PE2-LoopBack0] quit # 在AGG配置接口的IP地址。 [AGG] interface vlanif 11 [AGG-Vlanif11] description to***PE1 [AGG-Vlanif11] ip address 11.1.1.8 255.255.255.0 [AGG-Vlanif11] quit [AGG] interface vlanif 22 [AGG-Vlanif22] description to***PE2 [AGG-Vlanif22] ip address 22.1.1.8 255.255.255.0 [AGG-Vlanif22] quit [AGG] interface vlanif 33 [AGG-Vlanif33] description to***ACC1 [AGG-Vlanif33] ip address 33.1.1.8 255.255.255.0 [AGG-Vlanif33] quit [AGG] interface vlanif 34 [AGG-Vlanif34] description to***ACC2 [AGG-Vlanif34] ip address 34.1.1.8 255.255.255.0 [AGG-Vlanif34] quit [AGG] interface LoopBack0 [AGG-LoopBack0] ip address 1.1.1.4 255.255.255.255 [AGG-LoopBack0] quit # 在LSW1配置接口的IP地址。 [LSW1] interface vlanif 10 [LSW1-Vlanif10] description to***PE1 [LSW1-Vlanif10] ip address 10.1.1.2 255.255.255.0 [LSW1-Vlanif10] quit [LSW1] interface vlanif 88 [LSW1-Vlanif88] description to***HMS [LSW1-Vlanif88] ip address 88.1.1.7 255.255.255.0 [LSW1-Vlanif88] quit [LSW1] interface vlanif 301 [LSW1-Vlanif301] description to***LSW2 [LSW1-Vlanif301] ip address 31.1.1.1 255.255.255.0 [LSW1-Vlanif301] quit [LSW1] interface vlanif 400 [LSW1-Vlanif400] description to***MRF IN [LSW1-Vlanif400] ip address 4.1.1.2 255.255.255.0 [LSW1-Vlanif400] quit [LSW1] interface vlanif 530 [LSW1-Vlanif530] description to***MRF OUT [LSW1-Vlanif530] ip address 5.1.1.2 255.255.255.0 [LSW1-Vlanif530] quit # 在LSW2配置接口的IP地址。 [LSW2] interface vlanif 10 [LSW2-Vlanif10] description to***PE2 [LSW2-Vlanif10] ip address 10.1.2.2 255.255.255.0 [LSW2-Vlanif10] quit [LSW2] interface vlanif 88 [LSW2-Vlanif88] description to***HMS [LSW2-Vlanif88] ip address 88.1.1.5 255.255.255.0 [LSW2-Vlanif88] quit [LSW2] interface vlanif 301 [LSW2-Vlanif301] description to***LSW2 [LSW2-Vlanif301] ip address 31.1.1.2 255.255.255.0 [LSW2-Vlanif301] quit [LSW2] interface vlanif 400 [LSW2-Vlanif400] description to***MRF IN [LSW2-Vlanif400] ip address 4.1.1.3 255.255.255.0 [LSW2-Vlanif400] quit [LSW2] interface vlanif 530 [LSW2-Vlanif530] description to***MRF OUT [LSW2-Vlanif530] ip address 5.1.1.3 255.255.255.0 [LSW2-Vlanif530] quit
- 配置VRRP功能
# 在LSW1配置VRRP备份功能。 [LSW1] interface vlanif 88 [LSW1-Vlanif88] vrrp vrid 2 virtual-ip 88.1.1.100 [LSW1-Vlanif88] vrrp vrid 2 priority 120 [LSW1-Vlanif88] vrrp vrid 2 preempt-mode timer delay 20 [LSW1-Vlanif88] vrrp vrid 2 track interface GigabitEthernet0/0/1 reduced 100 [LSW1-Vlanif88] quit [LSW1] interface vlanif 400 [LSW1-Vlanif400] vrrp vrid 40 virtual-ip 4.1.1.10 [LSW1-Vlanif400] vrrp vrid 40 priority 120 [LSW1-Vlanif400] quit [LSW1] interface vlanif 530 [LSW1-Vlanif530] vrrp vrid 53 virtual-ip 5.1.1.10 [LSW1-Vlanif530] vrrp vrid 53 priority 120 [LSW1-Vlanif530] quit # 在LSW2配置VRRP备份功能。 [LSW2] interface vlanif 88 [LSW2-Vlanif88] vrrp vrid 2 virtual-ip 88.1.1.100 [LSW2-Vlanif88] quit [LSW2] interface vlanif 400 [LSW2-Vlanif400] vrrp vrid 40 virtual-ip 4.1.1.10 [LSW2-Vlanif400] quit [LSW2] interface vlanif 530 [LSW2-Vlanif530] vrrp vrid 53 virtual-ip 5.1.1.10 [LSW2-Vlanif530] quit
- 配置OSPF功能
# 在Core配置OSPF功能。 [Core] ospf 1 [Core-ospf-1] area 0 [Core-ospf-1-area-0.0.0.0] quit [Core-ospf-1] quit [Core] interface gigabitethernet 1/0/1 [Core-GigabitEthernet1/0/1] ospf enable 1 area 0.0.0.0 [Core-GigabitEthernet1/0/1] quit [Core] interface gigabitethernet 1/0/2 [Core-GigabitEthernet1/0/2] ospf enable 1 area 0.0.0.0 [Core-GigabitEthernet1/0/2] quit [Core] interface gigabitethernet 1/0/3 [Core-GigabitEthernet1/0/3] ospf enable 1 area 0.0.0.0 [Core-GigabitEthernet1/0/3] quit [Core] interface LoopBack0 [Core-LoopBack0] ospf enable 1 area 0.0.0.0 [Core-LoopBack0] quit # 在PE1配置OSPF功能。 [PE1] ospf 1 [PE1-ospf-1] area 0 [PE1-ospf-1-area-0.0.0.0] quit [PE1-ospf-1] area 1 [PE1-ospf-1-area-0.0.0.1] nssa [PE1-ospf-1-area-0.0.0.1] quit [PE1-ospf-1] quit [PE1] interface vlanif 10 [PE1-Vlanif10] ospf enable 1 area 0.0.0.1 [PE1-Vlanif10] quit [PE1] interface vlanif 11 [PE1-Vlanif11] ospf enable 1 area 0.0.0.0 [PE1-Vlanif11] quit [PE1] interface gigabitethernet 1/0/2 [PE1-GigabitEthernet1/0/2] ospf enable 1 area 0.0.0.0 [PE1-GigabitEthernet1/0/2] quit [PE1] interface gigabitethernet 1/0/3 [PE1-GigabitEthernet1/0/3] ospf enable 1 area 0.0.0.0 [PE1-GigabitEthernet1/0/3] quit [PE1] interface LoopBack0 [PE1-LoopBack0] ospf enable 1 area 0.0.0.0 [PE1-LoopBack0] quit # 在PE2配置OSPF功能。 [PE2] ospf 1 [PE2-ospf-1] area 0 [PE2-ospf-1-area-0.0.0.0] quit [PE2-ospf-1] area 1 [PE2-ospf-1-area-0.0.0.1] nssa [PE2-ospf-1-area-0.0.0.1] quit [PE2-ospf-1] quit [PE2] interface vlanif 10 [PE2-Vlanif10] ospf enable 1 area 0.0.0.1 [PE2-Vlanif10] quit [PE2] interface vlanif 22 [PE2-Vlanif22] ospf enable 1 area 0.0.0.0 [PE2-Vlanif22] quit [PE2] interface gigabitethernet 1/0/2 [PE2-GigabitEthernet1/0/2] ospf enable 1 area 0.0.0.0 [PE2-GigabitEthernet1/0/2] quit [PE2] interface gigabitethernet 1/0/3 [PE2-GigabitEthernet1/0/3] ospf enable 1 area 0.0.0.0 [PE2-GigabitEthernet1/0/3] quit [PE2] interface LoopBack0 [PE2-LoopBack0] ospf enable 1 area 0.0.0.0 [PE2-LoopBack0] quit # 在AGG配置OSPF功能,同时修改优先级,进行路由备份。 [AGG] ospf 1 [AGG-ospf-1] area 0 [AGG-ospf-1-area-0.0.0.0] quit [AGG-ospf-1] quit [AGG] interface vlanif 11 [AGG-Vlanif11] ospf enable 1 area 0.0.0.0 [AGG-Vlanif11] quit [AGG] interface vlanif 22 [AGG-Vlanif22] ospf cost 10000 [AGG-Vlanif22] ospf enable 1 area 0.0.0.0 [AGG-Vlanif22] quit [AGG] interface vlanif 33 [AGG-Vlanif33] ospf enable 1 area 0.0.0.0 [AGG-Vlanif33] quit [AGG] interface vlanif 34 [AGG-Vlanif34] ospf enable 1 area 0.0.0.0 [AGG-Vlanif34] quit [AGG] interface LoopBack0 [AGG-LoopBack0] ospf enable 1 area 0.0.0.0 [AGG-LoopBack0] quit # 在LSW1配置OSPF功能。 [LSW1] interface vlanif 10 [LSW1-Vlanif10] ospf enable 1 area 0.0.0.1 [LSW1-Vlanif10] quit [LSW1] interface vlanif 301 [LSW1-Vlanif301] ospf network-type p2p [LSW1-Vlanif301] ospf timer hello 1 [LSW1-Vlanif301] quit [LSW1] ospf 1 router-id 192.168.1.1 [LSW1-ospf-1] default-route-advertise [LSW1-ospf-1] silent-interface Vlanif88 [LSW1-ospf-1] silent-interface Vlanif530 [LSW1-ospf-1] silent-interface Vlanif400 [LSW1-ospf-1] area 1 [LSW1-ospf-1-area-0.0.0.1] network 5.1.1.0 0.0.0.255 [LSW1-ospf-1-area-0.0.0.1] network 10.1.1.0 0.0.0.255 [LSW1-ospf-1-area-0.0.0.1] network 31.1.1.0 0.0.0.255 [LSW1-ospf-1-area-0.0.0.1] network 88.1.1.0 0.0.0.255 [LSW1-ospf-1-area-0.0.0.1] nssa [LSW1-ospf-1-area-0.0.0.1] quit [LSW1-ospf-1] quit # 在LSW2配置OSPF功能。 [LSW2] interface vlanif 10 [LSW2-Vlanif10] ospf enable 1 area 0.0.0.1 [LSW2-Vlanif10] quit [LSW2] interface vlanif 301 [LSW2-Vlanif301] ospf network-type p2p [LSW2-Vlanif301] ospf timer hello 1 [LSW2-Vlanif301] quit [LSW2] ospf 1 router-id 192.168.1.2 [LSW2-ospf-1] default-route-advertise [LSW2-ospf-1] silent-interface Vlanif88 [LSW2-ospf-1] silent-interface Vlanif530 [LSW2-ospf-1] silent-interface Vlanif400 [LSW2-ospf-1] area 1 [LSW2-ospf-1-area-0.0.0.1] network 5.1.1.0 0.0.0.255 [LSW2-ospf-1-area-0.0.0.1] network 10.1.1.0 0.0.0.255 [LSW2-ospf-1-area-0.0.0.1] network 31.1.1.0 0.0.0.255 [LSW2-ospf-1-area-0.0.0.1] network 88.1.1.0 0.0.0.255 [LSW2-ospf-1-area-0.0.0.1] nssa [LSW2-ospf-1-area-0.0.0.1] quit [LSW2-ospf-1] quit
- 配置三层组播功能
# 在Core配置三层组播功能。 [Core] multicast routing-enable [Core] pim [Core-pim] static-rp 1.1.1.2 [Core-pim] quit [Core] interface gigabitethernet 1/0/1 [Core-GigabitEthernet1/0/1] pim sm [Core-GigabitEthernet1/0/1] quit [Core] interface gigabitethernet 1/0/2 [Core-GigabitEthernet1/0/2] pim sm [Core-GigabitEthernet1/0/2] quit [Core] interface gigabitethernet 1/0/3 [Core-GigabitEthernet1/0/3] pim sm [Core-GigabitEthernet1/0/3] quit # 在PE1配置三层组播功能。 [PE1] multicast routing-enable [PE1] pim [PE1-pim] c-bsr LoopBack0 [PE1-pim] c-rp LoopBack0 [PE1-pim] static-rp 1.1.1.2 [PE1-pim] quit [PE1] interface vlanif 10 [PE1-Vlanif10] pim sm [PE1-Vlanif10] quit [PE1] interface vlanif 11 [PE1-Vlanif11] pim sm [PE1-Vlanif11] quit [PE1] interface gigabitethernet 1/0/2 [PE1-GigabitEthernet1/0/2] pim sm [PE1-GigabitEthernet1/0/2] quit [PE1] interface gigabitethernet 1/0/3 [PE1-GigabitEthernet1/0/3] pim sm [PE1-GigabitEthernet1/0/3] quit [PE1] interface LoopBack0 [PE1-LoopBack0] pim sm [PE1-LoopBack0] quit # 在PE2配置三层组播功能。 [PE2] multicast routing-enable [PE2] pim [PE2-pim] static-rp 1.1.1.2 [PE2-pim] quit [PE2] interface vlanif 10 [PE2-Vlanif10] pim sm [PE2-Vlanif10] quit [PE2] interface vlanif 22 [PE2-Vlanif22] pim sm [PE2-Vlanif22] quit [PE2] interface gigabitethernet 1/0/2 [PE2-GigabitEthernet1/0/2] pim sm [PE2-GigabitEthernet1/0/2] quit [PE2] interface gigabitethernet 1/0/3 [PE2-GigabitEthernet1/0/3] pim sm [PE2-GigabitEthernet1/0/3] quit [PE2] interface LoopBack0 [PE2-LoopBack0] pim sm [PE2-LoopBack0] quit # 在AGG配置三层组播功能。 [AGG] multicast routing-enable [AGG] pim [AGG-pim] static-rp 1.1.1.2 [AGG-pim] quit [AGG] interface vlanif 11 [AGG-Vlanif11] pim sm [AGG-Vlanif11] quit [AGG] interface vlanif 22 [AGG-Vlanif22] pim sm [AGG-Vlanif22] quit [AGG] interface vlanif 33 [AGG-Vlanif33] pim sm [AGG-Vlanif33] igmp enable //与用户相连,需要使能IGMP功能 [AGG-Vlanif33] quit [AGG] interface vlanif 34 [AGG-Vlanif34] pim sm [AGG-Vlanif34] igmp enable [AGG-Vlanif34] quit # 在LSW1配置三层组播功能。 [LSW1] multicast routing-enable [LSW1] pim [LSW1-pim] static-rp 1.1.1.1 [LSW1-pim] quit [LSW1] interface vlanif 10 [LSW1-Vlanif10] pim sm [LSW1-Vlanif10] quit [LSW1] interface vlanif 301 [LSW1-Vlanif301] pim sm [LSW1-Vlanif301] quit [LSW1] interface vlanif 400 [LSW1-Vlanif400] pim hello-option dr-priority 100 //调整优先级,保证组播流量优先从LSW1转发 [LSW1-Vlanif400] pim sm [LSW1-Vlanif400] igmp enable [LSW1-Vlanif400] quit [LSW1] interface vlanif 530 [LSW1-Vlanif530] pim sm [LSW1-Vlanif530] pim hello-option dr-priority 100 [LSW1-Vlanif530] igmp enable //与解码服务器相连,需要使能IGMP功能 [LSW1-Vlanif530] quit # 在LSW2配置三层组播功能。 [LSW2] multicast routing-enable [LSW2] pim [LSW2-pim] static-rp 1.1.1.1 [LSW2-pim] quit [LSW2] interface vlanif 10 [LSW2-Vlanif10] pim sm [LSW2-Vlanif10] quit [LSW2] interface vlanif 301 [LSW2-Vlanif301] pim sm [LSW2-Vlanif301] quit [LSW2] interface vlanif 400 [LSW2-Vlanif400] pim sm [LSW2-Vlanif400] igmp enable [LSW2-Vlanif400] quit [LSW2] interface vlanif 530 [LSW2-Vlanif530] pim sm [LSW2-Vlanif530] igmp enable [LSW2-Vlanif530] quit
- 配置IGMP Snooping二层组播功能
# 在ACC1上使能IGMP Snooping功能。 [ACC1] igmp-snooping enable [ACC1] vlan 33 [ACC1-vlan33] igmp-snooping enable [ACC1-vlan33] multicast drop-unknown [ACC1-vlan33] quit # 在ACC2上使能IGMP Snooping功能。 [ACC2] igmp-snooping enable [ACC2] vlan 34 [ACC2-vlan34] igmp-snooping enable [ACC2-vlan34] multicast drop-unknown [ACC2-vlan34] quit # 在LSW1上使能IGMP Snooping功能。 [LSW1] igmp-snooping enable [LSW1] vlan 301 [LSW1-vlan301] igmp-snooping enable [LSW1-vlan301] quit [LSW1] vlan 530 [LSW1-vlan530] igmp-snooping enable [LSW1-vlan530] quit # 在LSW2上使能IGMP Snooping功能。 [LSW2] igmp-snooping enable [LSW2] vlan 301 [LSW2-vlan301] igmp-snooping enable [LSW2-vlan301] quit [LSW2] vlan 530 [LSW2-vlan530] igmp-snooping enable [LSW2-vlan530] quit
- 配置流策略限制组播源接入
# 在LSW1上配置流策略。 [LSW1] acl number 3000 [LSW1-acl-adv-3000] description ***ACL FOR IPTV_Service_IN*** [LSW1-acl-adv-3000] rule 1 permit ip source 66.1.1.0 0.0.0.255 destination 4.1.1.0 0.0.0.127 [LSW1-acl-adv-3000] quit [LSW1] acl number 3998 [LSW1-acl-adv-3998] description ***ACL FOR Multicast Remark*** [LSW1-acl-adv-3998] rule 5 permit ip source 5.1.1.80 0.0.0.15 [LSW1-acl-adv-3998] quit [LSW1] traffic classifier IPTV_Service_IN [LSW1-classifier-IPTV_Service_IN] if-match acl 3000 [LSW1-classifier-IPTV_Service_IN] quit [LSW1] traffic classifier IPTV_Multicast_Remark [LSW1-classifier-IPTV_Multicast_Remark] if-match acl 3998 [LSW1-classifier-IPTV_Multicast_Remark] quit [LSW1] traffic behavior IPTV_Service_IN [LSW1-behavior-IPTV_Service_IN] permit [LSW1-behavior-IPTV_Service_IN] quit [LSW1] traffic behavior IPTV_Multicast_Remark [LSW1-behavior-IPTV_Multicast_Remark] permit [LSW1-behavior-IPTV_Multicast_Remark] remark dscp af41 [LSW1-behavior-IPTV_Multicast_Remark] quit [LSW1] traffic policy IPTV_Service_IN [LSW1-trafficpolicy-IPTV_Service_IN] classifier IPTV_Service_IN behavior IPTV_Service_IN [LSW1-trafficpolicy-IPTV_Service_IN] quit [LSW1] traffic policy IPTV_Multicast_Remark [LSW1-trafficpolicy-IPTV_Multicast_Remark] classifier IPTV_Multicast_Remark behavior IPTV_Multicast_Remark [LSW1-trafficpolicy-IPTV_Multicast_Remark] quit [LSW1] interface gigabitethernet 0/0/1 [LSW1-GigabitEthernet0/0/1] traffic-policy IPTV_Service_IN inbound [LSW1-GigabitEthernet0/0/1] quit [LSW1] interface gigabitethernet 0/0/2 [LSW1-GigabitEthernet0/0/2] traffic-policy IPTV_Multicast_Remark inbound [LSW1-GigabitEthernet0/0/2] quit # 在LSW2上配置流策略。 [LSW2] acl number 3000 [LSW2-acl-adv-3000] description ***ACL FOR IPTV_Service_IN*** [LSW2-acl-adv-3000] rule 1 permit ip source 66.1.1.0 0.0.0.255 destination 4.1.1.0 0.0.0.127 [LSW2-acl-adv-3000] quit [LSW2] acl number 3998 [LSW2-acl-adv-3998] description ***ACL FOR Multicast Remark*** [LSW2-acl-adv-3998] rule 5 permit ip source 5.1.1.80 0.0.0.15 [LSW2-acl-adv-3998] quit [LSW2] traffic classifier IPTV_Service_IN [LSW2-classifier-IPTV_Service_IN] if-match acl 3000 [LSW2-classifier-IPTV_Service_IN] quit [LSW2] traffic classifier IPTV_Multicast_Remark [LSW2-classifier-IPTV_Multicast_Remark] if-match acl 3998 [LSW2-classifier-IPTV_Multicast_Remark] quit [LSW2] traffic behavior IPTV_Service_IN [LSW2-behavior-IPTV_Service_IN] permit [LSW2-behavior-IPTV_Service_IN] quit [LSW2] traffic behavior IPTV_Multicast_Remark [LSW2-behavior-IPTV_Multicast_Remark] permit [LSW2-behavior-IPTV_Multicast_Remark] remark dscp af41 [LSW2-behavior-IPTV_Multicast_Remark] quit [LSW2] traffic policy IPTV_Service_IN [LSW2-trafficpolicy-IPTV_Service_IN] classifier IPTV_Service_IN behavior IPTV_Service_IN [LSW2-trafficpolicy-IPTV_Service_IN] quit [LSW2] traffic policy IPTV_Multicast_Remark [LSW2-trafficpolicy-IPTV_Multicast_Remark] classifier IPTV_Multicast_Remark behavior IPTV_Multicast_Remark [LSW2-trafficpolicy-IPTV_Multicast_Remark] quit [LSW2] interface gigabitethernet 0/0/1 [LSW2-GigabitEthernet0/0/1] traffic-policy IPTV_Service_IN inbound [LSW2-GigabitEthernet0/0/1] quit [LSW2] interface gigabitethernet 0/0/2 [LSW2-GigabitEthernet0/0/2] traffic-policy IPTV_Multicast_Remark inbound [LSW2-GigabitEthernet0/0/2] quit
- 验证配置结果
# 配置完成后,Core、PE1、PE2和AGG上可以正常生成PIM邻居信息。 [Core] display pim neighborVPN-Instance: public net Total Number of Neighbors = 2 Neighbor Interface Uptime Expires Dr-Priority BFD-Session 12.1.1.1 GE1/0/3 01:09:01 00:01:43 1 N 20.1.1.2 GE1/0/2 01:06:30 00:01:39 1 N [PE1] display pim neighborVPN-Instance: public net Total Number of Neighbors = 4 Neighbor Interface Uptime Expires Dr-Priority BFD-Session 12.1.1.2 GE1/0/2 01:10:48 00:01:27 1 N 60.1.1.2 GE1/0/3 01:08:06 00:01:40 1 N 10.1.1.2 Vlanif10 00:39:38 00:01:21 1 N 11.1.1.8 Vlanif11 01:05:16 00:01:30 1 N [PE2] display pim neighborVPN-Instance: public net Total Number of Neighbors = 4 Neighbor Interface Uptime Expires Dr-Priority BFD-Session 20.1.1.3 GE1/0/2 01:11:32 00:01:42 1 N 60.1.1.1 GE1/0/3 01:11:18 00:01:27 1 N 10.1.2.2 Vlanif10 00:41:06 00:01:39 1 N 22.1.1.8 Vlanif22 01:08:28 00:01:42 1 N [AGG] display pim neighborVPN-Instance: public net Total Number of Neighbors = 2 Neighbor Interface Uptime Expires Dr-Priority BFD-Session 11.1.1.1 Vlanif11 01:09:30 00:01:20 1 N 22.1.1.2 Vlanif22 01:08:34 00:01:18 1 N # 用户发送IGMP Report报文后,ACC1和ACC2上可以正常生成组播组成员端口信息。 [ACC1]display igmp-snooping port-info --------------------------------------------------------------------------------(Source, Group) Port FlagFlag: S:Static D:Dynamic M: Ssm-mapping --------------------------------------------------------------------------------VLAN 33, 1 Entry(s) (*, 225.1.1.1) GE0/0/2 -D-GE0/0/3 -D-2 port(s) include -------------------------------------------------------------------------------- [ACC2] display igmp-snooping port-info --------------------------------------------------------------------------------(Source, Group) Port FlagFlag: S:Static D:Dynamic M: Ssm-mapping --------------------------------------------------------------------------------VLAN 34, 1 Entry(s) (*, 225.1.1.1) GE0/0/2 -D-GE0/0/3 -D-2 port(s) include --------------------------------------------------------------------------------# 组播源发送组播报文,解码服务器发送组播组加入报文后,LSW1和PE1上可以正常生成组播路由表。 [LSW1] display pim routing-tableVPN-Instance: public net Total 1 (*, G) entry; 0 (S, G) entry (*, 225.0.0.1) RP: 1.1.1.1 Protocol: pim-sm, Flag: WC UpTime: 00:06:50 Upstream interface: Vlanif10 Upstream neighbor: 10.1.1.1 RPF prime neighbor: 10.1.1.1 Downstream interface(s) information: Total number of downstreams: 1 1: Vlanif530 Protocol: igmp, UpTime: 00:01:42, Expires: - [PE1] display pim routing-tableVPN-Instance: public net Total 1 (*, G) entry; 0 (S, G) entry (*, 225.0.0.1) RP: 1.1.1.1 (local) Protocol: pim-sm, Flag: WC UpTime: 00:12:46 Upstream interface: Register Upstream neighbor: NULL RPF prime neighbor: NULL Downstream interface(s) information: Total number of downstreams: 1 1: Vlanif10 Protocol: pim-sm, UpTime: 00:08:59, Expires: 00:02:31
配置文件
-
Core的配置文件
# sysname Core # multicast routing-enable # interface GigabitEthernet1/0/1undo portswitch description Core***to***Severip address 66.1.1.3 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/2undo portswitch description Core***to***PE2ip address 20.1.1.3 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/3undo portswitch description Core***to***PE1 ip address 12.1.1.2 255.255.255.0 pim sm ospf enable 1 area 0.0.0.0 # interface LoopBack0ip address 1.1.1.3 255.255.255.255ospf enable 1 area 0.0.0.0 # ospf 1area 0.0.0.0 # pimstatic-rp 1.1.1.2 # return
-
PE的配置文件
PE1配置文件
PE2配置文件
# sysname PE1 # vlan batch 10 to 11 # multicast routing-enable # interface Vlanif10description to***LSW1ip address 10.1.1.1 255.255.255.0pim smospf enable 1 area 0.0.0.1 # interface Vlanif11description to***AGGip address 11.1.1.1 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/1description PE1***to***LSW1port link-type accessport default vlan 10 # interface GigabitEthernet1/0/2undo portswitchdescription PE1***to***Coreip address 12.1.1.1 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/3undo portswitch description PE1***to***PE2ip address 60.1.1.1 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/4description PE1***to***AGGport link-type trunkport trunk allow-pass vlan 11 # interface LoopBack0ip address 1.1.1.1 255.255.255.255pim smospf enable 1 area 0.0.0.0 # ospf 1area 0.0.0.0area 0.0.0.1nssa # pimc-bsr LoopBack0c-rp LoopBack0static-rp 1.1.1.2 # return
# sysname PE2 # vlan batch 10 22 # multicast routing-enable # interface Vlanif10description to***LSW2ip address 10.1.2.1 255.255.255.0pim smospf enable 1 area 0.0.0.1 # interface Vlanif22description to***AGGip address 22.1.1.2 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/1description PE2***to***LSW2port link-type accessport default vlan 10 # interface GigabitEthernet1/0/2undo portswitchdescription PE2***to***Coreip address 20.1.1.2 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/3undo portswitch description PE2***to***PE1ip address 60.1.1.2 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface GigabitEthernet1/0/4description PE2***to***AGGport link-type trunkport trunk allow-pass vlan 22 # interface LoopBack0ip address 1.1.1.2 255.255.255.255ospf enable 1 area 0.0.0.0 # ospf 1area 0.0.0.0area 0.0.0.1nssa # pimstatic-rp 1.1.1.2 # return
- LSW的配置文件
LSW1的配置文件
LSW2的配置文件
# sysname LSW1 # vlan batch 10 88 301 400 530 # stp instance 1 root primary stp instance 2 root secondary # multicast routing-enable # igmp-snooping enable # stp region-configurationregion-name IPTVinstance 1 vlan 530instance 2 vlan 88 301 400active region-configuration # acl number 3000description ***ACL FOR IPTV_Service_IN***rule 1 permit ip source 66.1.1.0 0.0.0.255 destination 4.1.1.0 0.0.0.127 acl number 3998description ***ACL FOR Multicast Remark***rule 5 permit ip source 5.1.1.80 0.0.0.15 # traffic classifier IPTV_Multicast_Remark operator orif-match acl 3998 traffic classifier IPTV_Service_IN operator orif-match acl 3000 # traffic behavior IPTV_Multicast_Remarkpermitremark dscp af41 traffic behavior IPTV_Service_INpermit # traffic policy IPTV_Multicast_Remark match-order configclassifier IPTV_Multicast_Remark behavior IPTV_Multicast_Remark traffic policy IPTV_Service_IN match-order configclassifier IPTV_Service_IN behavior IPTV_Service_IN # vlan 10description to***PE1 vlan 301description to***LSW2igmp-snooping enable vlan 400description ***MRF IN***multicast drop-unknownigmp-snooping enable vlan 530description ***MRF OUT***multicast drop-unknownigmp-snooping enable # interface Vlanif10description to***PE1ip address 10.1.1.2 255.255.255.0pim smospf enable 1 area 0.0.0.1 # interface Vlanif88description to***HMSip address 88.1.1.7 255.255.255.0vrrp vrid 2 virtual-ip 88.1.1.100vrrp vrid 2 priority 120vrrp vrid 2 preempt-mode timer delay 20vrrp vrid 2 track interface GigabitEthernet0/0/1 reduced 100 # interface Vlanif301description LSW1***to***LSW2ip address 31.1.1.1 255.255.255.0pim smospf network-type p2pospf timer hello 1 # interface Vlanif400description to***MRF INip address 4.1.1.2 255.255.255.0vrrp vrid 40 virtual-ip 4.1.1.10vrrp vrid 40 priority 120pim hello-option dr-priority 100pim smigmp enable # interface Vlanif530description to***MRF OUTip address 5.1.1.2 255.255.255.0vrrp vrid 53 virtual-ip 5.1.1.10vrrp vrid 53 priority 120pim hello-option dr-priority 100pim smigmp enable # interface Eth-Trunk1description LSW1***to***LSW2port link-type trunkport trunk allow-pass vlan 88 301 400 530 # interface GigabitEthernet0/0/1description LSW1***to***PE1port link-type accessport default vlan 10stp disabletraffic-policy IPTV_Service_IN inbound # interface GigabitEthernet0/0/2description LSW1***to***CDNport link-type trunkport trunk allow-pass vlan 88 301 400 530traffic-policy IPTV_Multicast_Remark inbound # interface GigabitEthernet0/0/3eth-trunk 1 # interface GigabitEthernet0/0/4eth-trunk 1 # ospf 1 router-id 192.168.1.1default-route-advertisesilent-interface Vlanif88silent-interface Vlanif530silent-interface Vlanif400area 0.0.0.1network 10.1.1.0 0.0.0.255network 31.1.1.0 0.0.0.255network 88.1.1.0 0.0.0.255network 5.1.1.0 0.0.0.255nssa # pimstatic-rp 1.1.1.1 # return
# sysname LSW2 # vlan batch 10 88 301 400 530 # stp instance 1 root secondary stp instance 2 root primary # multicast routing-enable # igmp-snooping enable # stp region-configurationregion-name IPTVinstance 1 vlan 530instance 2 vlan 88 301 400active region-configuration # acl number 3000description ***ACL FOR IPTV_Service_IN***rule 1 permit ip source 66.1.1.0 0.0.0.255 destination 4.1.1.0 0.0.0.127 acl number 3998description ***ACL FOR Multicast Remark***rule 5 permit ip source 5.1.1.80 0.0.0.15 # traffic classifier IPTV_Multicast_Remark operator orif-match acl 3998 traffic classifier IPTV_Service_IN operator orif-match acl 3000 # traffic behavior IPTV_Multicast_Remarkpermitremark dscp af41 traffic behavior IPTV_Service_INpermit # traffic policy IPTV_Multicast_Remark match-order configclassifier IPTV_Multicast_Remark behavior IPTV_Multicast_Remark traffic policy IPTV_Service_IN match-order configclassifier IPTV_Service_IN behavior IPTV_Service_IN # vlan 10description to***PE2 vlan 301description to***LSW1igmp-snooping enable vlan 400description ***MRF IN***multicast drop-unknownigmp-snooping enable vlan 530description ***MRF OUT***multicast drop-unknownigmp-snooping enable # interface Vlanif10description to***PE2ip address 10.1.2.2 255.255.255.0pim smospf enable 1 area 0.0.0.1 # interface Vlanif88description to***HMSip address 88.1.1.5 255.255.255.0vrrp vrid 2 virtual-ip 88.1.1.100 # interface Vlanif301description LSW2***to***LSW1ip address 31.1.1.2 255.255.255.0pim smospf network-type p2pospf timer hello 1 # interface Vlanif400description to***MRF INip address 4.1.1.3 255.255.255.0vrrp vrid 40 virtual-ip 4.1.1.10pim smigmp enable # interface Vlanif530description to***MRF OUTip address 5.1.1.3 255.255.255.0vrrp vrid 53 virtual-ip 5.1.1.10pim smigmp enable # interface Eth-Trunk1description LSW2***to***LSW1port link-type trunkport trunk allow-pass vlan 88 301 400 530 # interface GigabitEthernet0/0/1description LSW2***to***PE2port link-type accessport default vlan 10stp disabletraffic-policy IPTV_Service_IN inbound # interface GigabitEthernet0/0/2description LSW2***to***CDNport link-type trunkport trunk allow-pass vlan 88 301 400 530traffic-policy IPTV_Multicast_Remark inbound # interface GigabitEthernet0/0/3eth-trunk 1 # interface GigabitEthernet0/0/4eth-trunk 1 # ospf 1 router-id 192.168.1.2default-route-advertisesilent-interface Vlanif88silent-interface Vlanif530silent-interface Vlanif400area 0.0.0.1network 5.1.1.0 0.0.0.255network 10.1.1.0 0.0.0.255network 31.1.1.0 0.0.0.255network 88.1.1.0 0.0.0.255nssa # pimstatic-rp 1.1.1.1 # return
- CDN的配置文件
# sysname CDN # vlan batch 88 301 400 530 # stp region-configurationregion-name IPTVinstance 1 vlan 530instance 2 vlan 88 301 400active region-configuration # interface GigabitEthernet0/0/1description CDN***to***LSW2port link-type trunkport trunk allow-pass vlan 88 301 400 530 # interface GigabitEthernet0/0/2description CDN***to***LSW1port link-type trunkport trunk allow-pass vlan 88 301 400 530 # interface GigabitEthernet0/0/3description CDN***to***HMS-Serverport link-type accessport default vlan 88stp disable # interface GigabitEthernet0/0/4description CDN***to***MRF-INport link-type accessport default vlan 400stp disable # interface GigabitEthernet0/0/5description CDN***to***MRF-OUTport link-type accessport default vlan 530stp disable # return
- AGG的配置文件
# sysname AGG # vlan batch 11 22 33 to 34 # multicast routing-enable # interface Vlanif11description to***PE1ip address 11.1.1.8 255.255.255.0pim smospf enable 1 area 0.0.0.0 # interface Vlanif22description to***PE2ip address 22.1.1.8 255.255.255.0pim smospf cost 10000ospf enable 1 area 0.0.0.0 # interface Vlanif33description to***ACC1ip address 33.1.1.8 255.255.255.0pim smigmp enableospf enable 1 area 0.0.0.0 # interface Vlanif34description to***ACC2ip address 34.1.1.8 255.255.255.0pim smigmp enableospf enable 1 area 0.0.0.0 # interface GigabitEthernet0/0/1description AGG***to***ACC1port link-type trunkport trunk allow-pass vlan 33 # interface GigabitEthernet0/0/2description AGG***to***ACC2port link-type trunkport trunk allow-pass vlan 34 # interface GigabitEthernet0/0/4description AGG***to***PE1port link-type trunkport trunk allow-pass vlan 11 # interface GigabitEthernet0/0/5description AGG***to***PE2port link-type trunkport trunk allow-pass vlan 22 # interface LoopBack0ip address 1.1.1.4 255.255.255.255ospf enable 1 area 0.0.0.0 # ospf 1area 0.0.0.0 # pimstatic-rp 1.1.1.2 # return
-
ACC的配置文件
ACC1的配置文件
ACC2的配置文件
# sysname ACC1 # vlan batch 33 # igmp-snooping enable # vlan 33multicast drop-unknownigmp-snooping enable # interface GigabitEthernet0/0/1description ACC1***to***AGGport link-type trunkport trunk allow-pass vlan 33 # interface GigabitEthernet0/0/2port link-type accessport default vlan 33 # interface GigabitEthernet0/0/3port link-type accessport default vlan 33 # return
# sysname ACC2 # vlan batch 34 # igmp-snooping enable # vlan 34multicast drop-unknownigmp-snooping enable # interface GigabitEthernet0/0/1description ACC2***to***AGGport link-type trunkport trunk allow-pass vlan 34 # interface GigabitEthernet0/0/2port link-type accessport default vlan 34 # interface GigabitEthernet0/0/3port link-type accessport default vlan 34 # return
相关文章:
华为环网双机接入IPTV网络部署案例
环网双机接入IPTV网络部署案例 组网图形 图2 环网双机场景IPTV基本组网图 方案简介配置注意事项组网需求数据规划配置思路操作步骤配置文件 方案简介 随着IPTV业务的迅速发展,IPTV平台承载的用户也越来越多,用户对IPTV直播业务的可靠性要求越来越高。…...
“智能检测,精准把控。温湿度检测系统,为您的生活带来全方位的健康保障。”#非标协议项目【上】
“智能检测,精准把控。温湿度检测系统,为您的生活带来全方位的健康保障。”#非标协议项目【上】 前言预备知识1温湿度检测系统需求2.代码整合2.1找到编程实现LCD1602显示一行工程,打开代码文件,将所需的LCD1602驱动代码拷贝到温湿…...
牛客网SQL进阶137:第二快/慢用时之差大于试卷时长一半的试卷
官网链接: 第二快慢用时之差大于试卷时长一半的试卷_牛客题霸_牛客网现有试卷信息表examination_info(exam_id试卷ID, tag试卷类别,。题目来自【牛客题霸】https://www.nowcoder.com/practice/b1e2864271c14b63b0df9fc08b559166?tpId240 0 问题描述 试…...
CVE-2022-0760 漏洞复现
CVE-2022-0760 NSS [HNCTF 2022 WEEK2]ohmywordpress 【CVE-2022-0760】 题目描述:flag在数据库里面。 开题: 顺着按钮一直点下去会发现出现一个按钮叫安装WordPress 安装完之后的界面,有一个搜索框。 F12看看network。 又出现了这个Wor…...
WordPress突然后台无法管理问题
登录WordPress后台管理评论,发现点击编辑、回复均无反应。 尝试清除缓存、关闭CF连接均无效。 查看插件时发现关闭wp-china-yes插件可以解决问题。 后来又测试了下发现加速管理后台这项,在启用时会发生点击无效问题,禁用就好了,不…...
STM32F1 - 标准外设库_规范
STM32F10x_StdPeriph_Lib_V3.6.0 1> 头文件包含关系2> .c文件内部结构3> 宏定义位置4> 位掩码bit mask5> .c文件中定义私有变量6> 枚举类型定义 1> 头文件包含关系 1个头文件stm32f10x.h 就把整个MCU以及标准外设库,就管理了; 2>…...
推荐系统|召回04_离散特征处理
离散特征处理 离散特征是什么 怎么处理离散特征 One-hot编码 Embedding嵌入 从one-hot到Embedding,已经节省了很多的存储空间,但当数据量大的时候,还是占空间,所以工业界仍会对Embedding进行优化 而一个物品所对应的Embedding参数…...
一个查看armv8系统寄存器-值-含义的方式
找到解压后的SysReg_xml_v86A-2019-12目录 wget https://developer.arm.com/-/media/developer/products/architecture/armv8-a-architecture/2019-12/SysReg_xml_v86A-2019-12.tar.gz wget https://developer.arm.com/-/media/developer/products/architecture/armv8-a-archi…...
LLMs之miqu-1-70b:miqu-1-70b的简介、安装和使用方法、案例应用之详细攻略
LLMs之miqu-1-70b:miqu-1-70b的简介、安装和使用方法、案例应用之详细攻略 目录 miqu-1-70b的简介 miqu-1-70b的安装和使用方法 1、安装 2、使用方法 miqu-1-70b的案例应用 miqu-1-70b的简介 2024年1月28日,发布了miqu 70b,潜在系列中的…...
npm 下载报错
报错信息 : 证书过期 (CERT_HAS_EXPIRED) D:\Apps\nodejs-v18.16.1\npx.cmd --yes create-next-app"latest" . --ts npm ERR! code CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED npm ERR! request to https://registry.npm.taobao.org/create-next-app failed…...
GPT-4登场:多模态能力革新,提升ChatGPT与必应体验,开放API助力游戏革新
GPT-4登场:多模态能力革新,提升ChatGPT与必应体验,开放API助力游戏革新 引言 在人工智能领域,GPT-4的发布标志着一个新时代的到来。这一多模态大模型不仅在技术性能上实现了飞跃,更在功能层面带来全新的突破。GPT-4的…...
【芯片设计- RTL 数字逻辑设计入门 11.1 -- 状态机实现 移位运算与乘法 1】
文章目录 移位运算与乘法状态机简介SystemVerilog中的测试平台VCS 波形仿真 阻塞赋值和非阻塞赋值有限状态机(FSM)与无限状态机的区别 本篇文章接着上篇文章【芯片设计- RTL 数字逻辑设计入门 11 – 移位运算与乘法】 继续介绍,这里使用状态机…...
MongoDB系列:管道操作:聚合阶段操作符(二)
MongoDB系列:管道操作:聚合阶段操作符(二) 聚合阶段操作符介绍 本节只编写了个人认为可能用到的操作符,详细更多的操作符以及使用注意事项请前往MongoDB官网。 $match 过滤匹配数据。 // 插入数据 db.orders.inse…...
C++ //练习 5.12 修改统计元音字母的程序,使其能统计以下含有两个字符的字符序列的数量:ff、fl和fi。
C Primer(第5版) 练习 5.12 练习 5.12 修改统计元音字母的程序,使其能统计以下含有两个字符的字符序列的数量:ff、fl和fi。 环境:Linux Ubuntu(云服务器) 工具:vim 代码块 /****…...
C语言-----自定义类型-----结构体枚举联合
结构体和数组一样,都是一群数据的集合,不同的是数组当中的数据是相同的类型,但是结构体中的数据类型可以不相同,结构体里的成员叫做成员变量 结构体类型是C语言里面的一种自定义类型,我们前面已经了解到过int,char,fl…...
elasticsearch下载及可视化工具下载使用
elasticsearch下载及配置、启动 一、下载 Download Elasticsearch | Elastic 二、启动 双击bat即可。 出现如下说明启动成功: 访问测试: 三、注意 (1)因为es启动默认端口是:9200,所以需要检查此端口是否被占用。…...
vim常用命令以及配置文件
layout: article title: “vim文本编译器” vim文本编辑器 有三种模式: 命令模式 文本模式, 末行模式 vim命令大全 - 知乎 (zhihu.com) 命令模式 插入 i: 切换到输入模式,在光标当前位置开始输入文本。 a: 进入插入模式,在光标下一个位置开始输入文…...
2024年的VUE2下的无效指令npm install --save vue-i18n
vue官网已经声明了不再维护vue2, vue-i18n安装依赖的时候就只接安装vue3的vue-i18, 直接报错: > npm install --save vue-i18n npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: yudao-ui-admin…...
计算机视觉主要知识点
计算机视觉是指利用计算机和算法来解析和理解图片和视频中的内容。这是一个跨学科领域,融合了计算机科学、图像处理、机器学习和模式识别等多方面的技术。以下是一些计算机视觉入门的基本知识点: 图像基础: 像素:图片的最基本组成…...
python 基础知识点(蓝桥杯python科目个人复习计划35)
今日复习计划:阶段总结(新年贺礼) 1.python简介(定义,优点,缺点,应用领域) python:一种广泛使用的解释型,高级和通用的编程语言 python极简,生…...
使用HTML、CSS和JavaScript来创建一个粒子效果,粒子会跟随鼠标点击位置生成
文章目录 一、粒子效果二、JavaScript三、HTML四、CSS五、热门文章 一、粒子效果 以下是一个简单的示例,使用HTML、CSS和JavaScript来创建一个粒子效果,粒子会跟随鼠标点击位置生成: <!DOCTYPE html> <html> <head><t…...
优质项目追踪平台一览:助力项目管理与监控
项目追踪平台是现代项目管理中不可或缺的工具,它可以帮助团队高效地跟踪和管理项目进度、任务和资源分配。在当今快节奏的商业环境中,有许多热门的项目追踪平台可供选择。 本文总结了当下热门的项目追踪平台,供您参考~ 1、Zoho Projects&…...
Docker下安装GitLab
极狐GitLab Docker 镜像 | 极狐GitLab 安装所需最小配置 内存至少4G 系统内核至少3.10以上 uname -r 命令可以查看系统内核版本 安装Docker 1.更新 yum源 yum update 2.安装依赖(如果在操作第三步的时候提示yum-config-manager 未找到命令 就安装下面依赖) yum instal…...
2024/2最新升级ChatGPT Plus的方法
2024年2月最新升级方法:ChatGPT Plus全方位体验指南 随着2024年2月的到来,ChatGPT Plus迎来了全新的升级。对于追求更高效率和更强大功能的用户来说,升级至ChatGPT Plus无疑是提升工作和学习体验的关键。在本指南中,我将一步一步…...
github和gitee
github GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。 github可以给提交的代码打上标签,方便版本的迭代和回退,也是一个存储代码的仓库 github工作区 gitee是gitHub的…...
3秒实现无痛基于Stable Diffusion WebUI安装ComfyUI!无需重复安装环境!无需重复下载模型!安装教程
标题略有夸张的表达了接下来这一套确实很简单,相较于直接下载或者通过秋叶包更新而言。大大节省磁盘空间,和下载时间。 这篇教程不需要你有: 代码基础。都是复制粘贴就完事。魔法。 这篇教程默认你已经有: 1. 本地能够正常使用…...
【UE】游戏运行流程的简单理解
流程图 官方的游戏流程图: 一般顺序为初始化引擎、创建并初始化 GameInstance、加载关卡,最后开始游戏。 总的来说就是: 开始游戏-》游戏实例-》关卡-》游戏模式-》玩家控制器-》Pawn、玩家状态、HUD、UMG(可有可无) …...
【数据分析】Excel中的常用函数公式总结
目录 0 引用方式0.1 相对引用0.2 绝对引用0.3 混合引用0.4 3D引用0.5 命名引用 1 基础函数1.1 加法、减法、乘法和除法1.2 平均数1.3 求和1.4 最大值和最小值 2 文本函数2.1 合并单元格内容2.2 查找2.3 替换 3 逻辑函数3.1 IF函数3.2 AND和OR函数3.3 IFERROR函数 4 统计函数4.1…...
ESLint prettier 配置代码风格
环境同步: 1、ESlint,开启保存自动修复 配置文件 .eslintrc.cjs prettier 风格配置 https://prettier.io 使用单引号 不使用分号 每行宽度至多80字符 不加对象|数组最后逗号 换行符号不限制(win mac 不一致) vue组件名称…...
涤生大数据实战:基于Flink+ODPS历史累计计算项目分析与优化(上)
涤生大数据实战:基于FlinkODPS历史累计计算项目分析与优化(一) 1.前置知识 ODPS(Open Data Platform and Service)是阿里云自研的一体化大数据计算平台和数据仓库产品,在集团内部离线作为离线数据处理和存…...
jvm一级缓存
1、利用JVM缓存。脱离redis。 2、导包,springboot自带此包。如没有可以导:com.google.guava:guava:20.0的包。 3、直接上代码: package com.leo.cache;import com.alibaba.fastjson.JSONObject; import com.google.common.cache.Cache; im…...
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Web组件
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Web组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Web组件 提供具有网页显示能力的Web组件,ohos.web.webview提供web控制能…...
【Linux】学习-深入了解文件的读与写
深入了解语言级别(C语言)文件操作的"读"与"写" 在学习前,我们先要知道在Linux下的一个原则:一切皆是文件 如何理解呢?举个外设的例子,比如键盘和显示器,这两个外设也可以其实本质上也是文件&…...
java实战:销售订单30分钟未支付自动取消
本文将介绍如何使用Java实现一个销售订单在30分钟内未支付则自动取消的系统。我们将探讨如何使用Spring的定时任务功能来检查订单状态,并在订单未支付的情况下执行取消操作。 一、需求分析 在电商系统中,为了管理库存和避免长时间占用资源,…...
一、西瓜书——绪论
第一章 绪论 1.独立同分布 通常 假设 样本空间 中 全 体样 本 服 从 一 个 未 知 “ 分 布 ” ( d i s t r i b u t i o n ) D , 我们获得的每个样本都是独立地从这个分布上采样获得的, 即 “ 独 立同 分布 ” ( i n d e p e n d e n t a n d i d e n t ic a …...
如何连接ChatGPT?无需科学上网,使用官方GPT教程
随着AI的发展,ChatGPT也越来越强大了。 它可以帮你做你能想到的几乎任何事情,妥妥的生产力工具。 然而,对于许多国内的用户来说,并不能直接使用ChatGPT,不过没关系,我最近发现了一个可以直接免科学上网连…...
qt学习:串口
头文件 #include <QSerialPort> #include <QSerialPortInfo> 模块 QT core gui serialport 编程步骤 配置一个ui界面,五个QComboBox和一个按钮和一个QTextEdit 添加一个成员 private:QSerialPort *serial; 在构造函数中初始化ui端口列表和…...
145. 二叉树的后序遍历
给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 。 示例 1: 输入:root [1,null,2,3] 输出:[3,2,1]示例 2: 输入:root [] 输出:[]示例 3: 输入:root [1] 输…...
Postgresql 的编译安装与包管理安装, 全发行版 Linux 通用
博客原文 文章目录 实验环境信息编译安装获取安装包环境依赖编译安装安装 contrib 下工具代码 创建用户创建数据目录设置开机自启动启动数据库常用运维操作 apt 安装更新源安装 postgresql开机自启修改配置修改密码 实验环境信息 Ubuntu 20.04Postgre 16.1 编译安装 获取安装…...
【Java EE初阶十】多线程进阶二(CAS等)
1. 关于CAS CAS: 全称Compare and swap,字面意思:”比较并交换“,且比较交换的是寄存器和内存; 一个 CAS 涉及到以下操作: 下面通过语法来进一步进项说明: 下面有一个内存M,和两个寄存器A,B; CAS(M,A,B)&am…...
与AI对话:编写高效Prompt的指南
与AI对话:编写高效Prompt的指南 一、明确目标 引导AI提供特定格式或内容答案的策略一、明确需求二、使用示例三、设置参数四、分步询问五、使用关键词 利用关键词引导AI重点关注核心内容的技巧一、确定关键概念二、使用专业术语三、强调重要性四、避免相关术语的混淆…...
QML用ListView实现带section的GridView
QML自带的GridView只能定义delegate,没有section,类似手机相册带时间分组标签的样式就没法做。最简单的方式就是组合ListViewGridView,或者ListViewFlow,但是嵌套View时,子级View一般是完全展开的,只显示该…...
docker之程序镜像的制作
目录 一、每种资源的预安装(基础) 安装 nginx安装 redis 二、dockerfile文件制作(基础) 打包 redis 镜像 创建镜像制作空间制作dockerfile 打包 nginx 镜像 三、创建组合镜像(方式一) 生成centos容器并…...
Git - 每次 git pull/push 时需要账号和密码解决方案
问题描述 在提交项目代码或者拉取代码的时候,每次 git 都要输入用户名密码,很烦~ 解决方案 让服务器记下来用户名和密码,此时输入一次,以后再 git push /pull 的时候就不用再输账号和密码了 # 配置 git 记录用户名和密码 git c…...
C语言中在main函数之后运行的函数
在 Linux 平台上,atexit 函数同样是一个用于注册终止处理函数的库函数,它是 C 标准库 <stdlib.h> 的一部分。atexit 函数允许你注册一个或多个函数,这些函数会在 main 函数执行结束后,或者在调用 exit 函数时,由…...
pytorch训练指标记录之tensoboard,wandb
详解Tensorboard及使用教程_tensorboard怎么用-CSDN博客文章浏览阅读5.1w次,点赞109次,收藏456次。目录一、什么是Tensorboard二、配置Tensorboard环境要求安装三、Tensorboard的使用使用各种add方法记录数据单条曲线(scalar)多条曲线(scalars)直方图(hi…...
C语言——oj刷题——实现字符串逆序
当我们需要逆序一个字符串的内容时,可以通过C语言编写一个函数来实现。下面将详细介绍如何通过C语言实现这个功能,并附上代码示例。 1、实现原理 要逆序一个字符串的内容,可以使用两个指针来交换字符串中对应位置的字符。具体实现原理如下&am…...
空气质量预测 | Matlab实现基于SVR支持向量机回归的空气质量预测模型
文章目录 效果一览文章概述源码设计参考资料效果一览 文章概述 政府机构使用空气质量指数 (AQI) 向公众传达当前空气污染程度或预测空气污染程度。 随着 AQI 的上升,公共卫生风险也会增加。 不同国家有自己的空气质量指数,对应不同国家的空气质量标准。 基于支持向量机(Su…...
Vue中的请求拦截器
目录 1 前言 2 使用方法 2.1 创建拦截器 2.2 引入拦截器 1 前言 我们常常会使用JWT令牌来验证登录,因此很多请求都需要携带JWT令牌,我们当然可以用{headers:{Authorization:xx}}的方式,向每个请求中都以这样的方式添加JWT令牌。不过这样…...
Java奠基】对象数组练习
目录 商品对象信息获取 商品对象信息输入 商品对象信息计算 商品对象信息统计 学生数据管理实现 商品对象信息获取 题目要求是这样的: 定义数组存储3个商品对象。 商品的属性:商品的id,名字,价格,库存。 创建三个…...