admin 管理员组

文章数量: 887021

三、协议和模型

说明网络协议如何能让设备访问本地和远程网络资源

主题标题主题目标
规则描述确保成功通信所需的规则 类型。
协议说明为什么协议对网络通信不可或缺。
协议簇说明遵守协议簇的意义所在。
标准组织阐述标准组织在建立网络互通协议方面 发挥的作用。
参考模型阐述 TCP/IP 模型和 OSI 模型如何帮助促进 通信过程的标准化。
数据封装说明数据封装如何实现跨网络数据 传输。
数据访问说明本地主机如何访问本地网络中的资源。

1、规则

1.1、视频-气泡中的设备

1.2、通信基础知识

人们使用许多不同的通信方式来交流观点。然而,所有通信方法都有以下三个共同要素:

  • 消息源(发送方) 消息源是需要向其他人或设备发送消息的人或电子设备。

  • 消息目的地(接收方) 目的地接收并解释消息。

  • 信道 这由为消息从源传送到目的地提供路径的介质组成。

1.3、通信协议

无论是面对面通信还是通过网络通信,消息的发送都是由被称为协议的规则来管理的。不同类型的通信方式,会有不同的特定协议。在日常的个人通信中,通过一种介质(如电话)通信时采用的规则不一定与使用另一种介质(如邮寄信件)时的规则相同。

消息源->发送方->传输介质->接收方->消息目的地

1.4、规则建立

在彼此通信之前,个人必须使用既定规则或协议来管理会话。

协议必须考虑到以下要求,才能成功地传递被接收者理解的消息:

  • 标识出发送方和接收方
  • 通用语言和语法
  • 传递的速度和时间
  • 证实或确认要求

1.5、网络协议要求

网络通信中使用的协议共享许多基本特质。除了识别源和目的地之外,计算机和网络协议还定义了消息在网络中如何传输的细节。

常用的计算机协议包含以下要求:

  • 消息编码
  • 消息格式和封装
  • 消息大小
  • 消息时序
  • 消息传输选项

1.6、消息编码

在发送消息时,首先执行的步骤之一是编码。

编码是将信息转换为另一种广为接受的形式的过程,目的是为了便于传输信息。

解码是编码的逆向过程,用来解释信息。

消息来源->编码器->发送方->传输介质“信道"->接送方->解码器->消息目的地

1.7、消息格式和封装

当消息从源发送到目的地时,必须使用特定的格式或结构,以便传递和处理。

正确标识消息的来源及其目的地是格式化过程的一部分

消息格式取决于消息的类型传递信道

互联网协议 (IP)是一种具有与信封示例类似功能的协议。在图中,互联网协议版本 6 (IPv6) 数据包的字段标识数据包的来源及其目的地。IP 负责通过一个或多个网络将消息从消息源发送到目的地。

1.8、消息大小

主机之间的编码必须采用适合介质的格式。通过网络发送的消息先由发送主机转换成。根据用来传输的网络介质,将每个位编码成声音、光波或电子脉冲等信号形式。目的主机接收并解码信号,解释收到的消息。

1.9、消息时序

  • 流量控制- 这是管理数据传输速率的过程。流量控制定义了可以发送多少信息以及传递信息的速率。例如,如果一个人讲话太快,对方就难以听清和理解。在网络通信中,源设备和目的设备使用网络协议来协商和管理信息流。
  • 响应超时 -如果一个人提问之后在合理的时间内没有得到回答,就会认为没有获得回答并作出相应的反应。此人可能会重复这个问题,也可能继续谈话。网络上的主机会使用网络协议来指定等待响应的时长,以及在响应超时的情况下执行什么操作。
  • 访问方法 -这决定人们可以发送消息的时间。当设备想要在无线局域网上传输时,有必要使用 WLAN 网络接口卡 (NIC) 来确定无线介质是否可用。

1.10、消息传输方式

网络通信有三种类型的数据通信传输方式

  • 单播 - 信息正在传输到单个终端设备。
  • 组播 - 信息正在传输到一个或多个终端设备。
  • 广播 - 信息正在传输到所有终端设备。

1.11、关于节点图标的注释

网络文档和拓扑通常使用节点图标表示网络和终端设备,节点通常表示为一个圆。

该图显示了使用节点图标代替计算机图标的三种不同传输方式的比较。

2、协议

2.1、网络协议概述

网络协议定义了用于设备之间交换消息的通用格式和规则集。

协议由软件、硬件或两者中的终端设备和中间设备实现。

每个网络协议都有自己的功能、格式和通信规则。

