海树

我心有猛虎 细嗅蔷薇香

Owen Lee's avatar Owen Lee

计算机网络面试(2)计算机网络体系结构

前言

上篇文章简单介绍了一些计算机网络的基本概念。这篇文章就主要讲一下计算机网络的体系结构。

两台主机想要通过互联网进行数据传输,所需要做的工作是非常庞大复杂的。所以在互联网诞生之初,就采用了分层的思想来设计计算机网络。分层可将复杂的问题转化为若干的小问题,这些小问题比较容易解决。

OSI 体系结构

OSI 体系结构,指的是 OSI 的七层协议模型。OSI 将计算机网络从用户到物理结构、自上而下分为七层:应用层、表示层、会话层、运输层、网络层、数据链路层、物理层。

OSI 是法律上的国际计算机网络标准,但是却没有投入应用。互联网并未采用 OSI 标准,它是基于 TCP/IP 四层模型的。

TCP/IP 体系结构

TCP/IP 协议族将计算机网络自上而下分为四层,每一层都有专门的协议。包括:应用层、运输层、网际层、网络接口层。它是事实上的国际标准。

五层协议

TCP/IP 是一个四层的体系结构,在学习计算机网络知识时,为了将概念阐述清楚,结合了 OSI 和 TCP/IP 各自的优点,折中采用了五层协议的体系结构。包括:应用层、运输层、网络层、数据链路层、物理层。(实际应用的还是 TCP/IP 的四层模型)

osi

下面主要基于五层协议的体系结构来介绍一下各层的主要作用。

应用层

应用层是体系结构中的最高层,任务是通过应用进程间的交互来完成特定的网络应用。应用层协议定义的是应用进程间通信的通信和交互的规则。应用层的主要协议有 HTTP、FTP、Telnet、SMTP、POP3 等。应用层交互的数据被称为报文

运输层

运输层的任务是负责向两台主机的进程之间的通信提供通用的数据传输服务。应用进程利用该服务传送应用层报文。通用的是指这种服务并不针对某个特定的网络应用,而是多种应用可以使用同一个运输层服务。

运输层的主要协议有两个:TCP 和 UDP。

  • 传输控制协议(TCP)提供面向连接的、可靠的数据传输服务,数据传输单位是报文段
  • 用户数据报协议(UDP)提供无连接的、尽最大努力的数据传输服务(不保证数据传输的可靠性)。数据传输单位是用户数据报

网络层

网络层决定如何将数据从发送方路由到接收方。通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中的结点到另一个结点的最佳路径。网络层的协议是 IP 协议,数据传输单位称为 IP 数据报

数据链路层

负责将 IP 数据报封装成合适在物理网络上传输的格式并传输,或将从物理网络接收到的帧解封,取出 IP 数据报交给网络层。

物理层

负责将比特流在结点间传输,即负责物理传输。该层的协议既与链路有关也与传输介质有关。

tcpip

结语

这篇文章的主要内容是介绍了计算机网络的整体体系结构,并对五层体系的每一层都做了简单的介绍。通过这篇文章,对计算机网络的整体构成想必会有更具象的了解。