create account

STEEM Course: IPv4 Routing Primer (Part 5) by joshman

View this thread on: hive.blogpeakd.comecency.com
· @joshman · (edited)
$15.73
STEEM Course: IPv4 Routing Primer (Part 5)
Hello and welcome! I am currently working on a video course regarding Routing for IP version 4, and I've decided to post my slides and scripts here on STEEM as I go along. I appreciate any feedback or suggestions, or if you are new to the world of computer networking, I hope you enjoy them! If you are brand new to the topic, I recommend that you review my previous course posted on STEEM titled IP Version 4 Addressing And Subnetting Deep Dive.

Here is part 5 of a multi-part series. In this section, we will learn about dynamic routing and introduce Interior Gateway Protocols. How many parts will there be? I have no idea because I am posting them as I go along. This and all @steempeak initiated posts will have a 4% beneficiary set to @null to help fight inflation.

If you missed any sections, click one of the links below for your favorite front end:

PART 1:
https://steempeak.com/stem/@joshman/steem-course-ipv4-routing-primer-part-1
https://busy.org/@joshman/steem-course-ipv4-routing-primer-part-1
https://steemit.com/stem/@joshman/steem-course-ipv4-routing-primer-part-1
PART 2:
https://steempeak.com/stem/@joshman/steem-course-ipv4-routing-primer-part-2
https://busy.org/@joshman/steem-course-ipv4-routing-primer-part-2
https://steemit.com/stem/@joshman/steem-course-ipv4-routing-primer-part-2
PART 3:
https://steempeak.com/stem/@joshman/steem-course-ipv4-routing-primer-part-3
https://busy.org/@joshman/steem-course-ipv4-routing-primer-part-3
https://steemit.com/stem/@joshman/steem-course-ipv4-routing-primer-part-3
PART 4:
https://steempeak.com/stem/@joshman/steem-course-ipv4-routing-primer-part-4
https://busy.org/@joshman/steem-course-ipv4-routing-primer-part-4
https://steemit.com/stem/@joshman/steem-course-ipv4-routing-primer-part-4

<hr>

