计算机网络——计算机网络体系结构(4/4)-计算机网络体系结构中的专用术语(实体、协议、服务,三次握手‘三报文握手’、数据包术语)

简介: 计算机网络——计算机网络体系结构(4/4)-计算机网络体系结构中的专用术语(实体、协议、服务,三次握手‘三报文握手’、数据包术语)

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


本篇所讲的专用术语来源于OSI的七层协议体系结构,但也适用于TCP/IP的四层体系结构和五层协议原理体系结构。

我们将这些专用术语中最具代表性的三个作为分类名称:

  • 实体
  • 协议
  • 服务

首先来看实体

分类一——实体

实体


实体是指任何可发送或接受信息的硬件软件进程

例如,这是通信双方的五层原理体系结构:


我们在它的各层中,用标有字母的小方格来表示实体。

有了实体的概念,我们再来看对等实体。

对等实体

对等实体是指通信双方相同层次中的实体

如图所示:

按照对等实体的定义,通信双方的网卡,通信双方中的、正在进行通信的应用进程,也属于对等实体

分类二——协议

协议

控制两个对等实体进行逻辑通信的规则的集合。

例如:应用层对等实体在应用层协议的控制下进行逻辑通信、运输层对等实体在运输层协议的控制下进行逻辑通信......

需要注意的是,之所以称为逻辑通信,是因为这种通信其实并不存在。它只是我们设想出来的一种通信。目的在于方便我们单独研究体系结构某一层时,而不用考虑其它层。

例如,我们在研究运输层时,我们可以假设运输层的对等实体在进行逻辑通信,而不用顾及其它层。

协议的三要素

  • 语法
  • 语义
  • 同步

语法:定义所交换信息的格式。

例如,这是IP数据报的格式:

其中的小格子称为字段或域;数字表示字段的长度,单位是位(也就是比特)。语法就是定义了这些小格子的长度和先后顺序。换句话说,语法定义了所交换信息由哪些字段以及何种顺序构成。


需要说明的是,我们没有必要记住每种分组的格式,只要我们能看懂它们的格式说明就可以了。


当然,如果将来从事计算机网络相关的开发、教学、研究等工作,像IP数据报、TCP报文段、HTTP报文等这些常见的分组格式,在学习和研究过程中自然而然的就会记住了。


语义:定义通信(收发)双方所要完成的操作。


看上一篇所举过的例子:


主机要访问远程Web服务器,它会构建一个HTTP的GET请求报文,

Web服务器收到该报文并进行解析,知道这是一个HTTP的GET请求报文。于是就在自身内部查找所请求的内容,并将所找到的内容封装在一个HTTP响应报文中发回给主机。

主机收到HTTP响应报文后,对其进行解析,取出所请求的内容并由浏览器解析显示。

这个例子就可以体现出通信双方收到分组后完成怎样的操作。在这个例子中,通信双方怎样操作是由HTTP协议的语义所定义的。

同步:定义通信(收发)双方的时序关系。

注意:并不是指时钟频率同步。

例如,这是TCP采用“三报文握手”建立连接的过程:

要想进行运输层TCP实体间的逻辑通信,首先必须建立连接。

从连接建立的过程就可以看出,TCP客户端和TCP服务器之间的时序关系,以及各自的状态转换。只有双方建立连接后,才能进行TCP数据传输。

这个例子,可以充分体现计算机网络协议三要素中的同步。

有了协议的概念,我们再来看服务。

分类三——服务

服务

  • 在协议的控制下,两个对等实体间的逻辑通信使得本层能够向上一层提供服务。

例如,物理层对等实体在物理层协议的控制下向数据链路层提供服务。

  • 要实现本层协议,还需要使用下面一层所提供的服务。

例如,数据链路层对等实体享受物理层提供的服务,并在数据链路层协议的控制下进行逻辑通信,给上一层,即网络层提供服务。

以此类推,最终:应用层给其上层,即用户提供服务。

很明显,

  • 协议是“水平的”,服务是“垂直的”。

要特别注意的是,

  • 实体看得见相邻下层所提供的服务,但并不知道实现该服务的具体协议。也就是说,下面的协议对上面的实体是“透明”的。(计算机中的透明指的是不可见)

换句话说,下层的协议对上层的实体是透明的。

这就类似于,我们肯定看得见手机为我们提供的各种服务,但我们只是享受这些服务,而没有必要弄懂手机的工作原理。

服务访问点

在同一系统中相邻两层的实体交换信息的逻辑端口,用于区分不同的服务类型。

例如,

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

上层要使用下层所提供的的服务,必须通过与下层交换一些命令,这些命令称为服务原语。


数据包术语

在计算机网络体系结构中,对通信双方所交互的数据包有专门的术语。


  • 协议数据单元PDU:对等层次之间传送的数据包称为该层的协议数据单元。
  • 服务数据单元SDU:同一系统内,层与层之间交换的数据包称为服务数据单元。
  • 多个SDU可以合成为一个PDU;一个SDU也可划分为几个PDU。



END



目录
相关文章
|
11天前
|
网络协议 数据安全/隐私保护 网络架构
计算机网络——第一章体系结构相关习题及详细解析
计算机网络——第一章体系结构相关习题及详细解析
8 0
|
11天前
|
网络协议 网络架构
计算机网络——计算机网络体系结构(3/4)-计算机网络体系结构分层思想举例
计算机网络——计算机网络体系结构(3/4)-计算机网络体系结构分层思想举例
10 0
|
29天前
|
消息中间件 Java Linux
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
|
11天前
|
网络协议 算法 Linux
【嵌入式软件工程师面经】Linux网络编程Socket
【嵌入式软件工程师面经】Linux网络编程Socket
28 1
|
12天前
|
负载均衡 Ubuntu Linux
Linux命令探秘:bond2team与网络绑定技术
Linux的`bond2team`是网络绑定和团队技术工具,用于组合多个网络接口以提升带宽、容错性和负载均衡。通过安装`ifenslave-2.6`,在`/etc/sysconfig/network-scripts/`或`/etc/network/interfaces`配置文件中设定接口绑定模式,如`activebackup`。它支持负载均衡、容错和热备等多种工作模式,确保网络高可用性和性能。在配置前务必备份,并重启服务使配置生效。
|
13天前
|
Linux 数据安全/隐私保护 Windows
linux 搭建cloudreve win映射网络驱动器WebDav
linux 搭建cloudreve win映射网络驱动器WebDav
|
14天前
|
监控 网络协议 Ubuntu
Linux网络配置全攻略:解读/etc/network/interfaces文件的精髓
Linux网络配置全攻略:解读/etc/network/interfaces文件的精髓
31 1
|
27天前
|
JSON 安全 网络协议
【Linux 网络】网络基础(二)(应用层协议:HTTP、HTTPS)-- 详解
【Linux 网络】网络基础(二)(应用层协议:HTTP、HTTPS)-- 详解
|
27天前
|
存储 网络协议 Unix
【Linux 网络】网络编程套接字 -- 详解
【Linux 网络】网络编程套接字 -- 详解
|
27天前
|
存储 网络协议 Linux
【Linux 网络】网络基础(一)(局域网、广域网、网络协议、TCP/IP结构模型、网络传输、封装和分用)-- 详解(下)
【Linux 网络】网络基础(一)(局域网、广域网、网络协议、TCP/IP结构模型、网络传输、封装和分用)-- 详解(下)

热门文章

最新文章