Contents

Introduction

Prerequisites

Requirements

Components Used

Configure

Network Diagram

Traffic Flow

Configure Multicast

Media Stream Configuration

Configure Band Media Stream

Configure Client VLAN

WLAN Configuration

Policy Profile Configuration

Create Policy TAG

Apply Policy Tag to AP

Verify

Commands to Review the Configuration

Commands to Verify Client's Video Stream

Troubleshoot

Introduction

This configuration example describes how to configure VideoStream (also known as MediaStream or Multicast-Direct) on a Catalyst 9800 Series Wireless Controllers (9800 WLC) through the Graphic User Interface (GUI).

Prerequisites

Requirements

Cisco recommends that you have knowledge of these topics:

- 9800 WLC configuration guide

- Multicast on a WLC

Components Used

The information in this document is based on these software and hardware versions:

- Catalyst 9800 Series Wireless Controllers, IOS-XE version 16.11.1b

- Aironet 3700 Series Access Points

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any configuration.

Configure

Network Diagram

This example is based on local mode APs centrally switching traffic. FlexConnect local switching is supported but the flow would differ there as the multicast does not go through the WLC, the AP is the one doing most of the work.

Traffic Flow

1. The client (multicast receiver) connects to Service Set Identifier (SSID): videoStream

2. The client sends IGMP join packet to request the video on IP address 239.15.16.17

3. WLC creates L3 MGID and forwards IGMP join to the wired network

4. The router will start forwarding traffic from the multicast source (10.88.173.135) to the WLC, multicast routing is needed between VLAN 210 and VLAN 2631

5. WLC knows a wireless client is asking for this traffic, via MGID, and encapsulates the traffic  to send it to the AP using IP address 239.1.2.3 - AP multicast group

6. AP receives the packet and unicasts the multicast traffic to the wireless client

Configure Multicast

Navigate to:  Configuration > Services > Multicast

Run the next command to verify the CLI configuration.

9800-40-1#sh run all | sec wireless multicast|igmp snooping

.

.

ip igmp snooping querier

ip igmp snooping

.

.

wireless multicast

wireless multicast 239.1.2.3

For this example, multicast mode is used. In this mode WLC only sends one packet to the configured multicast group (in this case 239.1.2.3)  so only Access Points (AP) interested in this traffic can listen to it. For more information on what modes can be configured, review this 9800 Series Wireless Controller Software Configuration Guide.

Note: It is needed to enable IGMP Snooping globally and on a per VLAN basis so WLC can snoop on wireless client's IGMP messages.

IGMP Snooping Querier helps to update the WLC table. It is helpful to verify if any client exists for a particular multicast group.

Apply changes.

Media Stream Configuration

Step 1. Enable Media Stream globally: Configuration > Wireless > Media Stream > Tab "General"

Step 2. Define media stream: Configuration > Wireless > Media Stream > Tab "Streams"

Step 3. Enter the stream information as shown on the image:

Run the next command to verify the CLI configuration.

9800-40-1#sh run | sec media

.

wireless media-stream group movie 239.15.16.17 239.15.16.17

max-bandwidth 5000

wireless media-stream multicast-direct

.

.

Stream Information

- Name: use any string to reference to your multicast traffic

- Multicast Destination Start/End: defines a multicast group range that clients can access to stream the video. In this case, only one IP address is used.

- Maximum Expected bandwidth: video bandwidth and it is configured in Kbps. Range goes from 0 to 35000 Kbps

Radio Reservation Control (RRC)

It is a decision algorithm used by WLC and AP to assess whether AP holds enough resources to support the new request for the video stream.

- Average packet size: range from 0 to 1500 bytes

- Policy: select admit so in case RRC accepts the stream request, video can be streamed.

- Priority: select the QoS Up marking for over the air packets

- QoS: select queue where video packages are placed when transmitted by the AP.

- Violation: In case RRC declines the request stream can be dropped or fallback to the best effort queue.

Configure Band Media Stream

For this example, the media stream is configured for the 5GHz band, the same steps apply for the 2.4GHz band.

