Multicast API Functions

emulation multicast group config

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:
Creates, modifies, or deletes multicast groups on Spirent HLTAPI. Use these multicast functions with the HLTAPI functions for the IGMP (for IPv4), MLD (for IPv6), and PIM protocols.

Synopsis:

Note: M indicates the argument is `Mandatory`.

      emulation multicast group config
           mode= {create|modify|delete} M
           handle= <multicast_group_pool_handle>
           ip_addr_start= {<a.b.c.d> |  <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>}
           ip_addr_step= <integer> | <a.b.c.d> | <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
           ip_prefix_len= <1-128>
           num_groups= <1-65535>
           pool_name= <group_pool_name>
           ip_group_mem_step= <a.b.c.d> | <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
           pool_name_index= <integer>
           count= <integer>

Arguments:

handle
                The handle of the multicast group to modify or delete.
                This argument is `Mandatory` for modify or delete mode but is
                not used for create mode.

ip_addr_start
                Specifies the first multicast group address in the group
                pool. The default for IPv4 is 224.0.0.1. If you do not enter
                an IPv6 address, the default IPv4 address is used.

ip_addr_step
                Specifies the amount by which to increment the first multicast
                group address to generate each subsequent group address in the
                group pool. This argument can be configured either in integer
                format or in IPv4 address format or in IPv6 address format.
                The IPv4 or IPv6 address is automatically converted to an
                integer value and then used as the address increment. Possible
                values range from 0 to 4294967295. The default value is 1.

ip_prefix_len
                Sets the bit in the address by which to change the step
                value to generate each subsequent address in the pool.
                Possible values range from 1 to 128. The default for IPv4
                addresses is 32. The default for IPv6 is 128.

mode
                Specifies the action to perform. Possible values are create,
                modify, or delete, This argument is `Mandatory`. The modes are
                described below::


                 create   Creates a multicast group pool.

                 modify   Changes the configuration parameters for the
                          multicast group identified by the handle argument.

                 delete   Deletes the multicast group pool specified by
                          handle.

num_groups
                Specifies the number of multicast groups in the group pool.
                Possible values range from 1 to 65535. The default is 1.

pool_name
                Assigns a name to the group pool.

pool_name_index
                Specifies the starting value of the index for the pool name.
                Dependency: pool_name

count
                Specifies the number of multicast groups. The
                default value is 1.

ip_group_mem_step
                Specifies the amount by which to increment the IP address
                between the specified multicast groups. This argument can
                be configured either in IPv4 address format or in IPv6
                address format. This argument is available for mode modify.

Arguments Unsupported by Save as HLTAPI:

None
Return Values:

Depending on the specific language that HLTAPI uses, the function returns a keyed list/dictionary/hash (See Introduction for more information on return value formats) using the following keys (with corresponding data):

handle    Identifies the handle of the multicast group pool that you
          configured using the emulation multicast group config
          function.

status    Success (1) or failure (0) of the operation.

log       An error message (if the operation failed).
Description:

The emulation multicast group config function creates, modifies, or deletes multicast groups. A multicast group is a set of recipients that all want to receive a particular data stream.

You specify the starting IP address (ip_addr_start) for this multicast group as well as the increment value by which other IP addresses will be created (ip_addr_step), the prefix length (ip_prefix_len), the number of groups in the pool (num_groups), and the name of the group pool (pool_name).

Data addressed to the starting IP address is forwarded to all members of the multicast group.

Use the mode argument to specify the action to perform. (See the mode argument description for information about the actions.)

Use this function to configure groups that will all receive the same data packets.

Note: This function is Mandatory by emulation igmp group config to
configure IGMP groups.

Examples:

The following example creates a multicast group containing five groups:

emulation multicast group config
      mode= create
      num_groups= 5

Sample Output:

{handles group01} {status 1}

The following example modifies the multicast groups IP addresses of the created multicast groups. It increments the IP addresses between the multicast groups by the ip_group_mem_step value.

