01-网络协议与网络分层

本人在“极客时间”上购买了一套“趣谈网络协议”的课程,本文为该课程前两节(第1讲 | 为什么要学习网络协议? 第2讲 | 网络分层的真实含义是什么?)的课程笔记。


1.网络协议

1)协议三要素

  • 语法,就是这一段内容要符合一定的规则和格式。例如,括号要成对,结束要使用分号等。

  • 语义,就是这一段内容要代表某种意义。例如数字减去数字是有意义的,数字减去文本一般来说就没有意义。

  • 顺序,就是先干啥,后干啥。例如,可以先加上某个数值,然后再减去某个数值。

01-网络协议与网络分层_第1张图片
常用的网络协议

2.网络分层的真正含义

1)复杂的程序都要分层,这是程序设计的要求。
2)只要是在网络上跑的包,都是完整的。可以有下层没上层,绝对不可绝对不可能有上层没下层。


01-网络协议与网络分层_第2张图片
请求过程

3)对 TCP 协议来说,三次握手也好,重试也好,只要想发出去包,就要有 IP 层和 MAC 层,不然是发不出去的。

4)层与层之间的关系:所有不能表示出层层封装含义的比喻,都是不恰当的。总经理握手,不需要员工在吧,总经理之间谈什么,不需要员工参与吧,但是网络世界不是这样的。正确的应该是,总经理之间沟通的时候,经理将总经理放在自己兜里,然后组长把经理放自己兜里,员工把组长放自己兜里,像套娃娃一样。那员工直接沟通,不带上总经理,就不恰当了。

你可能感兴趣的:(01-网络协议与网络分层)