Step 1. Disable 5 Ghz band: Configuration > Radio Configurations > Network > Tab 5 Ghz Band

Step 2. Configure band media parameters:  Configuration > Radio Configurations > Media Parameters >Tab 5 Ghz Band

Run the next command to verify the CLI configuration.

9800-40-1#sh run all | i 5ghz media|cac media

.

.

ap dot11 5ghz cac media-stream acm

ap dot11 5ghz cac media-stream max-bandwidth 80

ap dot11 5ghz cac media-stream multicast-direct max-retry-percent 80

ap dot11 5ghz cac media-stream multicast-direct min-client-rate 6

ap dot11 5ghz media-stream multicast-direct

ap dot11 5ghz media-stream multicast-direct admission-besteffort

ap dot11 5ghz media-stream multicast-direct client-maximum 0

ap dot11 5ghz media-stream multicast-direct radio-maximum 0

ap dot11 5ghz media-stream video-redirect

Note: Media Stream Admission Control and Best Effort QoS Admission are optional configurations

General

- Unicast Video Redirect: allows unicast video flow to wireless clients.

Multicast Direct Admission Control

- Media Stream Admission Control - we enable CAC for media = voice + video.

Media Stream - Multicast Direct Parameters

- Multicast Direct Enable: you  must enable this checkbox

- Max stream per Radio: limits the number of video streams allowed on an AP radio, in this case, 5Ghz radio.

- Max stream per Client: limits the number of video streams permitted for each wireless client.

- Best Effort QoS Admission: allows to fallback video traffic to the best-effort queue.

Step 3. Enable 5 Ghz band: Configuration > Radio Configurations > Network >Tab 5 Ghz Band

Configure Client VLAN

Create VLAN used for clients and enable IGMP Snooping. Navigate to Configuration > Layer 2 > VLAN

Run the next command to verify the CLI configuration.

9800-40-1#sh run | sec 2631

vlan 2631

name rafa-mgmt

WLAN Configuration

For this example, an open authentication SSID is used, broadcasted only on the 5GHz band. Follow the next steps.

Navigate to: Configuration > Tags & Profiles >  WLANs > Click on Add

Run the next command to verify the CLI configuration.

9800-40-1#sh run | sec videoStream

wlan videoStream 4 videoStream

media-stream multicast-direct

radio dot11a

no security wpa

no security wpa akm dot1x

no security wpa wpa2 ciphers aes

no shutdown

Policy Profile Configuration

Step 1. Create a Policy Profile. Configuration > Tag & Profiles > Policy

Step 2. Map VLAN to the Policy profile

Run the next command to verify the CLI configuration.

9800-40-1#sh run | sec PP-stream

wireless profile policy PP-stream

vlan rafa-mgmt

no shutdown

Create Policy TAG

Map WLAN to Policy Profile, navigate to Configuration > Tag & Profiles > Tags

Run the next command to verify the CLI configuration.

9800-40-1#sh run | sec PT-mcast

wireless tag policy PT-mcast

wlan videoStream policy PP-mcast

policy-tag PT-mcast

Apply Policy Tag to AP

Navigate to Configuration > Wireless > Access Point > click on the AP

Run the next command to verify the configuration.

9800-40-1#show ap tag summary

Number of APs: 2

AP Name       AP Mac             Site Tag Name  Policy Tag Name   RF Tag Name

-------------------------------------------------------------------------------

AP-3702i-Rafi f07f.06e2.7db4   default-site-tag    PT-mcast     default-rf-tag

At this point, you can see the SSID broadcasted and you can connect the wireless client to receive the video stream.

Verify

Commands to Review the Configuration

9800-40-1#show wireless media-stream multicast-direct state

Multicast-direct State........................... : enabled

Allowed WLANs:

WLAN-Name WLAN-ID

----------------------------------------------------------

emcast 3

videoStream 4

9800-40-1#show wireless media-stream group summary

Number of Groups:: 1

Stream Name Start IP End IP Status

-----------------------------------------------------------------------------------------------------------------