set mld_ret [emulation mld config
mode= activate port_handle= $port1 count= 1 block_mode= one_network_per_block block_name_index= 1 vlan_id= 5 vlan_id_step= 1 vlan_id_count= 5 link_local_ipv6_addr= fe80::1 link_local_ipv6_addr_step= 0::1:0:0:0 intf_ipv6_addr= 2001::3 intf_ipv6_addr_step= 0:0:0:1::0 link_local_ipv6_prefix_len= 64 gateway_ipv6_addr= 2001::2 gateway_ipv6_addr_step= 0:0:0:1::0 mld_version= v2 expand= true device_group_mapping= one_to_one mcast_ipv6_addr= ff1e::2000 ignore_memberships= false mcast_group_count= 38 filtered_sources= custom src_ipv6_addr= 2003::1 src_count= 2 src_step= 4 src_ipv6_prefix= 128]

Sample Output:

 {param_handle emulateddevicegenparams1} {status 1} {handle {}} {handle_list {emulateddevice1 emulateddevice2 emulateddevice3 emulateddevice4 emulateddevice5}} {mld_handle_list {mldhostconfig1 mldhostconfig2 mldhostconfig3 mldhostconfig4 mldhostconfig5}} {mld_group_handle_list {mldgroupmembership1 mldgroupmembership2 mldgroupmembership3 mldgroupmembership4 mldgroupmembership5}} {multicast_group_handle_list {ipv6group1 ipv6group2 ipv6group3 ipv6group4 ipv6group5}} {handles {emulateddevice1 emulateddevice2 emulateddevice3 emulateddevice4 emulateddevice5}}

set multicast_group_hdl [keylget mld_ret multicast_group_handle_list]

set device_ret0_ipgroup_modify [emulation multicast group config
       mode=                                             modify
       handle=                                           $multicast_group_hdl
       ip_addr_start=                                    ff1e::2000
       ip_group_mem_step=                                ::38
       num_groups=                                       38 ]

Sample Output:

{status 1} {handle {ipv6group1 ipv6group2 ipv6group3 ipv6group4 ipv6group5}}

emulation multicast source config

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:
Creates, modifies, or deletes multicast sources on Spirent HLTAPI. Use this procedure with the emulation igmp group config (IGMPv3), emulation mld group config (MLD), and emulation pim group config (PIM) procedures. Source pool definitions might be shared among ports if supported by vendor.

Synopsis:

Note: M indicates the argument is `Mandatory`.

      emulation multicast source config
           mode= {create|modify|delete} M
           handle= <multicast_group_pool_handle>
           ip_addr_start= {<a.b.c.d> | <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>}
           ip_addr_step= <integer> | <a.b.c.d> | <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
           ip_prefix_len= <1-128>
           num_sources= <1-65535>
           pool_name= <source_pool_name>

Arguments:

handle
                The handle of the multicast source pool to modify or
                delete. This argument is `Mandatory` for modify or delete mode
                but is not used for create mode.

ip_addr_start
                Specifies the first multicast source address in the source
                pool. The default for IPv4 is 224.0.0.1. If you do not enter
                an IPv6 address, the default IPv4 address is used.

ip_addr_step
                Specifies the amount by which to increment the source address to
                generate each subsequent address in the pool. This argument can
                be configured either in integer format or in IPv4 address format
                or in IPv6 address format. The IPv4 or IPv6 address is automatically
                converted to an integer value and then used as the address increment.
                Possible values range from 0 to 4294967295. The default value is 1.

ip_prefix_len
                Sets the bit in the address by which to change the step
                value to generate each subsequent address in the pool.
                Possible values range from 1 to 128. The default for IPv4
                addresses is 32. The default for IPv6 is 128.

mode
                Specifies the action to perform. Possible values are create,
                modify, or delete, This argument is `Mandatory`. The modes are
                described below: :


                create
                         Creates a multicast source pool.

                modify
                         Changes the configuration parameters for the
                         multicast source identified by the handle argument.

                delete
                         Deletes the multicast source pool specified by
                         handle.

