关于计算机网络模型,我自己的理解
如果想实现连个独立计算机的通讯,必须具备两个条件,一个是连接通道(网线啊,wifi之类的),一个是协议,因为你不约定好,大家传来传去的都是0和1,但是不知道这些0和1是干什么的。
但是一个协议,如果既要传输0和1,又要管0和1组合完是啥意思,又要管两台计算机的地址和连接方式(是一直连着啊,还是发完一次就断开),这个太为难这个协议了,所以有了协议分层的概念,每层协议干不同的活。
1.物理层
该层主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。
它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换)。
这一层的数据叫做比特。
问题:光有了这些物理硬件的规范,就算是目标电脑接收到了比特,也不知道比特代表的含义,而且物理硬件传输过程中会有噪音干扰,数据可能出错,这就需要下一层。
2.数据链路层
这一层主要在物理层的基础上,把比特流(上面提到的0和1组成的数据流)截成帧,成为帧后的数据,就可以解析出不同的意义了。
这个帧里除了本来要传达的信息,还有大量的冗余信息,这些信息就是用来纠正物理传输过程中的出错,所以这一层还有个重要作用就是差错控制。
除了以上两个功能,这一层还负责链路管理和透明传输。
链路管理就是你去跟别的节点建立连接才能有传输这个事,但是它这块只看自己的和目标的地址。
透明传输就是不管数据是怎样的比特组合,都能在链路上传输。
问题:如果只是点对点传输
3.网络层
未完待续。。。