movie 239.15.16.17 239.15.16.17 Enabled

9800-40-1#show wireless media-stream group detail movie

Media Stream Name : movie

Start IP Address : 239.15.16.17

End IP Address : 239.15.16.17

RRC Parameters:

Avg Packet Size(Bytes) : 1200

Expected Bandwidth(Kbps) : 5000

Policy : Admitted

RRC re-evaluation : Initial

QoS : video

Status : Multicast-direct

Usage Priority : 4

Violation : Drop

9800-40-1#show ap dot11 5ghz media-stream rrc

Multicast-direct : Enabled

Best Effort : Enabled

Video Re-Direct : Enabled

Max Allowed Streams Per Radio : Auto

Max Allowed Streams Per Client : Auto

Max Media-Stream Bandwidth : 80

Max Voice Bandwidth : 75

Max Media Bandwidth : 85

Min PHY Rate (Kbps) : 6000

Max Retry Percentage : 80

Commands to Verify Client's Video Stream

To verify clients connection: Monitoring > Wireless > Clients

9800-40-1#show wireless client summary

Number of Local Clients: 1

MAC Address AP Name Type ID State Protocol Method Role

-------------------------------------------------------------------------------------------------------------------------

886b.6e25.1e40 AP-3700i-Rafi WLAN 4 Run 11ac None Local

In order to have more detail

9800-40-1#show wireless client mac-address aaaa.bbbb.cccc detail

To verify IGMP Join message is received from the client and WLC created the MGID correctly, navigate to Monitor > General > Multicast > Layer 3Above shows, the client has requested traffic for multicast group 239.15.16.17 on VLAN 2631.

To verify WLC video streams with the configured options. Monitor > General > Multicast > Media Stream Clients

9800-40-1#show wireless multicast group 239.15.16.17 vlan 2631

Group : 239.15.16.17

Vlan : 2631

MGID : 4160

Client List

-------------

Client MAC Client IP Status

---------------------------------------------------------------

886b.6e25.1e40 172.16.30.64 MC2UC_ALLOWED

Troubleshoot

In order to troubleshoot the problem, you can use the next traces.

set platform software trace wncd chassis active R0 multicast-api debug

set platform software trace wncd chassis active R0 multicast-config debug

set platform software trace wncd chassis active R0 multicast-db debug

set platform software trace wncd chassis active R0 multicast-ipc debug

set platform software trace wncd chassis active R0 multicast-main debug

set platform software trace wncd chassis active R0 multicast-rrc debug

You can verify with the next command if traces were activated correctly.

9800# show platform software trace level wncd chassis active R0 | i Debug

multicast-api Debug

multicast-config Debug

multicast-db Debug

multicast-ipc Debug

multicast-main Debug

multicast-rrc Debug

Now, reproduce the problem

1. connect the wireless client

2. request video (multicast traffic)

3. wait for the problem to occur

4. collect the logs

In order to collect the logs. Execute run the next command.

9800#show logging process wncd internal to-file bootflash:<file-name>.log

Displaying logs from the last 0 days, 0 hours, 10 minutes, 0 seconds

executing cmd on chassis 1 ...

Files being merged in the background, result will be in bootflash:mcast-1.log log file.

Collecting files on current[1] chassis.

# of files collected = 1

btrace decoder: [1] number of files, [40999] number of messages

will be processed. Use CTRL+SHIFT+6 to break.

2019-11-28 20:25:50.189 - btrace decoder processed 7%

2019-11-28 20:25:50.227 - btrace decoder processed 12%

2019-11-28 20:25:50.263 - btrace decoder processed 17%

2019-11-28 20:25:50.306 - btrace decoder processed 24%

2019-11-28 20:25:50.334 - btrace decoder processed 29%

2019-11-28 20:25:50.360 - btrace decoder processed 34%

2019-11-28 20:25:50.388 - btrace decoder processed 39%

2019-11-28 20:25:50.430 - btrace decoder processed 46%

2019-11-28 20:25:50.457 - btrace decoder processed 51%

