If you read my previous two post about Multicast ( Test Yourself- Basic Multicast & Configuring Multicast on WLC) , it is straight forward to configure multicast in a wireless network. Please read those two posts as I am not detailing those basic configuration here.
When it comes to practical deployment you need to test these things to understand how it works in real world. So I have lab it up in my office environment with following topology.IP phones are not required for this test, but used to make calls when network is busy with multicast.
I have enabled multicast streaming on my wired Laptop connected to DS01 & join to that stream by using wireless laptops & ipads. I used VLC media player to streaming & receiving multicast traffic. My source is 720p HD MP4 file usually take around 2-3 Mbps bandwidth when streaming.Below shows the bandwidth of my wired Laptop connected switch port during the testing. It is very important to understand your multicast applications bandwidth requirement specially when you are deploying it through wireless.
When I look at the receivers streaming session it is looks like below. Video quality is very bad & it is not viewable.
If I view this through a wired client, it is working perfectly. So what’s wrong with my wireless network. It is not congested as AP only serve few clients in my test set up. My clients are connected in 5GHz band & pretty much no interference. I have configured my WLC for platinum QoS profile & DSCP marked to video by when streaming traffic enter my wired network. There is nothing wrong which I can think of.
When I search for answer to this I found below in the WLC config Guide (Page 5-1) under configuring video stream. Here is the extract of that “IEEE 802.11 wireless multicast delivery mechanism does not provide a reliable way to acknowledge lost or corrupted packets, as a result if any multicast packet is lost in the air, it is not sent again which may cause an IP multicast stream unviewable“. This is pretty much what happened in my case & realized configuring Video Stream is the solution. What this do is ” Video Stream feature makes the IP multicast stream delivery reliable over the air, by converting the broadcast frame over the air into unicast frame. Each video stream client acknowledges receiving a video IP multicast stream “.
Here is the key points why we should configure Video Stream to support multicast application on wireless.
1. Multicast does not provide any MAC layer recovery on frame loss.
2. Video delivery (multicast) is at the highest mandatory data rates configured. Even client is associated with 802.11n data rates (max of 144 Mbps with 20MHz channel width) they cannot take any advantage of that to send these multicast traffic.
3. Wireless multicast does not prioritize video traffic even though DSCP marked by video server.
In addition to the above config guide I found below Video Stream Deployment Guide is very helpful.
I will write a separate post summarizing steps require to configure Video Stream with screen captures of GUI & CLI commands in near future.Stay tuned for that.
So finally once I configured this Video Stream feature on my WLC, things starts to work perfectly. Here is the video once I configured this video stream feature. I have tested it by joining to this multicast stream via 6-7 different wireless clients associated to the same AP & no quality degradation experienced.
Therefore bottom line is if there is no “Video Stream” feature configured then there is no multicast streaming on wireless network. (Note that if your application is using multicast only for session/service announcement, discovery or low-bandwidth consumption then things may work, but keep in mind when you add real multicast streaming then things won’t work as you expect)