num_sources
                Specifies the number of multicast sources in the source pool.
                Possible values range from 1 to 65535. The default is 1.

pool_name
                Assigns a name to the source pool.

Arguments Unsupported by Save as HLTAPI:

None
Return Values:

Depending on the specific language that HLTAPI uses, the function returns a keyed list/dictionary/hash (See Introduction for more information on return value formats) using the following keys (with corresponding data):

handle    Identifies the handle of the multicast source pool that you
          configured using the emulation multicast source config
          function.

status    Success (1) or failure (0) of the operation.

log       An error message (if the operation failed).
Description:

The emulation multicast source config function creates, modifies, or deletes multicast sources (that is, the sources of multicast traffic). A multicast source is a host that sends data to a multicast group.

A source host sends data to a multicast group by setting the destination IP address of the datagram to be the multicast group address.

Before a host can send data to a multicast group, or join the list of recipients for a group, it must know the address of the multicast group. Use the emulation multicast source config function to specify the source IP addresses from which the host systems will receive multicast traffic.

Hosts who want to receive data from the multicast group join the group by sending a message to a multicast router on a local interface, using either IGMP (for IPv4 addresses) or MLD (for IPv6 addresses).

Use the mode argument to specify the action to perform. (See the mode argument description for information about the actions.)

Multicast routers communicate among themselves using a multicast routing protocol such as PIM.

Note: This function is Mandatory by the emulation igmp source config
function to configure IGMP sources.

Examples:

The following example creates a multicast source configuration:

emulation multicast source config
              mode= "create"
              ip_addr_start= $source_ip
              ip_addr_step= 1
              ip_prefix_len= 32
              num_sources= $num_sources
              pool_name= " PoolName "

Sample Output:

{handles multicastSourcePool1} {status 1}

emulation mcast wizard config

Execute Tester Command ${rt_handle} command=test_control <additional key=value arguments>

Purpose:

Spirent Extension (for Spirent HLTAPI only).

Creates or deletes the multicast routing topology, mapping the operations of Multicast Routing Wizard in the Spirent TestCenter GUI.

Synopsis:

Note: M indicates the argument is `Mandatory`.

      emulation mcast wizard config
             mode= {create|modify|delete} M
             port_handle_upstream= <ALPHANUM>  M
             port_handle_downstream= <ALPHANUM>  M
             handle= <ALPHANUM>
             mcast_protocol_upstream= {none | sm | ssm}
             sub_if_upstream= {true | false}
             vlan_id_upstream= <1-4095>
             igp_protocol= {none | ospf | isis | bgp}
             ipv4_prefix_len_upstream= <1-32>
             enable_bsr= {true | false}
             ipv6_prefix_len_upstream= <1-128>
             router_id_upstream= <4octet>
             ipv4_router_upstream= <a.b.c.d>
             ipv4_gw_addr_upstream= <a.b.c.d>
             ipv4_rp_addr_upstream= <a.b.c.d>
             ipv6_gw_addr_upstream= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_router_upstream= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_rp_addr_upstream= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             hosts_routers_per_port= <1-2000>
             hosts_routers_per_vlan= <1-2000>
             ipv4_prefix_len_downstream= <1-32>
             ipv6_prefix_len_downstream= <1-128>
             sub_if_count_downstream= <1-65535>
             sub_if_downstream= {true | false}
             vlan_id_downstream= <1-4095>
             vlan_id_step_downstream= <1-4095>
             ipv4_gw_addr_downstream= <a.b.c.d>
             ipv4_mcast_protocol_downstream= {sm | ssm | igmp_v1 | igmp_v2 | igmp_v3}
             ipv4_host_router_downstream= <a.b.c.d>
             ipv4_host_router_downstream_step= <a.b.c.d>
             ipv4_vlan_incr= <a.b.c.d>
             ipv6_gw_addr_downstream= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_mcast_protocol_downstream= {sm | ssm | mld_v1 | mld_v2}
             router_id_downstream= <4octet>
             ipv6_host_router_downstream= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_host_router_downstream_step= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_vlan_incr= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv4_base_group_addr= <a.b.c.d>
             ipv4_base_src_addr= <a.b.c.d>
             ipv4_base_group_addr_step= <a.b.c.d>
             ipv4_base_src_addr_step= <a.b.c.d>
             ipv4_group_port_step= <a.b.c.d>
             ipv4_group_vlan_step= <a.b.c.d>
             ipv4_src_port_step= <a.b.c.d>
             ipv4_src_vlan_step= <a.b.c.d>
             ipv6_base_group_addr= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_base_src_addr= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_base_group_addr_step= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_base_src_addr_step= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_group_port_step= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_group_vlan_step= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_src_port_step= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             ipv6_src_vlan_step= <aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh>
             create_traffic= {true | false}
             filter_mode= {include exclude}
             traffic_frame_size= <12-16383>
             groups_per_host= <1-2000>
             hosts_rx_same_groups= {true | false}
             ip_version= {v4 | v6}
             traffic_load= <0-100>
             ports_rx_same_groups= {true | false}
             src_addr_count_per_host= <1-2000>

