计算机网络核心二:一文讲透电路、报文与分组交换 前言计算机网络真的很重要一开始学不明白没关系回头再看它真的具有很大的能量博主也是后面才意识到所以出这个系列迅速拾起计网知识面试的同学可以看看后面刷刷面试题就可以了直接看面试题会很痛苦考研的同学也可以作为一个宏 观入门。大家好今天我们来攻克计算机网络中一个非常硬核但又至关重要的知识点——数据交换方式。当我们谈论“上网”时数据究竟是如何从你的手机跑到服务器的中间经历了什么这就涉及到了网络核心的“交换技术”。在计算机网络中主要有三种基本交换方式电路交换、报文交换和分组交换。这篇博客将带你彻底搞懂它们的原理、区别以及为什么分组交换能统领今天的互联网。一、 电路交换独占的“专线”电路交换是最早出现、也是最“霸道”的一种交换方式。它的核心思想就是“独占”。1. 核心原理想象一下传统的固定电话。当你拨打电话时电信网络会在你和对方之间建立一条专用的物理通路。*建立连接拨号阶段交换机为你分配资源。*通信阶段通话期间这条线路归你们“私有”哪怕你们都不说话别人也用不了。*释放连接挂机后线路资源才被归还。2. 优缺点分析*优点*时延极小数据像走直达高速公路中间没有停顿非常适合实时通信。*有序传输数据按顺序到达不会乱序。*无冲突信道专用不用担心堵车。*缺点*效率低这是致命伤。计算机数据是“突发”的一会儿发很多一会儿不发电路交换在静默期依然占用线路造成极大浪费。*建立连接慢每次通信前都要“拨号”建立连接耗时较长。*灵活性差一旦线路中间断了通信就彻底中断。典型应用传统电话网络PSTN。二、 分组交换互联网的“快递系统”分组交换是现代互联网的基石。它的核心思想是“化整为零存储转发”。1. 核心原理如果要发送一大段数据报文分组交换不会一次性发完而是把它切分成一个个小的、等长的数据段并在前面加上“首部”包含目的地址等信息这就构成了分组Packet。*发送方构造分组依次发送。*路由器核心收到分组后先暂存缓存检查首部查表找到下一站然后转发。*接收方收到所有分组后去掉首部还原成原始报文。2. 为什么它这么快*并行传输当第一个分组离开路由器A前往路由器B时第二个分组可以紧接着从发送方发往路由器A。这种“流水线”作业大大提高了效率。*差错控制好如果传输出错只需要重传出错的那个分组而不是整个文件。3. 优缺点分析*优点*线路利用率高大家分时共享物理线路谁有数据谁就发。*加速传输存储转发机制配合并行处理减少了整体传输时间。*缺点*转发时延每个路由器都要处理存储、查表、转发会产生时延。*首部开销每个分组都要带地址信息增加了额外的数据量。*可能乱序不同分组可能走不同的路到达目的地时顺序可能乱了需要接收方重新排序。三、 报文交换分组交换的“老大哥”报文交换是分组交换的前身现在已较少使用但理解它有助于理解分组交换。*原理它不分割数据而是把整个报文作为一个整体进行“存储-转发”。*特点* 不需要建立连接。* 中间节点需要巨大的缓存空间来存放大报文。* 转发时延比分组交换更长因为必须等整个报文收完才能转发。*现状基本已被分组交换取代但在早期的电报网络中曾是主角。四、 三种方式大比拼为了帮大家理清思路我做了一个对比表格表格特性电路交换报文交换分组交换连接方式需建立连接拨号无需连接无需连接资源占用独占利用率低动态共享利用率高动态共享利用率高传输单位比特流直达完整报文分组Packet主要优点时延小、有序、无冲突动态分配、支持多目标效率高、容错好、灵活主要缺点建立慢、线路浪费缓存要求大、时延长首部开销、可能乱序典型应用电话网早期电报已淘汰互联网主流五、 总结*电路交换适合对实时性要求极高的场景如打电话但在数据传输上效率太低。*报文交换虽然解决了线路共享问题但大报文的存储转发太慢了。*分组交换结合了二者的优点通过“化整为零”和“存储转发”实现了高效、灵活、可靠的数据传输因此成为了现代计算机网络包括互联网的绝对主流技术。