 Hi there, my name is Ken Mayer and I'm going to be your instructor for this course on Network Plus. Now over the time of, I don't know, almost 30 years, I've been working in a wide variety of different networking solutions or IT solutions. I started off of course as many people did and looking at what we call the dumb terminals connected to a mainframe. A lot of different technologies I don't even want to get into because you're only going to find them in museums. But as time went on I started working a lot with different vendors that are involved in the networking infrastructure. My certifications include a wide variety of service provider technologies and enterprise technologies through the use of Cisco systems, routing and switching security based voice over IP based solutions, through the use of Juniper networks with service provider routing and switching, enterprise routing and switching as well as security and remote access technologies, through the use of Palo Alto networks, the next generation firewall and what they can provide for security levels. I do a lot of work in the field of what I guess sometimes is called ethical hacking, which means that I'll be able to talk a lot about the ways in which people can abuse your networks and what you need to look at to be able to secure those. And of course through all of that I've done a lot of work in the Windows operating systems as well, which is an important aspect because we are creating a network usually to support some sort of server and client operating systems communication capabilities back and forth to each other. So with all of that I hope to be able to give you a lot of good insight into what it takes to make your networks work, to talk about the different pieces, the different components, how to make sure that they're set up correctly, ways to troubleshoot them and how to secure them. We're going to get into the idea of routing. And remember that routing we described as being here at the network layer because at the network layer we define what we call these broadcast domains and we gave each one of those broadcast domains basically a logical name that we described with an IP address or an IP network address. Now in order for us to have the communications from one broadcast domain to another, also at the network layer we have to be able to create routes so that all of these layer three devices that we call routers will know how to forward traffic from one broadcast domain to another. So as we're going through and looking at these communications I want you to realize that we're going to be looking at areas of the network layer with some communications and the transport layer of the OSI model and making sure that we understand the differences between what happens at transport, what happens at network and the different types of protocols that we do use. So as far as the dynamic host configuration protocol is concerned, it is helping us at layer three which is the way in which we can assign the IP addresses to our machines without having to worry about maybe making a misconfiguration or having a duplicate address by doing a manual entry. So everything that deals with wireless is going to be found under the IEEE of 802.11. And then, of course, from there some people get a little confused and sometimes think, well, isn't that bridging? Well, bridging, remember, is 802.1. So this is 802.11 in that standard anyway. Going on, we look at the standards. One of the first ones that we adopted and liked to use was 802.11B which was unfortunately not as good as 802.11A if your definition of good is something that you would measure in throughput or the amount of speed that you could transmit data. The reason we adopted it, even though it had this 11 megabits per second, is because it worked on what we call the ISM band, the Industrial Scientific and Medical Unlicensed Frequency. And so everybody had radios that were able to work on that and so it was cheaper to use 802.11B than to buy all new hardware to be able to get up to 802.11A which in that case was at this 5 GHz range. Anyways, you're contrasting it. There's more to looking at this than just the amount of bandwidth. We might also be concerned about range. We might also be concerned about legacy devices that might not work with new standards. And so you can just kind of see what your options are. But anyway, at some point when we got to 802.11G we were able to equal the throughput, the speed in the megabits per second at that 2.4 GHz frequency. And by the way, it's not the frequency that was determining the bandwidth. It was how we encoded the data as we send these little analog waves, radio waves, through the air. That's what made the big difference. Now, when we got to 802.11N and just to prove it, right, we had some good speed, 150 megabits per second, and it works at either of the 2.4 or 5 GHz frequencies. It still had pretty good range. But the big issue here is that it had this multiple input and multiple output streams. And so, you know, if you were to just kind of figure that I could actually combine these streams in my data transmission, then I'm going to get higher speeds. One of the latest ones to come out is the 802.11AC. And so, speed, it's saying megabits per second. And if you use multiple channels, you're going to get higher speed. They're now telling us this is our new 1 gigabit per second capable method of speed, I should say, over wireless. And that's just amazing. But again, that's because it has even more streams. And as you look into the technologies about how data is encoded, you'll also see that we've made improvements there as well. So anyway, those are your standards, those are your speeds. Frequency is an important issue. And, you know, the other important issue, like I said, is legacy. And I just want to tell you that it's not uncommon for a lot of access points now. If they're running at 2.4 megabits per second or 2.4 gigahertz, not per second, but gigahertz speed, that we combine this B and G together, meaning that we can work with either one on our access point. Some may even put the B, G, and N together. The problem we have is that, and it's not as well known as it should be, is that if you have somebody show up with, let's say, an old radio card in their laptop or whatever they're using for wireless, if they can only do 802.11B, all of the other people in your network are going to slow down to that B speed. Your access point doesn't like to switch back and forth in the way in which it does its transmissions. And that has to do with the way in which all of the devices communicate to the access point. So just be careful that legacy machines aren't slowing down your network. Now our objective here is going to be to talk about the open system interconnect and the TCP-IP models. And what we're going to do is we're going to compare the layers of the OSI and TCP-IP, plus make sure you understand why these are important as a concept when it comes to the design of different types of protocols and types of network communications. We're going to start off with the open system interconnect, the OSI. Now there are seven layers to the OSI, and of course they are easily enough, layers one through seven. When we talk about these, we usually will break them down into the upper layers, which would be layers five, six, and seven, and the lower layers, which would be one through four. Now we're going to break them down for you and give you, you know, we're going to actually kind of keep building on this entire concept and model so you understand what this does for us. But first of all, the OSI was designed as an basically open system. I mean, that is almost the name of it, right? The goal was that if we had different vendors of different technologies building their communication structure around the OSI model, then it would be easier for us to be able to integrate all of these different vendors together to be able to communicate. In other words, if we all agree on communicating through TCP, then it doesn't matter if it's a Windows machine talking to a Linux machine talking to a Macintosh machine because they would speak the same language. The other benefit of this as an open standard is if we do any kind of change or upgrade to a protocol, that we can do that within that layer, knowing that as long as we can make the whatever layer we change communicate to the one above it and below it, then it would just basically snap in without any problem. As an example, when we talk about Layer 3 with the network, we're in the middle of going from IP version 4 to IP version 6 and that change is only going to affect at that layer how we do addresses and a few other things that we'll talk about. But the goal was that we could put IP 6 in that layer and it would still talk to the transport layer above it and the data link layer below it, and it does. So that's kind of the idea is to encourage these open standards for all of us to be able to communicate. So we'll start with Layer 7. Now Layer 7 is the application layer. Now in the application layer, it is basically got, I don't know, I've heard a lot of different definitions, but the goal of the application layer is a way of, let's say, how we can interact with an operating system. Now some examples would be usually HTTP, the Hypertext Transfer Protocol. Well we know about that as an application layer because we use that as a program every time we open up a web browser to pull down content from the internet. Usually an HTTP has a command like get or put, in this case get to get a home page, and it would transfer over the information that was in a format called HTML that would then be able to be rendered as something we can read through our web browser. So the application layer is just a way of us interacting with the operating system, and usually our way of being able to initiate some sort of data transfer, whether sending information or receiving information. Now the presentation layer is basically a way in which files are, well I don't even want to say formatted, I don't also want to say stored on a hard drive because they're stored as ones and zeros, no matter where we store them. But more I guess the format would be a good idea. As an example in the world of graphics, we have different types of pictures of graphics that we can use. Some we call JPEGs, JPGs, some are TIFF files, some are bitmaps, and they all have with them a variety of different features, things that we can do with them. Some give you great compression, some allow you to alter it literally bit by bit. So that's great that we have these different formats of files, but I guess that's the best thing that we can say about the presentation layer. For example, when I talked about at the application layer, using HTTP get command to get a homepage, and it's encoded into a language known as HTML, well in a way that is a type of presentation that gives us something that we can present, that we can see on our screen. Now beyond that, we also have to realize that we have to have a way of transferring this information. And so part of what we're seeing is that, you know, we've got this presentation, we've got this JPEG, we've got this HTML file, Word document, whatever it is that we have. And we do have to begin to realize that a large amount of data is not going to be sent all in one big chunk across our network connections, and that we are going to be responsible for breaking it down into pieces, and after breaking it into pieces to be able to start sending it piece by piece so that when it's recreated on the other side that it's back into the acceptable format that we'll be able to read those. So you can think of again the presentation layer as that process of being able to identify how something is formatted, and often, of course, it's working with that application layer to be able to actually be seen or presented to you. The next layer is the session layer. Now a session layer is a very important piece of what we do here, because in our communications, I mean, let's face it, if I'm getting a file from a web server, if I'm sending you a document through email, I want my packets that I'm sending you of data to get to you and to have some sort of acknowledgement from you that you received them so that we can keep this back and forth communications going. That's what we look at as a session, as a way of finding out how to keep the communications between two points whole without them either breaking, falling apart or having our data go to different locations. We want the two endpoints to be able to communicate. There's a variety of ways in which we can do that type of communications. Often we hear examples of making a connection to a database, like SQL Server. Well, obviously somewhere in the software, SQL is keeping track of us and our communications back and forth, acknowledging us. Whether it does it through looking at information from the transport layer below, such as a port number or a series of port numbers. Whether it's using its own ability of its own program to keep its own back and forth communications and acknowledgments like you might have in the SQL Server. Those are things that are important to us. We might have like a user ID. We might have some sort of session ID, but in some ways we have a way of being able to identify and correctly be able to have two end units talk to each other without the session breaking, falling apart, or like I said, packets going in different locations. So that is the session layer, always taken care of in our software that we're using for our communications. With the transport layer, we begin what we often call as the lower layers of the OSI protocols or the OSI stack. Now, at the transport layer, our goal here is to have a common language that we can communicate back and forth with. Now, the benefits as I mentioned before with this is that we can have a variety of different vendor operating systems all talk to each other. Windows talking to Linux, to Unix, to Macintosh OS, or any other operating system you might have as long as we can speak a common language then we have the ability to transfer information. So that's what happens at the transport layer. Now, the transport layer has a variety of common protocols that we're going to talk about in more detail, such as the transmission control protocol TCP, the user datagram protocol UDP, but over the years have been a number of other types of protocols that work at the transport layer that were proprietary, such as Novel Networks had the SPX IPX protocol that communicated very much the same as we did with TCP but it would work only with Novel systems or anybody who paid a royalty to be able to communicate on that same language. So that's another reason why OSI is there is to help encourage open standards so we can improve communications throughout the entire list of vendors rather than trying to make us all go into one area and say, oh, we can only use Novel because we like SPX. Of course, now, by the way, Novel defaults everything into the TCP IP because, again, it's better to have that encouragement of open standards. So what we see with this protocol is a way of two systems being able to negotiate the back-and-forth conversation. Now, we haven't gotten down into the real meat of how this works. We're just kind of giving you the overview of OSI. But as we're breaking those large files down into smaller pieces, manageable sizes, we have to have a way of transferring those, usually one piece at a time. And often if we're going to talk about local area networks, that's usually done over Ethernet. But this transmission of these small blocks, if it's Ethernet at the most, 1,500 bytes, means that I'm going to be sending you a lot of pieces. And if I don't tell you how to reassemble those pieces, then you're not going to know what to do with it. I'm not going to send another end system, a jigsaw puzzle, and say, you figure it out. That's another part of what we do at the transport layer is we have a way of negotiating. So we have a way of recognizing the order in which the packets have been received, how to reassemble them, how to take care of errors. Error is something that is great with TCP, well, it's never great, but I should say great that it can handle communication errors by being able to request re-transmissions and re-broadcasts of information that we didn't receive before. So that's what we're looking at at the transport layer is a way of being able to set up that communications to get acknowledgments, to take care of error corrections, to be able to have a common language for different types of operating systems to be able to exchange information. Now as we move to layer three, we talk about the network layer. Now we often see a lot of network equipment that operates at layer three. We call them a layer three device. The most common one is a router. Now the biggest thing about the network is that we're creating logical addresses to be able to help us figure out the best way to get to a different location. Now certainly, of course, the devices that are on our way to doing the communications will segment the traffic into these different logical addresses and we have to have a way of putting an address on there. Now I use as an example, is a postal code. That's a good worldwide term for delivering mail, you know, the old fashioned way where we actually had a piece of paper that we wrote something on and sent it to somebody to deliver. And when we look at that, the postal code's job was to help us get close to the destination and that's what really is happening at the network layer. We are segmenting the entire, I guess we could say world through the internet and our local area networks as well by segmenting them into logical addresses. No matter what the address is, as long as it's unique and that we have the ability to find our way to get there. Now if I use postal codes as an example and I wanted to send some mail to an address like 999 Main Street in Seattle, Washington, 98101 and I do so from where I'm at in Boston and I drop the letter into a post office. Well the first thing the postal worker's going to do is see that the zip code is not theirs and so they're going to sort this to a delivery mechanism and then they're going to put it on a truck or a plane or a train that's going to get it hopefully in the most efficient way or the best route to that destination 98101. Once it arrives at that network or that postal code, it's then up for those people to look at 999 Main Street within their segment and make the final delivery. We're going to talk about how that happens when we get down to the layer 2. But right now our goal is to be able to again segment the information and facilitate an address scheme that allows these devices to be able to see what the destination network is and that's important because that's all routers are really doing is looking at the destination network and sending these packets or these segments in the most efficient way to that destination. Knowing at some point it will eventually arrive at that destination and then that router can determine how to do the local delivery. The data link layer at layer 2 is where we see the local delivery take place. This is where we actually care about the physical address of where that packet is supposed to go. Now, many different protocols occur within the data link area. The protocols are just again how the different machines on that local segment communicate with each other. Another important aspect is that we need to have a common communications protocol at this layer 2 to be able to find a way to exchange all of the ones and zeros. And that is what this is about by the way is I'm getting ready to take this raw data, turn it into a bunch of ones and zeros, and transmit it from one place to the other. But if I translate it into a language that's foreign to somebody else or another system then it's not going to make sense. And so we see a variety of different protocols or what we call encapsulation models at this location. The most common one we're going to deal with in the world of the local area network is Ethernet. Surprisingly, the wide area network is getting more and more into Ethernet services meaning that we're getting Ethernet not only in the local area but also in the wide area networks. But there's many other types of encapsulations you may hear of or hear me talk about. Things like frame relay, ATM as examples, ISDN is another example of things that operate at layer 2. And by the way there's many more of those types of encapsulations. But again it's a way of being able to format my ones and zeros in such a way that the other side understands them. Now in most of these situations it is Ethernet and so I'm going to use that as my example. As I talked about I had an envelope, a letter I wanted to send to 999 Main Street Seattle Washington 98101. Now that 98101 was taken care of at layer 3 by getting me on the, what did I say the truck, the train or the plane to get me hopefully in the most efficient method to that destination. Once it arrives at that post office that is responsible for the zip code 98101 they then look at the actual physical address 999 Main Street hoping that within that district there is no duplicate address of 999 Main Street so that they can finish the delivery. Now if there were duplicates there would be all sorts of messes there. And that's why we see the same thing when we talk about the way in which we address objects. You know when we talked about the IP address in the network layer you're going to learn that it's really broken into two pieces. A network portion and a host portion. So now we're looking at that host portion hoping that that's not duplicated within that network. And that's part of the local delivery. But the other part of this is, especially in the world of Ethernet is that I still need to have a physical address. And so the way we see the physical addresses dealt with are often in the things we call the MAC address. That would be the media access control. Now I'm throwing out a lot of acronyms, a lot of things that we're going to go into more detail on. But I'm just trying to make sure you kind of have this overview of what's happening at the different layers. So now we're preparing to actually take this information, turn it into a bunch of 1s and 0s, and we're actually going to address these, and we call them frames at this point, we're going to address these frames to that physical address and we're going to use a variety of equipment to be able to finish that delivery. The most common type of device you would see it layer 2 is your network switch or maybe depending if you're doing any other type of communications what we call a bridge. And again I know that I'm just throwing out equipment pieces at you, but I promise that you're going to know enough about all of these in a lot of detail to understand what their functions are. Alright, so that's what's happening at the data link. We're looking at that physical address getting ready to send this information as a bunch of 1s and 0s. That takes us to the physical layer, layer 1. That is the actual media by which we send the 1s and 0s. So at layer 2 we had some sort of encapsulation protocol like Ethernet where we would style the information the 1s and 0s in a certain order and format so that it was understood and known by the receiver. But that means it still has to be turned into 1s and 0s. Now the way in which we can transmit 1s and 0s, it's a binary system. That means basically the old days of vacuum tubes it was either on or off. It's the same idea in this digital scale. The way we send it could be through the use of electrons over a copper cable. Most often we would talk about seeing an Ethernet cable or what we might call a CAT-5 cable. Copper wires, it's a set of twisted pair wires. We also in the older days had the old coax, the things you would see going to your cable TV or from your satellite to your TV. Again, just a copper wire in finding a way to send 1s and 0s. We see through the use of photons with fiber cables where we're actually sending beams of light in a certain pattern that represents 1s and 0s. Through the use of our wireless communications with our access points we're using radio frequency to be able to encode a series of 1s and 0s over basically a radio frequency being transmitted from one point to another. No matter what that media is it's carrying 1s and 0s and that's what we need to make sure is that we have the ability and the devices to convert our data into the proper type of signal for the media that we use for transmission. That transit point from my computer system to that network usually is done through what we call a network interface card over here, a lot of talk about it as a NIC. So depending on the type of connection, if I'm connected to an Ethernet network I would buy an Ethernet NIC installed into my system knowing that the job of that network card is to be able to convert things into the right type of transmission media that it's connected to, if it's copper into a bunch of electrons to signal 1s and 0s. Now when you take a look at the local area network and compare that with the OSI model that's where you're going to see a variety of different equipment coming in. Now it's really kind of hard to just sit there and throw out all of the different type of equipment that you're going to see, but I am going to break these things down for you, I do promise that. Now in the OSI systems we talked about the physical layer, and I said it was the media, you could call it the cabling, it's also some of the network devices that we use to interconnect things. Back in the day we used to use at layer 1 a way of connecting the different types of media together through a central box called a hub. At least in the world of Ethernet that's what we had, when it was coax, it was a way different world. But the idea was that a hub could do a number of things for us, number one allowed several devices to connect into one central spot so they could all exchange information, but it was more that it was really an extension to the length of the cable. Without getting into too much detail and just throwing out a bunch of stuff we're going to get into more discussions on, but every cable has a length that it supports as far as communications. Your typical copper twisted pair is right around the 300 feet, 100 meter range, and after that the signal gets weak and needs something to help regenerate that signal, and a hub is another device that could do that. But the way it works is that it's as I connect two hosts into the hub, it's as though I've really just taken the one cable and strung the two together, it's just gone through another device to help regenerate and re-transmit that signal. It doesn't change it in any way, it makes no decisions, it just says if it comes in it goes out, it's like an extension. And I also said we needed a type of network card, a network interface card to be able to convert our information to that physical layer that we use, the cabling and the other types of network devices. So again, what I'm trying to do is compare some of the things that you would see in the LAN, the local area network, as what's on the OSI. Now we got into the data link, we said that we actually had to have hard coded addresses. Well they didn't have to be hard coded, but we needed to have physical addresses. And we have devices that are out there capable of looking at that physical address and forwarding that information in the appropriate direction without having to cause what we would look at as collisions. And I do promise to keep saying this, I'm going to talk about these in more detail, you're going to get it. But I'm just comparing the different devices. I already said at the network layer that we used devices like routers to be able to make decisions about what network you wanted to get to. Usually through the use of an IP address, or in the old days of Nobel, we had an IPX address. Apple Talk had their own way of doing addresses. At the transport layer, we had a variety of different protocols. TCP as an example, UDP is another SPX. Ways of being able to again make sure that two endpoints had a common language that they could talk to each other. Now the things that they would send back and forth over this information might help maintain a session. It might be containing data that when reassembled would be of a certain format for presentation that could be seen and viewed by an application like your web browser using HTTP. So all of those things, those components that I talked about in the local area network would do in fact match with the OSI model. So that's another reason why it's nice to have a standard model so that we have a good way of building applications of communicating information, of keeping track of our sessions, of having a common language, being able to actually get the information from one place in the world to the other place in the world through a set of logical addresses, getting that into a more specific address when it arrives in that network, and having the devices that can then deliver it to the end host and translate that into their program. All of that is handled through the equipment that we see in the local area network as well as the protocols and the way the operating systems are designed to communicate with each other and they all matched it up with the OSI model so that again if I needed to replace IP version 4 with IP version 6, I can make that replacement in the network layer and everything else would still remain the same and have the same capabilities and made it very easy to start getting upgrades and new features into the different layers. Before the OSI model came out we did have the TCP or the TCP-IP model and you could say in many ways that the OSI model was designed to kind of help represent what was happening in TCP. In the TCP we had the application layer and a lot of applications written just for the TCP-IP model, one of which I talked about was HTTP. So we really can communicate that and say you know that's like an application but we had to remember that we were also using these protocols, here's another example file transfer protocol to transfer files of different types and how they are presented was part of the presentation but don't forget FTP is still an application as well and of course we would hope that during an HTTP session or using these that are common apps for email that we would get make sure we had the delivery to the right location which is where we used a variety of different programs to maintain the sessions. Now this helps us at the upper end in being able to have us work with the operating system to understand different formats and link them to programs that can let us view that to have the software make sure that our sessions were complete back and forth but we still needed a common language so in the TCP model to TCP-IP there were two transport layer protocols TCP and UDP and that was that common language as I said before between the different endpoints now what that does for us though is it says we say well why do we need two well one is kind of really based on connections and so we call this a connection oriented protocol the other is connection less and that really sounds bad you'd say why do I want a connection less one don't I want to make a connection well there are times when you might want to send a message to more than one person at a time and rather than send 3 separate or 4 separate or 20 separate sessions you want to send it out as one broadcast or multicast and so UDP being connection less makes that a lot easier for us to do. What I prefer to call this because it just seems like maybe it's nicer is an unacknowledged protocol and unacknowledged means that as a sender I don't need to hear from you whether or not you receive the packet because that won't change my mind about sending things to you whereas on TCP everything really works around these acknowledgments these ACK messages that go back and forth so that's the transport layer of the TCP-IP architecture the internet work or the internet layer sometimes I have seen it called the internet work layer is where we see the logical addresses of IP. In the TCP-IP structure we have IP version 4 and we have version 6 out there version 4 is what's still pretty much the current standard and much of the world although our goal is to move to version 6 but that corresponded to the network layer which was the logical I remember the logical address but there are communications that can occur at the internet layer that don't have to go up to the transport layer a lot of them might be routing protocols which in this case rip the routing information protocol or OSPF the open shortest path first protocol allow routing devices to exchange the network information if we are doing a multicast we might have the internet group management protocol and if we wanted to send a quick message usually an error message of some kind or a connection test then we would see something communicated with ICMP and that means that I could address something to somebody's IP address without going to a transport layer just to send a very simple communication one of the many that we see are connection oriented like ping we also get a lot of error messages like a host unreachable or no route to host or something like that that helps us get the quick message and realize there are problems on there so we have communications that happen in the TCP IP stack that are considered layer 3 part of the network layer and the last one in the TCP IP world is the network interface layer which is where we see communications at the physical address I mentioned Ethernet is a very common type of encapsulation protocol so was token ring both involved having physical addresses to be able to communicate with each other the same in our wireless lands where we're using radio frequencies to do our communications now most all of these are really describing things that occur at encapsulation layers data link but we also realize that they have to be turned into a bunch of bits so that they can be transmitted into the physical world as well and that's another part of what happens now because of the need to address there is a communication protocol that's defined in the TCP IP model known as the address resolution protocol that we use to be able to convert an IP address to a physical address so we can do the delivery to the actual physical location