Daily Archives: Friday, October 10, 2008

  • Comcast’s New Network Management Technique: Protocol Agnostic

    comcastlogo I got an email from Comcast titled "Improving Your Online Experience Through Congestion Management". After my previous experiences I’ve had with Comcast lately, I thought "great, now they’re going to screw over my bandwidth too". Generally, I’m pretty satisfied with their Internet service, even though their TV service sucks. I actually like their Powerboost, and I don’t think I’m paying too much money for the service.

    The email had no details in it whatsoever, and the FAQ said (emphasis mine):

    [The technique] will identify which customer accounts are using the greatest amounts of bandwidth and their Internet traffic will be temporarily managed until the period of congestion passes.

    The "managed" bit scared me a little bit. Saying you’re going to "manage" me for downloading too much sounds a bit like you’re going to send a hit man to my house to take me out. I decided to dig further and noticed they had a link to documents the filed with the FCC at the top right of the Comcast network management page. I had to read through 20 pages of boring crap, which is probably actually necessary to explain simple concepts to the FCC, in order to figure out exactly what this technique employs as its counter-congestion tactics.

    I plan to explain, in simple terms, how the new management technique works. Please ask any questions in the comments section.

    The important thing to realize about the new technique versus the old technique is that the new technique is protocol agnostic, meaning it doesn’t discriminate against certain kinds of traffic versus other types. For example, it doesn’t prioritize web surfing or VoIP calling above using BitTorrent to download the latest blockbuster movie *cough* Linux distribution release.

    Users hated Comcast for the previous incarnation of their network management, and the FCC forced them to stop it and come up with another protocol agnostic scheme. What they ended up with, is in my opinion, a fair process that doesn’t penalize anyone unless the network is in serious danger of being degraded, and even then, doesn’t actually do anything until it actually is degraded. I am, in a word, satisfied.

    All information and pictures that follow are from Comcast’s document and are probably copyrighted by Comcast, even though they were submitted to the FCC. I have a reasonable basis to believe I can reproduce this information for informative purposes.

    Comcast Network Design First, you must understand how your home cable connection reaches the Internet. Your home coax (screw on cable that connects to your modem) connects to an optical node in your neighborhood area, which then connects to a CMTS (Cable Modem Termination System) at the headend (local office), which then connects to a series of routers and finally to Comcast’s Internet backbone connections.

    Each of the CMTS boxes have a number of ports on them, with separate ports for downstream (stuff you download) and upstream (stuff you upload back to the Internet). Comcast says that there are about 275 cable modems, on average, sharing a downstream port, and about 100 sharing an upstream port. Your cable modem has what is called a "bootfile" which is assigned by the DOCSIS protocol on startup. The bootfile contains a lot of information about your cable service, perhaps most importly, how fast you can download/upload.

    The traffic management occurs based on activity at the CMTS ports and is actually applied with a combination of flags set on your cable modem and those flags being processed on Comcast’s routers.

    Comcast Upstream Congestion Management Decision Flowchart The process is really quite simple. Here’s how it works:

    1. Each port (keeping in mind it is either upload or download) is monitored independently.
    2. Each cable modem has a flag for its current state
      1. PBE – Priority Best Effort. The default state.
      2. BE – Best Effort. A lower priority state. PBE traffic is prioritized below BE.
    3. If a port reaches "Near Congestion State", which means that it has average over a certain threshold of utilization over a 15 minute period, network management will commence.
      1. Downstream threshold: 80% utilization
      2. Upstream threshold: 70% utilization
    4. The network searches for users on that CMTS port that are in an "Extended High Consumption State", which means they have averaged over a certain threshold of utilization over a 15 minute period.
      1. The user’s modem is set to BE.
      2. Downstream and upstream threshold: 70% utilization
    5. The network keeps the user in "Extended High Consumption State" until the user’s average utilization has dropped below the threshold for 15 minutes
      1. User’s modem is set back to PBE.
      2. Downstream and upstream threshold: 50% utilization
    6. When in the BE state, all PBE traffic will be processed by the Comcast Internet routers before the BE traffic, regardless of the type of traffic, however the likelihood of it reaching a congested status is very low, and even in that case, the probability of dropped traffic is even lower.

    This means, while doing my large USENET downloads, if the network is in danger of being congested, I’ll likely be set to BE. However, Comcast has been using several trial markets with this new technique, and they have this to say:

    For example, in Colorado Springs, CO, the largest test market, on any given day in August 2008, an average of 22 users out of 6,016 total subscribers in the trial had their traffic priority status changed to BE at some point during the day.

    NetForecast, Inc. explored the potential risk of a worst-case scenario for users whose traffic is in a BE state:  the possibility of “bandwidth starvation” in the theoretical case where 100 percent of the CMTS bandwidth is taken up by PBE traffic for an extended period of time.  In theory, such a condition could mean that a given user whose traffic is designated BE would be unable to effectuate an upload or download (as noted above, both are managed separately) for some period of time.  However, when these management techniques were tested, first in company testbeds and then in our real-world trials conducted in the five markets, such a theoretical condition did not occur.

    Comcast High Level Managemetn Flows

    I think it’s a very sane system, and I hope they continue to add bandwidth so that the network doesn’t get congested in the first place. However, I think this system is very fair, and a lot better than the previous one.

    Below, I reproduce the original email they sent me: