<https://in.coursera.org/lecture/computer-networking/interior-gateway-protocols-QvF9H#lecture>
<http://schema.org/transcript>
"We've covered the basics of how routing works and how routing tables are constructed, and they're both really pretty basic concepts. The real magic of routing is in the way that routing tables are always updated with new information about the quickest path to destination networks. The protocols we'll be learning about in this video will help you identify routing problems on any network you might support. In order to learn about the world around them, routers use what are known as routing protocols. These are special protocols the routers use to speak to each other in order to share what information they might have. This is how a router on one side of the planet can eventually learn about the best path to a network on the other side of the planet. Routing protocols fall into two main categories, interior gateway protocols, and exterior gateway protocols. Interior gateway protocols are further split into two categories, link state routing protocols and distance-vector protocols. In this video, we'll cover the basics of interior gateway protocols. Interior gateway protocols are used by routers to share information within a single autonomous system. In networking terms, an autonomous system is a collection of networks that all fall under the control of a single network operator. The best example of this would be a large corporation that needs to route data between their many offices an each of which might have their own local area network. Another example is the many routers employed by an Internet service provider who's reaches are usually national in scale. You can contrast this with exterior gateway protocols, which are used for the exchange of information between independent autonomous systems. Spoiler alert, we'll cover exterior gateway protocols in an upcoming video. The two main types of interior gateway protocols are link state routing protocols and distance-vector protocols. Their goals are super similar, but the routers that employ them share different kinds of data to get the job done. Distance-vector protocols are an older standard. A router using a distance-vector protocol basically just takes its routing table, which is a list of every network known to it and how far away these networks are in terms of hops. Then the router sends this list to every neighboring router, which is basically every router directly connected to it. In computer science, a list is known as a vector. This is why a protocol that just sends a list of distances to networks is known as a distance-vector protocol. With a distance-vector protocol, routers don't really know that much about the total state of an autonomous system, they just have some information about their immediate neighbors. For a basic glimpse into how distance vector protocols work, let's look at how two routers might influence each other's routing tables. Router A has a routing table with a bunch of entries. One of these entries is for 10.1.1.0/24 network, which we'll refer to as Network X. Router A believes that the quickest path to Network X is through its own interface 2, which is where Router C is connected. Router A knows that sending data intended for Network X through interface 2 to Router C means it'll take four hops to get to the destination. Meanwhile, Router B is only two hops removed from Network X, and this is reflected in its routing table. Router B using a distance vector protocol sends the basic contents of its routing table to Router A. Router A sees that Network X is only two hops away from Router B even with the extra hop to get from Router A to Router B. This means that Network X is only three hops away from Router A if it forwards data to Router B instead of Router C. Armed with this new information, Router A updates its routing table to reflect this. In order to reach Network X in the fastest way, it should forward traffic through its own interface 1 to Router B. Now distance vector protocols are pretty simple, but they don't allow for a router to have much information about the state of the world outside of their own direct neighbors. Because of this, a router might be slow to react to a change in the network far away from it. This is why link state protocols were eventually invented. Routers using a link state protocol taking more sophisticated approach to determining the best path to a network. Link state protocols get their name because each router advertises the state of the link of each of its interfaces. These interfaces could be connected to other routers, or they could be direct connections to networks. The information about each router is propagated to every other router on the autonomous system. This means that every router on the system knows every detail about every other router in the system. Each router then uses this much larger set of information and runs complicated algorithms against it to determine what the best path to any destination network might be. Link state protocols require both more memory in order to hold all of this data and also much more processing power. This is because it has to run algorithms against this data in order to determine the quickest path to update the routing tables. As computer hardware has become more powerful and cheaper over the years, link state protocols have mostly made distance vector protocols outdated. Up next, we'll talk about exterior gateway protocols. See you there."
<https://in.coursera.org/lecture/computer-networking/interior-gateway-protocols-QvF9H>