The science of binge-watching

Imagine the year is 1998. Streaming your favorite shows on the Internet is but a pipe dream and you can’t stay informed of current events due to technical problems. Millions of people around the world are trying to access credible news sites at the same time, causing the server to crash.

Fast forward 20 years to the present, you and millions of people around the world can simultaneously access websites or watch your favorite series’ and movies on the Internet, without lag-time or interruption. This is thanks in part to Tim Brecht, a University of Waterloo computer scientist, who is funded by the Natural Sciences and Engineering Research Council of Canada (NSERC).

Dr. Brecht, who researched web servers and made watching Netflix a smooth, interruption-free experience, not only developed the technology but also reaps from its benefits in his personal life: “On Netflix I have been watching Friends with my family. It is nice to be able to watch 3-4 episodes in a row and to have that continuity.”

The service that Netflix provides is based on balanced servers. In the past, the company would have to buy more and more servers, to handle increased demand. Dr. Brecht’s research led to the development of techniques that made the servers substantially more efficient by making them able to simultaneously handle a greater number of users and requests. Today, the larger volume of video being streamed around the world means that their work has become critical to the user experience while watching services like Netflix.

Let’s delve into the specifics of what Dr. Brecht and his team did: There are two pivotal tasks that make it possible for users to smoothly watch Netflix. These tasks are called prefetching the data and serializing requests.

Prefetching means recognizing that the viewer is likely to continue watching the same video. This allows the server to predict ahead of time what requests are going to be coming in from each user and then prefetch the data and store it in memory until the viewer’s device requests it.

Here’s how Dr. Brecht explains it: “It’s going to the grocery store and buying one day’s worth of groceries versus a few days’ worth. Buying groceries every day is fine and you can eat and survive but this is pretty inefficient because you spend a good part of each day going to and from the grocery store. If you can predict ahead of time what you are going to eat for the next several days you could prefetch your groceries and store them in your fridge.” This is a much more efficient model, considering video data does not have a “Best Before” date.

Correspondingly, serialization is making sure that only one data request is dealt with at a time. It also makes sure that large requests are not split into smaller pieces—which slows down the delivery.

Still with the grocery store analogy, Dr. Brecht explains: “Imagine if instead of letting everyone into the grocery store at once, you serialized customers and only allowed one person into the store at a time to get their groceries, pay for them and leave. Their grocery shopping experience would be a lot more efficient.”

The project that led to these innovative discoveries required a collaborative effort from a group of people at Netflix, several faculty members, and graduate students who spent countless hours in the lab. Every breakthrough research project begins with an idea, and someone who sees its potential and can find the resources to fund it. None of the work on making web servers more efficient would have been possible without NSERC’s funding, which gave this work the support that it needed and the liftoff that it deserved.

Dr. Brecht’s work has been supported by NSERC Grants since 1994. When talking about the funding over the years provided for his research, Dr. Brecht says “The Discovery Grant provides me with a basis to start certain types of new research and to hopefully get it to the point where I can get a company interested. At that point, I can often obtain funding from the company, and if it’s a Canadian company, use a program like the CRD (Collaborative Research and Development) to obtain matching funding and really get the project off the ground.”

When Dr. Brecht spoke about the best part of the project for him, he admits it was his ability to test the technology while he was on sabbatical. “After all’s said and done, the best part is knowing that some of our ideas are now deployed in systems used by over 125 million subscribers all over the world,” Dr. Brecht says.

Up next

Advancing Reproductive Efficiency & Stress Management in Beef Heifers

The primary goal of a cow-calf operation is to produce one calf per cow per year. However, the journey to achieving this reproductive success is fraught with challenges influenced by a variety of factors, including genetics, nutritional status, and stress, each playing a crucial role in the performance of heifers.

Contact Newsletter

Get highlights of things happening at NSERC delivered to your email inbox. View all Newsletters

  • Twitter
  • Facebook
  • LinkedIn
  • Youtube
  • Instagram