99 IPExpert Adjacency Forming

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] many times so far I have mentioned the word adjacency and I was talking about the adjacency forming etc so one of the important things about OSPF is adjacency forming on interface or I should say on the link so when that happens there is going to be a certain interface state machine that is maintained locally by the rudder and interface goes through different states before the adjacency is fully formed the information is exchanged during this adjacency forming and only after the adjacency has been fully formed when we have received the database information from other router we can actually calculate the best path in our network the best paths in OSPF are calculated using Dijkstra algorithm or shortest path first algorithm so now I'm going to go through the adjacency forming so what we are going to have here are two routers let's say r1 and r2 that are interconnected using some link so it doesn't matter which network type it is all mentioned when there are some differences and we want to form an adjacency now the routers start by sending hellos so the hello packets are first exchanged now hello packets contain information like router ID the area ID the area type hello timers and couple more parameters but these are really the important ones now once the hello timers are once the hellos are exchanged and once the router know about each other they're going to proceed to form the adjacency how the routers know about each other so when router r1 sends this it says okay this is my router ID so at this point here are two knows about r1 but how does r1 know that r2 knows about it well there is going to be one more thing well there is a couple more things but one more important thing list of known routers or known router IDs on the segment so basically what's going to happen here r1 is going to say hello I'm r1 and r2 is going to say hello I'm are two in the next hello from r1 it's going to say hello I'm r1 and I can see our two when are to receive this packet and it sees its own router ID in the list of known routers from r1 it knows that r1 heard from it the same thing goes in the other direction so at this point they can decide to form the adjacency now they have actually started forming adjacency already so let me first start at the beginning the interface comes up depending on the interface so let's say the interface state machine when the interface initially comes up there could be an initial wait state now initial wait state will exist on broadcast and non broadcast networks only and will last for dead interval time so whatever you configure to be your dead interval this is how long the wait state is going to last for now what is happening in the wait state the routers are not sending any hellos they're just listening and observing what is happening on the segment now there was a question before when someone asked me if I clear all the routers on the segment will that take care of the preemption for the DR election and my answer was yes but don't wait too long because some of the routers might actually start might reelect themselves but you will have more than just few seconds to do it and this is exactly what I meant the defense mechanism that I mentioned is this wait state when you clear the process on the rudder when the interface initially comes up on on a particular segment it is first going to spend this dead interval time just observing what is happening elsewhere to see if the DR is already elected if there is no dr elected then the router is going to start the election process by claiming it is the dr now during this time you will have time to clear the other routers and if as i said if you don't wait too long you're going to be just fine with the election process so this is that defense mechanism and this exists there in the state machine to prevent unnecessary dr elections from happening now the next state that you might encounter is going to be in it state now in enid state basically we have sent hellos so we are sending our hello the next state is going to be 2-way state in this state we have seen our router ID in neighbors hello message now I'm going to write here in green that this is a possible stable state what I mean by possible state stable state is when you have a network let's say looks like this so let's say this is r1 r2 r3 and let's say that this network that this router here is the designated router and this is D our other so it's not eligible to be the D R and this is the D our other let's say that we might have a BD or it's relevant for what I'm trying to show you so this is where we will have full adjacencies but because this is a sheared segment because this is a broadcast network type basically r1 and r3 will know about each other and they will be in a stable two-way state this is why I say that this is okay the relationship here will be fully loaded is if everything is okay but the relationship between r1 and r3 will be okay we know about each other but that's about it nothing more we have not moved on beyond this stage because we are not actually forming an adjacency we just know that we exist that we are on the same segment so this is why I say here in this line that this is a possible stable state so you could have a two-way relationship between two neighbors and that everything is okay in your now it could be an indicator of a problem as well but for now I'm just going to indicate what the states do and then I'm going to go through several examples what could cause the the routers to be for example stuck in that state in a case that you need to troubleshoot what is going on now after the two-way state there is an exchange start phase now in exchange start I'm just first going to write it down then explain a master/slave relationship is formed and decision how to exchange data he's made now let me explain this a little bit so let's say that we have two routers r1 and r2 so I'm going to say master slave just so you later on know what I'm talking about so let's set it here we have a router ID of 1 1 1 1 and here we have router ID of 2 2 2 2 now the master/slave relationship will be determined based on these values this will be the master this will be the slave very simple one why because this one has the high route ready now the role of the master is to paste the exchange and make the decision when to move on to another phase the role of the slave is to do as told that's what slaves do now decision how to exchange the information is going to be made basically on the MTU size so both of these routers I need to learn how to write both of these routers here are going to exchange the information about what they think their MTU is configured on the interface and if they are in agreement as they are here the master says ok we can proceed if they are in this agreement they cannot proceed even though the master might say override the slave but this doesn't happen if they are in this agreement what the MTU size is they will not proceed at this point so these are two important things that happened now if they are in agreement about the MTU the master is going to make a decision to move on to an exchange phase in exchange phase database descriptors are exchanged now what are the database descriptors so let me write that down database descriptor is summarized description of the database contents so to write that in or to say that in plain English let me ask you one thing and try to answer it for yourself how many times have you eaten at a restaurant once twice or many times now how many times have you gone to the restaurant and done something that I am dying to do at one point in my life just walk in and say got all the food bring me everything you have and they bring out all the food and go yeah I'm just going to have this one strawberry thank you very much you can you can drop the rest no I didn't ask for all kinds I didn't ask for one of every or you know a sample no I asked just bring out all the food so they brought out all the food they had back in the kitchen and I picked one strawberry now we don't do that when we go to restaurants even though I'm saying I'm dying to try this out what we do when we go to the restaurant is we ask for a menu we are asking for a summarized information about what they actually have in their database in their kitchen so we take a look at the menu and say yeah I'll have strawberry or whatever you want to have right so we take a look at the menu we are not actually getting all the information we are not getting all the food and throwing it away we are getting information about what is contained in the database this is exactly what the database scripter is this is the information I have in my database and then I'm receiving from the neighbors information that they have in their own database so based on that information I can compare the contents of their database with the contents of my database and I can say hey you know what this is the information that I would like to have bring this out and the same thing happens so this is the database descriptor this is what gets exchanged in the exchange phase it's basically an exchange of menus this is what I have this is what my neighbor has and then we make a determination what is the information that we actually need to get which brings us to the next phase then and the next phase is going to be loading so at this point we have actually determined what is the information that we need to get and then we are going to proceed into the loading phase now in the loading phase the actual database content is sent now the database content is sent using three types of packets so database loading so let's say that we have our one then we have our two so basically our one is first going to send something that is called link state request so it is going to request a particular LSA particular content particular data from the database to that our two is going to respond with something we call link state update and when we have received this information we are going to acknowledge that we have received this information with the link state acknowledgement so these are separate packet types so if we take a look at what we talked about so far there are five types of packets in OSPF we have hello we have database descriptors DVD we have a link state request we have a link state update and we have link state acknowledgement now this is trivial for written test now it's also useful for debugging because when you are observing for example debug IP ospf adjacencies you're going to see the hellos being sent we need to know what is happening with the DVDs so it says that okay too many DVD retransmission hey what does that mean in which state are we stuck where we are stuck in exchange or exchange start this is where the DVDs are exchanged now if you are sending link state requesting state requesting state request and you're not getting the updates that means that there is a problem with a loading phase so this is why you know I disagree with the statement at all this is just a trivia why would anyone need to know this well if you want to be good at troubleshooting if you want to be able to debug information and see what is going on in your network it's very very important to understand what these different packet types to and what is the information that is carried there so this is the interface state machine at this stage now and last but not least there is a last phase which basically is 4 which means database is in sync and at this point here I should write that this is a possible stable state so there are only two possible stable states that's full and two-way all others are transient states and if you see the router in any of those states for extended period of time there is something wrong so now that we know what is happening in different stages here let's see what are the possible reasons for routers to be actually stuck in those phases so let's write here troubleshooting adjacencies so if we have in it phase what can cause the routers to be stuck for an extensive period time in each phase well the most likely reason is unreasonably long dead interval now and there is a warning remember that interval on non broadcast network types is two minutes so that's oh sorry disregard I I was writing one thing and thinking about a completely different thing so if you have a router that is stuck in a wait state for unreasonably long time look at the dead interval this would be the number one reason for the router to be stuck in this state for extended periods of time so let's take a look and what is the possible reason for routers to be stuck in in it so if we have in it and we are there for a long time it usually means one-way communication now think about if we have two routers so r1 and r2 and we are sending the hellos this way that means that this interface here is in init face now if you're not getting hellos from the other side what are the possible reasons well one-way communication which means that we are sending packets but the other side is not sending now I'm not judging what is the reason for one-way communication it could be simple that OSPF is not enabled here or it could be that there is a layer two problem or it could be that there is you know something that prevents the traffic from this router the OSPF traffic from this router arriving here it could be accessed lists it could be police or it could be any number of reasons but one-way communication also keep one thing in mind I'm talking about the state of the local interface which on this router you can see with show IP ospf interface now there it is another situation and that is if you run the command show IP ospf neighbor now if you ran show IP ospf neighbor let's say we have r1 and r2 again and what you are seeing here is r2 and you can see it in init phase now this doesn't mean that communication from r2 to r1 is not working that means quite the opposite that means that you are actually receiving the traffic from r2 but there is some problem with your traffic region r2 why because how else would you know that r2 actually exists unless you receive the hello so it's important to note that this will show you the local state machine and that this will show you remote State so if you're running show us PF interfaces you are seeing the interface State on your own local interfaces but you IP ospf neighbors show you the information from the other neighbor so that would be the number one reason for routers being stuck in it another would be hello mismatch now hello mismatch means that some of the parameters in the hello packets don't match what needs to match is the hello timer the dead interval the area ID the area type and the subnet but that the own point-to-point interfaces that's not that's not Ezreal on so look out for those things so hello mismatch that that could be the reason and also one way communication is a possible reason for the routers being stuck in this state now let's take a look at two-way now as I say and I'm going to repeat this here possible stable state which means that they the routers could be in a two-way relationship and that is possibly okay but keep in mind that this is a possible stable state which means this could also be an indicator of a problem now let's say that you have two routers r1 and r2 and let's say that this is Ethernet 0 0 and what we have here is that this is two-way and this is two-way and they are staying there now this is going to be an indicator of the fact that on both sides you have set priority to 0 now if this is the case they're going to be in a two-way state absolutely stable and you're not going to have a fully operational network because at least one of them needs to be they are here because you are using Ethernet which is by default the broadcast network type otherwise you will not have the adjacency or of course you can change Network type here to point-to-point and avoid the dr and BDR election and this situation that they are stuck in two-way but just remember this is a possible stable state the routers are not going to get out of this situation as far as they are concerned everything is fine if they are both with priority 0 so this is at the same time good news and bad news this is why I wrote it this is a possible stable state so I'm just going to say that no dr was elected here so that would be the reason for them being stuck in two-way now mind you of course there are other reasons that they could be stuck but I'm now giving you the most of this one sort of a checklist of things to go through so oh I have the routers that are stuck into a let me check for the dr now of course they could be accessed any number of reasons that the trousers could be stuck in this debt but as I say I'm just giving you the most obvious ones so the next one that we have is the exchange start and the number one reason is the m2 mismatch so if two routers are claiming different MTU size this is going to be the problem they are going to be stuck in exchange start now there is one more reason and that is a unicast reachability let me explain that a little bit so when we have two routers that are forming in adjacency again our r1 and r2 and we are sending hellos so these are hellos and when we reach the exchange start let's say that this was a master and this was a slave master is going to start speaking unicast with the slave and slave is going to be responding back using unicast so this communication between them is actually going to be unicast so you can have a situation in which multicast hellos are operating properly but unicast cannot make it across if you have this situation your slave side will be stuck in exchange start very likely but the master is probably going to move into the exchange phase and initiate this unicast communication so if you have a situation at one side is stuck in exchange start and the other one is stuck in exchange look for unicast reachability so this is what this is what I wrote here is that unicast reach ability could be the problem here if they are stuck in exchange phase number one reason for that is unique ostrich ability just as I explained same reasons the next thing is loading and this is going to be the fun one this can also be an to problem but I'm going to write it slightly differently so let me explain this let's say that we have two routers r1 and r2 and they are connected directly but through a switch now the switch could be Ethernet or frame relay whatever it is so this is the switch here and let's say that this is r1 and this is r2 now the MTU is configured on this interface here let's say it's 1500 and MTU here is 1500 but let's say that the system MTU on the switch what's that - fourteen eighty or any number now if we try to send a 1500 byte packet from r1 to switch the switch will actually drop this packet because it cannot switch it but in the exchange start these two guys in exchange start they exchange this information so the two of them actually agree about this now let's say that you have a situation that you have this happens at around 64 so let's say that we have 100 route in the database here and that we have five routes in the database here when we reach the point of loading the database this guy here sends only five LSX right finally says can make it across but this guy here needs to send hundred LS s what oil's PF is going to try to do is it's going to try to pack 100 LS s into as few packets as possible which means that the first packet is very likely going to be 1500 bytes which means that when this 1500 byte packet arrives to switch it's going to be dropped which means that the link state requests that are to sent is never going to be responded to by a link state update so there will be another link state request links that update the gets drop link state request link state update drop and eventually this router - is going to timeout but you're going to have a weird situation in this part scenario where this side here says that the neighbor is loading and this side here is fully okay why because there were only five routes going in this direction and there hundred routes going in this direction and this is what I meant by underlying MTU mismatch so something in your lair - - is dropping this traffic so if you have routers that are actually stuck in loading this would be probably the number one reason for it so the next one is of course full and as we know this is a possible stable State I say possible because there are still things that can go wrong and if this is the case we are all good but sometimes we have situation that we are full but no routes in the routing table if that is the case the situation is database mismatched or I should say the database discrepancy or filtering so there are still reasons why the neighbors could be full but you get no route in the routing table if you have that situation the routers are in stable State the database are synchronized but there is some discrepancy in the database the routers don't agree about some information in the database and we are not going to trust information coming from this neighbor if this is all good this is where SPF is running and we are all happy so let me add SPF run to that previous list of these as well so at this point here we have SPF Oh
Info
Channel: CCIEORDIE.COM
Views: 962
Rating: undefined out of 5
Keywords:
Id: SOAi7y00pSg
Channel Id: undefined
Length: 32min 51sec (1971 seconds)
Published: Wed Jan 31 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.