This section provides an example for configuring clean switching of multiple multicast streams in two input multicast groups.
On the network shown in Figure 1, four multicast streams are input from source 1 and source 2 to switch 1 and switch 2, respectively. Switch 1 and switch 2 aggregate the multicast streams into input multicast groups 1 and 2, respectively. Each input multicast group contains four multicast streams. After the two multicast groups enter the router, the router outputs only the four multicast streams in multicast group 1 at the beginning. Output multicast group 1 retains the characteristics of the multicast streams. If clean switching is required, the controller delivers a switching instruction to the router so that the router outputs the content of multicast group 2.
Multicast Stream Characteristics |
Input Multicast Stream 1 |
Input Multicast Stream 2 |
Input Multicast Stream 3 |
Input Multicast Stream 4 |
Input Multicast Stream 5 |
Input Multicast Stream 6 |
Output Multicast Stream 7 |
Output Multicast Stream 8 |
---|---|---|---|---|---|---|---|---|
Source MAC address |
00e0-fc12-3456 |
00e0-fc12-3456 |
00e0-fc12-3456 |
00e0-fc12-3456 |
00e0-fc22-3456 |
00e0-fc22-3456 |
00e0-fc22-3456 |
00e0-fc22-3456 |
Source IP address |
10.10.10.10 |
10.10.10.10 |
10.10.10.10 |
10.10.10.10 |
12.12.12.12 |
12.12.12.12 |
12.12.12.12 |
12.12.12.12 |
Destination IP address |
225.0.0.1 |
225.0.0.2 |
225.0.0.3 |
225.0.0.4 |
225.0.0.1 |
225.0.0.2 |
225.0.0.3 |
225.0.0.4 |
Destination UDP port number |
10000 |
10001 |
10002 |
10003 |
10000 |
10001 |
10002 |
10003 |
The configuration roadmap is as follows:
Enable multicast NAT globally.
Create multicast NAT instances.
Create a multicast NAT instance group and add the multicast NAT instances to the group.
Configure traffic policies.
Enable multicast stream translation on an outbound interface and configure multicast stream translation parameters.
Configure a multicast NAT outbound group and add the specified output multicast streams to the multicast NAT outbound group.
Bind the multicast NAT outbound group to the multicast NAT instance group.
Configure clean switching of multicast streams in multicast groups.
<HUAWEI> system-view [~HUAWEI] multicast-nat enable
[~HUAWEI] multicast-nat instance id 1 name streamin1 [*HUAWEI-multicast-nat-instance-1] multicast-nat instance id 2 name streamin2 [*HUAWEI-multicast-nat-instance-2] multicast-nat instance id 3 name streamin3 [*HUAWEI-multicast-nat-instance-3] multicast-nat instance id 4 name streamin4 [*HUAWEI-multicast-nat-instance-4] multicast-nat instance id 5 name streamin5 [*HUAWEI-multicast-nat-instance-5] multicast-nat instance id 6 name streamin6 [*HUAWEI-multicast-nat-instance-6] multicast-nat instance id 7 name streamin7 [*HUAWEI-multicast-nat-instance-7] multicast-nat instance id 8 name streamin8 [*HUAWEI-multicast-nat-instance-8] commit [~HUAWEI-multicast-nat-instance-8] quit
[~HUAWEI] multicast-nat instance-group id 1 name streamingroup1 [*HUAWEI-multicast-nat-instance-group-1] assign instance id 1 part 1 [*HUAWEI-multicast-nat-instance-group-1] assign instance id 2 part 2 [*HUAWEI-multicast-nat-instance-group-1] assign instance id 3 part 3 [*HUAWEI-multicast-nat-instance-group-1] assign instance id 4 part 4 [*HUAWEI-multicast-nat-instance-group-1] commit [~HUAWEI-multicast-nat-instance-group-1] quit [~HUAWEI] multicast-nat instance-group id 2 name streamingroup2 [*HUAWEI-multicast-nat-instance-group-2] assign instance id 5 part 1 [*HUAWEI-multicast-nat-instance-group-2] assign instance id 6 part 2 [*HUAWEI-multicast-nat-instance-group-2] assign instance id 7 part 3 [*HUAWEI-multicast-nat-instance-group-2] assign instance id 8 part 4 [*HUAWEI-multicast-nat-instance-group-2] commit [~HUAWEI-multicast-nat-instance-group-2] quit
[~HUAWEI] interface GigabitEthernet0/1/0 [*HUAWEI-GigabitEthernet0/1/0] traffic-policy match1_mac_list inbound link-layer [*HUAWEI-GigabitEthernet0/1/0] multicast-nat inbound enable [*HUAWEI-GigabitEthernet0/1/0] commit [~HUAWEI-GigabitEthernet0/1/0] quit [~HUAWEI] interface GigabitEthernet0/1/1 [*HUAWEI-GigabitEthernet0/1/1] traffic-policy match2_mac_list2 inbound link-layer [*HUAWEI-GigabitEthernet0/1/1] multicast-nat inbound enable [*HUAWEI-GigabitEthernet0/1/1] commit [~HUAWEI-GigabitEthernet0/1/1] quit
[~HUAWEI] interface GigabitEthernet0/1/8 [*HUAWEI-GigabitEthernet0/1/8] multicast-nat outbound id 1 name out1_1 [*HUAWEI-GigabitEthernet0/1/8] multicast-nat outbound id 2 name out1_2 [*HUAWEI-GigabitEthernet0/1/8] multicast-nat outbound id 3 name out1_3 [*HUAWEI-GigabitEthernet0/1/8] multicast-nat outbound id 4 name out1_4 [*HUAWEI-GigabitEthernet0/1/8] commit [~HUAWEI-GigabitEthernet0/1/8] quit
[~HUAWEI] multicast-nat outbound-group id 1 name streamoutgroup1 [*HUAWEI-multicast-nat-outbound-group-1] assign outbound id 1 part 1 [*HUAWEI-multicast-nat-outbound-group-1] assign outbound id 2 part 2 [*HUAWEI-multicast-nat-outbound-group-1] assign outbound id 3 part 3 [*HUAWEI-multicast-nat-outbound-group-1] assign outbound id 4 part 4 [*HUAWEI-multicast-nat-outbound-group-1t] commit [~HUAWEI-multicast-nat-outbound-group-1] quit
[~HUAWEI] multicast-nat bind-list [~HUAWEI-multicast-nat-bind-list] multicast-nat outbound-group id 1 name streamoutgroup1 bind instance-group id 1 name streamingroup1 [*HUAWEI-multicast-nat-bind-list] commit [~HUAWEI-multicast-nat-bind-list] quit
[~HUAWEI] multicast-nat bind-list [~HUAWEI-multicast-nat-bind-list] multicast-nat outbound-group id 1 name streamoutgroup1 bind instance-group id 2 name streamingroup2 switch-mode clean-switch [*HUAWEI-multicast-nat-bind-list] commit [~HUAWEI-multicast-nat-bind-list] quit
# sysname HUAWEI # multicast-nat enable # multicast-nat instance id 1 name streamin1 multicast-nat instance id 2 name streamin2 multicast-nat instance id 3 name streamin3 multicast-nat instance id 4 name streamin4 multicast-nat instance id 5 name streamin5 multicast-nat instance id 6 name streamin6 multicast-nat instance id 7 name streamin7 multicast-nat instance id 8 name streamin8 # multicast-nat bind-list multicast-nat outbound-group id 1 name streamoutgroup1 bind instance-group id 2 name streamingroup2 switch-mode clean-switch # multicast-nat instance-group id 1 name streamingroup1 assign instance id 1 part 1 assign instance id 2 part 2 assign instance id 3 part 3 assign instance id 4 part 4 # multicast-nat instance-group id 2 name streamingroup2 assign instance id 5 part 1 assign instance id 6 part 2 assign instance id 7 part 3 assign instance id 8 part 4 # multicast-nat outbound-group id 1 name streamoutgroup1 assign outbound id 1 part 1 assign outbound id 2 part 2 assign outbound id 3 part 3 assign outbound id 4 part 4 # # undo telnet ipv6 server enable # diffserv domain default # diffserv domain 5p3d # undo soc # acl number 3001 rule 1 permit udp source 10.10.10.10 0 destination 225.0.0.1 0 destination-port eq 10000 acl number 3002 rule 1 permit udp source 10.10.10.10 0 destination 225.0.0.2 0 destination-port eq 10001 acl number 3003 rule 1 permit udp source 10.10.10.10 0 destination 225.0.0.3 0 destination-port eq 10002 acl number 3004 rule 1 permit udp source 10.10.10.10 0 destination 225.0.0.4 0 destination-port eq 10003 acl number 3005 rule 1 permit udp source 12.12.12.12 0 destination 225.0.0.1 0 destination-port eq 10000 acl number 3006 rule 1 permit udp source 12.12.12.12 0 destination 225.0.0.2 0 destination-port eq 10001 acl number 3007 rule 1 permit udp source 12.12.12.12 0 destination 225.0.0.3 0 destination-port eq 10002 acl number 3008 rule 1 permit udp source 12.12.12.12 0 destination 225.0.0.4 0 destination-port eq 10003 # acl number 4001 rule 1 permit source-mac 00e0-fc12-3456 acl number 4002 rule 1 permit source-mac 00e0-fc22-3456 # traffic classifier rule_ip1 operator or if-match acl 3001 traffic classifier rule_ip2 operator or if-match acl 3002 traffic classifier rule_ip3 operator or if-match acl 3003 traffic classifier rule_ip4 operator or if-match acl 3004 traffic classifier rule_ip5 operator or if-match acl 3005 traffic classifier rule_ip6 operator or if-match acl 3006 traffic classifier rule_ip7 operator or if-match acl 3007 traffic classifier rule_ip8 operator or if-match acl 3008 # traffic classifier rule_mac1 operator or if-match acl 4001 traffic classifier rule_mac2 operator or if-match acl 4002 # traffic behavior rule_ip1 multicast-nat bind instance id 1 name streamin1 traffic behavior rule_ip2 multicast-nat bind instance id 2 name streamin2 traffic behavior rule_ip3 multicast-nat bind instance id 3 name streamin3 traffic behavior rule_ip4 multicast-nat bind instance id 4 name streamin4 traffic behavior rule_ip5 multicast-nat bind instance id 5 name streamin5 traffic behavior rule_ip6 multicast-nat bind instance id 6 name streamin6 traffic behavior rule_ip7 multicast-nat bind instance id 7 name streamin7 traffic behavior rule_ip8 multicast-nat bind instance id 8 name streamin8 # traffic behavior rule_mac1 traffic-policy match1_ip_list1 ip-layer traffic behavior rule_mac2 traffic-policy match1_ip_list2 ip-layer # traffic policy match1_ip_list1 share-mode classifier rule_ip1 behavior rule_ip1 precedence 1 classifier rule_ip1 behavior rule_ip2 precedence 2 classifier rule_ip1 behavior rule_ip3 precedence 3 classifier rule_ip1 behavior rule_ip4 precedence 4 traffic policy match1_ip_list2 share-mode classifier rule_ip5 behavior rule_ip5 precedence 1 classifier rule_ip6 behavior rule_ip6 precedence 2 classifier rule_ip7 behavior rule_ip7 precedence 3 classifier rule_ip8 behavior rule_ip8 precedence 4 # traffic policy match1_mac_list share-mode classifier rule_mac1 behavior rule_mac1 precedence 1 classifier rule_mac2 behavior rule_mac2 precedence 2 # traffic policy match2_mac_list2 share-mode classifier rule_mac2 behavior rule_mac2 precedence 2 # interface GigabitEthernet0/1/0 undo negotiation auto undo shutdown multicast-nat inbound enable traffic-policy match1_mac_list inbound link-layer # interface GigabitEthernet0/1/1 undo negotiation auto undo shutdown multicast-nat inbound enable traffic-policy match2_mac_list2 inbound link-layer # interface GigabitEthernet0/1/8 undo shutdown multicast-nat outbound id 1 name out1_1 multicast-nat outbound id 2 name out1_2 multicast-nat outbound id 3 name out1_3 multicast-nat outbound id 4 name out1_4 # return