2019-11-28 20:25:50.484 - btrace decoder processed 56%

2019-11-28 20:25:50.536 - btrace decoder processed 63%

2019-11-28 20:25:50.569 - btrace decoder processed 68%

2019-11-28 20:25:50.586 - btrace decoder processed 73%

2019-11-28 20:25:50.587 - btrace decoder processed 78%

2019-11-28 20:25:50.601 - btrace decoder processed 85%

2019-11-28 20:25:50.607 - btrace decoder processed 90%

2019-11-28 20:25:50.619 - btrace decoder processed 95%

2019-11-28 20:25:50.750 - btrace decoder processed 100%

9800#

Open the log file

9800#more bootflash:<file-name.log>

Video stream allowed in AP/WLC

IGMP request from wireless client

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-ipc] [19375]: (debug): IOSD IGMP/MLD has sent the WNCD_INFORM_CLIENT with

capwap id = 0x90000006

num_entry = 1

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-ipc] [19375]: (debug): Source IP Address 0.0.0.0

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-ipc] [19375]: (debug): Group IP Address 17.16.15.239

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-ipc] [19375]: (debug): Client IP Address 71.30.16.172

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-ipc] [19375]: (debug): index = 0:

source = 0.0.0.0

group = 17.16.15.239 .    >>> 239.15.16.17 multicast group for video

client_ip = 71.30.16.172  >>> 172.16.30.71 client ip address

client_MAC = a4f1.e858.950a

vlan = 2631, mgid = 4160 add = 1

.....

MGID table updated with client mac address

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-db] [19375]: (debug): Child table records for MGID 4160 are

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-db] [19375]: (debug): Client MAC: a4f1.e858.950a

....

Starting RRC algoithm to assess whether AP has enough resources or not

2019/11/28 20:18:54.867 {wncd_x_R0-0}{1}: [multicast-rrc] [19375]: (debug): Submiting RRC request

2019/11/28 20:18:54.869 {wncd_x_R0-0}{1}: [multicast-rrc] [19375]: (debug): Video Stream Admitted: passed all the checks

2019/11/28 20:18:54.869 {wncd_x_R0-0}{1}: [multicast-rrc] [19375]: (debug): Approve Admission on radio f07f.06ec.6b40 request 3664 vlan 2631 dest_ip 17.16.15.239 decision 1 qos 4 admit_best 1

.....

WLC matching requested group to the ones defined on WLC

2019/11/28 20:18:54.869 {wncd_x_R0-0}{1}: [multicast-db] [19375]: (debug): Matching video-stream group found Start IP: 17.16.15.239, End IP: 17.16.15.239 that contains the target group IP address 17.16.15.239

.....

Adding client to multicast direct

2019/11/28 20:18:54.869 {wncd_x_R0-0}{1}: [multicast-db] [19375]: (debug): Add rrc Stream Record for dest 17.16.15.239, client a4f1.e858.950a

Video stream not allowed in AP/WLC, therefore, AP sends multicast traffic on the best-effort queue.

In this case, the wireless client is allowed to do video streaming but AP has not enough resources to allow traffic with video QoS, therefore AP moves the client to the best-effort queue. See the next image

From debugs

Starting RRC algoithm to assess whether AP has enough resources or not

.....

2019/11/28 17:47:40.601 {wncd_x_R0-0}{1}: [multicast-rrc] [19375]: (debug): Submiting RRC request

2019/11/28 17:47:40.603 {wncd_x_R0-0}{1}: [multicast-rrc] [19375]: (debug): RRC Video BW Check Failed: Insufficient Video BW for AP

2019/11/28 17:47:40.603 {wncd_x_R0-0}{1}: [multicast-rrc] [19375]: (debug): Video Stream Rejected. Bandwdith constraint......

2019/11/28 17:47:40.603 {wncd_x_R0-0}{1}: [multicast-rrc] [19375]: (debug): Approve Admission on radio f07f.06ec.6b40 request 3626 vlan 2631 dest_ip 17.16.15.239 decision 0 qos 0 admit_best 1

....