
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
        <title><![CDATA[ The Cloudflare Blog ]]></title>
        <description><![CDATA[ Get the latest news on how products at Cloudflare are built, technologies used, and join the teams helping to build a better Internet. ]]></description>
        <link>https://blog.cloudflare.com</link>
        <atom:link href="https://blog.cloudflare.com/" rel="self" type="application/rss+xml"/>
        <language>en-us</language>
        <image>
            <url>https://blog.cloudflare.com/favicon.png</url>
            <title>The Cloudflare Blog</title>
            <link>https://blog.cloudflare.com</link>
        </image>
        <lastBuildDate>Fri, 10 Apr 2026 03:20:58 GMT</lastBuildDate>
        <item>
            <title><![CDATA[How Cloudflare’s systems dynamically route traffic across the globe]]></title>
            <link>https://blog.cloudflare.com/meet-traffic-manager/</link>
            <pubDate>Mon, 25 Sep 2023 13:00:16 GMT</pubDate>
            <description><![CDATA[ Meet the smartest member of the Cloudflare network team that helps keep you online no matter what happens to the Internet underneath us ]]></description>
            <content:encoded><![CDATA[ <p></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4NgKY8lcObRRPp4XUwHWRH/fd6462ace767589fd26f2f52aa98252f/image14-1.png" />
            
            </figure><p>Picture this: you’re at an airport, and you’re going through an airport security checkpoint. There are a bunch of agents who are scanning your boarding pass and your passport and sending you through to your gate. All of a sudden, some of the agents go on break. Maybe there’s a leak in the ceiling above the checkpoint. Or perhaps a bunch of flights are leaving at 6pm, and a number of passengers turn up at once. Either way, this imbalance between localized supply and demand can cause huge lines and unhappy travelers — who just want to get through the line to get on their flight. How do airports handle this?</p><p>Some airports may not do anything and just let you suffer in a longer line. Some airports may offer fast-lanes through the checkpoints for a fee. But most airports will tell you to go to another security checkpoint a little farther away to ensure that you can get through to your gate as fast as possible. They may even have signs up telling you how long each line is, so you can make an easier decision when trying to get through.</p><p>At Cloudflare, we have the same problem. We are located in 300 cities around the world that are built to receive end-user traffic for all of our product suites. And in an ideal world, we always have enough computers and bandwidth to handle everyone at their closest possible location. But the world is not always ideal; sometimes we take a data center offline for maintenance, or a connection to a data center goes down, or some equipment fails, and so on. When that happens, we may not have enough attendants to serve every person going through security in every location. It’s not because we haven’t built enough kiosks, but something has happened in our data center that prevents us from serving everyone.</p><p>So, we built Traffic Manager: a tool that balances supply and demand across our entire global network. This blog is about Traffic Manager: how it came to be, how we built it, and what it does now.</p>
    <div>
      <h3>The world before Traffic Manager</h3>
      <a href="#the-world-before-traffic-manager">
        
      </a>
    </div>
    <p>The job now done by Traffic Manager used to be a manual process carried out by network engineers: our network would operate as normal until something happened that caused user traffic to be impacted at a particular data center.</p><p>When such events happened, user requests would start to fail with 499 or 500 errors because there weren’t enough machines to handle the request load of our users. This would trigger a page to our network engineers, who would then remove some Anycast routes for that data center. The end result: by no longer advertising those prefixes in the impacted data center, user traffic would divert to a different data center. This is how Anycast fundamentally works: user traffic is drawn to the closest data center advertising the prefix the user is trying to connect to, as determined by Border Gateway Protocol. For a primer on what Anycast is, check out <a href="https://www.cloudflare.com/learning/cdn/glossary/anycast-network/">this reference article</a>.</p><p>Depending on how bad the problem was, engineers would remove some or even all the routes in a data center. When the data center was again able to absorb all the traffic, the engineers would put the routes back and the traffic would return naturally to the data center.</p><p>As you might guess, this was a challenging task for our network engineers to do every single time any piece of hardware on our network had an issue. It didn’t scale.</p>
    <div>
      <h3>Never send a human to do a machine’s job</h3>
      <a href="#never-send-a-human-to-do-a-machines-job">
        
      </a>
    </div>
    <p>But doing it manually wasn’t just a burden on our Network Operations team. It also resulted in a sub-par experience for our customers; our engineers would need to take time to diagnose and re-route traffic. To solve both these problems, we wanted to build a service that would immediately and automatically detect if users were unable to reach a Cloudflare data center, and withdraw routes from the data center until users were no longer seeing issues. Once the service received notifications that the impacted data center could absorb the traffic, it could put the routes back and reconnect that data center. This service is called Traffic Manager, because its job (as you might guess) is to manage traffic coming into the Cloudflare network.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/38NInVKI4VizcCukXlF7o4/77758610378a6721ecf30127b6246d0f/image19.png" />
            
            </figure>
    <div>
      <h3>Accounting for second order consequences</h3>
      <a href="#accounting-for-second-order-consequences">
        
      </a>
    </div>
    <p>When a network engineer removes a route from a router, they can make the best guess at where the user requests will move to, and try to ensure that the failover data center has enough resources to handle the requests — if it doesn’t, they can adjust the routes there accordingly prior to removing the route in the initial data center. To be able to automate this process, we needed to move from a world of intuition to a world of data — accurately predicting where traffic would go when a route was removed, and feeding this information to Traffic Manager, so it could ensure it doesn’t make the situation worse.</p>
    <div>
      <h3>Meet Traffic Predictor</h3>
      <a href="#meet-traffic-predictor">
        
      </a>
    </div>
    <p>Although we can adjust which data centers advertise a route, we are unable to influence what proportion of traffic each data center receives. Each time we add a new data center, or a new peering session, the distribution of traffic changes, and as we are in over 300 cities and 12,500 peering sessions, it has become quite difficult for a human to keep track of, or predict the way traffic will move around our network. Traffic manager needed a buddy: Traffic Predictor.</p><p>In order to do its job, Traffic Predictor carries out an ongoing series of real world tests to see where traffic actually moves. Traffic Predictor relies on a testing system that simulates removing a data center from service and measuring where traffic would go if that data center wasn’t serving traffic. To help understand how this system works, let’s simulate the removal of a subset of a data center in Christchurch, New Zealand:</p><ul><li><p>First, Traffic Predictor gets a list of all the IP addresses that normally connect to Christchurch. Traffic Predictor will send a ping request to hundreds of thousands of IPs that have recently made a request there.</p></li><li><p>Traffic Predictor records if the IP responds, and whether the response returns to Christchurch using a special Anycast IP range specifically configured for Traffic Predictor.</p></li><li><p>Once Traffic Predictor has a list of IPs that respond to Christchurch, it removes that route containing that special range from Christchurch, waits a few minutes for the Internet routing table to be updated, and runs the test again.</p></li><li><p>Instead of being routed to Christchurch, the responses are instead going to data centers around Christchurch. Traffic Predictor then uses the knowledge of responses for each data center, and records the results as the failover for Christchurch.</p></li></ul><p>This allows us to simulate Christchurch going offline without actually taking Christchurch offline!</p><p>But Traffic Predictor doesn’t just do this for any one data center. To add additional layers of resiliency, Traffic Predictor even calculates a second layer of indirection: for each data center failure scenario, Traffic Predictor also calculates failure scenarios and creates policies for when surrounding data centers fail.</p><p>Using our example from before, when Traffic Predictor tests Christchurch, it will run a series of tests that remove several surrounding data centers from service including Christchurch to calculate different failure scenarios. This ensures that even if something catastrophic happens which impacts multiple data centers in a region, we still have the ability to serve user traffic. If you think this data model is complicated, you’re right: it takes several days to calculate all of these failure paths and policies.</p><p>Here’s what those failure paths and failover scenarios look like for all of our data centers around the world when they’re visualized:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4NxD3OynAnVJFP9yfv9pa1/1b518728e831062aa5bcae1d8329ffe8/image17.png" />
            
            </figure><p>This can be a bit complicated for humans to parse, so let’s dig into that above scenario for Christchurch, New Zealand to make this a bit more clear. When we take a look at failover paths specifically for Christchurch, we see they look like this:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6JGMDbR9jjZHFTpQMEkfZI/29dbc0bfeb4fa4147156d331831d8ebc/image20.png" />
            
            </figure><p>In this scenario we predict that 99.8% of Christchurch’s traffic would shift to Auckland, which is able to absorb all Christchurch traffic in the event of a catastrophic outage.</p><p>Traffic Predictor allows us to not only see where traffic will move to if something should happen, but it allows us to preconfigure Traffic Manager policies to move requests out of failover data centers to prevent a thundering herd scenario: where sudden influx of requests can cause failures in a second data center if the first one has issues. With Traffic Predictor, Traffic Manager doesn’t just move traffic out of one data center when that one fails, but it also proactively moves traffic out of other data centers to ensure a seamless continuation of service.</p>
    <div>
      <h3>From a sledgehammer to a scalpel</h3>
      <a href="#from-a-sledgehammer-to-a-scalpel">
        
      </a>
    </div>
    <p>With Traffic Predictor, Traffic Manager can dynamically advertise and withdraw prefixes while ensuring that every datacenter can handle all the traffic. But withdrawing prefixes as a means of traffic management can be a bit heavy-handed at times. One of the reasons for this is that the only way we had to add or remove traffic to a data center was through advertising routes from our Internet-facing routers. Each one of our routes has thousands of IP addresses, so removing only one still represents a large portion of traffic.</p><p>Specifically, Internet applications will advertise prefixes to the Internet from a /24 subnet at an absolute minimum, but many will advertise prefixes larger than that. This is generally done to prevent things like route leaks or route hijacks: many providers will actually filter out routes that are more specific than a /24 (for more information on that, check out this blog on <a href="/route-leak-detection-with-cloudflare-radar/">how we detect route leaks</a>). If we assume that Cloudflare maps protected properties to IP addresses at a 1:1 ratio, then each /24 subnet would be able to service 256 customers, which is the number of IP addresses in a /24 subnet. If every IP address sent one request per second, we’d have to move 4 /24 subnets out of a data center if we needed to move 1,000 requests per second (RPS).</p><p>But in reality, Cloudflare maps a single IP address to hundreds of thousands of protected properties. So for Cloudflare, a /24 might take 3,000 requests per second, but if we needed to move 1,000 RPS out, we would have no choice but to move a single /24 out. And that’s just assuming we advertise at a /24 level. If we used /20s to advertise, the amount we can withdraw gets less granular: at a 1:1 website to IP address mapping, that’s 4,096 requests per second for each prefix, and even more if the website to IP address mapping is many to one.</p><p>While withdrawing prefix advertisements improved the customer experience for those users who would have seen a 499 or 500 error — there may have been a significant portion of users who wouldn’t have been impacted by an issue who still were moved away from the data center they should have gone to, probably slowing them down, even if only a little bit. This concept of moving more traffic out than is necessary is called “stranding capacity”: the data center is theoretically able to service more users in a region but cannot because of how Traffic Manager was built.</p><p>We wanted to improve Traffic Manager so that it only moved the absolute minimum of users out of a data center that was seeing a problem and not strand any more capacity. To do so, we needed to shift percentages of prefixes, so we could be extra fine-grained and only move the things that absolutely need to be moved. To solve this, we built an extension of our <a href="/unimog-cloudflares-edge-load-balancer/">Layer 4 load balancer Unimog,</a> which we call Plurimog.</p><p>A quick refresher on Unimog and layer 4 load balancing: every single one of our machines contains a service that determines whether that machine can take a user request. If the machine can take a user request then it sends the request to our HTTP stack which processes the request before returning it to the user. If the machine can’t take the request, the machine sends the request to another machine in the data center that can. The machines can do this because they are constantly talking to each other to understand whether they can serve requests for users.</p><p>Plurimog does the same thing, but instead of talking between machines, Plurimog talks in between data centers and points of presence. If a request goes into Philadelphia and Philadelphia is unable to take the request, Plurimog will forward to another data center that can take the request, like Ashburn, where the request is decrypted and processed. Because Plurimog operates at layer 4, it can send individual TCP or UDP requests to other places which allows it to be very fine-grained: it can send percentages of traffic to other data centers very easily, meaning that we only need to send away enough traffic to ensure that everyone can be served as fast as possible. Check out how that works in our Frankfurt data center, as we are able to shift progressively more and more traffic away to handle issues in our data centers. This chart shows the number of actions taken on free traffic that cause it to be sent out of Frankfurt over time:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2NqLJgn8hYCuHKXRaJfX2P/c666ab9c6c8aba3071a3528b274f997b/pasted-image-0-1.png" />
            
            </figure><p>But even within a data center, we can route traffic around to prevent traffic from leaving the datacenter at all. Our large data centers, called Multi-Colo Points of Presence (MCPs) contain logical sections of compute within a data center that are distinct from one another. These MCP data centers are enabled with another version of Unimog called Duomog, which allows for traffic to be shifted between logical sections of compute automatically. This makes MCP data centers fault-tolerant without sacrificing performance for our customers, and allows Traffic Manager to work within a data center as well as between data centers.</p><p>When evaluating portions of requests to move, Traffic Manager does the following:</p><ul><li><p>Traffic Manager identifies the proportion of requests that need to be removed from a data center or subsection of a data center so that all requests can be served.</p></li><li><p>Traffic Manager then calculates the aggregated space metrics for each target to see how many requests each failover data center can take.</p></li><li><p>Traffic Manager then identifies how much traffic in each plan we need to move, and moves either a proportion of the plan, or all of the plan through Plurimog/Duomog, until we've moved enough traffic. We move Free customers first, and if there are no more Free customers in a data center, we'll move Pro, and then Business customers if needed.</p></li></ul><p>For example, let’s look at Ashburn, Virginia: one of our MCPs. Ashburn has nine different subsections of capacity that can each take traffic. On 8/28, one of those subsections, IAD02, had an issue that reduced the amount of traffic it could handle.</p><p>During this time period, Duomog sent more traffic from IAD02 to other subsections within Ashburn, ensuring that Ashburn was always online, and that performance was not impacted during this issue. Then, once IAD02 was able to take traffic again, Duomog shifted traffic back automatically. You can see these actions visualized in the time series graph below, which tracks the percentage of traffic moved over time between subsections of capacity within IAD02 (shown in green):</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2tHxLx4GG2vfqVOfscJlCr/c4864e24dc18b7ad1866c716862d79ee/pasted-image-0--1--1.png" />
            
            </figure>
    <div>
      <h3>How does Traffic Manager know how much to move?</h3>
      <a href="#how-does-traffic-manager-know-how-much-to-move">
        
      </a>
    </div>
    <p>Although we used requests per second in the example above, using requests per second as a metric isn’t accurate enough when actually moving traffic. The reason for this is that different customers have different resource costs to our service; a website served mainly from cache with the WAF deactivated is much cheaper CPU wise than a site with all WAF rules enabled and caching disabled. So we record the time that each request takes in the CPU. We can then aggregate the CPU time across each plan to find the CPU time usage per plan. We record the CPU time in ms, and take a per second value, resulting in a unit of milliseconds per second.</p><p>CPU time is an important metric because of the impact it can have on latency and customer performance. As an example, consider the time it takes for an eyeball request to make it entirely through the Cloudflare front line servers: we call this the cfcheck latency. If this number goes too high, then our customers will start to notice, and they will have a bad experience. When cfcheck latency gets high, it’s usually because CPU utilization is high. The graph below shows 95th percentile cfcheck latency plotted against CPU utilization across all the machines in the same data center, and you can see the strong correlation:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1ZNFbWlf35KUMAh9SchRHb/4e415f7d847d10bbe68585c9a7695266/Untitled.png" />
            
            </figure><p>So having Traffic Manager look at CPU time in a data center is a very good way to ensure that we’re giving customers the best experience and not causing problems.</p><p>After getting the CPU time per plan, we need to figure out how much of that CPU time to move to other data centers. To do this, we aggregate the CPU utilization across all servers to give a single CPU utilization across the data center. If a proportion of servers in the data center fail, due to network device failure, power failure, etc., then the requests that were hitting those servers are automatically routed elsewhere within the data center by Duomog. As the number of servers decrease, the overall CPU utilization of the data center increases. Traffic Manager has three thresholds for each data center; the maximum threshold, the target threshold, and the acceptable threshold:</p><ul><li><p>Maximum: the CPU level at which performance starts to degrade, where Traffic Manager will take action</p></li><li><p>Target: the level to which Traffic Manager will try to reduce the CPU utilization to restore optimal service to users</p></li><li><p>Acceptable: the level below which a data center can receive requests forwarded from another data center, or revert active moves</p></li></ul><p>When a data center goes above the maximum threshold, Traffic Manager takes the ratio of total CPU time across all plans to current CPU utilization, then applies that to the target CPU utilization to find the target CPU time. Doing it this way means we can compare a data center with 100 servers to a data center with 10 servers, without having to worry about the number of servers in each data center. This assumes that load increases linearly, which is close enough to true for the assumption to be valid for our purposes.</p><p>Target ratio equals current ratio:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2EGE8UPINB9MUPtpETprf5/0f82d6166774a63f8e252dea7f169490/Screenshot-2023-09-18-at-22.11.27.png" />
            
            </figure><p>Therefore:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/uyhAhuKbaFhMpdxtJTBFq/89f9032c5e4380b895f5bf9542ced1d9/Screenshot-2023-09-18-at-22.12.17.png" />
            
            </figure><p>Subtracting the target CPU time from the current CPU time gives us the CPU time to move:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4SQDzRDMKby1OrhYxrLhBY/74142207095c5b9a4e869e2fe735ce6f/Screenshot-2023-09-18-at-22.13.14.png" />
            
            </figure><p>For example, if the current CPU utilization was at 90% across the data center, the target was 85%, and the CPU time across all plans was 18,000, we would have:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2A074OHvmPertIwkAIb0ev/e49abb26ac4b17cba2a96a4e5ccb7a8f/Screenshot-2023-09-18-at-22.14.02.png" />
            
            </figure><p>This would mean Traffic Manager would need to move 1,000 CPU time:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/qKnOiyzymcphDes5ee2cS/d7cec01541398c1b3ae1b075622626c9/Screenshot-2023-09-25-at-10.44.41.png" />
            
            </figure><p>Now we know the total CPU time needed to move, we can go through the plans, until the required time to move has been met.</p>
    <div>
      <h3>What is the maximum threshold?</h3>
      <a href="#what-is-the-maximum-threshold">
        
      </a>
    </div>
    <p>A frequent problem that we faced was determining at which point Traffic Manager should start taking action in a data center - what metric should it watch, and what is an acceptable level?</p><p>As said before, different services have different requirements in terms of CPU utilization, and there are many cases of data centers that have very different utilization patterns.</p><p>To solve this problem, we turned to <a href="https://www.cloudflare.com/learning/ai/what-is-machine-learning/">machine learning</a>. We created a service that will automatically adjust the maximum thresholds for each data center according to customer-facing indicators. For our main service-level indicator (SLI), we decided to use the cfcheck latency metric we described earlier.</p><p>But we also need to define a service-level objective (SLO) in order for our machine learning application to be able to adjust the threshold. We set the SLO for 20ms. Comparing our SLO to our SLI, our 95th percentile cfcheck latency should never go above 20ms and if it does, we need to do something. The below graph shows 95th percentile cfcheck latency over time, and customers start to get unhappy when cfcheck latency goes into the red zone:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3A9IRcG1ztxPxIxF0ljSLj/9db6c767756a2e0e17b7c8b1d00089fa/Untitled--1-.png" />
            
            </figure><p>If customers have a bad experience when CPU gets too high, then the goal of Traffic Manager’s maximum thresholds are to ensure that customer performance isn’t impacted and to start redirecting traffic away before performance starts to degrade. At a scheduled interval the Traffic Manager service will fetch a number of metrics for each data center and apply a series of machine learning algorithms. After cleaning the data for outliers we apply a simple quadratic curve fit, and we are currently testing a linear regression algorithm.</p><p>After fitting the models we can use them to predict the CPU usage when the SLI is equal to our SLO, and then use it as our maximum threshold. If we plot the cpu values against the SLI we can see clearly why these methods work so well for our data centers, as you can see for Barcelona in the graphs below, which are plotted against curve fit and linear regression fit respectively.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/695BSI9vd6OJ0jfhHwSj43/df037d425ddf50b3579696c770e6ff80/Untitled--2-.png" />
            
            </figure>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2LDLfdY2PNOTJjA1FU6lQM/e4341455c659795ce9ee2e004d1eb5b0/Untitled--3-.png" />
            
            </figure><p>In these charts the vertical line is the SLO, and the intersection of this line with the fitted model represents the value that will be used as the maximum threshold. This model has proved to be very accurate, and we are able to significantly reduce the SLO breaches. Let’s take a look at when we started deploying this service in Lisbon:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/vK8dNvcvRFb0L9WiKuaOI/9ed8d056f903d5ce09b62515c6ecb9c2/Untitled--4-.png" />
            
            </figure><p>Before the change, cfcheck latency was constantly spiking, but Traffic Manager wasn’t taking actions because the maximum threshold was static. But after July 29, we see that cfcheck latency has never hit the SLO because we are constantly measuring to make sure that customers are never impacted by CPU increases.</p>
    <div>
      <h3>Where to send the traffic?</h3>
      <a href="#where-to-send-the-traffic">
        
      </a>
    </div>
    <p>So now that we have a maximum threshold, we need to find the third CPU utilization threshold which isn’t used when calculating how much traffic to move - the acceptable threshold. When a data center is below this threshold, it has unused capacity which, as long as it isn’t forwarding traffic itself, is made available for other data centers to use when required. To work out how much each data center is able to receive, we use the same methodology as above, substituting target for acceptable:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1yHCxMMzytg6BnYdigXx1w/9f441adfb38cc474ab8580cdd1b5c72d/Screenshot-2023-09-18-at-22.16.48.png" />
            
            </figure><p>Therefore:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/6A0qMzXEmTPhVl8KRIiTRO/7830d77baee83d779ff01ff3605f0f09/Screenshot-2023-09-18-at-22.17.36.png" />
            
            </figure><p>Subtracting the current CPU time from the acceptable CPU time gives us the amount of CPU time that a data center could accept:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7yQPGjUGnLWy9C9GGOzIRN/ad105de71360d03299039453b554059e/Screenshot-2023-09-18-at-22.18.16.png" />
            
            </figure><p>To find where to send traffic, Traffic Manager will find the available CPU time in all data centers, then it will order them by latency from the data center needing to move traffic. It moves through each of the data centers, using all available capacity based on the maximum thresholds before moving onto the next. When finding which plans to move, we move from the lowest priority plan to highest, but when finding where to send them, we move in the opposite direction.</p><p>To make this clearer let's use an example:</p><p>We need to move 1,000 CPU time from data center A, and we have the following usage per plan: Free: 500ms/s, Pro: 400ms/s, Business: 200ms/s, Enterprise: 1000ms/s.</p><p>We would move 100% of Free (500ms/s), 100% of Pro (400ms/s), 50% of Business (100ms/s), and 0% of Enterprise.</p><p>Nearby data centers have the following available CPU time: B: 300ms/s, C: 300ms/s, D: 1,000ms/s.</p><p>With latencies: A-B: 100ms, A-C: 110ms, A-D: 120ms.</p><p>Starting with the lowest latency and highest priority plan that requires action, we would be able to move all the Business CPU time to data center B and half of Pro. Next we would move onto data center C, and be able to move the rest of Pro, and 20% of Free. The rest of Free could then be forwarded to data center D. Resulting in the following action: Business: 50% → B, Pro: 50% → B, 50% → C, Free: 20% → C, 80% → D.</p>
    <div>
      <h3>Reverting actions</h3>
      <a href="#reverting-actions">
        
      </a>
    </div>
    <p>In the same way that Traffic Manager is constantly looking to keep data centers from going above the threshold, it is also looking to bring any forwarded traffic back into a data center that is actively forwarding traffic.</p><p>Above we saw how Traffic Manager works out how much traffic a data center is able to receive from another data center — it calls this the available CPU time. When there is an active move we use this available CPU time to bring back traffic to the data center — we always prioritize reverting an active move over accepting traffic from another data center.</p><p>When you put this all together, you get a system that is constantly measuring system and customer health metrics for every data center and spreading traffic around to make sure that each request can be served given the current state of our network. When we put all of these moves between data centers on a map, it looks something like this, a map of all Traffic Manager moves for a period of one hour. This map doesn’t show our full data center deployment, but it does show the data centers that are sending or receiving moved traffic during this period:</p><div>
  
</div>
<p></p><p>Data centers in red or yellow are under load and shifting traffic to other data centers until they become green, which means that all metrics are showing as healthy. The size of the circles represent how many requests are shifted from or to those data centers. Where the traffic is going is denoted by where the lines are moving. This is difficult to see at a world scale, so let’s zoom into the United States to see this in action for the same time period:</p><div>
  
</div>
<p></p><p>Here you can see Toronto, Detroit, New York, and Kansas City are unable to serve some requests due to hardware issues, so they will send those requests to Dallas, Chicago, and Ashburn until equilibrium is restored for users and data centers. Once data centers like Detroit are able to service all the requests they are receiving without needing to send traffic away, Detroit will gradually stop forwarding requests to Chicago until any issues in the data center are completely resolved, at which point it will no longer be forwarding anything. Throughout all of this, end users are online and are not impacted by any physical issues that may be happening in Detroit or any of the other locations sending traffic.</p>
    <div>
      <h3>Happy network, happy products</h3>
      <a href="#happy-network-happy-products">
        
      </a>
    </div>
    <p>Because Traffic Manager is plugged into the user experience, it is a fundamental component of the Cloudflare network: it keeps our products online and ensures that they’re as fast and reliable as they can be. It’s our real time load balancer, helping to keep our products fast by only shifting necessary traffic away from data centers that are having issues. Because less traffic gets moved, our products and services stay fast.</p><p>But Traffic Manager can also help keep our products online and reliable because they allow our products to predict where reliability issues may occur and preemptively move the products elsewhere. For example, Browser Isolation directly works with Traffic Manager to help ensure the uptime of the product. When you connect to a Cloudflare data center to create a hosted browser instance, Browser Isolation first asks Traffic Manager if the data center has enough capacity to run the instance locally, and if so, the instance is created right then and there. If there isn’t sufficient capacity available, Traffic Manager tells Browser Isolation which the closest data center with sufficient available capacity is, thereby helping Browser Isolation to provide the best possible experience for the user.</p>
    <div>
      <h3>Happy network, happy users</h3>
      <a href="#happy-network-happy-users">
        
      </a>
    </div>
    <p>At Cloudflare, we operate this huge network to service all of our different products and customer scenarios. We’ve built this network for resiliency: in addition to our MCP locations designed to reduce impact from a single failure, we are constantly shifting traffic around on our network in response to internal and external issues.</p><p>But that is our problem — not yours.</p><p>Similarly, when human beings had to fix those issues, it was customers and end users who would be impacted. To ensure that you’re always online, we’ve built a smart system that detects our hardware failures and preemptively balances traffic across our network to ensure it’s online and as fast as possible. This system works faster than any person — not only allowing our network engineers to sleep at night — but also providing a better, faster experience for all of our customers.</p><p>And finally: if these kinds of engineering challenges sound exciting to you, then please consider checking out the Traffic Engineering team's open position on Cloudflare’s <a href="https://cloudflare.com/careers/jobs">Careers</a> page!</p> ]]></content:encoded>
            <category><![CDATA[Birthday Week]]></category>
            <category><![CDATA[Network]]></category>
            <category><![CDATA[Traffic]]></category>
            <category><![CDATA[Routing]]></category>
            <category><![CDATA[Anycast]]></category>
            <category><![CDATA[Interconnection]]></category>
            <guid isPermaLink="false">lz1BR25h48nezzhD7C1Gr</guid>
            <dc:creator>David Tuber</dc:creator>
            <dc:creator>Luke Orden</dc:creator>
            <dc:creator>Gonçalo Grilo</dc:creator>
        </item>
        <item>
            <title><![CDATA[The European Network Usage Fees proposal is about much more than a fight between Big Tech and Big European telcos]]></title>
            <link>https://blog.cloudflare.com/eu-network-usage-fees/</link>
            <pubDate>Mon, 08 May 2023 16:31:50 GMT</pubDate>
            <description><![CDATA[ There’s an important debate happening in Europe that could affect the future of the Internet. The European Commission is considering new rules for how networks connect to each other on the Internet. ]]></description>
            <content:encoded><![CDATA[ <p></p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/4y22iFSEioQj0S4JrypqFb/8b56c96421d0839ec419aeb14dc1baff/1-1.png" />
            
            </figure><p>There’s an important debate happening in Europe that could affect the future of the Internet. The European Commission is considering new rules for how networks connect to each other on the Internet. It’s considering proposals that – no hyperbole – will slow the Internet for consumers and are dangerous for the Internet.</p><p>The large incumbent telcos are complaining loudly to anyone who wants to listen that they aren’t being adequately compensated for the capital investments they’re making. These telcos are a set of previously regulated monopolies who still constitute the largest telcos by revenue in Europe in today's competitive market. They say traffic volumes, largely due to <a href="https://www.cloudflare.com/developer-platform/solutions/live-streaming/">video streaming</a>, are growing rapidly, implying they need to make capital investments to keep up. And they <a href="https://etno.eu/news/all-news/760:q-a-23.html">call</a> for new charges on big US tech companies: a “fair share” contribution that those networks should make to European Internet infrastructure investment.</p><p>In response to this campaign, in February the European Commission <a href="https://ec.europa.eu/commission/presscorner/detail/en/IP_23_985">released</a> a set of recommended actions and proposals “aimed to make Gigabit connectivity available to all citizens and businesses across the EU by 2030.” The Commission goes on to <a href="https://ec.europa.eu/eusurvey/runner/Future_of_Connectivity#">say</a> that “Reliable, fast and secure connectivity is a must for everybody and everywhere in the Union, including in rural and remote areas.” While this goal is certainly the right one, our agreement with the European Commission’s approach, unfortunately, ends right there. A close reading of the Commission’s <a href="https://ec.europa.eu/eusurvey/runner/Future_of_Connectivity#">exploratory consultation</a> that accompanies the Gigabit connectivity proposals shows that the ultimate goal is to intervene in the market for how networks interconnect, with the intention to extract fees from large tech companies and funnel them to large incumbent telcos.</p><p>This debate has been characterised as a fight between Big Tech and Big European Telco. But it’s about much more than that. Contrary to its intent, these proposals would give the biggest technology companies preferred access to the largest European ISPs. European consumers and small businesses, when accessing anything on the Internet outside Big Tech (Netflix, Google, Meta, Amazon, etc), would get the slow lane. Below we’ll explain why Cloudflare, although we are not currently targeted for extra fees, still feels strongly that these fees are dangerous for the Internet:</p><ul><li><p>Network usage fees would create fast lanes for Big Tech content, and slow lanes for everything else, slowing the Internet for European consumers;</p></li><li><p>Small businesses, Internet startups, and consumers are the beneficiaries of Europe’s low wholesale bandwidth prices. Regulatory intervention in this market would lead to higher prices that would be passed onto SMEs and consumers;</p></li><li><p>The Internet works best – fastest and most reliably – when networks connect freely and frequently, bringing content and service as close to consumers as possible. Network usage fees artificially disincentivize efforts to bring content close to users, making the Internet experience worse for consumers.</p></li></ul>
    <div>
      <h3>Why network interconnection matters</h3>
      <a href="#why-network-interconnection-matters">
        
      </a>
    </div>
    <p>Understanding why the debate in Europe matters for the future of the Internet requires understanding how Internet traffic gets to end users, as well as the steps that can be taken to improve Internet performance.</p><p>At Cloudflare, we know a lot about this. According to Hurricane Electric, Cloudflare <a href="https://bgp.he.net/report/exchanges#_participants">connects</a> with other networks at 287 Internet exchange points (IXPs), the second most of any network on the planet. And we’re directly connected to other networks on the Internet in more than 285 cities in over 100 countries. So when we see a proposal to change how networks interconnect, we take notice. What the European Commission is considering might appear to be targeting the direct relationship between telcos and large tech companies, but we know it will have much broader effects.</p><p>There are different ways in which networks exchange data on the Internet. In some cases, networks connect directly to exchange data between users of each network. This is called peering. Cloudflare has an <a href="https://www.cloudflare.com/peering-policy/">open peering policy</a>; we’ll peer with any other network. Peering is one hop between networks – it’s the gold standard. Fewer hops from start to end generally means faster and more reliable data delivery. We peer with more than 12,000 networks around the world on a settlement-free basis, which means neither network pays the other to send traffic. This settlement-free peering is one of the aspects of Cloudflare’s business that allows us to offer a free version of our services to millions of users globally, permitting individuals and small businesses to have websites that load quickly and efficiently and are better protected from cyberattacks. We’ll talk more about the benefits of settlement-free peering below.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/1MwPHFLIXaM6x0bv4HVkKg/26208e7ac043e0686d988ddbc03782d4/2-2.png" />
            
            </figure><p><i>Figure 1: Traffic takes one of three paths between an end-user’s ISP and the content or service they are trying to access. Traffic could go over direct peering which is 1:1 between the ISP and the content or service provider; it could go through IX Peering which is a many:many connection between networks; or it could go via a transit provider, which is a network that gets compensated for delivering traffic anywhere on the Internet.</i></p><p>When networks don’t connect directly, they might pay a third-party IP transit network to deliver traffic on their behalf. No network is connected to every other network on the Internet, so transit networks play an important role making sure any network can reach any other network. They’re compensated for doing so; generally a network will pay their transit provider based on how much traffic they ask the transit provider to deliver. Cloudflare is connected to more than 12,000 other networks, but there are <a href="https://www-public.imtbs-tsp.eu/~maigron/rir-stats/rir-delegations/world/world-asn-by-number.html">over</a> 100,000 Autonomous Systems (networks) on the Internet, so we use transit networks to reach the “long tail”. For example, the Cloudflare network (AS 13335) provides the website cloudflare.com to any network that requests it. If a user of a small ISP with whom Cloudflare doesn’t have direct connections requests cloudflare.com from their browser, it’s likely that their ISP will use a transit provider to send that request to Cloudflare. Then Cloudflare would respond to the request, sending the website content back to the user via a transit provider.</p><p>In Europe, transit providers play a critical role because many of the largest incumbent telcos won’t do settlement-free direct peering connections. Therefore, many European consumers that use large incumbent telcos for their Internet service interact with Cloudflare’s services through third party transit networks. It isn’t the gold standard of network interconnection (which is peering, and would be faster and more reliable) but it works well enough most of the time.</p><p>Cloudflare would of course be happy to directly connect with EU telcos because we have an <a href="https://www.cloudflare.com/peering-policy/">open peering policy</a>. As we’ll show, the performance and reliability improvement for their subscribers and our customers’ content and services would significantly improve. And if the telcos offered us transit – the ability to send traffic to their network and onwards to the Internet – at market rates, we would consider use of that service as part of competitive supplier selection. While it’s unfortunate that incumbent telcos haven’t offered services at market-competitive prices, overall the interconnection market in Europe – indeed the Internet itself – currently works well. Others agree. BEREC, the body of European telecommunications regulators, <a href="https://www.berec.europa.eu/system/files/2022-10/BEREC%20BoR%20%2822%29%20137%20BEREC_preliminary-assessment-payments-CAPs-to-ISPs_0.pdf">wrote</a> recently in a preliminary assessment:</p><blockquote><p>BEREC's experience shows that the internet has proven its ability to cope with increasing traffic volumes, changes in demand patterns, technology, business models, as well as in the (relative) market power between market players. These developments are reflected in the IP interconnection mechanisms governing the internet which evolved without a need for regulatory intervention. The internet’s ability to self-adapt has been and still is essential for its success and its innovative capability.</p></blockquote><p>There is a competitive market for IP transit. According to market analysis firm Telegeography’s State of the Network 2023 <a href="https://www2.telegeography.com/download-state-of-the-network">report</a>, “The lowest [prices on offer for] 100 GigE [IP transit services in Europe] were $0.06 per Mbps per month.” These prices are consistent with what Cloudflare sees in the market. In our view, the Commission should be proud of the effective competition in this market, and it should protect it. These prices are comparable to IP transit prices in the United States and signal, overall, a healthy Internet ecosystem. Competitive wholesale bandwidth prices (transit prices) mean it is easier for small independent telcos to enter the market, and lower prices for all types of Internet applications and services. In our view, regulatory intervention in this well-functioning market has significant down-side risks.</p><p>Large incumbent telcos are seeking regulatory intervention in part because they are not willing to accept the fair market prices for transit. Very Large Telcos and Content and Application Providers (CAPs) – the term the European Commission uses for networks that have the content and services consumers want to see – negotiate freely for transit and peering. In our experience, large incumbent telcos ask for paid peering fees that are many multiples of what a CAP could pay to transit networks for a similar service. At the prices offered, many networks – including Cloudflare – continue to use transit providers instead of paying incumbent telcos for peering. Telcos are trying to use regulation to force CAPs into these relationships at artificially high prices.</p><p>If the Commission’s proposal is adopted, the price for interconnection in Europe would likely be set by this regulation, not the market. Once there’s a price for interconnection between CAPs and telcos, whether that price is found via negotiation, or more likely arbitrators set the price, that is likely to become the de facto price for all interconnection. After all, if telcos can achieve artificially high prices from the largest CAPs, why would they accept much lower rates from any other network – including transits – to connect with them? Instead of falling wholesale prices spurring Internet innovation as is happening now in Europe and the United States, rising wholesale prices will be passed onto small businesses and consumers.</p>
    <div>
      <h3>Network usage fees would give Big Tech a fast lane, at the expense of consumers and smaller service providers</h3>
      <a href="#network-usage-fees-would-give-big-tech-a-fast-lane-at-the-expense-of-consumers-and-smaller-service-providers">
        
      </a>
    </div>
    <p>If network fees become a reality, the current Internet experience for users in Europe will deteriorate. Notwithstanding existing net neutrality regulations, we already see large telcos relegate content from transit providers to more congested connections. If the biggest CAPs pay for interconnection, consumer traffic to other networks will be relegated to a slow and/or congested lane. Networks that aren’t paying would still use transit providers to reach the large incumbent telcos, but those transit links would be second class citizens to the paid traffic. Existing transit links will become (more) slow and congested. By targeting only the largest CAPs, a proposal based on network fees would perversely, and contrary to intent, cement those CAPs’ position at the top by improving the consumer experience for those networks at the expense of all others. By mandating that the CAPs pay the large incumbent telcos for peering, the European Commission would therefore be facilitating discrimination against services using smaller networks and organisations that cannot match the resources of the large CAPs.</p><p>Indeed, we already see evidence that some of the large incumbent telcos treat transit networks as second-class citizens when it comes to Internet traffic. In November 2022, HWSW, a Hungarian tech news site, <a href="https://www.hwsw.hu/hirek/65357/telekom-cloudflare-peering-ping-packet-loss-deutsche-magyar.html">reported</a> on recurring Internet problems for users of Magyar Telekom, a subsidiary of Deutsche Telekom, because of congestion between Deutsche Telekom and its transit networks:</p><blockquote><p>Network problem that exists during the fairly well-defined period, mostly between 4 p.m. and midnight Hungarian time, … due to congestion in the connection (Level3) between Deutsche Telekom, the parent company that operates Magyar Telekom's international peering routes, and Cloudflare, therefore it does not only affect Hungarian subscribers, but occurs to a greater or lesser extent at all DT subsidiaries that, like Magyar Telekom, are linked to the parent company. (translated by Google Translate)</p></blockquote><p>Going back many years, large telcos have demonstrated that traffic reaching them through transit networks is not a high priority to maintain quality. In 2015, Cogent, a transit provider, <a href="https://www.pacermonitor.com/view/RJPNIWI/Cogent_Communications_Inc_v_Deutsche_Telekom_AG__vaedce-15-01632__0001.0.pdf">sued</a> Deutsche Telekom over interconnection, <a href="https://www.fiercetelecom.com/telecom/cogent-sues-deutsche-telekom-over-congested-interconnection-ports">writing</a>, “Deutsche Telekom has interfered with the free flow of internet traffic between Cogent customers and Deutsche Telekom customers by refusing to increase the capacity of the interconnection ports that allow the exchange of traffic”.</p><p>Beyond the effect on consumers, the implementation of Network Usage Fees would seem to violate the European Union’s Open Internet Regulation, sometimes referred to as the net neutrality provision. Article 3(3) of the Open Internet Regulation <a href="https://digital-strategy.ec.europa.eu/en/policies/open-internet">states</a>:</p><blockquote><p>Providers of internet access services shall treat all traffic equally, when providing internet access services, without discrimination, restriction or interference, <i>and irrespective of the sender and receiver, the content accessed or distributed, the applications or services used or provided</i>, or the terminal equipment used. (emphasis added)</p></blockquote><p>Fees from certain sources of content in exchange for private paths between the CAP and large incumbent telcos would seem to be a plain-language violation of this provision.</p>
    <div>
      <h3>Network usage fees would endanger the benefits of Settlement-Free Peering</h3>
      <a href="#network-usage-fees-would-endanger-the-benefits-of-settlement-free-peering">
        
      </a>
    </div>
    <p>Let’s now talk about the ecosystem that leads to a thriving Internet. We first talked about transit, now we’ll move on to peering, which is quietly central to how the Internet works. “Peering” is the practice of two networks directly interconnecting (they could be backbones, <a href="https://www.cloudflare.com/learning/cdn/what-is-a-cdn/">CDNs</a>, mobile networks or broadband telcos to exchange traffic. Almost always, networks peer without any payments (“settlement-free”) in recognition of the performance benefits and resiliency we’re about to discuss. A recent <a href="https://www.pch.net/resources/Papers/peering-survey/PCH-Peering-Survey-2021/PCH-Peering-Survey-2021.pdf">survey</a> of over 10,000 ISPs shows that 99.99% of their exchanged traffic is on settlement-free terms. The Internet works best when these peering arrangements happen freely and frequently.</p><p>These types of peering arrangements and network interconnection also significantly improve latency for the end-user of services delivered via the Internet. The speed of an Internet connection depends more on latency (the time it takes for a consumer to request data and receive the response) than on bandwidth (the maximum amount of data that is flowing at any one time over a connection). Latency is critical to many Internet use-cases. A recent technical <a href="https://datatracker.ietf.org/doc/html/rfc9330">paper</a> used the example of a mapping application that responds to user scrolling. The application wouldn’t need to pre-load unnecessary data if it can quickly get a small amount of data in response to a user swiping in a certain direction.</p><p>In recognition of the myriad benefits, settlement-free peering between CDNs and terminating ISPs is the global norm in the industry. Most networks understand that through settlement-free peering, (1) customers get the best experience through local traffic delivery, (2) networks have increased resilience through multiple traffic paths, and (3) data is exchanged locally instead of backhauled and aggregated in larger volumes at regional Internet hubs. By contrast, paid peering is rare, and is usually employed by networks that operate in markets without robust competition. Unfortunately, when an incumbent telco achieves a dominant market position or has no significant competition, they may be less concerned about the performance penalty they impose on their own users by refusing to peer directly.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/7DfB0FAz2CBDWaeFiGzCm/a933e781ab6cc3d3a239e745be4c90e5/Screenshot-2023-05-08-at-9.19.49-AM.png" />
            
            </figure><p>As an example, consider the map in Figure 2. This map shows the situation in Germany, where most traffic is exchanged via transit providers at the Internet hub in Frankfurt. Consumers are losing in this situation for two reasons: First, the farther they are from Frankfurt, the higher latency they will experience for Cloudflare services. For customers in northeast Germany, for example, the distance from Cloudflare’s servers in Frankfurt means they will experience nearly double the latency of consumers closer to Cloudflare geographically. Second, the reliance on a small number of transit providers exposes their traffic to congestion and reliability risks. The remedy is obvious: if large telcos would interconnect (“peer”) with Cloudflare in all five cities where Cloudflare has points of presence, every consumer, regardless of where they are in Germany, would have the same excellent Internet experience.</p><p>We’ve shown that local settlement-free interconnection benefits consumers by improving the speed of their Internet experience, but local interconnection also reduces the amount of traffic that aggregates at regional Internet hubs. If a telco interconnects with a large video provider in a single regional hub, the telco needs to carry their subscribers’ request for content through their network to the hub. Data will be exchanged at the hub, then the telco needs to carry the data back through their “backbone” network to the subscriber. (While this situation can result in large traffic volumes, modern networks can easily expand the capacity between themselves at almost no cost by adding additional port capacity. The fibre-optic cable capacity in this “backbone” part of the Internet is not constrained.)</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5fsvTdNnG7P6QPefRM7RPx/a5564b8ddf68e7c998abbd294fed28d4/4.png" />
            
            </figure><p><i>Figure 3. A hypothetical example where a telco only interconnects with a video provider at a regional Internet hub, showing how traffic aggregates at the interconnection point.</i></p><p>Local settlement-free peering is one way to reduce the traffic across those interconnection points. Another way is to use embedded caches, which are offered by most CDNs, including Cloudflare. In this scenario, a CDN sends hardware to the telco, which installs it in their network at local aggregation points that are private to the telco. When their subscriber requests data from the CDN, the telco can find that content at a local infrastructure point and send it back to the subscriber. The data doesn’t need to aggregate on backhaul links, or ever reach a regional Internet hub. This approach is common. Cloudflare has hundreds of these deployments with telcos globally.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5aElw5KpetUVQmQulidsWx/35e2979b9d454f29c9ce012d2fd117a5/5.png" />
            
            </figure><p><i>Figure 4. A hypothetical example where a telco has deployed embedded caches from a video provider, removing the backhaul and aggregation of traffic across Internet exchange points</i></p>
    <div>
      <h3>Conclusion: make your views known to the European Commission!</h3>
      <a href="#conclusion-make-your-views-known-to-the-european-commission">
        
      </a>
    </div>
    <p>In conclusion, it’s our view that despite the unwillingness of many large European incumbents to peer on a settlement-free basis, the IP interconnection market is healthy, which benefits European consumers. We believe regulatory intervention that forces content and application providers into paid peering agreements would have the effect of relegating all other traffic to a slow, congested lane. Further, we fear this intervention will do nothing to meet Europe’s Digital Decade goals, and instead will make the Internet experience worse for consumers and small businesses.</p><p>There are many more companies, NGOs and politicians that have raised concerns about the impact of introducing network usage fees in Europe. A <a href="https://epicenter.works/document/4660">number of stakeholders</a> have spoken out already about the dangers of regulating the Internet interconnection system; from <a href="https://edri.org/our-work/network-fee-new-attack-on-open-internet/">digital rights groups</a> to the <a href="https://www.politico.eu/article/new-eu-telecom-rules-will-leave-everyone-worse-off-internet-network/">Internet Society</a>, <a href="https://www.europeanvodcoalition.com/content/files/2022/05/Network-fees-position-paper.pdf">European Video on Demand providers</a> and <a href="https://www.acte.be/publication/tv-vod-statement-on-network-fees/">commercial broadcasters</a>, <a href="https://www.euro-ix.net/media/filer_public/c7/72/c772acf6-b286-4edb-a3c5-042090e513df/spnp_impact_on_ixps_-_signed.pdf">Internet Exchanges</a> and <a href="http://mvnoeurope.eu/mvno-europe-position-paper-on-network-investment-contributions/">mobile operators</a> to <a href="https://www.reuters.com/business/media-telecom/germany-others-demand-clarity-eu-plan-telco-network-costs-2022-12-02/">several European governments</a> and <a href="https://www.patrick-breyer.de/wp-content/uploads/2022/07/20220712_COM_Access-Fees-MEP-Letter_final3.pdf">Members of the European Parliament</a>.</p><p>If you agree that major intervention in how networks interconnect in Europe is unnecessary, and even harmful, consider <a href="https://ec.europa.eu/commission/presscorner/detail/en/IP_23_985">reading</a> more about the European Commission’s consultation. While the <a href="https://digital-strategy.ec.europa.eu/en/consultations/future-electronic-communications-sector-and-its-infrastructure">consultation</a> itself may look intimidating, anyone can submit a narrative response (deadline: 19 May). Consider telling the European Commission that their goals of ubiquitous connectivity are the right ones but that the approach they are considering is going into the wrong direction.</p> ]]></content:encoded>
            <category><![CDATA[Interconnection]]></category>
            <category><![CDATA[Network]]></category>
            <category><![CDATA[Europe]]></category>
            <category><![CDATA[Peering]]></category>
            <category><![CDATA[Policy & Legal]]></category>
            <guid isPermaLink="false">74ZYxYB8WPMfSdpuXEE7Gy</guid>
            <dc:creator>Petra Arts</dc:creator>
            <dc:creator>Mike Conlow</dc:creator>
        </item>
        <item>
            <title><![CDATA[Making peering easy with the new Cloudflare Peering Portal]]></title>
            <link>https://blog.cloudflare.com/making-peering-easy-with-the-new-cloudflare-peering-portal/</link>
            <pubDate>Wed, 19 Oct 2022 18:26:25 GMT</pubDate>
            <description><![CDATA[ Cloudflare's peering portal allows users to log in with existing PeeringDB credentials and request peering sessions with cloudflare direct from the portal ]]></description>
            <content:encoded><![CDATA[ <p></p><p>In 2018, we launched the <a href="/cloudflare-peering-portal-beta/">Cloudflare Peering Portal</a>, which allows network operators to see where your traffic is coming from and to identify the best possible places to interconnect with Cloudflare. We’re excited to announce that we’ve made it even easier to interconnect with Cloudflare through this portal by removing Cloudflare-specific logins and allowing users to request sessions in the portal itself!</p><p>We’re going to walk through the changes we’ve made to make peering easier, but before we do that, let’s talk a little about peering: what it is, why it’s important, and how Cloudflare is making peering easier.</p>
    <div>
      <h2>What is peering and why is it important?</h2>
      <a href="#what-is-peering-and-why-is-it-important">
        
      </a>
    </div>
    <p>Put succinctly, peering is the act of connecting two networks together. If networks are like towns, peering is the bridges, highways, and streets that connect the networks together. There are lots of different ways to connect networks together, but when networks connect, traffic between them flows to their destination faster. The reason for this is that peering reduces the number of Border Gateway Protocol (BGP) hops between networks.</p>
    <div>
      <h3>What is BGP?</h3>
      <a href="#what-is-bgp">
        
      </a>
    </div>
    <p>For a quick refresher, <a href="https://www.cloudflare.com/learning/security/glossary/what-is-bgp/">Border Gateway Protocol</a> (or BGP for short) is a protocol that propagates instructions on how networks should forward packets so that traffic can get from its origin to its destination. BGP provides packets instructions on how to get from one network to another by indicating which networks the packets need to go through to get to the destination, prioritizing the paths with the smallest number of hops between origin and destination. BGP sees networks as Autonomous Systems (AS), and each AS has its own number. For example, Cloudflare’s ASN is 13335.</p><p>In the example below, AS 1 is trying to send packets to AS 3, but there are two possible paths the packets can go:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5fCNEjOO8bFStrKBlS0Arw/dd1387ec2ecbb4896e9aa564ebb1acbc/image6-3.png" />
            
            </figure><p>The BGP decision algorithm will select the path with the least number of hops, meaning that the path the packets will take is AS 1 → AS 2 → AS 3.</p><p>When two networks peer with each other, the number of networks needed to connect AS 1 and AS 3 is reduced to one, because AS 1 and AS 3 are directly connected with each other. But “connecting with” another network can be kind of vague, so let’s be more specific. In general, there are three ways that networks can connect with other networks: directly through Private Network Interconnects (PNI), at Internet Exchanges (IX), and through transit networks that connect with many networks.</p>
    <div>
      <h3>Private Network Interconnect</h3>
      <a href="#private-network-interconnect">
        
      </a>
    </div>
    <p>A private network interconnect (PNI) sounds complicated, but it’s really simple at its core: it’s a cable connecting two networks to each other. If networks are in the same datacenter facility, it’s often easy for these two networks to connect and by doing so over a private connection, they can get dedicated bandwidth to each other as well as reliable uptime. Cloudflare has a product called <a href="/cloudflare-network-interconnect/">Cloudflare Network Interconnect (CNI)</a> that allows other networks to directly connect their networks to Cloudflare in this way.</p>
    <div>
      <h3>Internet Exchanges</h3>
      <a href="#internet-exchanges">
        
      </a>
    </div>
    <p>An <a href="https://www.cloudflare.com/learning/cdn/glossary/internet-exchange-point-ixp/">Internet exchange</a> (IX) is a building that specifically houses many networks in the same place. Each network gets one or more ports, and plugs into what is essentially a shared switch so that every network has the potential to interconnect. These switches are massive and house hundreds, even thousands of networks. This is similar to a PNI, but instead of two networks directly connecting to each other, thousands of networks connect to the same device and establish BGP sessions through that device.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/40jRLO6WCOpRFMDvx0emdm/390eb63b3f027c2bd8e069a8a479fb59/image7-1.png" />
            
            </figure><p>Fabienne Serriere: An optical patch panel of the <a href="https://en.wikipedia.org/wiki/Amsterdam_Internet_Exchange">AMS-IX</a> Internet exchange point, in Amsterdam, Netherlands. <a href="https://creativecommons.org/licenses/by-sa/3.0">CC BY-SA 3.0</a></p><p>At Internet Exchanges, traffic is generally exchanged between networks free of charge, and it’s a great way to interconnect a network with other networks and save money on bandwidth between networks.</p>
    <div>
      <h3>Transit networks</h3>
      <a href="#transit-networks">
        
      </a>
    </div>
    <p>Transit networks are networks that are specifically designed to carry packets between other networks. These networks peer at Internet Exchanges and directly with many other networks to provide connectivity for your network without having to get PNIs or IX presence with networks. This service comes at a price, and may impact network performance as the transit network is an intermediary hop between your network and the place your traffic is trying to reach. Transit networks aren’t peering, but they do peering on your behalf.</p><p>No matter how you may decide to connect your network to Cloudflare, we have an <a href="https://www.cloudflare.com/peering-policy/">open peering policy</a>, and strongly encourage you to connect your networks directly to Cloudflare. If you’re interested, you can get started by going through the Cloudflare Peering Portal, which has now been made even easier. But let’s take a second to talk about why peering is so important.</p>
    <div>
      <h2>Why is peering important?</h2>
      <a href="#why-is-peering-important">
        
      </a>
    </div>
    <p>Peering is important on the Internet for three reasons: it distributes traffic across many networks reducing single points of failure of the Internet, it often reduces bandwidth prices on the Internet making overall costs lower, and it improves performance by removing network hops. Let's talk about each of those benefits.</p><p>Peering improves the overall uptime of the Internet by distributing traffic across multiple networks, meaning that if one network goes down, traffic from your network will still be able to reach your users. Compare that to connecting to a transit network: if the transit network has an issue, your network will be unreachable because that network was the only thing connecting your network to the rest of the Internet (unless you decide to pay multiple transit providers). With peering, any individual network failure will not completely impact the ability for your users to reach your network.</p><p>Peering helps reduce your network bandwidth costs because it distributes the cost you pay an Internet Exchange for a port across all the networks you interconnect with at the IX. If you're paying \$1000/month for a port at an IX, and you're peered with 100 networks there, you're effectively paying \$10/network, as opposed to paying \$1000/month to connect to one transit network. Furthermore, many networks including Cloudflare have open peering policies and settlement free peering, which means we don't charge you to send traffic to us or the other way round, making peering even more economical.</p><p>Peering also improves performance for Internet traffic by bringing networks closer together, reducing the time it takes for a packet to go from one network to another. The more two networks peer with each other, the more physical places on the planet they can exchange traffic directly, meaning that users everywhere see better performance.</p><p>Here’s an example. Janine is trying to order food from Acme Food Services, a site protected by Cloudflare. She lives in Boston and connects to Cloudflare via her ISP. Acme Food Services has their origin in Boston as well, so for Janine to see the fastest performance, her ISP should connect to Cloudflare in Boston and then Cloudflare should route her traffic directly to the Acme origin in Boston. Unfortunately for Janine, her ISP doesn’t peer with Cloudflare in Boston, but instead peers with Cloudflare in New York: meaning that when Janine connects to Acme, her traffic is going through her ISP to New York before it reaches Cloudflare, and then all the way back to Boston to the Acme origins!</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/3NcWwy6hBN1nUY8V2xdkX9/6aba383e4cdf25084d5c1df8362d65e5/image2-11.png" />
            
            </figure><p>But with proper peering, we can ensure that traffic is routed over the fastest possible path to ensure Janine connects to Cloudflare in Boston and everything stays local:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/65pTmQFpQ8GO5tclIcfCZm/5a34f5d91c32a5be9312cda0577ad950/image3-6.png" />
            
            </figure><p>Fortunately for Janine, Cloudflare peers with over 10,000 networks in the world in over 275 locations, so high latency on the network is rare. And every time a new network peers with us, we help make user traffic even faster. So now let’s talk about how we’ve made peering even easier.</p>
    <div>
      <h2>Cloudflare Peering Portal supports PeeringDB login</h2>
      <a href="#cloudflare-peering-portal-supports-peeringdb-login">
        
      </a>
    </div>
    <p>Cloudflare, along with many other networks, rely on <a href="https://www.peeringdb.com/">PeeringDB</a> as a source of truth for which networks are present on the Internet. PeeringDB is a community-maintained database of all the networks that are present on the Internet and what datacenter facilities and IXs they are present at, as well as what IPs are used for peering at each public location. Many networks, including Cloudflare, require you to have an account on PeeringDB before you can initiate a peering session with their network.</p><p>You can now use that same PeeringDB account to log into the Cloudflare Peering Portal directly, saving you the need to make a specific Cloudflare Peering Portal account.</p><p>When you log into the Cloudflare Peering Portal, simply click on the PeeringDB login button and enter your PeeringDB credentials. Cloudflare will then use this login information to determine what networks you are responsible for and automatically load data for those networks.</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/5C7TXmFaSzAPireLwIwvUa/7972e321ab1443e565c19f481f6da35e/image4-5.png" />
            
            </figure><p>From here you can see all the places your network exchanges traffic with Cloudflare. You can see all the places you currently have direct peering with us, as well as locations for potential peering: places you could peer with us but currently don’t. Wouldn’t it be great if you could just click a button and configure a peering session with Cloudflare directly from that view? Well now you can!</p>
    <div>
      <h2>Requesting sessions in the Peering Portal</h2>
      <a href="#requesting-sessions-in-the-peering-portal">
        
      </a>
    </div>
    <p>Starting today, you can now request peering sessions with Cloudflare at Internet Exchanges right from the peering portal, making it even easier to get connected with Cloudflare. When you’re looking at potential peering sessions in the portal, you’ll now see a button that will allow you to verify your peering information is correct, and if it is to proceed with a peering request:</p>
            <figure>
            
            <img src="https://cf-assets.www.cloudflare.com/zkvhlag99gkb/23BphHjyLZvbn9oOnFq6RY/b3181625f4efb7a2166df379afb23588/image1-13.png" />
            
            </figure><p>Once you click that button, a ticket will go immediately to our network team to configure a peering session with you using the details already provided in PeeringDB. Our network team looks at whether we already have existing connections with your network at that location, and also what the impact to your Internet traffic will be if we peer with you there. Once we’ve evaluated these variables, we’ll proceed to establish a BGP session with you at the location and inform you via email that you’ve already provided via PeeringDB. Then all you have to do is accept the BGP sessions, and you’ll be exchanging traffic with Cloudflare!</p>
    <div>
      <h2>Peer with Cloudflare today!</h2>
      <a href="#peer-with-cloudflare-today">
        
      </a>
    </div>
    <p>It has never been easier to peer with Cloudflare, and our simplified peering portal will make it even easier to get connected. Visit our <a href="https://www.cloudflare.com/partners/peering-portal/">peering portal</a> today and get started on the path of faster, cheaper connectivity to Cloudflare!</p> ]]></content:encoded>
            <category><![CDATA[Peering]]></category>
            <category><![CDATA[Interconnection]]></category>
            <category><![CDATA[Network]]></category>
            <guid isPermaLink="false">7kbFwH8ln1Sa150sMmEsVM</guid>
            <dc:creator>David Tuber</dc:creator>
        </item>
    </channel>
</rss>