Welcome to another great episode right here on ITProTV. You're watching
the CompTIA IT Fundamentals show. I'm your host, Ronnie Wong, and today we're diving into a part
two on basic networking concepts. We've already taken a look at
the establishment of, well, just kinda the real basics, right,
the idea of computers being able to communicate with each other
on a local area network. But also started to reach out but
there was a lot more to go and Don left us with a, well, a nice little kind of
hanger for us to be able to tie into. So Don, here it is in part two. Don Pezet joining us here. Where are we picking up? All right, well, we're gonna bring a little
Shakespeare in here, right. What's in a name? Well, it turns out there's
actually a lot in a name because names are a great way for
us to hide complexity. And at the end of the last episode, I was showing how when I
browsed to the Internet. When I fired up a web browser and
I went to cnn.com, I had to pass through a whole series
of routers to get to that website. But fortunately as an end user, I didn't
have to even be aware of that, right? Most people don't even
realize that happens, they don't even realize there's an IP
address behind the scenes at all. They just type in www.cnn.com, or
they do like me and get lazy and don't even type the www, right? And the system just magically
figures that out, right? Well that's all thanks
to a system called DNS. So the domain naming service. And that system really makes
the Internet possible. If we had to deal with IP addresses,
most of the people that use the Internet say would not be
able to use it, it's just too complex. So names are very important. And it's also really useful
because there are so many computers all around the planet that
there's no way we'd be able to remember all the addresses unless we
had simple to remember names. That's where we're gonna be
kicking off this episode, talking about that, but
we do have some other things. We didn't talk about firewalls or
sessions, so we're gonna talk about those a little
bit later in the episode as well, there's a lot of good stuff. All right, so Don, let's pick up on this idea of names. When, like what you said, if I open
up a browser and I choose to go and browse to cnn.com, I don't ever
have to know about an IP address, but it seems like magic, Don. Is that just stored
somewhere on my computer or is there something else in the background? All right, there is something else out there
in the background, in the Internet. There is a whole structured
environment of naming servers. It starts with what's called a root server
that branches out into all of these additional servers so that there are now
probably hundreds of thousands of name servers spread around the globe,
there is ton of them. There's 13 that are considered core name
servers and it's not even really 13, it's like 13 clusters, so
they end up being quite a few. But those are what are actually
handling that translation, and going back to my example from last
episode, I've got CNN pulled up here on my computer, and what I did is I
typed in my address bar www.cnn.com. Okay, or I can't remember if I typed www, it might have just forwarded me
over to it, a lot of sites do that. So this is the site that I'm on. That's a name, it's easy to remember. All right, I want to watch CNN,
I type in cnn.com. Here I am, I'm there, right? Meanwhile, in the background, your computer had to do a little
bit of work to make that happen. And what it did is it took that name and it figured out what it meant,
like what the address was for it. And so we can kinda simulate that,
I can use an utility called MS lookup. And I can run that against www.cnn.com. And when I run that, it takes the name,
and it runs it against a DNS server. And it asks that DNS server, it says, hey, can you tell me the IP
address of this server? So it reaches out and it got a response
and it said CNN is 151.101.57.67. All right, and that IP doesn't necessarily
mean all that much to me, right? But my computer can take that and
compare it against its own address. Remember I said in the last episode
that I'm on the 10.0 network. So anybody else on the 10.0 network,
I can talk directly to them. But CNN, they're starting with 151.101. That doesn't match 10.0. I can't talk directly to them. So I need to go through a router. Well, how do I know about the router? Well, it's got a different name, but
this right here, Default Gateway, right? Default Gateway,
think of that as the exit of the network. If there is an emergency and I need to
get out, what's my default exit for a building? That's how it is with the router. If I need to get out of this network,
here's the way I'm gonna go. I'm gonna go to this IP. And this IP will normally be your router. And it will be on the same network,
see how it starts with 10.0? If you're gonna talk to the router,
you've gotta be on the same network, otherwise it doesn't work. So the router will be on
the same network as you, and you can reach out to that router. My computer can send the message for
CNN over to the router, and the router will get it, and
then the router will send it along. Now, when I talk to the router,
the router's on the same network as me. So remember all the other things that
I said that worked on a local network? You could yell, you could find people. Well, that works here as well. When I looked at CNN, they were 151.101. I can't broadcast,
I can't find them, right? But when I look at my router,
it's 10.0.0.1, I can find it. And when I brought up that big list of
all the computers that I've seen on my network, right? When I come in here and look,
I can find there's the router and there's its media access control. It's layer 2 address, so
I can talk to it locally. But if I look in that list,
CNN is not in that list. There's no 151 dot whatever cuz I can't
find them, I can't talk to them directly. I count on the router to do it. So that's an important piece if we
wanna get out to the Internet or get out to other networks,
we need that router. And to even know to go to the router, we need to know the IP
of who we're talking to. And to know the IP we
use the name look up. So this all goes hand in hand. We do a DNS look up to get an IP. The IP lets us know if they're
on our network or not. If they're on our network
we can shout direct. If their not on our network,
we go through the router. That's the basic process that's happening
every time you access a network resource. Your system goes through these
checks thousands of times a day, it's just all in the background,
it's all hidden. And that allows you to communicate, and off you go. All right, Don, so thank you for helping us to understand that part. But I do see on your diagram there that we
also have that one component that you said we needed to talk about which
is the idea of a firewall. So Don, what are we actually taking
a look at when we talk about that term? Firewalls are an interesting device and in the diagram here I kind of drew it
in between the router and the modem. The router is technically the end
of your local area network, right? That's your LAN, your local stuff,
the only time you go through the router is when you're trying to
talk to somebody remote. Well the problem with being plugged into a
remote network is you don't know who all's out there. Right, you don't know even 1%
of the people on the Internet. Because it's the entire
population of the globe. And there's a lot of nice people
out there, I've met them. And there's a lot of bad
people out there too. So we can't just trust the Internet. We can trust our LAN,
I know who's in my house, I should, right? [LAUGH] And so
we might be able to trust our LAN, but you definitely can't trust the WAN,
the wide area network. You can't trust the Internet. And so there are devices called firewalls
that we can put in between our local area network and the Internet. And they can actually go on
either side of the router, but it's generally better to go on
the outside of the router so that you're protecting the router as well,
right? And by putting that firewall in place. It acts as a filter, and the default for
most firewalls says that any traffic from the inside is allowed
to go out, and people can reply. But no traffic from the outside is
allowed to come in unless we ask for it. Like our house, nobody is allowed to come
into my house unless I open the door and say come on in, right? If I don't do that and somebody comes in,
they're breaking the law. Computers are the same way. Firewalls are like
the door to our network. They prevent people from coming
in unless we want to allow them. They used to be an optional thing, and it used to just be big
enterprises that had them. But in today's world,
they're not even optional anymore. Everybody should have a firewall in place,
and that technology is being built
into a lot of other things. When I showed the diagram
of a simplified home, right here, this wireless router
has a firewall built into it. It may not be a very good one,
but it certainly has one. And actually a lot of Internet
providers these days, when they provide you a modem, that
modem may have a firewall built into it. So for example at my house I have
fiber Internet through AT&T. And AT&T put a fiber modem in that
I then plug into my firewall. Yeah, I maintain my own firewall. Well their modem,
it had a firewall in it as well. And it was set to block a lot of attacks
and things before it even got to me, and for a normal customer that's great. You don't have to worry about it,
you get protected, it's perfect. For me it was super annoying because I
wanted to maintain my own firewall, so I had to go in and disable all that stuff. But for most people it's just
a required piece of a network. You need to protect your system and
a firewall does that. Now technically, a firewall is a router,
every firewall is a router. There's a few little weird exceptions but even in those exceptions they're
capable of being routers. So you don't technically need both,
you could have a firewall and just not have a router at all, right? That's how our ITPro.TV building is here,
that we have firewalls in place that are our routers as well, that we don't
actually need a router to move that. But, you can choose to have them both
separate like this if you're placing your firewall on the outside, it's really
handy to break them apart like this. So it depends on your network how they'll
look, but it's basically a filter. It's controlling that access and
protecting your network. Keeping the bad guys out,
letting the good guys come in. And making sure that you
are able to control that node. All right, Don. So now that we understand some of the
different components that are in place and the networking technologies
that we're talking about. The name resolution,
all that seems to be working for us. You said that we also need to
talk about the idea of a session. Now Don, that now becomes a little bit more mysterious than talking about. [LAUGH] So what does that mean when we start talking about a session? All right, so everything I've been talking about so far has really just been
like finding another computer to talk to. If they're local,
we can yell and find them, if they're remote we go through a router. But once you find somebody, so
once I found CNN I found their website, well their website is run on a server,
and I reached out and I talked to that server,
and what happened? Well somehow magically they knew to
send me a copy of their webpage and I displayed it on my screen and
all of a sudden I had this, right. Well all of that,
if I accept my little cookie pop-up here, all of that happened
without me interacting. I just typed in the name CNN.com and a
bunch of stuff magically occurred, right? Well, what actually occurred is I
established a session with CNN. I contacted them and I said,
hey, I'd like to talk to you. And then, we agreed to talk,
a few things went back and forth. And then they knew to send
me a copy of the page and I knew to show it in the web browser. There's actually a whole involved process
that occurs in the background that is, much like everything else in this show, completely invisible to the end user,
right? So let's not think about
this in terms of a computer, let's think about it in terms of people,
right? So imagine I'm walking down the hallway,
and I see Ronnie, and I wanna to talk to him, okay? Now if I just say nothing,
and I keep walking, does he know I wanted to talk to him? No. No. There's a protocol,
a sequence of events that need to occur so that he knows I want to talk to him. I need to at least look at him. That might not even be enough but
in many societies if you meet eyes. Somebody will at least say hey,
good morning, how are you doing, or whatever, right? But it's not required,
it's kind of an optional thing. But if I go up to Ronnie and say Ronnie,
I need to talk to you for a second, right? Well, that is initiating a session,
he knows beyond a doubt I need to talk to him, and
now we can start to have a communication. That's what I did with CNN. I reached out to them, and
I said hey, I need to talk to you. And they said, well congratulations,
we like talking to people. If there was a firewall, the firewall
could've stepped in and said no, we're not talking to you,
right, firewalls do that. They dictate whether or not, it's kind of like the president's
bodyguards, the secret service, right? If you're allowed to talk to the
president, you get to go and talk to him, but otherwise,
secret service stops you and says you're not going anywhere near him,
right? That's the way firewalls function, but assuming I'm allowed to talk to it then
there's the whole how to talk to it. If I'm talking to Ronnie that's very
different than if I'm talking to the Queen of England. That there may be a lot of procedure and
protocol and ritual and other things that has to occur, or I've known Ronnie a long time
[LAUGH] We don't have a lot of protocol and ritual. We just, we do have some rituals I
suppose, but I know we just kinda shoot the breeze, right? [INAUDIBLE] That's how it works, but in computer land, when you're
communicating across the Internet. You're passing through tons of routers,
and a lot of systems are involved. It's very easy for
communications to get lost in the mix. So when we have a communication
that follows a series of events, it starts as simple as this. We'll pretend like Ronnie's a server and
I want to talk to him. So I say,
well first off I had to find Ronnie. So I go through that
process of finding him. And then I say, hey Ronnie do you have a moment to talk? And I normally would just acknowledge and
say, yes I do. Alright now as a human we
would then start talking. We just have one way of talking, but computers actually have
more than one way of talking. In the session layer,
we have two main protocols that you use. In the first episode I mentioned TCP/IP,
and we talked about IP, internet protocol, and IP addresses. We never talked about TCP. TCP is what's called
the Transmission Control Protocol. It's a way to transmit data reliably. When I need to know that every single bit
of data gets from point a to point b, I use TCP. There's an alternate to it called UDP or
User Datagram Protocol. It's not reliable,
it's called a best effort protocol, right? It's trying to get data to the other
person, but if it doesn't get there, whatever, I gave it my best, right? Two different protocols, so now that I got
his attention, he said he's ready to talk. The next thing that I would do is I would
need to tell him whether I wanted this to be a reliable communication or
a best effort communication. So I might say something like,
Ronnie, this is really important, can I have your undivided attention? And I would say, yes, of course you could. And so that would start a TCP session, to be able to say that I
wanna do a reliable session. It's called a handshake,
you're both agreeing. You're shaking hands, making a deal,
and saying all right, I've got your undivided attention,
I'm gonna send you some data. I need to make sure you get it, right? And once that process starts, it's actually a fairly convoluted way
of talking, it's kind of annoying. Because it uses a system
of me sending data. And getting acknowledgments back for
everything that I send. So imagine talking to somebody and they have to confirm every
sentence that you say. So if I'm talking to Ronnie, I say, Ronnie, here's data one. Well, thank you for data one, I am ready to receive data two. All right, Ronnie, here's data two. Thank you for data two, I'm ready to receive data three. All right, here's data four. I thank you for data four and I'm ready to receive data five. Right now, I skipped over data three,
all right? Ooh, I forgot. Ronnie said, I received data three,
I'm ready for data three. And I sent data four, right? Now, it doesn't mean that
I didn't send data three. Maybe I sent it, but
it got lost on the network. We're going through a bunch
of different things, right? So let's repeat that, and if I say Ronnie, here's data two. Thank you for data two. I'm ready for data three. And then I say here's data four. Ooh, I don't know where data three went. So I am receiving data four though. So now we go into what's called a retransmit. He knows that he missed some data. He asked me for data three,
I sent data four, right? It's a reliable protocol. So it's able to figure out
that something was missing. And he can now ask me,
would you mind sending data three again? And I'll initiate a retransmit,
I'll say yeah, no problem. Sorry Ronnie, I must not have
been speaking clearly enough. So here's data three. Thank you for data three. And now I'm ready for data four. There we go, and now we move forward. That's how a reliable protocol works,
but do you see how annoying that was? [LAUGH] i would say, here's some data and then he had to,
not only acknowledge that he got the data, but he would then have to tell me when
he was ready for the next set of data. So when you communicate that way, everything takes twice
as long as it should. What should be a fast, easy communication becomes this
cumbersome nightmare of a conversation. But when you're sending an email, you wanna know the email
gets to the destination. When you're posting a picture on Facebook, you want to know that the entire
picture gets there on Facebook. When you're buying something on Amazon,
you want to know for a fact that communication happened. And so doing a session-based reliable
communication like TCP does is important. And so the bulk of the communications that
you do on the Internet are done with TCP. And the bulk of the communications
you do on your LAN are done with TCP. They need to be reliable. Now there is another protocol
called UDP that I mentioned. And UDP is not reliable,
it's called best effort, okay? And so I'm gonna throw out data and just hope the other side gets it, and
I'm just gonna keep going, right? So this communication
looks a lot different because you don't have the acknowledgment. So if I kinda repeat the process
to Ronnie, I would say hey Ronnie, I wanna talk to you, do you have a moment? Sure, I have a moment. All right, I wanna send you some data, it's not terribly sensitive though,
so I'm just gonna flood it too you, is that okay? Sounds great, go ahead. All right so here we go Ronnie, here's data one. Okay. Here's data two. Yeah. Here's data three. My, yeah. Here's data five. Too fast. Here's data eight. Too fast. Here's data nine. Too much. Now, notice I'm just ignoring what Ronnie says, right? Well, with UDP, the system knows
you're gonna get ignored, so they don't even bother saying it. They just sit there and receive,
and that's it, that with UDP, you just keep moving. You don't go back and
re-transmit something. Now imagine if you sent ten emails,
and three of them got dropped. That would be pretty bad, right? [LAUGH] You don't know which ones got through, which ones didn't,
did they get to the other side? That sounds like a terrible protocol. But it's got a use, and
the use is for anything that's live. Time-sensitive, right? I'm talking about things like voice over
IP phone calls, or streaming video, right? If it's streaming video and it's like
a recorded video, then you'll probably use TCP for that because you want to watch it
and you buffer the movie and all that. But let's say you're
watching the Superbowl. You're watching something live, right? You're watching the World Cup,
whatever it is that you're watching. And a player on one end of the field kicks
the ball or throws the ball or whatever the sports is it involving, right? [LAUGH] Be careful cuz I say football sometimes, some people like, you don't
touch the football when you play football. Anyway, so
the ball's going through the air, right? Each of those frames that are being
rendered on screen is something I'm transmitting over the Internet, and
if one gets dropped, do I wanna stop? And the video freezes, and I reach out saying,
can you send me that frame I just missed? And they send it to me,
and now I start playing, now the ball starts moving again, right? But now I'm a fraction of a second behind. And if it happens again, and again,
and again, I start getting further and further behind. And maybe I won't notice,
maybe I'm the only person in the room, but if I have three TVs that are running, I start to notice really bad one TV
is five seconds behind the other TV. And then it gets worse and worse and
worse, you don't want that. And the reality is if the ball
was going through the air and all of a sudden it skipped ahead
a little bit and kept going. I'd still have the same experience, right? I didn't lose anything for losing
that frame, it wasn't sensitive data. It's okay to get rid of that right? And that's where UDP,
User Datagram Protocol comes in. If you're doing Voice over IP,
if you're streaming video, if you're listening to internet radio. It's rare that they do re-transmits. And UDP is the perfect protocol for that. There's much less overhead and
you're just throwing the data along. Now as a viewer, this might be the first
time you've heard of TCP and UDP. When I went to CNN's web page,
it didn't tell me if it was TCP or UDP. In fact, looking at this, there is no way
for me to tell whether it used TCP or UDP. The only hint I get is right here at
the beginning of their server name. So their server is www.cnn.com,
and before it is https, right? https, that stands for
hypertext transport protocol. And hyper text transfer protocol secure,
so I guess it's kind of important. You don't have to have the S, right,
it could be a non secure page, and you browse through it, but
most servers will forward you. Yeah, see it forwards me to secure anyway. But anyhow, that's the protocol
I'm using to talk to their server. Now when I talk to them,
that protocol works a certain way. And it's actually that protocol
that makes the decision that says I wanna use TCP or
I wanna use UDP. Most protocols,
like HTTP is used for web traffic. There's SMPT, the Simple Message
Transport Protocol, which is used for email, for sending email. There is POP, the Post Office Protocol,
which is used for receiving email. There's IMAP, the Internet Message, something Protocol. Access Protocol. Access Protocol, thank you Ronnie. Which is used for receiving email. Those are moving data that you need
to know gets to the other side, so it's in that protocol where they define,
we are going to use TCP. Then there's protocols like SIP,
which is used for voice, for Voice Over IP traffic and
with SIP it's actually coded to use UDP. It says, we're going to use UDP, some
basic port in the fifty thousand range, and it reaches out and
communicates and it knows to use that. So the protocol is what's
ultimately deciding whether or not you're using TCP or UDP, and for
the end user, it's all hidden away, right? And so the point of this whole diatribe
here is that I want you also be aware of all the stuff that's
going on on the background. And you kind of make a choice
when you work in IT. You could be fine with the fact that
all of this stuff is invisible behind the scenes and not worry about it and
then focus on other areas. Maybe you wanna be a developer, maybe you wanna do system
administration or whatever. But if you get involved with network
engineering all these invisible protocols you become very, very well versed with. Because you're responsible for helping to
make sure they get from point A to point B, crossing the network, communicating and
getting everything put in place. And if you're in security,
you really have to know these protocols. Because you need to be able to identify
malicious traffic on your network, you need to be able to string
together a series of packets. To figure out what's going on and you've got to understand
how those protocols work. So this is important stuff that's all
a part of making what would normally be a simplified communication,
like this house. Where I've got a couple of PCs and
a wireless router, actually is something far more involved. All these different pieces of the puzzle, any of which could kinda
break a communication. That are all involved with
communicating data across them. All right, Don, well thank you again for helping us to
understand this piece that we may not have actually seen before or heard about. But this gives you at least a sampling
of what you'll actually end up seeing. Of course, if you're working in IT
in the area of networking as well. So, Don, I'm gonna give you the last word
on, of course, networking fundamentals here that we've just taken a look at. All right, hopefully what we've seen here
has piqued your interest. The majority of what we've presented,
we've presented in a non-technical way. I could've fired up a packet analyzer and shown you TCP packets that's
a little bit of overkill. If you want to learn more, though,
if this really sounds exciting to you, the Network Plus series. If you watch our Network Plus
series you'll see a lot of that. CompTIA and
Network Plus is great at covering that. And then there's other vendors that
are involved in this space like Cisco and Juniper, they all have great programs for
really getting involved in networking and learning about the inner workings of it. But if it all sounded super lame and
boring, you're not hurting my feelings. There's actually a lot of other cool
that's out there like on the server level and the developer level. So those technologies are out there, things that you want to
learn about as well. So, you know, just try it out and
find the area that you're happy with, I've always found that networking
was pretty rewarding to me. All right, well, that makes this a great place for
us to go ahead and end this episode then. Signing off for ITPro.TV, I'm your host Ronnie Wong. And I'm Don Pezet. Stay tuned right here for more of your
CompTIA IT Fundamentals shows. [MUSIC] Thank you for watching ITPro.TV.