计算机网络体系结构

138 阅读7分钟

常见的计算机网络体系结构

OSI体系结构(七层)

法律上的国际标准

  • 应用层
  • 表示层
  • 会话层
  • 运输层
  • 网络层
  • 数据链路层
  • 物理层

失败原因

  1. OSI的专家们缺乏实际经验,OSI标准没有商业驱动力;
  2. OSI的协议实现起来太过复杂,而且运行效率很低;
  3. OSI标准的指定周期太长,使得按照OSI生产的设备无法及时投入市场;
  4. OSI的层次划分不合理,有些功能再多个层次中重复出现(与TCP/IP体系结构相比,后者相当于将OSI体系结构的物理层和数据链路层合并成了网络接口层,并去掉了会话层和表示层)

TCP/IP体系结构(四层)

因特网从1983年开始使用TCP/IP协议族

  • 应用层
  • 运输层
  • 网际层(网络层,在网络层使用的协议是IP协议(中文:网际协议),因此TCP/IP体系结构的网络层也常称为网际层)
  • 网络接口层

事实上的国际标准 image.png 用户有接入因特网的需求,这就要求用户的主机必须下hi用TCP/IP协议。在用户主机的操作系统中,通常都带有符合TCP/IP体系结构标准的TCP/IP协议族,而用于网络互连的路由器中,也带有符合TCP/IP体系结构标准的TCP/IP协议族,只不过路由器一般只包含网络接口层和网际层。 TCP/IP体系结构的网络接口层并没有规定具体的内容,这样可以互联全世界各种不同的网络接口(例如:有线的以太网接口、无线局域网的WIFI接口),不限定仅使用一种或几种网络接口,因此,本质上TCP/IP体系结构只有上面的三层。 TCP/IP体系结构的应用层包含了大量的应用层协议(例如:HTTP、SMTP、DNS、RTP) 。 IP协议可以将不同的网络接口进行互连,并向其上的TCP协议和UDP协议提供网络互连服务,而TCP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供可靠传输的服务;UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供不可靠传输的服务。 IP协议作为TCP/IP体系结构中的核心协议,一方面负责不同的网络接口(IP over everything),另一方面未各种网络应用提供服务(Everything over IP) IP协议是TCP/IP体系结构网际层的核心协议。 TCP和UDP是TCP/IP体系结构运输层的两个重要协议。 在TCP/IP体系结构中包含有大量的协议,IP协议和TCP协议是其中非常重要的两个协议,因此,用TCP和IP这两个协议来表示整个协议大家族,常称为TCP/IP协议族。

原理体系结构(五层)

为了学习方便,有利于对计算机网络原理的学习

  • 应用层
  • 运输层
  • 网络层
  • 数据链路层
  • 物理层

计算机网络体系结构分层的必要性

应用层:解决通过应用进程的交互来实现特定网络应用的问题。 传输层:解决进程之间基于网络的通信问题。 网络层:解决分组在多个网络上(路由)的问题。 数据链路层:解决分组在一个网络(或一段链路)上传输的问题。 物理层:解决使用何种信号来传输比特的问题。

计算机网络体系结构分层思想举例

计算机网络体系结构的专业术语

实体

实体:任何可发送或接受信息的硬件或软件进程。 对等实体:通信双方相同层次中的实体。 image.png 通信双方的网卡(硬件)、正在进行通信的应用程序(软件进程)是对等实体

协议

控制两个对等实体进行逻辑通信的规则的集合 image.png 称为逻辑通信是因为这种通信并不存在,只是假设出来的通信,目的在于方便我们单独研究体系结构的某一层,不用考虑其他层。

协议三要素

  • 语法:定义所交换信息的格式(定义了有哪些字段以及何种顺序构成)

IP数据报格式 image.png 其中的小格子称为字段或域;数字表示字段的长度,单位是位(bit). 语法就是定义了这些小格子的长度和先后顺序

语义

定义收发双方所要完成的操作,用来说明通信双方应当怎么做;用于协调与差错处理的控制信息。

同步

定义收发双方的时序关系(并不是指始终频率同步),定义了何时进行通信,先讲什么,后讲什么,讲话的速度等。比如是采用同步传输还是异步传输。 三次握手 image.png

服务

在协议的控制下,两个对等实体间的逻辑通信使得本层能够向上一层提供服务。 要实现本层协议,还需要使用下面一层所提供的服务。 协议是“水平的”,服务是“垂直的”。 实体看得见相邻下层所提供的服务,但并不知道该服务的具体协议。也就是说,下面的协议对上面的实体是“透明”的。(好比我们可以看得见手机为我们提供的服务,并享受这些服务,但我们没有必要弄懂手机的工作原理) image.png 服务访问点 在同一系统中相邻两层的实体交换信息的逻辑接口,用于区分不同的服务类型。

  • 数据链路层的服务访问点为帧的“类型”字段。
  • 网络的服务访问点为IP数据报首部中的“协议字段”。
  • 运输层的访问服务点为“端口号”。

服务原语 上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令称为服务原语。 **协议数据单元PDU ** 对等层次之间传送的数据包称为协议数据单元。

物理层对等实体逻辑通信的数据包称为比特流(bit stream) 数据链路层对等实体逻辑通信的数据包称为帧(frame) 网络层对等实体逻辑通信的数据包称为分组(packet),使用IP协议也成为IP数据报 运输层对等实体逻辑通信的数据包称为TCP报文段(segmeng)或UDP用户数据报(datagram),根据使用的协议而定 应用层对等实体逻辑通信的数据包称为应用报文(message) 上述各层数据包也可以统称协议数据单元PDU 服务数据单元SDU 同一系统内,层与层之间交换的数据包称为服务数据单元。 多个SDU可以合成为一个PDU;一个SDU也快划分几个PDU。 image.png

数据包和数据报

datagram(数据报) -- 在网络层中的传输单元(例如IP)。一个datagram可能被压缩成一个或几个packets,在数据链路层中传输。 packet(数据包) -- 封装(和传输)的基本单元,它穿越网络层和数据链路层的分解面。通常一个packet映射成一个frame,但也有例外:即当数据链路层执行拆分或将几个packet合成一个frame的时候。