Comcast Prioritizing Their Video Content Over Competitors Traffic, Here’s The Proof

[Updated 5/22: In a blog post, Comcast says they are not prioritizing traffic, but Level 3 says they are.]

Last year, when Comcast acquired NBC Universal they had to agree to terms as set forth by the Department Of Justice and the FCC regarding how they would treat competitive content delivered over their network. One of the points in that document says that, "Comcast shall not prioritize Defendants’ Video Programming or other content over other Persons’ Video Programming or other content." While Comcast agreed to these terms and said they would not prioritize their video traffic over someone like Netflix, that's exactly what they are doing.

Based on details I have gotten from those who have looked at how packets are marked on their home broadband connections provided by Comcast, packets are in fact being marked with Quality of Service tags. Services from MLB, Hulu and Netflix are marked with CS1 tags and Xfinity is marked as CS5. In tests, the Xfinity traffic originates from servers inside Comcast's network and the other traffic originates on Level 3 and Akamai servers outside Comcast's network. All of these QoS tags are put on by Comcast.

According to the IETF the QoS tags have the following definitions;

  • CS1: This service is the low class of service and effectively gets any bandwidth left after every other service has transmitted over the link. "The fundamental service offered to the Low-Priority Data service class is best-effort service with zero bandwidth assurance". This class gets any of the scraps left over after all other classes have had their packets forwarded.
  • CS5: This service is considered a high class of service that gets processed such that it is ensured to get forwarded: "The Signaling service class SHOULD use the Class Selector (CS) PHB, defined in [RFC2474]. This service class SHOULD be configured to provide a minimum bandwidth assurance for CS5 marked packets to ensure they get forwarded."

All Internet traffic from at least the cable modem termination system to the home cable modem shares exactly the same path. There is no "private IP network" between those points. While I don't know how the Comcast servers that deliver the Xfinity traffic connect to the cable modem termination system, and while that part could be part of a private network, I think that's unlikely.

The part of the network from the cable modem termination system to the homes is usually the most congested and that equipment in the cable modem termination system is capable of acting on those QoS tags and so could treat the traffic differently. What I don't know is if they are treating the two tags differently, but the tags are there. If they aren't making use of them why are they adding them?

And if they are using them I think you could then make a reasonable assertion that the spirit, if not the letter, of the DoJ statement is being broken by Comcast. I've put in a request to Comcast to see if they want to address this and will update the post once I hear back.

Updated: If you'd like to do this testing for yourself, here is a PDF that shows you how to do it.

  • http://ber.gd Dan Plyborn

    Hi Dan, you should really give credit to Bryan Berg (http://ber.gd) where it’s clear that you lifted this story from.

  • http://www.StreamingMediaBlog.com Dan Rayburn

    Hi Dan, that is an incorrect assumption on your part. Nothing was “lifted” from anyone else.
    The info I was sent came from a network operator who did testing of this and sent me the results. That’s what I wrote the story about, their data.
    Anyone who wants to collect this data can with simple software tools on a regular PC connected to their Internet connection.

  • Richard Bennett

    Could you share some pcap’s, or anything really, to prove your story wasnt lifted
    from Bryan’s blog? How about some sources?
    Please give some credit where due.

  • http://www.StreamingMediaBlog.com Dan Rayburn

    No, I’m not saying who sent me the testing data as they don’t want their company name involved. Also, you will notice some of the content that was tested was different. The data I ws sent also did a test on MLB, which wasn’t in Bryan’s post. I didn’t look at Bryan’s post when I wrote my piece, I took what I was sent and wrote the post from that.
    And the person who sent me the testing details also included a PPT file of how anyone could do the test, which I added to the post.

  • The Crowe

    Isn’t that PDF on the Level 3 slide deck?

  • Fanfoot

    Hey Dan,
    Glad to see you running with this. Seems like there are a few issues that could still use clarification, independent of the prioritization issue.
    The first is whether the Xfinity XBox traffic comes in over separate 6MHz QAM channels from the normal internet data traffic. I keep seeing posts suggesting it does, but in conversations with technical people who know how DOCSIS 3.0 works, this seems unworkable. Do you have any sources/data on that issue?

  • Counting Crowes

    Did anyone else find it interesting that they chose Seattle as the best location to serve their Bay Area CDN? Sending all those unicast streams over such a long distance sounds expensive, it’s no wonder they can’t afford to upgrade any of their connections.

  • http://www.StreamingMediaBlog.com Dan Rayburn

    @fanfoot – i don’t know, but others who are much smarter than me with this stuff are doing more testing and i suspect we’ll get more details soon on those results.

  • miar70

    Given the capture architecture, is it not possible that the marking is being applied by the outgoing ethernet port of the cable modem? This is relatively common for service providers especially those delivering IPTV type services (which I know this is not quite the same) over the home network to ensure that the content gets through even when someone else in the house decides to FTP or stream a lot of music/YouTube etc ?
    To know if the traffic is really prioritized over the shared segment you need to capture traffic with a passive DOCSIS analyzer.

  • internet janitor

    What is surprising to me is that anyone finds this surprising at all.
    The QAM channel separation is a specious argument. Most comcast subs don’t have Docsis-3 capable equipment. When I was a Comcast sub I had the same Docsis-2 modem for 6 years.

  • David Mays

    Your title states that Comcast is prioritizing their traffic and “here’s the proof” but you later admit that you haven’t any proof.
    “What I don’t know is if they are treating the two tags differently, but the tags are there.”
    It’s valid to ask the question about prioritization, but without having that proof or even a response from Comcast, is it really appropriate to levy the accusation?

  • David Mays

    Here’s a follow-up from Comcast’s CTO, Tony Werner.
    “It’s really important to us that we make crystal clear that, in contrast to some other providers, we are not prioritizing our transmission of Xfinity TV content to the Xbox (as some have speculated). While DSCP markings can be used to assign traffic different priority levels, that is not their only application — and that is not what they are being used for here.”
    http://blog.comcast.com/2012/05/the-facts-about-xfinity-tv-and-xbox-360-comcast-is-not-prioritizing.html
    So there you have it, from the horse’s mouth, so to speak. Comcast is NOT prioritizing packets.

  • miar70

    While that is one way to identify traffic it is not the only way, it would seem quite simple to identify the source ip address and netmask of the content servers in order to put them into a new DOCSIS service flow. The problem with using DSCP tags is that they are used to prioritize one packet over another and any QoS capable router/switch that has the functionality turned on will naturally handle higher priority packets first. If this were the only reason then they won’t mind switching the priority tags around ;)
    It is not surprising to me this is happening though and indeed as Comcast mentioned this is really no different than what AT&T do with their U-Verse service.

  • miar70

    The Level3 article is pretty damning considering the congestion throughput test cases that prove that prioritization is going on otherwise bandwidth should be equally shared…