浅尝辄止89-计算机网络基础2

网络分层

网络分层,当然只是一种概念,当我们设计软件时,也是要考虑软件的层次,每个层次解决每个层次的问题,各层之间用接口沟通。在定义好接口之后,解决不同问题工程师就可以一起合作,各自解决各自的问题,最终整个软件就完成了。结合硬件考虑后,可以把一些更适合硬件做的事情用硬件来做,一个软硬件结合的网络设备或应用就完成了。
按照五层网络定义

  • 物理层
    从字面就可以知道,它是解决最底层问题的。比如,光纤里面的光怎么发?用什么强度?比如网线上电平是多少?最最关键的是,二进制数字怎么转换成这些光电信号。
  • 数据链路层
    这个名字挺抽象,是一种主观上的划分。这一层的传输单位是帧,会有帧头和数据部分。
  • 网络层
    这个名字听抽象,是一种主观上的划分。这一层的传输单位是分组或IP数据报。
    分组这个名字非常令我费解,目前我的理解,它是把一个打东西切成小块,这个过程就是动词的“分组”,每个小块就是名词的“分组”。
    不管是分组还是IP数据报,它们也有头部和数据部分,同时一个分组或IP数据报本身就是数据链路层的数据部分。
  • 传输层
    这个名字很抽象,是一种主观上的划分。这一层的重点是通信双方的身份——进程,即这一层是把通信过程抽象成两个进程的对话,而且这两个进程既可以是同一个主机,又可以是不同主机。
  • 应用层
    这个名字就不那么抽象了,这种划分也不那么主观了。应用是为满足需求而生的,现实需求是无穷多的,这一层就没什么特定的东西了,因为没人知道用户会有什么新需求。这一层的传输单位是PDU(Protocol Data Unit)。

三种体系结构的关系

TCP/IP和OSI/RM体系和这种分层差不多。

  • 三种体系结构都有网络层和传输层
  • OSI/RM的表示层、会话层和应用层被另外两个体系抛弃,直接它们用一个应用层
  • TCP/IP体系把物理层和数据链路层合并为网络接口层
    个人从软件角度看TCP/IP体系,感觉是很明智的,上面应用层让用户随便玩,底层应该是不怎么动的,所以都弄成一层拉倒。他们最关心的中间两层,他们就严肃地划分了一下。

你可能感兴趣的:(浅尝辄止89-计算机网络基础2)