【计算机网络 | 第二篇】三种交换方式和互联网的核心部分

文章目录

互联网的核心部分 :互联网的核心部分由大量网络和连接这些网络的路由器组成,其主要功能是为边缘部分的主机提供连通性和数据交换服务。

核心部分的组成与特性

互联网核心部分与边缘部分在基础设施与功能定位上存在显著差异:

  • 基础设施 :核心部分的路由器之间通常通过高速链路 (如光纤)互连,以实现高吞吐量的数据传输;而位于网络边缘的主机接入核心部分时,通常使用相对较低速率的链路。
  • 功能定位
    • 主机:位于网络边缘,主要负责用户的信息处理,并通过网络与其他主机交换信息。
    • 路由器(Router) :位于网络核心,主要负责分组交换,即转发收到的分组。

分组交换与路由器的转发机制

在互联网核心部分,路由器起着至关重要的作用。路由器采用存储转发技术对分组进行处理。

1. 路由器的处理过程

路由器内部的输入端口与输出端口之间不存在直接的物理连线。其处理分组的基本流程如下:

  1. 缓存:路由器将从输入端口收到的分组暂时存储在缓存中。
  2. 查表 :根据分组首部中的目的地址,查找转发表,确定该分组应从哪个输出端口转发。
  3. 转发:将分组通过内部交换结构输送到适当的输出端口并发送出去。

上图分组的 "存储转发过程",描述如下:

(1)在路由器 A 暂存,查找转发表,找到转发的端口

(2)在路由器C 暂存,查找转发表,找到转发的端口

(3)在路由器E 暂存,查找转发表,找到转发的端口

(4)最终->到达目的主机 H5

2. 动态路径选择

由于互联网核心部分的拓扑结构复杂且链路状态可能发生变化,分组在网络中的传输路径并非固定不变。路由器根据当前的路由协议和网络状态,动态决定分组的下一跳地址。

网络核心的两大功能:路由与转发

尽管在日常表述中常统称为"路由",但在技术层面,网络核心的功能可细分为路由转发 两个层面:

  1. 路由(Routing)
    • 性质:全局性操作。
    • 功能:通过路由选择协议和路由算法,确定分组从源节点到目标节点所经过的完整路径。
    • 产物:生成路由表。
  1. 转发
    • 性质:本地性操作。
    • 功能:路由器或交换机将接收到的数据分组,从输入接口移动到特定的输出接口。
    • 依据:根据分组首部的目的地址,查找本地转发表,确定"出接口"。

三种交换方式的比较

在通信网络的发展过程中,主要出现了三种交换技术:电路交换、报文交换和分组交换

  1. 电路交换

    名词:Circuit Switching

    • 机制:通信前必须建立一条专用的物理连接(建立连接),通信过程中独占资源(数据传送),通信结束后释放连接(连接释放)。
    • 特点:数据直达,时延小,但线路利用率低,建立连接开销大。
  2. 报文交换

    名词:Message Switching

    • 机制:以整个报文为单位进行存储转发。
    • 特点:无需建立连接,但对中间节点的缓存空间要求高,长报文导致的排队时延较大。
  3. 分组交换

    名词:Packet Switching

    • 机制:将报文划分为较小的分组(Packet),以分组为单位进行存储转发。
    • 特点
      • 高效:链路逐段占用,动态分配传输带宽。
      • 灵活:以分组为单位,每个分组独立选择路径。
      • 迅速:以分组为单位转发,不需建立连接,且分组小,传输和处理时延低。

下图展示了三种交换方式在数据传送过程中的时序对比。可以看出,分组交换通过流水线方式(Pipelining)传输,在多跳路径上具有显著的效率优势。

ps. 关于 流水线,很多应用层框架也采取了类似的逻辑和机制

电路交换、报文交换与分组交换的时序与机制对比

数据传输特点

相关推荐
智能修复4 小时前
无法访问共享文件夹/打印机?深度解析“0x80070035”错误代码:网络凭证、防火墙与工作组设置的终极修复指南
网络·错误代码
zl_dfq8 小时前
Linux 之 【网络套接字编程】(固定宽度整数类型、socket常见API、netstat)
linux·网络
雾岛听蓝9 小时前
C++11新特性(lambda、包装器)
c++·经验分享·笔记
代码游侠11 小时前
Linux驱动复习——驱动
linux·运维·arm开发·笔记·学习
国科安芯11 小时前
医疗成像设备系统电源芯片国产替代可行性研究
网络·单片机·嵌入式硬件·fpga开发·硬件架构
枷锁—sha12 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 053】详解:逐字节爆破!手写 Canary 的终极破解
网络·笔记·安全·网络安全
k7Cx7e12 小时前
宝塔域名强制SSL和带www的方法
网络·网络协议·ssl
浅念-12 小时前
C++ 继承
开发语言·c++·经验分享·笔记·学习·算法·继承
czxyvX12 小时前
017-Linux-网络基础概念
linux·网络
峰顶听歌的鲸鱼13 小时前
Zabbix监控系统
linux·运维·笔记·安全·云计算·zabbix·学习方法