PostHole
Compose Login
You are browsing us.zone2 in read-only mode. Log in to participate.
rss-bridge 2024-12-04T01:37:00+00:00

SE Radio 645: Vinay Tripathi on BGP Optimization

Vinay Tripathi, a senior network engineer in Google Backbone Engineering and an 18-year network engineering veteran, discusses BGP optimization, a technique that's critical in achieving top goals in distributed applications. Host Philip Winston speaks with Tripathi about BGP, autonomous systems, peer grouping, router hardware and software, software-defined networks, and shared network optimization and debugging stories. Brought to you by IEEE Computer Society and IEEE Software magazine.


Vinay Tripathi, a senior network engineer in Google Backbone Engineering and an 18-year network engineering veteran, discusses BGP optimization, a technique that’s critical in achieving top goals in distributed applications. Host Philip Winston speaks with Tripathi about BGP, autonomous systems, peer grouping, router hardware and software, software-defined networks, and shared network optimization and debugging stories. Brought to you by IEEE Computer Society and IEEE Software magazine.



Show Notes

Related Episodes

  • SE Radio 468: Iljitsch van Beijnum on Internet Routing and BGP

Other References


Transcript

Transcript brought to you by IEEE Software magazine and IEEE Computer Society. This transcript was automatically generated. To suggest improvements in the text, please contact [email protected] and include the episode number.

Philip Winston 00:00:18 Welcome to Software Engineering Radio. This is Philip Winston. My guest today is Vinay Tripathi. Vinay is a senior network engineer at Google Backbone Engineering. He has 18 years of experience in various networking technologies including BGP and SDN, which we’ll discuss in today’s episode. Vinay previously worked for Amazon and Juniper Networks where he held expert certification in both enterprise and service provider routing and switching. He is an inventor on four patented networking technologies and is a senior member of IEEE. Welcome Vinay.

Vinay Tripathi 00:00:57 Thank you Phil. I’m excited to be here and looking forward to contributing my knowledge.

Philip Winston 00:01:03 Today we’re going to discuss the BGP protocol and how network and software engineers can improve the performance and reliability of their applications by understanding and optimizing BGP. First I want to point to a past episode on BGP Episode 468 on Internet and Routing BGP. This is a great introduction to networking concepts and BGP. We’re going to review just a little bit about BGP to start. Firstly, what is BGP?

Vinay Tripathi 00:01:33 Okay, so before I go and talk about BGP, I’ll just take a step back and just briefly talk about the network in general. So if you look at the internet, internet is basically made out of bunch of nodes, thousands and thousands of nodes which are physically connected through the fiber and then you run protocols on top of them. So BGP is one of the protocols which makes internet happen. So what that means is when you look at the internet, it’s basically bunch of autonomous systems which are owned by certain organizations and then they talk to each other, they share information and they make communication happen end to end globally. So the BGP protocol is as such is called port gateway protocol and there are two type of BG protocols, internal and external. So the external protocol is the one which is used to connect different autonomous systems and the internal BGP is the one which is used to communicate those routes which were received from external entities within your autonomous system.

Vinay Tripathi 00:02:44 So if I have to explain someone who is not familiar with BGP or networking concepts, so the BGP is kind of a mailing service for the whole internet. So for example, in the United States, you have many postal offices and every city has its own postal office. Now if I want to send some letter from Virginia to let’s say California, I will drop that letter here and it’ll reach their going via multiple postal offices. So these cities or states you can call as an autonomous system in context of a BGP or routing and then it has to travel through multiple autonomous systems and then you receive your letter or the packet at the other end. So that is high level BGP. I am happy to go deeper if you want me to.

Philip Winston 00:03:34 So you use the phrase autonomous system. I’m curious why that is autonomous system and not autonomous network. I don’t know if there’s a history there or if it’s just a choice of words.

Vinay Tripathi 00:03:45 Yeah, I’ll try to attempt that but I don’t know how close it’ll be to the truth because mostly these information will be somewhere in the RFCs, which were written years ago in BGP. So if you look at the BGP protocol as such, what happens is every node, every router or node, whatever you call, they run their own instance. So they receive the routes from their peers, they run their algorithm on that and then they decide what is the best path to reach the destination. And it is done independently on all the net nodes within your autonomous system. So it’s basically, it’s not a network which is deciding, it is each and every node which is deciding within the autonomous system. The only difference here is no matter who is owning that autonomous system, their decision has to be consistent. That is how it can make work, internet end to end, otherwise there’ll be inconsistency. So I think that is the reason why it’s not called network, it’s rather than system because everyone has to make their own decision.

Philip Winston 00:04:50 So if I understand it, I think all of the networks in one autonomous system are under the same administrative control, whereas if you have two autonomous systems they might be sort of owned or run by different companies. Is that right?

Vinay Tripathi 00:05:05 Yeah, that’s right. So each autonomous system can be mapped to organization. For example, Microsoft can have its own autonomous system. Amazon can have its own autonomous system. Similarly, service providers, internet service providers or ISPs have their own autonomous system. And when they talk to each other they use EBGP and then within them they use IBGP.

Philip Winston 00:05:28 If an organization just has one connection to the internet, whether it’s a home ISP or a business connection, I take it they don’t have to worry about BGP. When is it that you do have to worry about BGP?

Vinay Tripathi 00:05:43 Yeah, that’s a good question. So if you have just one BGP or your requirement is to use internet connection just to connect to the outside world, that is where you can actually manage with the just static routes which you can negotiate work with your internet service provider, which kind of default route you can configure a default route towards the internet service provider. And similarly they can configure a route specific to your organization. So you can manage in that scenario. But when you want to have for some reason, let’s say you want to have redundancy in your network. If one ISP is down, you want to go through another ISP. That is where more than one BGP connections come into picture and that is where a lot of engineering goes into where you want to decide which one I want to use and when, because every service provider charges you differently. So you want to make sure just everyone, you want to be economic, and you want to decide which connection I should use. So for example, if you have service provider one which is cheap and service provider too, which is costly, mostly for your normal operation you’ll use IP one. But let’s say IP one is down, then you’ll go and use the IP two. So these are very simplified solutions. I’m talking about at the larger scale you deal with just similar problems at different

[...]


Original source

Reply