Arguments:

port_handle_upstream
                Specifies the port handle on which you want to configure upstream
                hosts/routers for the Multicast Routing Wizard. The value
                uniquely identifies a port on a chassis. This argument is
                `Mandatory`.

port_handle_downstream
                Specifies the port handle on which you want to configure
                downstream device hosts/routers for the multicast wizard. The
                value uniquely identifies a port on a
                chassis. This argument is `Mandatory`.

handle
                A list of handles of hosts/routers to be created in the Multicast
                Routing Wizard. This argument is `Mandatory` for mode delete.

mode
                Specifies the action to perform on the test port. This argument
                is `Mandatory`. Possible values are:

                create
                          Creates the emulated multicast host/router
                          on the port specified by port handle

                delete
                          Deletes the multicast device host/router
                          identified by the handle argument

                The default value is create.

mcast_protocol_upstream
                Specifies the multicast protocol for upstream groups.
                Possible values are::


                 none       None
                 sm         PIMSM
                 ssm        PIMSSM

                The default value is sm.

sub_if_upstream
                 Enables or disables upstream subinterfaces. Possible values are
                 true (enable) and false (disable). The default value is false.

vlan_id_upstream
                Specifies the ID of the first VLAN in the upstream block. This
                argument is available when sub_if_upstream is enabled. Possible
                values range from 1 to 4095. The default value is 1.

igp_protocol
                Specifies the interior gateway protocol for upstream groups.
                Possible values are::


                 none          None
                 ospf          OSPF
                 isis          ISIS
                 bgp           BGP

                The default value is ospf.

ipv4_prefix_len_upstream
                Specifies the IPv4 prefix length on the upstream subnet.
                Possible values range from 1 to 32.
                The default value is 24.

enable_bsr
                Enables or disables Bootstrap messages. PIM routers enabled for
                bootstrap routing functionality generate Bootstrap messages
                periodically. Possible values are true (enable) and false
                (disable). The default value is false.

ipv6_prefix_len_upstream
                 Specifies the IPv6 prefix length on the upstream subnet.
                 Possible values range from 1 to 128.
                 The default value is 64.

router_id_upstream
                 Specifies the router ID of the upstream test port. The value
                 is a 4octet ID. The default value is 192.85.1.2.

ipv4_router_upstream
                Specifies the upstream router's IP address on the test port. The
                value is the first IPv4 address for the DUT if sub_if_upstream is
                enabled. The default value is 192.85.1.2.

ipv4_gw_addr_upstream
                Specifies the gateway/DUT IPv4 address. The default value is
                192.85.1.1.

ipv4_rp_addr_upstream
                Specifies the IPv4 address of the emulated Rendezvous Point (RP)
                router, a PIMSM router configured as the root of the multicast
                distribution tree. The default value is 192.0.2.0.

ipv6_gw_addr_upstream
                Specifies the IPv6 gateway/DUT address. The default value is
                2000::1.