协议类型描述
网络通信协议这类协议使两个或多个设备能够在一个或多个 网络上通信。以太网技术家族涉及多种协议, 例如IP,传输控制协议TCP,Transmission Control Protocol), 超文本传输协议HTTP,HyperText Transfer Protocol)等。
网络安全协议这类协议保护数据以提供身份验证、数据完整性和 数据加密。安全协议的示例包括安全外壳协议 (SSH,Secure Shell)、安全套接字层协议 (SSL,Secure Sockets Layer) 和传输层安全协议 (TLS,Transport Layer Security)。
路由协议这类协议使路由器能够交换路由信息,比较路径 信息,然后选择到达目标网络的 最佳路径。路由协议的示例包括开放最短路径优先协议 (OSPF,Open Shortest Path First)和边界网关协议 (BGP,Border Gateway Protocol)。
服务发现协议。这类协议用于设备或服务的自动检测。 服务发现协议的示例包括发现用于IP地址分配 服务的动态主机配置协议DHCP,Dynamic Host Configuration Protocol), 和用于执行域名到IP地址转换的 域名系统DNS,Domain Name System)。

2.2、网络协议的功能

网络通信协议负责在终端设备之间进行网络通信所需的各种功能。

计算机和网络设备使用商定的协议进行通信。下表列出了这些协议的功能。

功能描述
编址这使用已定义的编址方案来标识消息的发送者 和预期的接收者。提供编址的协议示例 包括以太网,IPv4和IPv6。
可靠性此功能提供了有保证的传输机制, 以防消息在传输过程中丢失或损坏。TCP 提供可靠的传输。
流量控制此功能可确保数据在两个通信设备之间 高效传输。TCP 提供流量控制服务。
排序此功能唯一地标记每个传输的数据段。接收设备 使用排序信息正确地 重组信息。如果数据段丢失,延迟或未按顺序接收, 这将很有用。TCP 提供排序服务。
差错检测此功能用于确定传输过程中数据 是否已损坏。提供差错检测的各种协议包括 以太网,IPv4,IPv6和TCP。
应用接口此功能包含用于网络应用程序之间的进程间 通信的信息。例如,访问网页时, 使用HTTP或HTTPS协议在客户端和服务器Web进程 之间进行通信。

2.3、协议交互

通过计算机网络发送的消息通常需要使用多种协议,每种协议都有自己的功能和格式。

  • 超文本传输协议(HTTP)-该协议控制Web服务器和Web客户端进行交互的方式。HTTP定义了客户端和服务器之间的请求和响应的内容和格式。客户端·软件和Web服务器软件都将HTTP作为应用程序的一部分来实现。HTTP依靠其他协议来控制客户端和服务器之间传输消息的方式。
  • 传输控制协议(TCP)-此协议管理各个会话。TCP负责保证信息的可靠传输和管理终端设备之间的流量控制。
  • 互联网协议(IP)-此协议负责将消息从发送方传输给接收方。路由器使用IP来跨多个网络转发消息。
  • 以太网-此协议负责将消息从一个NIC(Network Interface Card,网卡/网络适配器)传输到同一个以太网局域网(LAN)上的另一个NIC。

3、协议簇

3.1、网络协议簇

在许多情况下,协议必须能够与其他协议配合使用,以便让在线体验为您提供网络通信所需的一切。

执行某种通信功能所需的一组内在相关协议称为协议簇。

要形象地表现协议簇中的协议如何互动,最佳方法之一就是将这种互动看成一个堆栈。协议栈展示了协议簇中的单个协议是如何实施的。协议显示为分层结构,每种上层服务都依赖于其余下层协议所定义的功能。协议栈的下层负责通过网络传输数据和向上层提供服务,而上层则负责处理发送的消息内容。

如图所示,我们可以使用分层结构来描述面对面通信中出现的活动。底层是物理层,有两个人用声音大声说出词语。中间是规则层,规定了通信的要求,包括必须选择一种通用语言。顶部是内容层,这是实际说出通信内容的地方。

协议簇是共同作用、帮助某个问题的规则集。

3.2、协议簇的演变

协议簇是提供全面的网络通信服务的一组协议。

在网络通信和互联网的发展过程中,出现了几个相互竞争的协议簇,如图所示。

互联网协议簇或TCP/IP-这是目前使用的最常见和最相关的协议簇。TCP/IP协议簇是由互联网工程任务组(IETF)维护的开放标准协议簇。

