0

My client is thinking about implementing a cloud-hosted video streaming solution for their company. Ideally they want to be able to have 3k+ users watch a video at the same time and have it be reasonable quality. I did some quick math and found that for 3k users to watch even just a 240p video at the same time, it would require a minimum of 1200Mb of bandwidth (based on Google's suggestions for YouTube content). Considering they have a 300Mb pipe now, that doesn't seem doable.

I have two main questions:

  1. Is my math even close to correct? I used the bare minimum value, added in 128Kb audio (audio added based on this post), and multiplied it by 3000 to get that number.
  2. How do large companies generally go about implementing these kinds of solutions? Do they simply have larger pipes or is there some sort of network optimization that's possible (like Riverbed appliances) to serve this kind of content more effectively?
  • Where are the users? Are they mostly grouped together in office buildings, for example, or are they scattered around the city/country/world? Are they really all watching at the same time? – Ron Trunk Oct 22 '15 at 12:44
  • They're all in one office building. 3000 is the conservative estimate for our max at once, there are actually twice that many in the building but I'm betting they won't all watch at the same time. The peak viewership will be for things like CEO announcements. They actually want to do live webcasts as well but I'm considering that a separate issue. – thanby Oct 22 '15 at 13:49
  • Would the viewers all be watching the same section of video at the same time (synchronous), or could each start from the beginning at any time (asynchronous)? – Ron Maupin Oct 22 '15 at 14:16
  • More than likely async. Users would likely be notified about the video by a company-wide email that would contain a link to it. Many of them would stop to watch at once, but not exactly the same time. But that's just one case, I'd like to know how other companies deal with these kinds of solutions on a daily basis (using it basically as an internal YouTube). – thanby Oct 22 '15 at 14:24
2

How do large companies generally go about implementing these kinds of solutions?

Various "trade secret" methods :-)

The most common method is "go distributed". Feed connections from many distributed -- "network-local" -- sites. The total bandwidth is still huge, but it's not crossing one monstrous link. (that also means a single failure, anywhere, will not kill you.)

If the viewers are all within a single network ("autonomous system", "enterprise lan", "campus"), distributed caching systems would be ideal. (eg. build your own mini-cdn) If they're all watching the same thing at the same time (ala broadcast TV), then multicast distribution is the answer. (that's how AT&T Uverse does it, btw.)

  • So even if the source of the content is a cloud service, it would still need to be cached/distributed inside the firewall to make it viable? – thanby Oct 23 '15 at 10:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.