ipv6_router_upstream
                Specifies the upstream router's IPv6 address on the test port.
                This argument is available when sub_if_upstream is enabled. The
                default value is 2000::2.

ipv6_rp_addr_upstream
                Specifies the IPv6 address of the emulated RP router. The default
                value is 2001:db8::1.

hosts_routers_per_port
                Specifies the number of emulated hosts or routers to create for
                each port. This argument is available when sub_if_downstream is
                disabled. Possible values range from 1 to 2000. The default value
                is 1.

hosts_routers_per_vlan
                Specifies the number of emulated hosts or routers to create for
                each VLAN. This argument is available when subinterfaces are
                enabled. Possible values range from 1 to 2000. The default value
                is 1.

ipv4_prefix_len_downstream
                Specifies the IPv4 prefix length on the downstream subnet.
                Possible values range from 1 to 32.
                The default value is 24.

ipv6_prefix_len_downstream
                Specifies the IPv6 prefix length on the downstream subnet.
                Possible values range from 1 to 128.
                The default value is 64.

sub_if_count_downstream
                Specifies the number of subinterfaces to create on the
                downstream port. Possible values range from 1 to 65535. The
                default value is 1.

sub_if_downstream
                Enables or disables downstream subinterfaces. Subinterfaces
                allow multiple routers and multiple VLANs to be created per port.
                Possible values are true (enable) and false (disable). The
                default value is false.

vlan_id_downstream
                Specifies the ID of the first VLAN in the downstream block. This
                argument is available when sub_if_downstream is enabled.
                Possible values range from 1 to 4095. The default value is 1.

vlan_id_step_downstream
                Specifies the step value by which to generate additional VLAN IDs.
                This argument is available when sub_if_downstream is
                enabled. Possible values range from 1 to 4095. The default value
                is 1.

ipv4_gw_addr_downstream
                Specifies the IPv4 address of the downstream network
                gateway/DUT. The default value is 192.85.1.1.

ipv4_mcast_protocol_downstream
                Specifies the IPv4 multicast protocol for downstream groups.
                Possible values are::


                 sm                PIMSM
                 ssm               PIMSSM
                 igmp_v1           IGMPv1
                 igmp_v2           IGMPv2
                 igmp_v3           IGMPv3

                The default value is igmp_v2.

ipv4_host_router_downstream
                Specifies the IP address of the first emulated downstream host or
                router. The default value is 192.85.1.2.

ipv4_host_router_downstream_step
                Specifies the step value by which to generate additional IP
                addresses for hosts or routers. The default value is 0.0.0.1.

ipv4_vlan_incr
                Specifies the step value by which to generate additional IPv4
                hosts/gateways. The value must be in IPv4 format. The default
                value is 0.0.1.0.

ipv6_gw_addr_downstream
                Specifies the IPv6 address of the first downstream gateway/DUT.
                The default value is 2000::1.

ipv6_mcast_protocol_downstream
                Specifies the IPv6 multicast protocol for downstream groups.
                Possible values are::


                 sm         PIMSM
                 ssm        PIMSSM
                 mld_v1     MLDv1
                 mld_v2     MLDv2

                The default value is mld_v1.

router_id_downstream
                Specifies the router ID of the downstream test port. This
                argument is available when ip_version is 6. The value must be
                a 4octet ID. The default value is 192.85.1.2.

ipv6_host_router_downstream
                Specifies the IPv6 address of the first emulated host or router.
                The default value is 2000::2.

ipv6_host_router_downstream_step
                Specifies the step value by which to generate additional IPv6
                hosts or routers. The value must be in IPv6 format. The default
                value is ::1.

ipv6_vlan_incr
                Specifies the step value by which to generate additional IPv6
                hosts/gateways. The value must be in IPv6 format. The default
                value is ::0.

ipv4_base_group_addr
                Specifies the multicast IPv4 address for the first group. The
                default value is 232.0.0.1.

ipv4_base_src_addr
                Specifies the IPv4 address for the first source.
                The default value is 10.1.1.2.