开放系统互连(OSI,Open System Interconnection)协议-这是1997年由国际标准化组织(ISO)和国际电信联盟(ITU)联合开发的一系列协议。OSI协议还包括了一个被称为OSI参考模型的七层模型。OSI参考模型对其协议的功能进行分类。如今,OSI主要以其分层模型而闻名。OSI协议在很大程度上已经被TCP/IP所取代。

Apple Talk - 一个由苹果公司于1985年为苹果设备发布的短期专有协议簇。1995年,苹果公司采用TCP/IP技术取代了AppleTalk。

Novell NetWare - 一种短暂的专有协议套件和网络操作系统,由诺维尔公司在1983年使用IPX网络协议开发。1995年,Novell采用TCP/IP取代了IPX。

3.3、TCP/IP协议示例

TCP/IP协议可用于应用层、传输层和互联网层。网络接入层中没有 TCP/IP 协议。最常见的网络接入层LAN协议是以太网和WLAN(无线LAN)协议。网络接入层协议负责通过物理介质传输 IP 数据包。

图中显示了用于在主机的web浏览器和web服务器之间发送数据包的三种TCP/IP协议的示例。HTTP、TCP 和 IP 是所使用的 TCP/IP 协议。在网络接入层,示例中使用了以太网。然而,这里也可以使用一种无线标准,如WLAN或蜂窝服务。

该图显示了用于在主机的web浏览器和web服务器之间发送数据包的TCP/IP协议。网络拓扑显示了一个连接到互联网云的主机和一个连接到Web服务器的主机。所显示的表示数据包的信封在互联网和服务器之间正在流动。从数据包辐射出的是每一层使用的协议的信息。自上而下是:应用层和超文本传输协议(HTTP);传输层和传输控制协议(TCP);互联网层和互联网协议(IP);以及网络接口层和以太网。

3.4、TCP/IP协议簇

如今,TCP/IP 协议簇包含许多协议,并且不断发展以支持新服务。图中显示一些较为常用的协议。

TCP/IP是当今互联网和网络使用的协议簇。TCP/IP对于供应商和制造商来说有两个重要的方面:

  • 开放标准协议簇-这意味着它对公众是免费的,任何供应商都可以在他们的硬件和软件中使用它。
  • 基于标准的协议簇-这意味着它已经受到网络行业认可并已获得标准组织的批准。这确保了来自不同制造商的产品能够成功地互操作。

应用层:

域名系统

  • DNS - 域名系统(Domain Name System)。将域名(例如 cisco)转换为 IP 地址。

主机配置

  • DHCPv4 - IPv4动态主机配置协议(Dynamic Host Configuration Protocol version four)。DHCPv4 服务器在启动时动态地将 IPv4 编址信息分配给 DHCPv4 客户端,并允许在不再需要时重新使用这些地址。
  • DHCPv6 - IPv6动态主机配置协议(Dynamic Host Configuration Protocol version six)。DHCPv6类似于DHCPv4。DHCPv6服务器在启动时动态地将IPv6编址信息分配给DHCPv6客户端。
  • SLAAC - 无状态地址自动配置(Stateless Auto Address Configuration)。一种允许设备在不使用DHCPv6服务器的情况下获得其IPv6编址信息的方法。

邮件

  • SMTP - 简单邮件传输协议(Simple Mail Transfer Protocol)。使客户端能够将邮件发送到邮件服务器,并使服务器能够将邮件发送到其他服务器。
  • POP3 - 邮局协议第 3 版(Post Office Protocol 3)。使客户端能够从邮件服务器检索电子邮件并将电子邮件下载到客户端本地邮件应用程序。
  • IMAP - 互联网消息访问协议(Internet Mail Access Protocol)。使客户端能够访问存储在邮件服务器上的电子邮件,并在服务器上维护电子邮件。

文件传输

  • FTP - 文件传输协议(File Transfer Protocol)。它设置规则,使得一台主机上的用户能够通过网络访问另一台主机或向其传输文件。FTP是一种可靠、面向连接且进行确认的文件传输协议。
  • SFTP - SSH文件传输协议(Secure File Transfer Protocol)。作为安全外壳 (SSH)协议的扩展,SFTP可用于建立安全的文件传输会话,在该会话中对文件传输进行加密。SSH 是一种安全远程登录的方法,通常用于访问设备的命令行。
  • TFTP - 简单文件传输协议(Trivial File Transfer Protocol)。这是一个简单的,无连接的文件传输协议,使用尽最大努力、无需确认的文件传输方式。它使用的开销比FTP少。

