Actually, we got a competition earlier, and now I would like to get into the transport network transport.
So this is really, really important.
So the transport layers, we are talking about segments
and the segment can either be reliable or unreliable if it's reliable, that means to them that it has
a connection oriented relationship with the device at the.
Right.
You've got a server, got a computer.
It's reliable.
Then the connection that's established is reliable.
What that means is that the far end is getting acknowledgments for all the segments.
In other words, this client will send a segment and then the far end will reply with an acknowledgement
segment sent, acknowledgement sent, and if no acknowledgement sent you, you know, the client is
waiting for acknowledgement from the server, then the client because of TCP, IP and its connection
oriented nature, it can just resend the segment to, you know, to make sure that the remote end actually
receives what the client wanted to receive.
Right.
Of course, the disadvantage here is that each of these segments are fat, right?
They are bloated.
I think about a really big.
PXP, second being said, the reason they're fat and bloated is because there's a lot of overhead in
order to make sure that those connections are, you know, connection oriented.
Now, conversely, UDP is not like that UDD connection was and this is by design.
It means that it doesn't verify state doesn't expect any acknowledgement.
There's little to no overhead.
And the advantage here is that this is really good for streaming.
So if you got Microsoft teams meeting or a Zoome meeting or you're playing some video games online or
something like that, UDP would be the ideal protocol to carry those data segments.
OK, let's put reliable here to be viable UDP unreliable.
The way you can remember that is this you write you for UDP is you for unreliable, right?
Because the way I remember it, at least so now you might wonder, well, how do we know if it's reliable
or unreliable?
How do we know if it's using TDP or Euterpe?
Well, the application developer does that right.
So when they're developing the applications, they determine whether or not the application will use
a reliable or unreliable protocol.
Now, as one of the things we need to talk about when it comes to TCP, and that is the three way handshake,
we get rid of all this.
Right, because, you know, when you meet somebody for the first time, you don't just launch into
a conversation, it's always like a Hey, my name is Bonnie.
What's your name?
Mark.
OK, cool.
You know, then we start talking.
Right.
And that brief interaction between me and you before we actually get to the point is called the three
way handshake and TCP lingo.
So let's get into that really fast, because I don't know if other people really understand this three
way and shake.
So we've got these two computers again.
Get the computer here that you look pretty happy today and you've got the server right now, let's say
you want to connect to that Web server, what's going to happen?
Well, obviously, you're going to type in the domain name, right?
It's called Acme dot com.
And then DNS is going to happen.
DNS basically as a protocol that's responsible for mapping domain names to IP addresses.
Then once you have an IP address, let's say it's one, two, three, not four, you're going to try
to establish a TCP connection with that IP.
You can try to connect over.
What are some things that have to take place first before that happens?
Well, first you are going to send what's known as a synchronization request.
So in this first Tsipi second comes over, you're going to send a signal.
That's why in which is short for synchronization.
OK, and this is just saying, hey, I want to talk.
A thing is in the synchronization request, you're going to have some data on one of the pieces of data
that you're going to see is what's known as a sequence number, which is abbreviated as you.
And this number is usually like a really, really long number, like nine six one five eight one five
one.
The computer just pulls it out of the air.
But if you're looking at an Wireshark, it probably just shows zero or one, because by default, Wireshark
uses relative sequence numbers.
And so you're not going to see the actual sequence number unless you explicitly request that.
But when you've got the sequence number here and the synchronization segment you're indicating to the
target or the destination that you want to start communicating.
OK, and we know that Web service listen for E.T..
So what's going to happen is the website.
We're going to get that and what they're going to respond.
But with what?
Well, the website was going to respond with acknowledgement saying, yep, I got what you wanted,
but the acknowledgement is going to be your sequence.
No.
Plus one, OK, so this is the fifty one, so the acknowledgment number is going to be nine six one
five eight one five two.
That's the acknowledgement from the server.
Back to you.
In addition, the response is also going to include that remote computer's own sequence number because
it also wants to talk, establish a connection with you.
OK, and then the final part of a three way handshake.
The third part is when you then respond.
So, by the way, this is an act, the secret number also has a scent in here.
Let me put it in green cell.
So you initiate with a scent the remote in response with a Sinak.
The act includes your sequence number plus one and then the sequence number of the remote end that you
respond to the Sinak with an act in this act.
Basically includes the remote computer sequence number plus one, so it's going to be one zero zero
zero two and now at this point, you guys can't communicate.
That's the three way handshake.
That's how it works.
Now, the connection is established and you can start sending push or message segments to the remote
end and communication will start to happen.
That's all there really is.
A three way handshake to Cincinnati back.
But now, you know, a little bit more than just sense.
And I can write it.
You have the sequence numbers that are set in a synchronization segment.
The acknowledgement comes back what the sequence number plus one, and then the remote, its own sequence
number, which is sent to the initiating client.
And finally, the client responds with an acknowledgement that is one more in a remote end sequence
number.
That sounds kind of complicated, but that's how it works.
And if it feels complicated, just keep going through this next year until it starts to be sense.
But that's it for that in the next election to be able to put into place reports are really important,
especially when you doing penetration testing, retaining someone, speaking to the ports and saying,
you know, everything that tells you guys.