{"id":5425,"date":"2009-02-24T15:10:12","date_gmt":"2009-02-24T23:10:12","guid":{"rendered":"http:\/\/bennett.com\/blog\/?p=5425"},"modified":"2009-02-24T15:10:12","modified_gmt":"2009-02-24T23:10:12","slug":"perils-of-content-neutrality","status":"publish","type":"post","link":"https:\/\/bennett.com\/blog\/2009\/02\/24\/perils-of-content-neutrality\/","title":{"rendered":"Perils of Content Neutrality"},"content":{"rendered":"<p>\t\t\t\tVia Scott Cleland I see that Adam O&#8217;Donnell has written a nice piece on the side-effects of net neutrality regulation, <a href=\"http:\/\/blogs.zdnet.com\/security\/?p=2639\">Why I am against pure net neutrality<\/a><\/p>\n<blockquote><p>While it may sound like treating all ISP traffic equally is a good idea, mandating strict net neutrality hurts computer security for all of us.<\/p><\/blockquote>\n<p>Adam was in the audience at last week&#8217;s MAAWG panel on net neutrality, and raised an interesting question about Random Early Discard. The moderator cut us off before we were able to address his point (he was anxious to catch a plane) but the question deserves a response.<\/p>\n<p>RED is a method of packet discard that&#8217;s intended to avoid the problems inherent in a packet drop discipline that simply uses tail-drop to prevent buffer overflow in routers. The tail drop mechanism tends to cause cycles in packet delivery rates: <\/p>\n<p>1. A buffer overflows, and a whole set of transmitters throttles back.<br \/>\n2. Link utilization drops to 50%.<br \/>\n3. The transmitters as a group increase rate together, until buffer overflow occurs again.<br \/>\n4. Repeat.<\/p>\n<p>The net result of this cycling behavior is that congested links have their effective capacity reduced to about 70% of link speed. RED is an attempt to reduce transmission rate more selectively in order to push the link toward the upper limit of capacity. RED algorithms have been under study since the late &#8217;80s, and none is completely satisfactory. The IETF response was to draft an Internet Standard for something called ECN that enables the network to signal end systems that congestion was building, but it remains undeployed due to Microsoft&#8217;s concerns about home router compatibility. The follow-on to ECN is Bob Briscoe&#8217;s Re-ECN, which I&#8217;ve written about on these pages and <a href=\"http:\/\/www.theregister.co.uk\/2007\/12\/13\/bennett_eff_neutrality_analysis\/page2.html\">in The Register<\/a>.<\/p>\n<p>The bottom line is that Internet congestion protocols are an area that needs a lot of additional work, which the proposed Net Neutrality laws would hamper or prevent. <\/p>\n<p>Van Jacobson realizes this, per the remarks he makes in an interview in the <a href=\"http:\/\/mags.acm.org\/queue\/200901\/templates\/download_pdf?download=Download+PDF\">ACM Queue<\/a> magazine this month:<\/p>\n<blockquote>\n<p>Also, we use buffer memory in such a way that it\u00e2\u20ac\u2122s valuable only if it\u00e2\u20ac\u2122s empty, because otherwise it doesn\u00e2\u20ac\u2122t serve as a buffer. What we do is try to forget what we learned as soon as we possibly can; we have to do that to make our buffer memory empty.<\/p>\n<p>For the Olympics (not the most recent, but the previous one), we got some data from the ISP downstream of NBC. That router was completely congested; it was falling over, dropping packets like crazy. If you looked inside its buffers, it had 4,000 copies of exactly the same data, but you couldn\u00e2\u20ac\u2122t tell that it was the same because it was 4,000 different connections. It was a horrible waste of memory, because the conversations were all different but what they were about was the same. You should be able to use that memory so you don\u00e2\u20ac\u2122t forget until you absolutely have to\u00e2\u20ac\u201dthat is, go to an LRU (least recently used) rather than MRU (most recently used) replacement policy. It\u00e2\u20ac\u2122s the same memory; you just change the way you replace things in it, and then you\u00e2\u20ac\u2122re able to use the content.<\/p>\n<p>It wouldn\u00e2\u20ac\u2122t be necessary for carriers to put disks in routers. They could just start using the existing buffer memory in a more efficient way, and any time the data was requested more than once, they would see a bandwidth reduction.<\/p><\/blockquote>\n<p>Strict neutralism would prevent this system from being implemented: it involves Deep Packet Inspection, and the <a href=\"http:\/\/www.reed.com\/blog-dpr\/\">fanatics<\/a> have warned us that DPI is a great evil. So we&#8217;re faced with this choice: networks that are cheap and efficient, or networks that are bloated with silly ideology. Take your pick, you only get one.\t\t<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Via Scott Cleland I see that Adam O&#8217;Donnell has written a nice piece on the side-effects of net neutrality regulation, Why I am against pure net neutrality While it may sound like treating all ISP traffic equally is a good idea, mandating strict net neutrality hurts computer security for all of us. Adam was in &hellip; <a href=\"https:\/\/bennett.com\/blog\/2009\/02\/24\/perils-of-content-neutrality\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Perils of Content Neutrality&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[38],"tags":[],"class_list":["post-5425","post","type-post","status-publish","format-standard","hentry","category-net-neutrality"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pbifyw-1pv","_links":{"self":[{"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/posts\/5425","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/comments?post=5425"}],"version-history":[{"count":0,"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/posts\/5425\/revisions"}],"wp:attachment":[{"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/media?parent=5425"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/categories?post=5425"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bennett.com\/blog\/wp-json\/wp\/v2\/tags?post=5425"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}