Web和Web服务

  • HTTP - 超文本传输协议(HyperText Transfer Protocol)。这是有关在万维网上交换文本、图形图像、音频、视频以及其他多媒体文件的一组规则集。
  • HTTPS - 安全 HTTP(Hyper Text Transfer Protocol over SecureSocket Layer)。这是一种安全的HTTP形式,它对在万维网上交换的数据进行加密。
  • REST - 具象状态传输协议(Representational State Transfer)。它使用应用程序编程接口 (API) 和 HTTP 请求创建 Web 应用程序的 Web 服务。

传输层:

面向连接

  • TCP - 传输控制协议(Transmission Control Protocol)。它使运行在不同主机上的进程之间能够进行可靠的通信,并提供可靠的、需要确认的传输,以确保传输成功。

无连接

  • UDP - 用户数据报协议(User Datagram Protocol)。它允许一台主机上运行的进程向另一台主机上运行的进程发送数据包。但是,UDP不会确认数据报传输是否成功。

互联网层

Internet 协议

  • IPv4 - 互联网协议第 4 版(Internet Protocol version four)。它接收来自传输层的消息段,将消息打包成数据包,并为通过网络进行端到端传递的数据包进行地址分配。IPv4 使用 32 位地址。
  • IPv6 - 互联网协议第 6 版(Internet Protocol version six)。与 IPv4 类似,但使用 128 位地址。
  • NAT - 网络地址转换(Network Address Translation)。将私有网络 IPv4 地址转换为全球唯一的公有 IPv4 地址。

消息传送

  • ICMPv4 - IPv4 互联网控制消息协议( Internet Control Message Protocol version four) 。目的主机针对数据包传输中出现的错误,向源主机提供反馈。
  • ICMPv6 - 用于 IPv6 的ICMP( Internet Control Message Protocol version six) 。与 ICMPv4 类似的功能,但用于 IPv6 数据包。
  • ICMPv6 ND - IPv6 邻居发现( Internet Control Message Protocol version six Neighbor Discovery) 。包括用于地址解析重复地址检测的四个协议消息。

路由协议

  • OSPF - 开放最短路径优先协议(Open Shortest Path First)。它使用基于区域的分层设计的链路状态路由协议。OSPF是一种开放式标准内部路由协议。
  • EIGRP — 增强型内部网关路由协议(Enhanced Interior Gateway Routing Protocol)。这是一种思科开发的开放标准路由协议,使用基于带宽、延迟、负载和可靠性的复合度量。
  • BGP - 边界网关协议(Border Gateway Protocol)。这是一种开放标准的外部网关路由协议,用于互联网服务提供商(ISP)之间。BGP 还通常用于 ISP 与其大型私有客户端之间来交换路由信息。

网络接入层

地址解析

  • ARP - 地址解析协议(Address Resolution Protocol)。提供 IPv4 地址与硬件地址之间的动态地址映射。

注意:您可能会看到其他文档状态,表明 ARP 在互联网层(OSI 第 3 层)运行。但是,在本课程中,我们声明 ARP 在网络接入层(OSI 第 2 层)运行,因为它的主要目的是发现目标的 MAC 地址。MAC 地址是第 2 层地址。

数据链路协议

  • 以太网 - 为网络接入层的布线和信令标准定义规则。
  • WLAN - 无线局域网(wireless local-area-network)。定义 2.4 GHz 和 5 GHz 无线电频率的无线信号规则。

3.5、TCP/IP通信过程

1、数据逐层封装为(以太网(IP(TCP(数据))))

2、封装后的数据编码为二进制数

3、从Web服务器发送到Web客户端

4、客户端解码

5、解封装获得数据

4、标准组织

4.1、开放标准

尽管有许多不同的网络组件制造商,但他们都必须使用相同的标准。在网络中,标准是由国际标准组织制定的。

开放标准鼓励互操作性、竞争和创新。它们还能确保没有任何一家公司的产品能够垄断市场或占有不公平竞争优势。

标准组织通常是中立于厂商的非营利性组织。它的建立是为了发展和推广开放标准的概念。这些组织对维护一个开放的互联网,允许自由访问规范和协议并允许所有供应商实施这些规范和协议起着至关重要的作用。

标准组织可能会独立起草规则集,也可能在其他情况下将某个专有协议作为一个标准的基础。如果要使用专有协议,通常就会涉及到创建了该协议的供应商。

4.2、互联网标准

各个组织在互联网和 TCP/IP 协议标准的推广和建立方面具有不同的责任。

