Friday, March 20, 2009

Netflix Trying for Consistent Excellence on Streaming

This is Neil Hunt, Chief Product Officer at Netflix.

There’s been some blog swirl about Netflix streaming delivery, and I’d like to explain what we are doing to improve our streaming delivery. Our aspiration is to deliver to everyone the best bitrate that their broadband connection can support.

Congestion Could Affect Some Users, But Not Others, at Some Times, but Not Always

Content from Netflix originates on CDN servers that are distributed around the US (just as our DVD shipping centers are) so that the data doesn’t have to traverse the Internet backbones to get to our customers, but instead can usually reach its destination via regional and metro networks that have much higher aggregate bandwidth. This means that if there is any congestion and slowdown, it will be different in different regions (by Internet topology, which isn’t completely tied to geography). Hence some customers may be affected, while others are not. Also, routing to different ISPs in the same region may be quite different, thus performance may also be quite different, even for neighbors, if they are connected to different ISPs. Moreover, congesting points can rise and fall with ISP configuration changes and other conditions.

Different Content, Different Devices, Different Characteristics

Finally, different titles, and different encodes for different playback device types, may come from different CDNs or different servers at a particular CDN, so may have different paths and different bottlenecks. Accordingly, customers may see better performance on Xbox than their PC, or vice-versa. Equivalently, some titles may stream unaffected, while others suffer congestion. There is no purposeful discrimination between different clients – we want them all to perform very well.

Getting to More Consistent Delivery by Routing Around the Problems

Our engineering team is working to multi-source most content, so that there are many possible alternatives in case of regional congestion (as long as the congestion isn't in the customer's home or last-mile infrastructure, in which case there is little we can do). Our newest Silverlight player (for Mac and PC) incorporates an initial version of multi-sourcing, and as we improve it, we’ll roll it out to everyone including our device partners such as Roku and Xbox. We hope by the end of year to have this problem largely solved.

In Home Congestion

While not a server issue, let me touch on in-home congestion. It’s relatively obvious that if you have another PC in your home downloading large files, your home network or you last-mile network may be impacted. What’s less obvious is that even heavy upstream traffic can be a problem by impeding the flow of acknowledgement packets back to the servers, which respond by sending smaller and smaller packets in case the data gets damaged in transit. Since most home broadband has much lower upstream bandwidth than downstream, it’s quite easy to saturate the upstream direction with a PC-backup application, or a Skype-video call, for example.