Definition
An Internet exchange point is a physical access point that Internet service providers (ISPs) and content delivery networks (CDNs) connect to for the purpose of exchanging traffic.
Overview
An Internet exchange point is a colocation designed to quickly and cost-effectively route traffic between different network members. They are essentially large local area networks that are built with interconnected Ethernet switches. Connecting to one of these colocations gives organizations the advantage of being able to optimize data flow within their network.
Peering
The process by which networks connect and exchange their traffic at an IXP is called peering. Without Internet exchange points, crossing from one network to another would rely on a transit provider which often has a negative performance impact. With IXPs, a network is able to peer with multiple other networks through a single connection and can hand off traffic without the inclusion of a transit provider.
Service providers who connect to an Internet exchange point usually create peering agreements and pay for a portion of the physical infrastructure upkeep at the colocation.
Transit
Another method that can be used to exchange traffic is called transit. Transit agreements generally take place between a customer and its upstream provider. In this scenario, no network connects to all other networks; instead, a transit provider delivers traffic through multiple transit networks. Rather than ISPs splitting infrastructure costs to pay for interconnectivity, they exclusively pay the transit provider for routing traffic. Transit is an expensive and unpredictable method of traffic exchange that is generally avoided by major service providers.
How Internet Exchange Points Work
The traffic exchange between two networks connecting at an Internet exchange point is facilitated by an exterior gateway protocol called Border Gateway Protocol (BGP), which makes routing decisions based on network rules, hop counts, and other characteristics configured by network administrators.
The primary issue with Border Gateway Protocol is that it is highly vulnerable to a number of malicious attacks and has no built-in security measures. To secure traffic, other protocols must be used. One such hybrid protocol is called Internet Key Exchange (IKE) which is used in conjunction with Internet Protocol Security (IPSec). The two main protocols that make up IKE are:
- Internet Security Association and Key Management Protocols (ISAKMP) – Used for negotiating and establishing security associations, as well as establishing a secure connection between two peers.
- Oakley Key Determination Protocol (Oakley) – Used for key agreement and exchange over an IKE session.
Implemented with Border Gateway Protocol, Internet Key Exchange eliminates the need to manually specify IPSec parameters at both peers, allows users to specify IPSec security association lifetimes, and facilitates dynamic authentication.
Internet exchange points at the edge
StackPath leverages Internet exchange points by placing points of presence (PoPs) close by them. For traffic to travel through an IXP, it has to first travel to that location and then to its destination. That means you may be in the same room as someone, but your network traffic must make a 400-mile trip to be delivered. By placing a point of presence next to an Internet exchange point, the distance that data has to travel can be almost cut in half.
Examples of Internet Exchange Points
TeleGeography has an active map of all Internet exchange points available online. Using the map, you can select any IXP and see which IXs are located in that building. For instance, a few Internet exchanges that service the Dallas area include Digital Realty, Equinix, and Megaport.
Internet exchange point datasets
Packet Clearing House maintains a global directory of Internet exchange points that includes:
- Past and present Internet exchange points
- Peering subnets used to exchange data
- Location, equipment, and membership details
All their information is directly available to the public through various API endpoints. As an example, you could call the following API which asks for all Active IXPs:
The returned data would include hundreds of rows detailing every active Internet exchange point that PCH has recorded. The code below displays a sample output of an IXP in Buenos Aires:
{
"id": "2",
"ctry": "Argentina",
"cit": "Buenos Aires",
"reg": "Latin America",
"name": "CABASE IXP Buenos Aires",
"url": "http://www.cabase.org.ar/nap-buenos-aires/",
"stat": "Active",
"date": "19980401",
"prfs": "19798",
"lat": "-34.57000",
"lon": "-58.42000",
"prts": "106",
"traf": "9190000",
"avg": "0",
"trgh": "0",
"ipv6_avg": "0.000000",
"pch": "Yes",
"updt": "2015-02-15",
"tc_rank": "1",
"tw_rank": "160",
"pc_rank": "1",
"pr_rank": "5",
"pw_rank": "50",
"tr_rank": "17",
"prts_url": "http://www.cabase.org.ar/nap-buenos-aires/",
"q9": "No",
"iata": "EZE",
"regct": 79
}
Key Takeaways
- An Internet exchange point is a physical colocation maintained by its customers which is designed to route traffic between multiple Internet service providers and content delivery networks.
- Traffic exchange is facilitated by an unsecured protocol known as Border Gateway Protocol (BGP), which can be secured using a combination of Internet Key Exchange (IKE) and Internet Protocol Security (IPSec).
- To gather information about all past and current Internet exchange points, you can use API endpoints supported by Packet Clearing House.