04-組播VLAN配置
本章節下載: 04-組播VLAN配置 (252.77 KB)
如圖1-1所示,在傳統的組播點播方式下,當屬於不同VLAN的主機Host A、Host B和Host C同時點播同一組播組時,三層設備(Switch A)需要將組播數據為每個用戶VLAN(即主機所屬的VLAN)都複製一份後發送給二層設備(Switch B)。這樣既造成了帶寬的浪費,也給三層設備增加了額外的負擔。
圖1-1 未運行組播VLAN時的組播數據傳輸
可以使用組播VLAN功能解決這個問題。在二層設備上配置了組播VLAN後,三層設備隻需將組播數據通過組播VLAN向二層設備發送一份即可,而不必向每個用戶VLAN都複製一份,從而節省了網絡帶寬,也減輕了三層設備的負擔。
組播VLAN有以下兩種實現和配置方式:
如圖1-2所示,接收者主機Host A、Host B和Host C分屬不同的用戶VLAN。在Switch B上配置VLAN 10為組播VLAN,將所有的用戶VLAN都配置為該組播VLAN的子VLAN,並在組播VLAN及其子VLAN內都使能IGMP Snooping。
圖1-2 基於子VLAN的組播VLAN示意圖
配置完成後,IGMP Snooping將在組播VLAN中對路由器端口進行維護,而在各子VLAN中對成員端口進行維護。這樣,Switch A隻需將組播數據通過組播VLAN向Switch B發送一份即可,Switch B會將其複製分發給該組播VLAN內那些有接收者的子VLAN。
如圖1-3所示,接收者主機Host A、Host B和Host C分屬不同的用戶VLAN,Switch B上的所有用戶端口(即連接主機的端口)均為Hybrid類型。在Switch B上配置VLAN 10為組播VLAN,將所有用戶端口都添加到該組播VLAN內,並在組播VLAN和所有用戶VLAN內都使能IGMP Snooping。
配置完成後,當Switch B上的用戶端口收到來自主機的IGMP報文時,會為其打上組播VLAN的Tag並上送給IGMP查詢器,於是IGMP Snooping就可以在組播VLAN中對路由器端口和成員端口進行統一的維護。這樣,Switch A隻需將組播數據通過組播VLAN向Switch B發送一份即可,Switch B會將其複製分發給該組播VLAN內的所有成員端口。
表1-1 組播VLAN配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置基於子VLAN的組播VLAN |
二者必選其一 |
||
配置基於端口的組播VLAN |
配置用戶端口屬性 |
||
配置組播VLAN端口 |
|||
配置組播VLAN轉發表項的最大數量 |
可選 |
若在設備上同時配置了基於子VLAN和基於端口的組播VLAN,則基於端口的組播VLAN將優先生效。
在配置基於子VLAN的組播VLAN之前,需完成以下任務:
· 創建相應的VLAN
· 在欲配置為組播VLAN及其子VLAN的所有VLAN內都使能IGMP Snooping
首先需要把某個VLAN配置為組播VLAN,再將用戶VLAN添加到該組播VLAN內,使其成為組播VLAN的子VLAN。
· 要配置為組播VLAN的指定VLAN必須存在。
· 要添加到組播VLAN內的子VLAN必須存在,且不能是組播VLAN或其它組播VLAN的子VLAN。
· 組播vlan使用時,不允許有某一接口設置為trunk類型後既存在於主vlan又存在於子vlan中。
表1-2 配置基於子VLAN的組播VLAN
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置指定VLAN為組播VLAN,並進入組播VLAN視圖 |
multicast-vlan vlan-id |
缺省情況下,VLAN不是組播VLAN |
向組播VLAN內添加子VLAN |
subvlan vlan-list |
缺省情況下,組播VLAN內沒有子VLAN |
在配置基於端口的組播VLAN時,需要先配置各用戶端口的屬性,然後再將配置好的用戶端口添加到組播VLAN內。
隻允許將二層以太網接口、二層聚合接口類型的用戶端口配置為組播VLAN的端口。
在配置基於端口的組播VLAN之前,需完成以下任務:
· 創建相應的VLAN
· 在欲配置為組播VLAN的VLAN內使能IGMP Snooping
· 在所有的用戶VLAN內都使能IGMP Snooping
首先,配置用戶端口為Hybrid類型,允許用戶VLAN的報文通過,缺省VLAN為其所屬的用戶VLAN。然後,配置用戶端口允許組播VLAN的報文不帶Tag通過,這樣,當二層設備通過組播VLAN收到來自上遊、打有組播VLAN Tag的組播數據報文時,會將其Tag去掉後再向下遊轉發。
有關port link-type、port hybrid pvid vlan和port hybrid vlan命令的詳細介紹,請參見“二層技術-以太網交換命令參考”中的“VLAN”。
表1-3 配置用戶端口屬性
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置用戶端口的鏈路類型為Hybrid類型 |
port link-type hybrid |
缺省情況下,端口的鏈路類型為Access類型 |
配置用戶端口的缺省VLAN為其所屬的用戶VLAN |
port hybrid pvid vlan vlan-id |
缺省情況下,Hybrid端口的缺省VLAN為VLAN 1 |
允許組播VLAN通過用戶端口,且不攜帶Tag |
port hybrid vlan vlan-id-list untagged |
缺省情況下,Hybrid端口隻允許VLAN 1通過 |
首先需要把某個VLAN配置為組播VLAN,再將用戶端口添加到該組播VLAN內——既可以在組播VLAN內添加端口,也可以在端口上指定其所屬的組播VLAN——這兩種配置方式是等效的。
· 要配置為組播VLAN的指定VLAN必須存在。
· 一個端口隻能屬於一個組播VLAN。
表1-4 在組播VLAN內配置組播VLAN端口
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置指定VLAN為組播VLAN,並進入組播VLAN視圖 |
multicast-vlan vlan-id |
缺省情況下,VLAN不是組播VLAN |
向組播VLAN內添加端口 |
port interface-list |
缺省情況下,組播VLAN內沒有端口 |
表1-5 在端口上配置組播VLAN端口
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置指定VLAN為組播VLAN,並進入組播VLAN視圖 |
multicast-vlan vlan-id |
缺省情況下,VLAN不是組播VLAN |
退回係統視圖 |
quit |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
指定端口所屬的組播VLAN |
port multicast-vlan vlan-id |
缺省情況下,端口不屬於任何組播VLAN |
用戶可以調整組播VLAN轉發表項的最大數量,當所有組播VLAN內維護的表項總數達到最大數量後,將不再創建新的表項,直至有表項被老化或被手工刪除。
在對組播VLAN轉發表項的最大數量進行配置時,如果所有組播VLAN內的表項總數已超過了配置值,係統不會自動刪除任何已存在的表項,也不再繼續創建新的表項。在這種情況下,建議用戶手工刪除多餘表項。
表1-6 配置組播VLAN轉發表項的最大數量
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置組播VLAN轉發表項的最大數量 |
multicast-vlan entry-limit limit |
缺省情況下,組播VLAN轉發表項的最大數量為256 |
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後組播VLAN的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除組播VLAN的統計信息。
表1-7 組播VLAN顯示和維護
命令 |
|
顯示組播VLAN的信息 |
display multicast-vlan [ vlan-id ] |
顯示組播VLAN的組播組表項信息 |
display multicast-vlan group [ source-address | group-address | slot slot-number | verbose | vlan vlan-id ] * |
顯示組播VLAN轉發表的信息 |
display multicast-vlan forwarding-table [ group-address [ mask { mask-length | mask } ] | source-address [ mask { mask-length | mask } ] | slot slot-number | subvlan vlan-id | vlan vlan-id ] * |
清除組播VLAN的組播組表項 |
reset multicast-vlan group [ source-address [ mask { mask-length | mask } ] | group-address [ mask { mask-length | mask } ] | vlan vlan-id ] * |
· 如圖1-4所示,三層交換機Switch A通過接口VLAN-interface20連接組播源(Source),通過接口VLAN-interface10連接二層交換機Switch B;Switch A上運行IGMPv2,Switch B上運行版本2的IGMP Snooping,並由Switch A充當IGMP查詢器。
· 組播源向組播組224.1.1.1發送組播數據,Host A~Host C都是該組播組的接收者(Receiver),且分別屬於VLAN 2~VLAN 4。
· 通過在Switch B上配置基於子VLAN的組播VLAN,使Switch A通過組播VLAN向Switch B下分屬不同用戶VLAN的主機分發組播數據。
圖1-4 基於子VLAN的組播VLAN配置組網圖
(1) 配置Switch A
# 使能IP組播路由。
<SwitchA> system-view
[SwitchA] multicast routing
[SwitchA-mrib] quit
# 創建VLAN 20,並將端口GigabitEthernet1/0/2加入該VLAN。
[SwitchA] vlan 20
[SwitchA-vlan20] port gigabitethernet 1/0/2
[SwitchA-vlan20] quit
# 在接口VLAN-interface20上配置IP地址,並使能PIM-DM。
[SwitchA] interface vlan-interface 20
[SwitchA-Vlan-interface20] ip address 1.1.1.2 24
[SwitchA-Vlan-interface20] pim dm
[SwitchA-Vlan-interface20] quit
# 創建VLAN 10,配置端口GigabitEthernet1/0/1為Hybrid端口,並允許VLAN 10的報文帶Tag通過。
[SwitchA] vlan 10
[SwitchA-vlan10] quit
[SwitchA] interface gigabitethernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] port link-type hybrid
[SwitchA-GigabitEthernet1/0/1] port hybrid vlan 10 tagged
[SwitchA-GigabitEthernet1/0/1] quit
# 在接口VLAN-interface10上配置IP地址,並使能IGMP。
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] ip address 10.110.1.1 24
[SwitchA-Vlan-interface10] igmp enable
[SwitchA-Vlan-interface10] quit
(2) 配置Switch B
# 全局使能IGMP Snooping。
<SwitchB> system-view
[SwitchB] igmp-snooping
[SwitchB-igmp-snooping] quit
# 創建VLAN 2,將端口GigabitEthernet1/0/2加入該VLAN,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 2
[SwitchB-vlan2] port gigabitethernet 1/0/2
[SwitchB-vlan2] igmp-snooping enable
[SwitchB-vlan2] quit
# 創建VLAN 3,將端口GigabitEthernet1/0/3加入該VLAN,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 3
[SwitchB-vlan3] port gigabitethernet 1/0/3
[SwitchB-vlan3] igmp-snooping enable
[SwitchB-vlan3] quit
# 創建VLAN 4,將端口GigabitEthernet1/0/4加入該VLAN,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 4
[SwitchB-vlan4] port gigabitethernet 1/0/4
[SwitchB-vlan4] igmp-snooping enable
[SwitchB-vlan4] quit
# 創建VLAN 10,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 10
[SwitchB-vlan10] igmp-snooping enable
[SwitchB-vlan10] quit
# 配置端口GigabitEthernet1/0/1為Hybrid端口,並允許VLAN 10的報文帶Tag通過。
[SwitchB] interface gigabitethernet 1/0/1
[SwitchB-GigabitEthernet1/0/1] port link-type hybrid
[SwitchB-GigabitEthernet1/0/1] port hybrid vlan 10 tagged
[SwitchB-GigabitEthernet1/0/1] quit
# 配置VLAN 10為組播VLAN,並把VLAN 2~VLAN 4都配置為該組播VLAN的子VLAN。
[SwitchB] multicast-vlan 10
[SwitchB-mvlan-10] subvlan 2 to 4
[SwitchB-mvlan-10] quit
# 顯示Switch B上所有組播VLAN的信息。
[SwitchB] display multicast-vlan
Total 1 multicast VLANs.
Multicast VLAN 10:
Sub-VLAN list(3 in total):
2-4
Port list(0 in total):
# 顯示Switch B上組播VLAN的所有組播組表項信息。
[SwitchB] display multicast-vlan group
Total 1 entries.
Multicast VLAN 10: Total 1 entries.
(0.0.0.0, 224.1.1.1)
Sub-VLANs (3 in total):
VLAN 2
VLAN 3
VLAN 4
由此可見,組播VLAN(VLAN 10)在各子VLAN(VLAN 2~VLAN 4)內維護組播組表項。
· 如圖1-5所示,三層交換機Switch A通過接口VLAN-interface20連接組播源(Source),通過接口VLAN-interface10連接二層交換機Switch B;Switch A上運行IGMPv2,Switch B上運行版本2的IGMP Snooping,並由Switch A充當IGMP查詢器。
· 組播源向組播組224.1.1.1發送組播數據,Host A~Host C都是該組播組的接收者(Receiver),且分別屬於VLAN 2~VLAN 4。
· 通過在Switch B上配置基於端口的組播VLAN,使Switch A通過組播VLAN向Switch B下分屬不同用戶VLAN的主機分發組播數據。
圖1-5 基於端口的組播VLAN配置組網圖
(1) 配置Switch A
# 使能IP組播路由。
<SwitchA> system-view
[SwitchA] multicast routing
[SwitchA-mrib] quit
# 創建VLAN 20,並將端口GigabitEthernet1/0/2加入該VLAN。
[SwitchA] vlan 20
[SwitchA-vlan20] port gigabitethernet 1/0/2
[SwitchA-vlan20] quit
# 在接口VLAN-interface20上配置IP地址,並使能PIM-DM。
[SwitchA] interface vlan-interface 20
[SwitchA-Vlan-interface20] ip address 1.1.1.2 24
[SwitchA-Vlan-interface20] pim dm
[SwitchA-Vlan-interface20] quit
# 創建VLAN 10,將端口GigabitEthernet1/0/1加入該VLAN。
[SwitchA] vlan 10
[SwitchA-vlan10] port gigabitethernet 1/0/1
[SwitchA-vlan10] quit
# 在接口VLAN-interface10上配置IP地址,並使能IGMP。
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] ip address 10.110.1.1 24
[SwitchA-Vlan-interface10] igmp enable
[SwitchA-Vlan-interface10] quit
(2) 配置Switch B
# 全局使能IGMP Snooping。
<SwitchB> system-view
[SwitchB] igmp-snooping
[SwitchB-igmp-snooping] quit
# 創建VLAN 10,將端口GigabitEthernet1/0/1加入該VLAN,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 10
[SwitchB-vlan10] port gigabitethernet 1/0/1
[SwitchB-vlan10] igmp-snooping enable
[SwitchB-vlan10] quit
# 創建VLAN 2,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 2
[SwitchB-vlan2] igmp-snooping enable
[SwitchB-vlan2] quit
# 創建VLAN 3,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 3
[SwitchB-vlan3] igmp-snooping enable
[SwitchB-vlan3] quit
# 創建VLAN 4,並在該VLAN內使能IGMP Snooping。
[SwitchB] vlan 4
[SwitchB-vlan4] igmp-snooping enable
[SwitchB-vlan4] quit
# 配置端口GigabitEthernet1/0/2為Hybrid類型,缺省VLAN為VLAN 2;允許VLAN 2和VLAN 10的報文不帶Tag通過。
[SwitchB] interface gigabitethernet 1/0/2
[SwitchB-GigabitEthernet1/0/2] port link-type hybrid
[SwitchB-GigabitEthernet1/0/2] port hybrid pvid vlan 2
[SwitchB-GigabitEthernet1/0/2] port hybrid vlan 2 untagged
[SwitchB-GigabitEthernet1/0/2] port hybrid vlan 10 untagged
[SwitchB-GigabitEthernet1/0/2] quit
# 配置端口GigabitEthernet1/0/3為Hybrid類型,缺省VLAN為VLAN 3;允許VLAN 3和VLAN 10的報文不帶Tag通過。
[SwitchB] interface gigabitethernet 1/0/3
[SwitchB-GigabitEthernet1/0/3] port link-type hybrid
[SwitchB-GigabitEthernet1/0/3] port hybrid pvid vlan 3
[SwitchB-GigabitEthernet1/0/3] port hybrid vlan 3 untagged
[SwitchB-GigabitEthernet1/0/3] port hybrid vlan 10 untagged
[SwitchB-GigabitEthernet1/0/3] quit
# 配置端口GigabitEthernet1/0/4為Hybrid類型,缺省VLAN為VLAN 4;允許VLAN 4和VLAN 10的報文不帶Tag通過。
[SwitchB] interface gigabitethernet 1/0/4
[SwitchB-GigabitEthernet1/0/4] port link-type hybrid
[SwitchB-GigabitEthernet1/0/4] port hybrid pvid vlan 4
[SwitchB-GigabitEthernet1/0/4] port hybrid vlan 4 untagged
[SwitchB-GigabitEthernet1/0/4] port hybrid vlan 10 untagged
[SwitchB-GigabitEthernet1/0/4] quit
# 配置VLAN 10為組播VLAN。
[SwitchB] multicast-vlan 10
# 將端口GigabitEthernet1/0/2到GigabitEthernet1/0/3加入組播VLAN 10。
[SwitchB-mvlan-10] port gigabitethernet 1/0/2 to gigabitethernet 1/0/3
[SwitchB-mvlan-10] quit
# 配置端口GigabitEthernet1/0/4也屬於組播VLAN 10。
[SwitchB] interface gigabitethernet 1/0/4
[SwitchB-GigabitEthernet1/0/4] port multicast-vlan 10
[SwitchB-GigabitEthernet1/0/4] quit
# 顯示Switch B上所有組播VLAN的信息。
[SwitchB] display multicast-vlan
Total 1 multicast VLANs.
Multicast VLAN 10:
Sub-VLAN list(0 in total):
Port list(0 in total):
GE1/0/2
GE1/0/3
GE1/0/4
# 顯示Switch B上動態組播組的IGMP Snooping轉發表項信息。
[SwitchB] display igmp-snooping group
Total 1 entries.
VLAN 10: Total 1 entries.
(0.0.0.0, 224.1.1.1)
Host slots (0 in total):
Host ports (3 in total):
GE1/0/2 (00:03:23)
GE1/0/3 (00:04:07)
GE1/0/4 (00:04:16)
由此可見,IGMP Snooping統一在組播VLAN(VLAN 10)中維護成員端口。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!