计算机网络核心-数据交换

1 概述

计算机网络的核心即数据交换。通过数据交换将数据从源主机发送到目的主机。

2 为什么需要数据交换

如果不是数据交换的方式,而是每两台主机直接连接,则会产生N^2链路问题。
即,假设有N台主机,两两间建立连接,则链路总数为 (N-1)+(N-2)+…+1=[(N-1)+1](N-1)/2=N(N-1)/2。等差数列求和。
每台主机都需要与网络上所有的主机都要建立(N-1)个连接。
在这里插入图片描述
所以就有了交换设备。每台主机与交换设备直连。每台主机只要一个连接。
在这里插入图片描述
但是如果网络上所有的主机都连在一个交换设备上,交换设备的压力会很大。所以就有了多个交换设备互连形成了交换网络。
在这里插入图片描述
所以最后的形式就是各主机通过交换网络进行数据交换。

3 数据交换的类型

电路交换
报文交换
分组交换

4 电路交换

最典型的电路交换用例:电话网络
在这里插入图片描述

电路交换的步骤:
1 拨号,建立连接
2 通信
3 释放连接
电路交换的特点,独占资源。(通过多路复用技术共享物理链路)
在这里插入图片描述

5 多路复用

为啥可以多路复用?
因为很多情况下,一个物理链路的通信能力远远大于一路通信的需求。因此多个通信可以共用同一物理链路。

怎么做到多路复用的?
多路复用将资源(链路/网络资源)划分为资源片。
将资源片分配给各路呼叫(通信)。
每路呼叫独占分配到的资源片进行通信。
因为资源片是独占的,所以会存在资源片闲置的情况。

典型的多路复用方法有哪些?
频分多路复用FDM-频率-电视信号
在这里插入图片描述

时分多路复用TDM-时间帧-每个时间帧又分为多个时隙-每个用户占用一个时隙-时隙是周期出现的-用户只有在时隙才能发送数据
在这里插入图片描述

波分多路复用WDM
码分多路复用CDM-蜂窝网络、卫星网络(有点复杂。什么码、正交…这里不展开了)

6 报文转发

将数据作为一个整体进行转发。

7 分组转发

特点:
1.将数据分成多个数据包然后进行转发。
2.需要报文拆分和重组。
3.产生额外开销。(但很小可以忽略,而且只在源主机进行拆分,然后只在目的主机进行重组)
ps:在每个数据包的头部会添加头部信息。
在这里插入图片描述
分组转发的多路复用:
假设两个源主机A、B,用通一个交换设备进行分组转发。A和B首先将报文拆成多个数据包,每个数据包占用交换设备的部分带宽。
分组转发的多路复用是占用同一交换设备的带宽,也称为统计多路复用。
在这里插入图片描述

8 报文交换对比分组交换

报文交换将整个文件进行发送,增加了中间交换设备缓存的要求。
分组交换将数据拆分多个数据包后,在链路(中间的交换设备)中,可以并行发送多个分组(15s,5.002ms)。分组交换的时间比报文交换时间短。而且中间交换设备的缓存也不需要太大,至少能接收一个数据包即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/64135.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Delphi7通过VB6之COM对象调用FreeBASIC写的DLL功能

VB6写ActiveX COM组件比较方便,不仅PowerBASIC与VB6兼容性好,Delphi7与VB6兼容性也不错,但二者与FreeBASIC兼容性在字符串处理上差距比较大,FreeBASIC是C化的语言,可直接使用C指令。下面还是以实现MKI/CVI, MKL/CVL, M…

使用selenium如何实现自动登录

回顾使用requests如何实现自动登录一文中,提到好多网站在我们登录过后,在之后的某段时间内访问该网页时,不会给出请登录的提示,时间到期后就会提示请登录!这样在使用爬虫访问网页时还要登录,打乱我们的节奏…

用MariaDB创建数据库,SQL练习,MarialDB安装和使用

前言:MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB来代替MySQ…

el-dialog嵌套,修改内层el-dialog样式(自定义样式)

el-dialog嵌套使用时,内层的el-dialog要添加append-to-body属性 给内层的el-dialog添加custom-class属性,添加自定义类名 <el-dialog:visible.sync"dialogVisible"append-to-bodycustom-class"tree-cesium-container"><span>这是一段信息<…

keil下载程序具体过程2:硬件链路

引言 本篇博客将介绍keil下载程序的过程中&#xff0c;镜像文件将经过哪些硬件&#xff0c;以及简单的介绍他们之间的协议。 一、硬件连接 图1 硬件连接 将PC、jlink、芯片使用ubs线、swd线连接好之后&#xff0c;在PC上的keil软件中&#xff0c;我们选择对应的仿真器&#xf…

策略模式实战应用

场景 假设做了个卖课网站&#xff0c;会员等级分为月vip、年vip、终生vip&#xff0c;每个等级买课的优惠力度不一样&#xff0c;传统的写法肯定是一堆的 if-else&#xff0c;现在使用策略模式写出代码实现 代码实现 策略模式的核心思想就是对扩展开放&#xff0c;对修改关闭…

类的派生

目录 1.1 派生方法一(类调用) 1.2 派生方法二(super) python从小白到总裁完整教程目录:https://blog.csdn.net/weixin_67859959/article/details/129328397?spm1001.2014.3001.5502 1.1 派生方法一(类调用) 指名道姓访问某一个类的函数&#xff1a;该方式与继承无关 class …

LabVIEW开发图像采集和基于颜色的隔离

LabVIEW开发图像采集和基于颜色的隔离 在当今的工业和工厂中&#xff0c;准确性和精度是决定特定行业生产力的两个重要关键点。为了优化生产力&#xff0c;各行各业正在从手动操作转向自动操作和控制。机器人技术在工业过程中的出现为人类提供了机械辅助。机器视觉在工业机器人…

STM32基于CubeIDE和HAL库 基础入门学习笔记:功能驱动与应用

文章目录&#xff1a; 一&#xff1a;LED与按键驱动程序 main.c 1.闪灯 led.h led.c 2.按键控制LED亮灭 key.h key.c 二&#xff1a;蜂鸣器与继电器驱动程序 main.c 1.蜂鸣器 buzzer.h buzzer.c delay.h delay.c 2.继电器 relay.h relay.c 三&#xff1…

CCLINK IE FIELD BASIC转MODBUS-TCP网关cclink与以太网的区别

协议的不同&#xff0c;数据读取困难&#xff0c;这是很多生产管理系统的难题。但是现在&#xff0c;捷米JM-CCLKIE-TCP通讯网关&#xff0c;让这个问题变得非常简单。这款通讯网关可以将各种MODBUS-TCP设备接入到CCLINK IE FIELD BASIC网络中&#xff0c;连接到MODBUS-TCP总线…

图片懒加载

什么是图片懒加载&#xff1f; 懒加载也叫做延迟加载、按需加载&#xff0c;指的是在长网页中延迟加载图片 数据&#xff0c;是一种较好的网页性能优化的方式。在比较长的网页或应用中&#xff0c; 如果图片很多&#xff0c;所有的图片都被加载出来&#xff0c;而用户只能看到可…

⌈算法进阶⌋图论::并查集——快速理解到熟练运用

目录 一、原理 1. 初始化Init 2. 查询 find 3. 合并 union 二、代码模板 三、练习 1、 990.等式方程的可满足性&#x1f7e2; 2、 1061. 按字典序排列最小的等效字符串&#x1f7e2; 3、721.账户合并 &#x1f7e1; 4、 839.相似字符串组&#x1f7e1; 5、 2812.找出最安全…