ipv4_base_group_addr_step
                Specifies the step value by which to generate additional IPv4
                group addresses. The default value is 0.0.0.1.

ipv4_base_src_addr_step
                Specifies the step value by which to generate additional
                source IPv4 addresses. The value must be in IPv4 format. The
                default value is 0.0.1.0.

ipv4_group_port_step
                Specifies the step value by which to generate additional group
                IPv4 addresses. The value must be in IPv4 format. The default
                value is 0.1.0.0.

ipv4_group_vlan_step
                Specifies the step value by which to generate additional VLAN
                IPv4 addresses. The value must be in IPv4 format. The default
                value is 0.0.1.0.

ipv4_src_port_step
                Specifies the step value by which to generate additional port
                IPv4 addresses. The value must be in IPv4 format. The default
                value is 0.1.0.0.

ipv4_src_vlan_step
                Specifies the step value by which to generate additional source
                VLAN IPv4 addresses. The value must be in IPv4 format. The
                default value is 0.0.1.0.

ipv6_base_group_addr
                Specifies the IPv6 multicast address for the first group.
                The default value is ff1e::1.

ipv6_base_src_addr
                Specifies the IPv6 address for the first source.
                The default value is 2000::1.

ipv6_base_group_addr_step
                Specifies the step value by which to generate additional group IPv6
                addresses. The value must be in IPv6 format. The default value is
                ::0:1.

ipv6_base_src_addr_step
                Specifies the step value by which to generate additional source
                IPv6 addresses. The value must be in IPv6 format. The default
                value is ::0:1.

ipv6_group_port_step
                Specifies the step value by which to generate additional
                port IPv6 addresses for multicast groups. The value must be in
                IPv6 format. The default value is 1::.

ipv6_group_vlan_step
                Specifies the step value by which to generate additional VLAN
                IPv6 addresses for multicast groups. The value must be in IPv6
                format. The default value is ::1:0.

ipv6_src_port_step
                Specifies the step value by which to generate additional source
                IPv6 addresses. The value must be in IPv6 format. The default
                value is ::1.

ipv6_src_vlan_step
                Specifies the step value by which to generate additional source
                VLAN IPv6 addresses. The value must be in IPv6 format. The
                default value is ::1:0.

create_traffic
                Enables or disables traffic. Possible values are true (enable)
                and false (disable). The default value is true.

filter_mode
                Specifies the IGMPv3 filter mode. Possible values are:

                include
                          Data from the specified sources are filtered and
                          forwarded to the hosts by the multicast router.

                exclude
                          Data from the specified sources are filtered and
                          not forwarded to the hosts by the multicast router.

                The default is include.

traffic_frame_size
                Specifies the frame size of the traffic.
                Possible values range from 12 to 16383.
                The default value is 1280.

groups_per_host
                Specifies the number of groups to be created for each host.
                Possible values range from 1 to 2000.
                The default value is 1.

hosts_rx_same_groups
                Specifies how groups are distributed across hosts on a port.
                Possible values are true and false. When set to true, all hosts
                on a port join the same groups. When set to false, all hosts on a
                port join different groups. The default value is true.

ip_version
                Specifies the IP version for the upstream/downstream traffic.
                Possible values are v4 and v6.
                The default value is v4.
traffic_load
                Specifies the traffic load in percentage.
                Possible values range from 0 to 100.
                The default value is 10.

ports_rx_same_groups
                Determines whether all ports will join the same group (true) or
                different groups (false). The default value is true.

src_addr_count_per_host
                Specifies the number of source addresses per host.
                Possible values range from 1 to 2000.
                The default value is 1.
Return Values:

Depending on the specific language that HLTAPI uses, the function returns a keyed list/dictionary/hash (See Introduction for more information on return value formats) using the following keys (with corresponding data):

handle                   The handle that identifies the Multicast Routing Wizard
                         configuration

upstream_handle          The handle that identifies the upstream Multicast Routing
                         Wizard configuration

downstream_handle        The handle that identifies the downstream Multicast Routing
                         Wizard configuration