该图显示了参与互联网开发和支持的标准组织。

  • Internet 协会 (ISOC) –(Internet Society) 负责在全世界推进互联网的开放式开发、发展和使用。
  • 互联网架构委员会 (IAB) - (Interactive Advertising Bureau)负责互联网标准的整体管理和发展。
  • 互联网工程任务组 (IETF) - (Internet Engineering Task Force)负责开发、更新和维护互联网和 TCP/IP 技术。包括用于开发新协议和更新现有协议的流程和文档,称为征求意见 (RFC) 文档。
  • 互联网研究任务组 (IRTF) - (Internet Research Task Force)负责互联网和 TCP/IP 协议相关的长期研究,包括反垃圾电子邮件研究组(Anti-Spam Research Group,ASRG)、密码技术研究组(Crypto Forum Research Group,CFRG)和对等网络研究组(Peer-to-Peer Research Group,P2PRG)等。

该图显示了参与互联网开发和支持的标准组织,包括 IANA 和 ICANN。

  • 互联网名称与数字地址分配机构 (ICANN) - 总部设在美国,ICANN负责协调 IP 地址分配、域名的管理和 TCP/IP 协议中使用的其他信息的分配。
  • 互联网编号指派机构 (IANA) - 负责监督和管理 ICANN 中的 IP 地址分配、域名管理和协议标识符。

4.3、电子和通信标准

其他标准组织有责任推广和建立电子与通信标准,这些标准用于通过有线或无线介质将 IP 数据包作为电子信号传输。

这些标准组织包括:

  • 电气电子工程师协会**(IEEE,读作“I-triple-E”) –(Institute of Electrical and Electronics Engineers)是为致力于推动诸多行业领域的技术创新和标准创建的工程师设立的组织,涉及的领域包括电力与能源、医疗保健、电信和网络。重要的 IEEE 网络标准包括 802.3 以太网和 802.11 无线局域网标准。可在互联网上搜索其他 IEEE 网络标准。
  • 美国电子工业协会 (EIA)- 当时名为无线电制造商协会(Radio Manufacturers’ Association:RMA),该组织因其在用于安装网络设备的电线、连接器和 19 英寸机架方面的标准而知名。
  • 电信工业协会 (TIA)- 该组织负责开发各种领域的通信标准,包括无线电设备、手机信号塔、IP 语音 (VoIP) 设备和卫星通信等。
  • 国际电信联盟电信标准局 (ITU-T) - (Telecommunication Standardization Sector of the International Telecommunications Union)是最大最早的通信标准组织之一。ITU-T 定义视频压缩、Internet 协议电视 (IPTV) 和宽带通信的标准,例如数字用户线路 (DSL)。

4.4、实验-研究网络标准

5、参考模型

5.1、使用分层模型的优点

诸如网络运行方式之类的复杂概念可能很难解释和理解。因此,可以使用分层模型将网络的运行模块化为可管理的层。

这些是使用分层模型来描述网络协议及其工作方式的优点:

  • 有助于协议设计,因为对于在特定层工作的协议而言,它们的工作方式及其与上下层之间的接口都已经确定。
  • 促进竞争,因为可以同时使用不同厂商的产品。
  • 避免一个协议层的技术或功能变化影响相邻的其他层。
  • 提供了描述网络功能和能力的通用语言。

如图所示,有两个分层模型用于描述网络运行:

开放式系统互联(OSI)参考模型 TCP/IP 参考模型

5.2、OSI参考模型

OSI 参考模型详细罗列了每一层可以实现的功能和服务。 这种类型的模型通过描述特定层必须完成什么但不规定如何完成来保持各类网络协议和服务中的一致性。

它还描述了各层与其上、下层之间的交互。本课程中所讨论的 TCP/IP 协议同时围绕 OSI 和 TCP/IP 模型而构造。下表显示了OSI模型每一层的详细信息。在本课程中,随着我们对协议更加详细的讨论,各层的功能和层与层之间的关系将变得更加明显。

OSI 模型层描述
7 - 应用层应用层包含用于进程间通信 的协议。
6 - 表示层表示层用常用方式表示数据 在应用层服务之间的传输。
5 - 会话层会话层向表示层提供服务,组织对话并 管理数据交换。
4 - 传输层传输层定义服务以对数据进行分段,传输和 重组,以进行终端设备之间的单独 通信。
3 - 网络层网络层为所标识的终端设备之间通过网络 交换独立的数据的片段提供服务。
2 - 数据链路层数据链路层协议描述了设备之间通过 公共介质交换数据帧的方法。
1 - 物理层物理层协议描述了机械的、电气的、功能的 和程序化的方法,以激活,维护和解除物理连接, 实现与网络设备之间的位 设备。