![IRPS5S1.jpg](https://files.steempeak.com/file/steempeak/joshman/VCoXMNzt-IRPS5S1.jpg)

While static routes are a useful tool to influencing the behavior of routers, they donโ€™t scale well.  If you had to manage thousands of routes, and had to add them and remove them manually, it would quickly become unmanageable.

Instead of tedious manual configuration, we can configure routers to dynamically share topology information with their neighbors through the use of standardized routing protocols.

Once the topology information is shared between all routers running the dynamic routing protocol, they will all agree on what the best path through the network is for each route.  This process is known as convergence.

The decisions about which path is best can be made based upon a number of factors, which differ based upon the actual routing protocol being used.  These paths can be added or removed from the network dynamically.  For example, a network outage can be detected and the route removed from the routing table, and the routing protocol can find a new route to the destination.

<hr>

![IRPS5S2.jpg](https://files.steempeak.com/file/steempeak/joshman/q5PtBv60-IRPS5S2.jpg)

An autonomous system is a single network consisting of routers under the same administrative control.  They typically use the same routing protocols, but may use different protocols in different areas of the network.

For protocols like BGP and EIGRP, an dedicated autonomous system (AS) number is actually configured within the network.  For BGP, this AS number is globally unique.  More on these protocols later.

<hr>

![IRPS5S3.jpg](https://files.steempeak.com/file/steempeak/joshman/9EOQZscV-IRPS5S3.jpg)

We can divide routing protocols into two types, these are Interior Gateway Protocols (IGPs) and Exterior Gateway Protocols (EGPs).  IGPs are used for routing within an enterprise, while exterior gateway protocols are used for routing between enterprises.

In our diagram, we have two enterprise networks, Enterprise A, and Enterprise B.  The two enterprises exchange routes via an exterior gateway protocol, while they perform all of their internal routing via an interior gateway protocol.

Within an enterprise, IGPs and EGPs can exchange information using a technique called route redistribution.  More on that later.

<hr>

![IRPS5S4.jpg](https://files.steempeak.com/file/steempeak/joshman/E2zHyyXh-IRPS5S4.jpg)

For neighbor relationships to form, certain conditions must be met, which is dependent on the individual routing protocol.
All routing protocols have a mechanism to check to see if the neighboring router is alive.  If an outage is detected, a router is able to remove all applicable routes for that neighbor.  
* EIGRP, OSPF, and IS-IS use hello packets
* BGP uses keepalive packets
* RIP uses update packets

The routing protocol will continue to exchange this traffic in order to continuously maintain the neighbor relationship.

<hr>

![IRPS5S5.jpg](https://files.steempeak.com/file/steempeak/joshman/OvIeYELX-IRPS5S5.jpg)

First lets talk about Interior Gateway Protocols (IGPs) in more detail.  An interior gateway protocol is used for routing internal to an enterprise.  The routers involved are typically under the same administrative control.

IGPs can be divided into two categories, Distance Vector, and Link State.  We will discuss more about these protocol types, as well as the available protocols later on.

<hr>

![IRPS5S6.jpg](https://files.steempeak.com/file/steempeak/joshman/HHhuhenK-IRPS5S6.jpg)

A distance vector routing protocol makes routing decisions based upon a perceived distance to a destination.  This destination is measured using either the number of hops (routers), or the characteristics of those hops.

For distance vector, each node calculates it's own path to each destination.  This is also referred to as โ€˜Routing by rumorโ€™, because each router does not have a full picture of the network topology.

The two current distance vector protocols are EIGRP and RIP.

EIGRP, stands for Enhanced Interior Gateway Routing protocol.  It is considered an advanced distance vector protocol, because it can make decisions based upon a number of factors.  By default, it utilizes the bandwidth and delay of links.

RIP stands for routing information protocol, and is considered a basic distance vector protocol, because it makes all of its decisions based up hop count only.

<hr>

![IRPS5S7.jpg](https://files.steempeak.com/file/steempeak/joshman/NTAjqbvU-IRPS5S7.jpg)

By default, distance vector routing protocols like RIP and EIGRP follow what is known as the split horizon rule.  This rule simply states that a routing protocol cannot readvertise a route it learned over the same link.

In our example, router 1 has advertised the 10.10.10.0/24 route to router 2.  Because of the split horizon rule, Router 2 will not be able to advertise that same network back to Router 1.

One exception to the split horizon rule is for point-to-multipoint interfaces in protocols like RIP EIGRP.  This means that a router may have more than one neighbor on the same interface, and therefore it may need to advertise a route back out the same interface it learned it on.

<hr>

![IRPS5S8.jpg](https://files.steempeak.com/file/steempeak/joshman/FfkqDGie-IRPS5S8.jpg)

A Link State routing protocol makes routing decisions based upon an assign metric.  Unlike with distance vector routing protcols, each node has identical Link State Database, and has a full view of the network topology.

The two link state protocols are Open Shortest Path First (OSPF), and Intermediate System to Intermediate System (IS-IS).  Both of these protocols are very similar in operation, and both use a proprietary metric to make routing decisions.

<hr>

Thanks for viewing! In the next part, we will explore the distance vector routing protocols in more detail.
๐Ÿ‘  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 570 others
๐Ÿ‘Ž  
properties (23)
authorjoshman
permlinksteem-course-ipv4-routing-primer-part-5
categorystem
json_metadata{"app":"steempeak/1.16.1","format":"markdown","tags":["stem","steemstem","palnet","technology","learning","networking"],"users":["steempeak","null","joshman"],"links":["/@steempeak","/@null","/stem/@joshman/steem-course-ipv4-routing-primer-part-1","/@joshman/steem-course-ipv4-routing-primer-part-1","/stem/@joshman/steem-course-ipv4-routing-primer-part-1","/stem/@joshman/steem-course-ipv4-routing-primer-part-2","/@joshman/steem-course-ipv4-routing-primer-part-2","/stem/@joshman/steem-course-ipv4-routing-primer-part-2","/stem/@joshman/steem-course-ipv4-routing-primer-part-3","/@joshman/steem-course-ipv4-routing-primer-part-3"],"image":["https://files.steempeak.com/file/steempeak/joshman/NTAjqbvU-IRPS5S7.jpg","https://files.steempeak.com/file/steempeak/joshman/VCoXMNzt-IRPS5S1.jpg","https://files.steempeak.com/file/steempeak/joshman/q5PtBv60-IRPS5S2.jpg","https://files.steempeak.com/file/steempeak/joshman/9EOQZscV-IRPS5S3.jpg","https://files.steempeak.com/file/steempeak/joshman/E2zHyyXh-IRPS5S4.jpg","https://files.steempeak.com/file/steempeak/joshman/OvIeYELX-IRPS5S5.jpg","https://files.steempeak.com/file/steempeak/joshman/HHhuhenK-IRPS5S6.jpg","https://files.steempeak.com/file/steempeak/joshman/FfkqDGie-IRPS5S8.jpg"]}
created2019-09-17 10:28:42
last_update2019-09-17 10:29:15
depth0
children3
last_payout2019-09-24 10:28:42
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value15.733 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length7,638
author_reputation277,932,931,100,174
root_title"STEEM Course: IPv4 Routing Primer (Part 5)"
beneficiaries
0.
accountjoshmania
weight8,500
1.
accountnull
weight400
2.
accountsteempeak
weight500
3.
accountsteemstem
weight600
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id90,659,935
net_rshares82,473,503,296,244
author_curate_reward""
vote details (635)
@lauch3d · (edited)
$0.02
nice, there is still quality work. Will go through it because IP is still a black box for me. Resteem

PS: Is there on your Blog something about the routing in bitcoin (legacy or segwit)?
๐Ÿ‘  ,
properties (23)
authorlauch3d
permlinkpxzjfg
categorystem
json_metadata{"tags":["stem"],"app":"steemit/0.1"}
created2019-09-17 17:04:27
last_update2019-09-17 17:07:36
depth1
children1
last_payout2019-09-24 17:04:27
cashout_time1969-12-31 23:59:59
total_payout_value0.012 HBD
curator_payout_value0.011 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length187
author_reputation35,293,764,570,552
root_title"STEEM Course: IPv4 Routing Primer (Part 5)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id90,670,092
net_rshares112,229,854,094
author_curate_reward""
vote details (2)
@joshman ·
Thanks, much appreciated.
Nothing on bitcoin.  I did post a course on IP addressing and subnetting prior to starting this one though.
๐Ÿ‘  ,
properties (23)
authorjoshman
permlinkre-lauch3d-pxzkf1
categorystem
json_metadata{"tags":["stem"],"app":"steempeak/1.16.1"}
created2019-09-17 17:25:51
last_update2019-09-17 17:25:51
depth2
children0
last_payout2019-09-24 17:25:51
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length133
author_reputation277,932,931,100,174
root_title"STEEM Course: IPv4 Routing Primer (Part 5)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id90,670,603
net_rshares17,980,737,061
author_curate_reward""
vote details (2)
@steemstem ·
$0.02
re-joshman-steem-course-ipv4-routing-primer-part-5-20190917t222103087z
<div class='text-justify'> <div class='pull-left'> <center> <br /> <img width='200' src='https://res.cloudinary.com/drrz8xekm/image/upload/v1553698283/weenlqbrqvvczjy6dayw.jpg'> </center>  <br/> </div> 

This post has been voted on by the **SteemSTEM curation team** and voting trail. It is elligible for support from @curie and @minnowbooster.<br /> 

If you appreciate the work we are doing, then consider supporting our witness [@stem.witness](https://steemconnect.com/sign/account_witness_vote?approve=1&witness=stem.witness). Additional witness support to the [curie witness](https://steemconnect.com/sign/account_witness_vote?approve=1&witness=curie) would be appreciated as well.<br /> 

For additional information please join us on the [SteemSTEM discord]( https://discord.gg/BPARaqn) and to get to know the rest of the community!<br />

Thanks for having used the <a href='https://www.steemstem.io'>steemstem.io</a> app. This granted you a stronger support from SteemSTEM. Note that including @steemstem in the list of beneficiaries of this post could have yielded an even more important support.
๐Ÿ‘  ,
properties (23)
authorsteemstem
permlinkre-joshman-steem-course-ipv4-routing-primer-part-5-20190917t222103087z
categorystem
json_metadata{"app":"bloguable-bot"}
created2019-09-17 22:21:09
last_update2019-09-17 22:21:09
depth1
children0
last_payout2019-09-24 22:21:09
cashout_time1969-12-31 23:59:59
total_payout_value0.010 HBD
curator_payout_value0.010 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,105
author_reputation262,017,435,115,313
root_title"STEEM Course: IPv4 Routing Primer (Part 5)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id90,677,908
net_rshares97,807,512,644
author_curate_reward""
vote details (2)