streamblock_handle       The handle that identifies streamblocks created by the
                         Multicast Routing Wizard

status                   Success (1) or failure (0) of the operation

log                      An error message (if the operation failed)
Description:

The emulation mcast wizard config function configures multicast routing topology, mapping the operations of the Multicast Routing Wizard in the Spirent Test Center GUI.

It takes port_handle_upstream and port_handle_downstream as Mandatory inputs, and creates a multicast routing topology. Use the mode argument to specify the operation to perform. See the mode argument for a description of the actions.

Examples:

The following example creates a multicast routing topology:

set device_ret0 [emulation mcast wizard config
       mode=                                     create
       ip_version=                               v4
       port_handle_upstream=                   $port1
       port_handle_downstream=              $port2
       mcast_protocol_upstream=                sm
       sub_if_upstream=                        false
       vlan_id_upstream=                       100
       igp_protocol=                           ospf
       enable_bsr=                             true
       router_id_upstream=                     11.1.1.1
       ipv4_router_upstream=                    11.1.1.2
       ipv4_gw_addr_upstream=                  11.1.1.1
       ipv4_prefix_len_upstream=               24
       ipv4_rp_addr_upstream=                  3.3.3.3
       ipv6_gw_addr_upstream=                  2000::1
       ipv6_router_upstream=                   2000::2
       ipv6_prefix_len_upstream=               64
       ipv6_rp_addr_upstream=                  2000::10
       hosts_routers_per_port=                   1
       hosts_routers_per_vlan=                 1
       router_id_downstream=                     120.1.1.1
       ipv4_prefix_len_downstream=                24
       sub_if_downstream=                      false
       sub_if_count_downstream=                1
       vlan_id_downstream=                     100
       vlan_id_step_downstream=                2
       ipv4_gw_addr_downstream=                12.1.1.1
       ipv4_mcast_protocol_downstream=         sm
       ipv4_host_router_downstream=            12.1.1.2
       ipv4_host_router_downstream_step=       0.0.0.1
       ipv4_vlan_incr=                         1.1.1.1
       ipv6_gw_addr_downstream=                3000::1
       ipv6_mcast_protocol_downstream=         mld_v2
       ipv6_host_router_downstream=            3000::2
       ipv6_host_router_downstream_step=       ::1
       ipv6_vlan_incr=                         3000::11
       ipv6_prefix_len_downstream=             64
       ipv4_base_group_addr=                   224.0.0.10
       ipv4_base_group_addr_step=              0.0.0.1
       ipv4_group_port_step=                   0.0.0.1
       ipv4_group_vlan_step=                   0.0.0.1
       ipv6_base_group_addr=                   ff1e::1
       ipv6_base_group_addr_step=              ::1
       ipv6_group_port_step=                   ::1
       ipv6_group_vlan_step=                   ::1
       groups_per_host=                        1
       hosts_rx_same_groups=                   false
       ports_rx_same_groups=                   true
       filter_mode=                            exclude
       ipv4_base_src_addr=                     11.1.1.2
       ipv4_base_src_addr_step=                0.0.0.1
       ipv4_src_port_step=                     0.0.0.2
       ipv4_src_vlan_step=                     0.0.0.2
       ipv6_base_src_addr=                     4000::1
       ipv6_base_src_addr_step=                ::1
       ipv6_src_port_step=                     ::1
       ipv6_src_vlan_step=                     ::1
       src_addr_count_per_host=                1
       create_traffic=                         true
       traffic_frame_size=                     1208
       traffic_load=                           10
]

Sample output:

{upstream_handle {{port1 {{host_handle host1} {router_handle router1}}}}}
{downstream_handle {{port2 {{host_handle host2}}}}} {streamblock_handle
streamblock1} {handle mcastgenparams1} {status 1}

The following example removes the specified multicast routing topology:

set device_ret0 [emulation mcast wizard config
  mode=           delete
  handle=          "$mcast_hnd $upstream_router_handle $downstream_host_handle
                    $upstream_host_handle"
                    ]

Sample Output:

{status 1}

End of Procedure Header