注意: 我们提及 TCP/IP 模型的各层时只使用其名称,而提及 OSI 模型的七个层时则通常使用编号而非名称。例如,物理层指 OSI 模型的第 1 层,数据链路层指第2层,诸如此类。

5.3、TCP/IP协议模型

用于网际通信的 TCP/IP 协议模型建立于二十世纪七十年代早期,有时称为互联网模型。 这种类型的模型与特定的协议簇结构紧密配合。

TCP/IP 模型描述了 TCP/IP 协议簇中每个协议层实现的功能,因此属于协议模型。TCP/IP 也用作参考模型。下表显示了TCP/IP模型每一层的详细信息。

TCP/IP 模型层描述
4 - 应用层向用户提供数据,以及编码和对话控制。
3 - 传输层支持各种设备之间通过不同网络通信。
2 - 互联网层确定通过网络的最佳路径。
1 - 网络接入层控制组成网络的硬件设备和介质。

标准的定义和 TCP/IP 协议都在公开的论坛中讨论,并在向公众开放的 IETF RFC 集中加以定义。RFC 由网络工程师撰写,并发送给其他 IETF 成员征求意见。

5.4、OSI模型与TCP/IP模型的比较

还可以根据 OSI 参考模型描述构成 TCP/IP 协议簇的协议。在 OSI 模型中,TCP/IP 模型的网络接入层和应用层被进一步划分,用于描述这些协议层需要实现的不同功能。

TCP/IP 协议簇在网络接入层并没有指定通过物理介质传输时使用的协议,而只是描述了从互联网层到物理网络协议的传递。而 OSI 模型第 1 层和第 2 层则论述了接入介质所需的步骤以及通过网络发送数据的物理手段。

主要相似性在于传输层和网络层;然而,这两种模型在与每层的上下层的相关方式上不同:

  • OSI 模型第 3 层是网络层,与 TCP/IP 的互联网层形成直接映射。该层用于描述通过网际网络编址并路由消息的协议。
  • OSI 模型第 4 层是传输层,与 TCP/IP 的传输层形成直接映射。该层描述了可以在源主机和目的主机之间提供有序可靠的数据传输的常用服务和功能。
  • TCP/IP 应用层包括几个协议,为各种最终用户应用程序提供特定功能。OSI 模型第 5 层、第 6 层和第 7 层供应用程序软件开发人员和厂商参考,用于生产需要在网络上运行的应用程序。
  • 当涉及各层的协议时,TCP/IP 和 OSI 模型都很常用。由于 OSI 模型将数据链路层与物理层区分开来,当涉及这些较低层时通常使用这种模型。

5.5、Packet Tracer - 调查运行中的 TCP/IP 和 OSI 模型

数据在网络中传递时,将被分割成较小片段并进行标识,以便在数据到达目的地时重新组合这些片段。每个片段会被指定一个特定名称,并将其与 TCP/IP 和 OSI 模型中的特定层相关联。这个指定的名称称为协议数据单元 (PDU)

6、数据封装

6.1、对消息分段

理论上来说,可以将一次通信的内容(如音乐视频或有很多很大的附件的电子邮件)作为一大块连续的高容量比特流,通过网络从源发送到目的地。但是,这会给其他需要使用相同通信通道或链路的设备带来问题。这种大型数据流会导致严重的延迟。而且,一旦互联网络基础架构中的任何链路在传输期间出现故障,那么整个消息都会丢失,必须全部重传。

所以,更好的办法是先将数据划分为更小、更易于管理的片段,然后再通过网络发送。分段是将数据流划分成更小的单元,以便在通过网络传输的过程。分段是必要的,因为数据网络使用TCP/IP协议簇以单独的IP数据包发送数据。每个数据包都是单独发出的,类似于把一封长信作为一系列独立的明信片寄出。包含同一目的地数据段的数据包可以通过不同的路径发送。

这导致消息分段有两个主要好处:

  • 提高速度 - 由于将大数据流分段成为数据包,因此可以在不独占通信链路的情况下,通过网络发送大量数据。这允许许多不同的会话在称为多路复用的网络上交错。
  • 提高效率 - 如果单个数据段由于网络故障或网络拥塞而无法到达其目的地,则只需要重新传输该段,而不需要重新发送整个数据流。

6.2、排序

