1 00:00:00,000 --> 00:00:02,844 [AUDIO LOGO] 2 00:00:02,844 --> 00:00:07,110 3 00:00:07,110 --> 00:00:09,270 So now that we've seen a little bit more 4 00:00:09,270 --> 00:00:12,930 about how our IS-IS adjacencies work, 5 00:00:12,930 --> 00:00:14,820 let's take a little bit of a closer 6 00:00:14,820 --> 00:00:16,930 look at that communication. 7 00:00:16,930 --> 00:00:19,120 Now, we did look a little bit, of course, 8 00:00:19,120 --> 00:00:21,100 at the hello packets themselves. 9 00:00:21,100 --> 00:00:23,850 We did see that it uses a different type of hello 10 00:00:23,850 --> 00:00:28,410 for a LAN or a point-to-point interface or network type. 11 00:00:28,410 --> 00:00:31,530 But in this video, we're going to focus more on the packets 12 00:00:31,530 --> 00:00:34,890 that it uses for the actual database exchange. 13 00:00:34,890 --> 00:00:37,860 So let's get in and take a look at the formatting 14 00:00:37,860 --> 00:00:40,140 of those packets and the different types 15 00:00:40,140 --> 00:00:44,430 that we have to support, both for IPv4 and for IPv6. 16 00:00:44,430 --> 00:00:47,100 17 00:00:47,100 --> 00:00:50,650 So as we jump into the IS-IS packet types, 18 00:00:50,650 --> 00:00:52,470 the first thing to keep in mind is 19 00:00:52,470 --> 00:00:57,210 that these are called PDUs, or Protocol Data Units. 20 00:00:57,210 --> 00:01:00,520 That's just the generic name for the packet type. 21 00:01:00,520 --> 00:01:05,290 Now, these PDUs are broken down into three major categories. 22 00:01:05,290 --> 00:01:08,580 The first is the hello packets, which we have sort of looked 23 00:01:08,580 --> 00:01:10,230 at a little bit already. 24 00:01:10,230 --> 00:01:12,390 We know that there's actually two different types 25 00:01:12,390 --> 00:01:13,920 of the hello packets-- 26 00:01:13,920 --> 00:01:18,660 one type for LAN and one type for point to point. 27 00:01:18,660 --> 00:01:23,190 Then we have the Link-State Packets, or the LSPs. 28 00:01:23,190 --> 00:01:25,860 These are the ones that actually distribute 29 00:01:25,860 --> 00:01:27,850 the routing information. 30 00:01:27,850 --> 00:01:29,790 So these are the ones actually carrying 31 00:01:29,790 --> 00:01:33,960 the bulk of the information for the IS-IS database. 32 00:01:33,960 --> 00:01:37,080 Then there's the sequence number packets. 33 00:01:37,080 --> 00:01:39,330 And these are really just to control 34 00:01:39,330 --> 00:01:42,300 the distribution of the LSPs. 35 00:01:42,300 --> 00:01:44,130 It's to make sure that we get all of them, 36 00:01:44,130 --> 00:01:46,110 we get them in order, we don't miss any. 37 00:01:46,110 --> 00:01:50,370 So these are really just for checking the LSPs. 38 00:01:50,370 --> 00:01:52,410 So like we said, the hello packets 39 00:01:52,410 --> 00:01:56,460 are broken down into, well, sort of two major categories 40 00:01:56,460 --> 00:01:57,570 for the LAN. 41 00:01:57,570 --> 00:02:02,580 And then those are broken up into level one versus level two 42 00:02:02,580 --> 00:02:03,510 hellos. 43 00:02:03,510 --> 00:02:08,070 And these are PDU types 15 and 16. 44 00:02:08,070 --> 00:02:11,170 If you remember, we saw these in the previous video. 45 00:02:11,170 --> 00:02:13,290 And then, of course, there's the hello 46 00:02:13,290 --> 00:02:18,060 for the point-to-point network, which is the type 17. 47 00:02:18,060 --> 00:02:20,200 Again, we saw these as well. 48 00:02:20,200 --> 00:02:23,580 But there's three total different hello types-- 49 00:02:23,580 --> 00:02:26,880 two for LAN, one for point to point, but two 50 00:02:26,880 --> 00:02:31,390 overall categories of LAN versus point to point. 51 00:02:31,390 --> 00:02:35,040 Now, the LSPs also have subcategories. 52 00:02:35,040 --> 00:02:39,150 There's the LSPs for level one, and these 53 00:02:39,150 --> 00:02:41,340 are going to be type 18. 54 00:02:41,340 --> 00:02:46,890 And then we have the level two LSPs that are type 20. 55 00:02:46,890 --> 00:02:49,000 So these are for carrying, of course, 56 00:02:49,000 --> 00:02:52,680 the database information for the different levels. 57 00:02:52,680 --> 00:02:56,700 The sequence number packets are also broken into subcategories. 58 00:02:56,700 --> 00:02:59,460 As you can see, there's, again, sort of a major category 59 00:02:59,460 --> 00:03:04,720 where we have level one and level one versus, of course, 60 00:03:04,720 --> 00:03:07,680 the level two and the level two. 61 00:03:07,680 --> 00:03:11,130 And what makes these different, of course, from each other is 62 00:03:11,130 --> 00:03:14,280 there's a complete for each one, and there 63 00:03:14,280 --> 00:03:16,920 is a partial for each one. 64 00:03:16,920 --> 00:03:20,040 Each of these, of course, have their own types-- 65 00:03:20,040 --> 00:03:25,650 24, 25, 26 and 27. 66 00:03:25,650 --> 00:03:28,500 So as we see, these are sequential. 67 00:03:28,500 --> 00:03:33,630 These are, again, used to verify the receipts of the LSPs. 68 00:03:33,630 --> 00:03:38,010 The way this works is if I'm getting the complete database, 69 00:03:38,010 --> 00:03:41,730 essentially, I will do a complete sequence number. 70 00:03:41,730 --> 00:03:44,130 And I'll do a partial if we're just 71 00:03:44,130 --> 00:03:48,630 updating certain parts of the database that have changed. 72 00:03:48,630 --> 00:03:53,010 Now, all of these PDUs do follow the same overall packet 73 00:03:53,010 --> 00:03:54,130 structure. 74 00:03:54,130 --> 00:03:57,780 The first thing we have is a common header. 75 00:03:57,780 --> 00:03:59,940 This is followed by a specific header. 76 00:03:59,940 --> 00:04:03,670 This is going to be, of course, based on the type of PDU. 77 00:04:03,670 --> 00:04:07,290 And then we have the TLVs, which is where we're actually 78 00:04:07,290 --> 00:04:11,760 carrying the data that this PDU is supposed to be carrying. 79 00:04:11,760 --> 00:04:13,980 So the common header, to break it down 80 00:04:13,980 --> 00:04:16,260 in a little more detail, contains 81 00:04:16,260 --> 00:04:21,360 all of these fields, each one of these being 1 byte. 82 00:04:21,360 --> 00:04:25,150 The first is the intradomain routing protocol discriminator. 83 00:04:25,150 --> 00:04:29,580 This is going to be set to 0x83. 84 00:04:29,580 --> 00:04:32,580 Next is the length indicator. 85 00:04:32,580 --> 00:04:34,540 Now, this is going to, of course, 86 00:04:34,540 --> 00:04:36,900 be the length of the header. 87 00:04:36,900 --> 00:04:38,920 And it's going to be in bytes. 88 00:04:38,920 --> 00:04:41,880 So this could vary, of course, because there's going 89 00:04:41,880 --> 00:04:43,590 to be different packet sizes. 90 00:04:43,590 --> 00:04:45,480 That's why we need the length field 91 00:04:45,480 --> 00:04:49,080 to begin with is because it can be variable header lengths. 92 00:04:49,080 --> 00:04:52,240 So this is giving that information. 93 00:04:52,240 --> 00:04:55,350 Next is the version and protocol ID. 94 00:04:55,350 --> 00:04:59,670 This is currently going to be set to 0x01. 95 00:04:59,670 --> 00:05:02,350 Then we have the ID length. 96 00:05:02,350 --> 00:05:04,980 This is going to tell us the length of the NSAP 97 00:05:04,980 --> 00:05:07,890 address and the NET ID. 98 00:05:07,890 --> 00:05:10,770 Again, those can vary, so we need something 99 00:05:10,770 --> 00:05:12,430 to tell us the length. 100 00:05:12,430 --> 00:05:14,682 This is followed by a reserved byte. 101 00:05:14,682 --> 00:05:16,140 This is, of course, going to be set 102 00:05:16,140 --> 00:05:18,300 to zero since it's reserved. 103 00:05:18,300 --> 00:05:20,730 Next is the PDU type. 104 00:05:20,730 --> 00:05:23,740 This is what's going to tell us what comes next. 105 00:05:23,740 --> 00:05:28,240 So if you want to compare this to TCP/IP operation, in a way, 106 00:05:28,240 --> 00:05:30,690 this is sort of like the next header field. 107 00:05:30,690 --> 00:05:33,930 This is going to be talking about what type of PDU 108 00:05:33,930 --> 00:05:39,240 this is based on what we talked about on the previous slide. 109 00:05:39,240 --> 00:05:40,710 Next is the version. 110 00:05:40,710 --> 00:05:44,190 Again, this is currently going to be set to 0x01. 111 00:05:44,190 --> 00:05:48,210 And then the maximum area addresses. 112 00:05:48,210 --> 00:05:51,540 And this is the maximum number of area addresses 113 00:05:51,540 --> 00:05:55,950 that we're going to be carrying in the PDU. 114 00:05:55,950 --> 00:06:01,170 Now, each PDU type has its own specific headers. 115 00:06:01,170 --> 00:06:04,410 This is talking about this field right up here. 116 00:06:04,410 --> 00:06:06,570 There's a lot of information here, 117 00:06:06,570 --> 00:06:09,260 which we probably don't really have to have memorized. 118 00:06:09,260 --> 00:06:12,140 But I will give you a reference to that towards the end 119 00:06:12,140 --> 00:06:13,550 of the video here. 120 00:06:13,550 --> 00:06:15,740 Now, again, the last section of the header 121 00:06:15,740 --> 00:06:20,030 are the Type Length Values, or the TLVs. 122 00:06:20,030 --> 00:06:23,310 And again, there are a lot of these as well. 123 00:06:23,310 --> 00:06:27,230 These are some of the major ones, things like the area 124 00:06:27,230 --> 00:06:32,030 address of the source node, the neighboring routers, if it's 125 00:06:32,030 --> 00:06:34,100 intradomain routes. 126 00:06:34,100 --> 00:06:36,720 What networks are actually supported? 127 00:06:36,720 --> 00:06:41,600 So for example, again, are we supporting IPv4, IPv6, 128 00:06:41,600 --> 00:06:44,540 maybe just CLNS, which wouldn't be very likely? 129 00:06:44,540 --> 00:06:47,420 But that is what this was created for. 130 00:06:47,420 --> 00:06:49,220 Whether it's an external route. 131 00:06:49,220 --> 00:06:52,190 What are the actual addresses of the interfaces? 132 00:06:52,190 --> 00:06:55,250 There's, of course, a corresponding one for IPv6 133 00:06:55,250 --> 00:06:56,520 as well. 134 00:06:56,520 --> 00:06:59,390 We'll be focusing in more on the TLVs 135 00:06:59,390 --> 00:07:06,410 for IPv6 in the skill based around IPv6 IS-IS support. 136 00:07:06,410 --> 00:07:08,510 As I mentioned a few moments ago, 137 00:07:08,510 --> 00:07:14,750 you can refer to ISO Standard 10589 and RFC 138 00:07:14,750 --> 00:07:18,590 1195 for more information, if you really 139 00:07:18,590 --> 00:07:21,260 want to know all those different TLV 140 00:07:21,260 --> 00:07:25,730 values and those PDU-specific headers 141 00:07:25,730 --> 00:07:28,760 for every single packet type. 142 00:07:28,760 --> 00:07:32,330 Let's wrap up this video with just a quick look 143 00:07:32,330 --> 00:07:35,180 at a Wireshark capture so we can see 144 00:07:35,180 --> 00:07:36,770 where some of this type information 145 00:07:36,770 --> 00:07:39,890 is actually carried in those IS-IS packets. 146 00:07:39,890 --> 00:07:42,640 147 00:07:42,640 --> 00:07:45,840 So let's start off looking at packet three, which is actually 148 00:07:45,840 --> 00:07:50,240 a point-to-point hello coming from router one. 149 00:07:50,240 --> 00:07:54,350 If we expand the IS-IS hello and then scroll down 150 00:07:54,350 --> 00:07:56,930 a little bit, some of the things we can see, 151 00:07:56,930 --> 00:08:00,950 we can see the protocol supported being 129. 152 00:08:00,950 --> 00:08:03,110 So if we open that section up, we 153 00:08:03,110 --> 00:08:06,770 can see that as of right now, it is a type 129, 154 00:08:06,770 --> 00:08:09,920 and it is currently supporting just IP. 155 00:08:09,920 --> 00:08:12,540 So there's no IPv6 on here at the moment. 156 00:08:12,540 --> 00:08:13,862 It's just IP. 157 00:08:13,862 --> 00:08:15,320 But you can see where it's carrying 158 00:08:15,320 --> 00:08:19,170 the information about what's actually supported here. 159 00:08:19,170 --> 00:08:23,510 Also, notice our type 132, where it's carrying the actual IP 160 00:08:23,510 --> 00:08:24,900 interface addresses. 161 00:08:24,900 --> 00:08:27,810 And if we open that up, scroll down a little bit, 162 00:08:27,810 --> 00:08:30,260 we can see where it's actually advertising router 163 00:08:30,260 --> 00:08:33,600 one's, IPv4 interface address. 164 00:08:33,600 --> 00:08:35,179 The other thing we can look at here 165 00:08:35,179 --> 00:08:39,559 is packet 17, which is a complete sequence number 166 00:08:39,559 --> 00:08:40,740 packet. 167 00:08:40,740 --> 00:08:45,410 So if we highlight packet 17, we can open up the ISO header. 168 00:08:45,410 --> 00:08:48,140 And we go to LSP entries. 169 00:08:48,140 --> 00:08:50,870 We can actually see all of the entries being 170 00:08:50,870 --> 00:08:55,940 exchanged in this complete sequence number packet. 171 00:08:55,940 --> 00:08:58,510 So in this video, we jumped in, and we 172 00:08:58,510 --> 00:09:00,310 looked at a little bit more detail 173 00:09:00,310 --> 00:09:04,660 on the different packet types that are used by IS-IS 174 00:09:04,660 --> 00:09:08,330 as well as a little bit of what's in those packets. 175 00:09:08,330 --> 00:09:10,780 Then, of course, we jumped in here to Wireshark. 176 00:09:10,780 --> 00:09:13,040 And we took a look at some of those packets, 177 00:09:13,040 --> 00:09:15,460 how they look on the wire, and what's actually 178 00:09:15,460 --> 00:09:17,320 in some of those headers. 179 00:09:17,320 --> 00:09:19,630 I hope this has been informative for you, 180 00:09:19,630 --> 00:09:22,740 and I'd like to thank you for viewing. 181 00:09:22,740 --> 00:09:26,000