Thursday, August 9, 2018

What kind of Internet services do content providers like Netflix buy? And how does this differ from the kind of service a consumer buys?

I'm going to try and answer the question myself a little bit, so please point out any flaws in what I think the answer to this question is if you see them :)

Also let me know if this is the wrong subreddit to post this question in, thanks!

I'm an EECS college student interested in networking. I have been learning about how the internet works and its history, as well as the protocols, hardware, and companies are that make the internet work. I think I understand a lot about networking from a consumer perspective: I pay an ISP that is probably a tier 3 provider and they probably own the last mile of internet connection from my house to a Point of Presence(POP) in a city near me. That tier 3 provider only charges me for the data sent between that POP and my home, no matter where that data is coming from. Even if data came from a far away server and had to go through many intermediate networks, peering agreements, and interconnection points (that might cost these in between companies money to maintain), I still only pay for the data from the POP near me to my house. This seems like a great system for my local ISP since it probably costs more calculate my bill depending on where i am getting traffic from then the minuscule amount of traffic I am actually sending or requesting from outside my local network (due to things like CDNs putting content much closer to my local ISPs network).

If this is the case. Then if I wanted to be Netflix, I could serve traffic from my home to anyone around the world, up to the max speed of the internet package I purchased, and my bill would still be the same, even if all of my customers were based around the world from me. However, my traffic would then be susceptible to being slowed down due to congestion in any of the hops in between through interconnection points in ISPs and things like that. Also my ISP might have a max speed available to me, and if I wanted to provide more content than that bandwith allows, I would probably have to negotiate a deal with my ISP to get an uplink of appropriate speed and at some agreed bandwith usage. I can see this agreement charging me based on where my content is going since the ISP might have to pay a lot more if I am sending substantial traffic to somewhere far away on another network. Alternatively, I could pay a CDN like Akamai, to put serve my traffic from edge servers put closer to my customers, reducing the effects that spontaneous congestion might have on my traffic. I would then pay my local ISP for enough bandwith to connect to Akamai servers that are close to me, and probably not have to pay much extra since I am not going through lots of interconnections. Akamai would probably have to pay for internet service that has lots of interconnections and agree to peering agreements however.

I heard that Netflix was trying to make its own CDN, and that means it could potentially have to start paying for interconnection points were it couldn't get a free peering agreement. This means Netflix had to pay Comcast for example since Comcast didn't want to peer for free (side note - why would companies not want to charge Netflix for peering agreements for Netflix's CDN traffic? Netflix only really needs to send data in one direction so wouldn't the be an imbalance in traffic at the peering point?). Then I read that Netflix had to buy a direct connection to Comcast. But this doesn't make that much sense to me. Shouldn't Netflix just be able to make an agreement with a local ISP for some amount of traffic, and then pay that ISP based on how much the ISP has to pay for sending all of this traffic (which means paying for additional interconnection fees that ISPs might need to pay if Netflix has a lot of traffic leaving the local network)?

I think I am getting kind of lost and confused even trying to explain this. But my main question is: What kind of internet service is Netflix (or a similar content provider) paying for? Who are they paying? And how does this differ from how a consumer level internet connection is paid for? Why can't Netflix just buy a 10 GBps up/down connection for each of it's datacenters/CDN boxes?



No comments:

Post a Comment