使用分段和多路复用在网络上传输消息要面临的挑战是增加了该过程的复杂程度。试想一下,这就如同您要邮寄一封 100 页的信件,但每个信封里只能装一页纸。因此,将需要100个信封,每一个信封都需要分别写好地址。100个不同的信封装着的100页的信有可能顺序是混乱的。因此,信封中的信息需要包含一个序列号,以确保接收者可以按适当的顺序重新组装页面。

在网络通信中,每个消息段也必须经过类似的过程才能确保其到达正确目的设备并重新组装成原始消息的内容,TCP 负责对单独的数据段进行排序。

6.3、协议数据单元

在通过网络介质传输应用程序数据的过程中,随着数据沿协议栈向下传递,每层都要添加各种协议信息。此过程称为封装

注意: 虽然UDP PDU被称为数据报,但IP数据包有时也被称为IP数据报。

一段数据在任意协议层的表示形式称为协议数据单元 (PDU)。在封装过程中,后续的每一层都根据使用的协议封装其从上一层接收的 PDU。在该过程的每个阶段,PDU 都以不同的名称来反映其新功能。尽管目前对 PDU 的命名没有通用约定,但本课程中根据 TCP/IP 协议簇的协议来命名 PDU。图中显示了每种形式数据的 PDU。

  • 数据 - 一般术语,泛指应用层使用的 PDU
  • 段 - 传输层 PDU
  • 数据包 - 网络层 PDU
  • 帧 - 数据链路层 PDU
  • 位 - 通过介质实际传输数据时使用的物理层 PDU

注意:如果传输报头是TCP,那么它是一个数据段。如果传输报头是 UDP,那么它是一个数据报。

6.4、封装示例

在网络中发送消息时,封装过程自上而下工作。在各层,上层信息被视为封装协议内的数据。例如,TCP 分段被视为 IP 数据包内的数据。

封装示例见3.5

6.5、解封示例

接收主机上的过程与之相反,称为“解封”。解封是接收设备用来删除一个或多个协议报头的过程。数据在朝着最终用户应用程序沿协议栈向上移动的过程中被解封。

解封示例见3.5

7、数据访问

7.1、地址

正如您刚刚了解到的,在网络中对消息进行分段是必要的。但是,如果未正确编址这些分段的消息,它们将无处可去。本主题概述了网络地址。

网络层和数据链路层负责将数据从源设备传输到目的设备。

如图所示,两层中的协议都包含源地址和目的地址,但它们的地址具有不同的用途。

  • 网络层源地址和目的地址 - 负责将 IP 数据包从原始源设备传输到可能处于同一网络或远程网络中的最终目的设备。
  • 数据链路层源地址和目的地址 – 负责将数据链路帧从一个网络接口卡 (NIC) 传输到同一网络上的另一个 NIC。

7.2、第三层逻辑地址

IP 地址是网络层(或第 3 层)逻辑地址,用于将 IP 数据包从原始源设备传输到最终目的设备,如图:

IP 数据包包含两个 IP 地址:

  • 源 IP 地址 - 发送设备(数据包的始源设备)的 IP 地址。

  • 目的 IP 地址 - 接收设备(数据包的最终目的设备)的 IP 地址。

    IP 地址表示始源IP地址和最终目的IP地址。无论源和目的地在同一IP网络上还是在不同的IP网络上,都是如此。

IP 地址包含两部分:

  • 网络部分(IPv4)或前缀(IPv6) – 地址最左边的部分,表示 IP 地址是哪个网络的成员。同一网络中所有设备的地址都有相同的网络部分。
  • 主机部分(IPv4)或接口ID(IPv6) - 地址的其余部分,用于识别网络上的特定设备。这部分对于网络中的每个设备或接口都是唯一的。

注意: 子网掩码(IPv4)或前缀长度(IPv6)用于将IP地址的网络部分与主机部分区分开来。

7.3、同一网络中的设备

在本示例中,客户端计算机 PC1 与同一 IP 网络中的 FTP 服务器进行通信。

  • 源IPv4地址 - 发送设备的IPv4地址,即客户端计算机PC1:192.168.1.110。
  • 目的IPv4地址 - 接收设备的IPv4地址,即服务器,Web服务器:172.16.1.99。

注意图中源 IPv4 地址和目的 IPv4 地址的网络部分在同一网络中。注意图中,源IPv4地址的网络部分和目的IPv4地址的网络部分是相同的,因此,源和目的地在同一个网络上。

7.4、数据链路层地址的作用:相同的IP网络

当 IP 数据包的发送方和接收方处于同一网络中时,数据链路帧将直接发送到接收设备。在以太网中,数据链路地址称为以太网介质访问控制(MAC)地址,在图中突出显示。

MAC 地址是以太网网卡的物理内嵌地址。

  • 源 MAC 地址 - 这是发送封装有 IP 数据包的数据链路帧的设备的数据链路地址,或以太网 MAC 地址。PC1 以太网网卡的 MAC 地址为 AA-AA-AA-AA-AA-AA,以十六进制表示法表示。
  • 目的MAC地址 - 当接收设备与发送设备在同一网络中时,这就是接收设备的数据链路层地址。在本例中,目的MAC地址就是FTP服务器的MAC地址: CC-CC-CC-CC-CC-CC-CC,用十六进制记法表示。

现在可以将封装有 IP 数据包的帧从 PC1 直接传送到 FTP 服务器。

7.5、远程网络中的设备

但是当设备与远程网络中的另一设备通信时,网络层地址和数据链路层地址的作用是什么?在以下示例中,客户端计算机 PC1 与另一 IP 网络中名为 Web 服务器的服务器进行通信。

7.6、网络层地址的作用

当数据包的发送方与接收方位于不同网络时,源 IP 地址和目的 IP 地址将代表位于不同网络的主机。这将由目的主机 IP 地址的网络部分来表明。

  • 源IPv4地址 – 发送设备的IPv4地址,即客户端计算机PC1:192.168.1.110。
  • 目的IPv4地址 – 接收设备的IPv4地址,即服务器,Web服务器:172.16.1.99。

注意图中源 IPv4 地址和目的 IPv4 地址的网络部分在不同的网络中。

7.7、数据链路层地址的作用:不同的IP网络

当 IP 数据包的发送方和接收方位于不同网络时,以太网数据链路帧不能直接发送到目的主机,因为在发送方的网络中无法直接到达该主机。必须将以太网帧发送到称为路由器或默认网关的另一设备。在我们的示例中,默认网关是 R1。R1 有一个以太网数据链路地址与 PC1 位于同一网络中。这使 PC1 能够直接到达路由器。

  • 源 MAC 地址 - 发送设备 PC1 的以太网 MAC 地址。PC1 以太网接口的 MAC 地址是 AA-AA-AA-AA-AA-AA。
  • 目的 MAC 地址 - 当接收设备(目的 IP 地址)与发送设备位于不同网络时,发送设备使用默认网关或路由器的以太网 MAC 地址。在本示例中,目的 MAC 地址是 R1 的以太网接口的 MAC 地址:11-11-11-11-11-11。这是连接到与PC1相同的网络的接口,如图所示。

现在可以将封装有 IP 数据包的以太网帧传送到 R1。R1 将数据包转发到目的地(Web 服务器)。这可能意味着 R1 会将数据包转发到另一个路由器,或者如果目的地所在的网络与 R1 相连的话直接转发到 Web 服务器。

必须在本地网络的每台主机上配置默认网关的 IP 地址。所有指向远程网络中目的地的数据包都会发送到默认网关。

7.8、数据链路层地址

数据链路层(第 2 层)物理地址具有不同的作用。数据链路层地址的作用是将数据链路层帧从一个网络接口传输到同一网络中的另一个网络接口。

在 IP 数据包可以通过有线或无线网络发送之前,必须将其封装成数据链路层帧,以便通过物理介质传输。

主机到路由器:

路由器到路由器:

路由器到服务器:

当 IP 数据包从主机到路由器、从路由器到路由器和最终从路由器到主机传输时,沿途中的每个点上都会将 IP 数据包封装到新的数据链路层帧中。每个数据链路层帧包含发送帧的 NIC 卡的源数据链路层地址和接收帧的 NIC 卡的目的数据链路层地址。

第 2 层数据链路层协议仅用于在同一网络中的 NIC 之间传输数据包。路由器会将其 NIC 上收到的第 2 层信息删除,添加新的数据链路层信息,然后将数据包从通往最终目的地路径的出口 NIC 上转发出去。

IP 数据包会封装到包含以下数据链路层信息的数据链路层帧中:

  • 源数据链路层地址 - 发送数据链路层帧的网卡的物理地址。
  • 目的数据链路层地址 - 接收数据链路层帧的 NIC 的物理地址。该地址为下一跳路由器,或最终目的设备的地址。

7.9、实验-安装Wireshark

7.10、实验-使用Wireshark查看网络流量

习题:

网络层地址是逻辑地址,长度可以使32位,也可以是128位;

数据链路层地址是物理地址,表示为12个十六进制数字。

单元检测:

传输层为终端设备之间的每个通信定义了数据分段、传输和重组服务

本文标签: 课程 笔记 网络 ITN