中继器、集线器、网桥、交换机、路由器和网关

目录

  • 前言
  • 一、中继器、集线器
    • 1.1 中继器
    • 1.2 集线器
  • 二、网桥、交换机
    • 2.1 网桥
    • 2.2 交换机
  • 三、路由器、网关
    • 3.1 路由器
    • 3.2 网关
  • 总结

前言

理解这些设备的关键是他们运行在不同的层次上。之所以存在不同层的问题,是因为不同的设备使用不同的信息来决定如何交换。在典型的场景中,用户生成某些数据,然后将这些数据发送给一台远程的机器。这些数据先被传输给传输层,传输层会加上一个头(比如TCP)头,然后将结果单元往下传递给网络层。网络层也会加上一个头,形成网络层数据包(比如,形成一个IP包)。然后,该分组再往下到达数据链路层,数据链路层加上它自己的头和校验和(CRC)并将结果帧交给物理层传送出去。
在这里插入图片描述

一、中继器、集线器

1.1 中继器

中继器是模拟设备,主要用来处理自己所连线缆上的信号。在一个线缆上的信号被清理、放大,然后在被放到另一个线缆上。中继器并不理解帧、数据包和帧头,它们只知道把比特编码成电压的符号。例如,在经典以太网中,为了将电缆的最大长度从500米扩展到2500米,以太网允许最多使用4个中继器来增强信号。

1.2 集线器

集线器有许多条输入线路,它将这些输入线路连接在一起。从任何一条线路上到达的帧都被发送到所有其他的线路上。如果两帧同时到达,它们将会冲突,就好像它们在同一根同轴电缆上遇到后发生碰撞一样。连接到同一个集线器上的所有线路必须以同样的速度运行。集线器与中继器不同,它们(通常)不会放大入境信号,并且可以有多个输入线路。但是,集线器与中继器一样,都属于物理层设备,因而不会检查链路层地址,也不任何方式使用该地址。

二、网桥、交换机

2.1 网桥

网桥是一种工作在数据链路层的网络设备,通过检查数据链路层地址来转发帧。
在这里插入图片描述

网桥连接两个或多个局域网。与集线器一样,一个现代网桥有多个端口,通常具有4~48条某个类型的输入线。与集线器不同的是,网桥的每个端口被隔离成它自己一个冲突域;如果端口是全双工的点到点线路,则需要用到CSMA/CS算法。
两个局域网桥接在一起的拓扑情况分两种情况:

  1. 连接两个多点LAN的网桥
    在这里插入图片描述
图一
  1. 连接7个点到点站点的网桥(包括集线器)
    在这里插入图片描述
图二

每个网桥工作在混杂模式下,它接受隶属于每个端口的站发送的帧。网桥必须决定是否转发或丢弃收到的每一帧。
对于一个入境帧,它在网桥中的路由过程取决于这个入境帧从哪个端口来(源端口),以及它要往哪个目标地址去(目标端口)。整个转发过程如下:

  • 如果去往目标地址的端口与源端口相同,则丢弃该帧
    例如,
    在图一的拓扑结构中,站A往站B发送一个帧,网桥B1根据源端口和目标端口发现,该帧的去往目标地址的端口与源端口相同,则丢弃该帧。
    在图二的拓扑结构中,在点对点的链接中,用集线器把一组计算机连接到网桥,站E和站F都连接到集线器H1,进而在连接到网桥B2。如果站E发送一个帧给站F,根据集线器的工作方式,集线器会将收到的每一帧往其每一个端口发送帧,即集线器将中继该帧到B2以及F。该帧最终会从端口2到达网桥B2,网桥检查该帧的目标地址的端口和源端口时,发现该帧的目标地址的端口和源端口相同,网桥B2只需丢弃该帧。
  • 如果去往目标地址的端口与源端口不同,则转发该帧到目标端口
  • 如果目标端口未知,则使用泛洪法,将帧转发到所有的端口,除了入境帧的端口

那么,问题来了,网桥是如何找到目标地址和端口的对应关系呢?
执行这项工作的一个简单方法是为每个网桥配备一个大的哈希表。该表列出每个可能的目的地以及对应的输出端口。
在这里插入图片描述

当网桥第一接入网络时,哈希表为空。此时,网桥会采用一种泛洪算法(flooding algorithm):对于每个发送未知目的地址的入境帧,网桥会将该帧输出到所有的端口,该帧的输入端口除外。随着时间的推移,网桥将会学习到每个目标地址在哪里。一旦知道了一个目标地址,以后发给该地址的帧会被放到正确的端口,而不再使用泛洪。
网桥所用的算法是后向学习法(backward learning)。网桥工作在混杂模式下,它可以看到每个端口上发送的所有帧。通过检查这些帧的源地址,网桥就可获得通过那个端口能访问到哪些机器。
其工作流程如下:
在这里插入图片描述

当打开、关闭或者移动机器和网桥时,网络的拓扑结构会发生变化。为了处理这种动态的拓扑结构,一旦构造出了哈希表项后,帧的到达时间也被记录在相应的表项中。当一帧到达时,如果源地址已在表中,那么对应表项中的时间被更新为当前时间。因此,与每个表项相关联的时间值反映了网桥最后看到该机器发出一帧的时间。
在网桥中,有一个进程定期扫描哈希表,并且将时间值在几分钟以前的表项都清除。

2.2 交换机

交换机是现代网桥的另一个称呼。它们的差异更多的体现在市场上而不是技术方面。
开发网桥时正是经典以太网被广泛使用之际,网桥倾向于连接相对数目较少的局域网,因而端口数也相对较少。现代交换机的安装都使用了点对点连接(例如双绞线),单个计算机通过双绞线直接插入到交换机端口,因此交换机的端口数往往比较多。
“交换机”也可作为一般术语使用。使用网桥,功能是明确的。另一方面,交换机可以指以太网交换机,也可以指一个完全不同的转发决策设备,例如电话交换机。

三、路由器、网关

3.1 路由器

路由器(Router)是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。
路由器最重要的功能就是路由,路由是指路由器接收到数据时选择最佳路径将数据穿过网络传输到目标地址的行为,每个路由器负责自己的本地数据的路由或转发,通过多个路由器依次接力将数据最终传递到目标主机,路由的工作流程包括路由选择和路由转发两个方面。
路由器工作在网络层,用来跨网段通信,路由器具有判断网络地址和选择IP路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网,路由器只接受源站或其他路由器的信息,属网络层的一种互联设备,因此路由器是互联网中必不可少的网络设备之一,主要分为本地路由器和远程路由器。
路由器包含LAN口和WAN口。LAN口用于连接家庭设备,WAN口用于接入运营商网络,以连接互联网。
在这里插入图片描述

3.2 网关

当忽略路由器的WAN口,路由器就是一台交换机。当对WAN口进行讨论时,需要引入一个概念,叫做网关。
在这里插入图片描述
那么网关到底是什么呢?在回答这个问题之前,先介绍如何根据一个IP地址和子网掩码得到一个子网
32位的IP地址由高位的可变长网络和低位的主机两部分数据组成。
把可变长网络全部设置为1,主机全置为0,则得到子网掩码。
在这里插入图片描述
IP地址&子网掩码 = 网络部分
根据网络部分判断两个IP地址是否属于同一子网。
在这里插入图片描述
在知道如何判断一个IP地址是属于哪个子网之后,下面开始介绍网关的作用。
两个子网需要通信时,不可以直接进行通信,需用通过网关才可以通信。网关是一个运行在较高层次的转发进程。路由器可以担任网关的角色。路由器需要有两个网卡,网卡1连接一个子网,网卡2连接另一个子网。
在这里插入图片描述
下面举个例子说明网关的工作过程。
子网1的计算机A,IP地址为192.168.1.10/24,向另一台计算机B,IP地址为192.168.2.8/24,发送数据时,首先,计算机A会判断另一台计算机是否在同一个子网中,如果属于同一子网,则直接从网卡1将数据发出;如果不是,则将目标mac地址改为网关mac,然后将数据发送给网关。网关得到数据后,根据路由表查询得到计算机B属于子网2,网关修改数据的目标mac地址为计算机B的mac地址,将源mac地址修改为自己的mac,然后从子网2的网卡发出。
在这里插入图片描述

总结

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

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

相关文章

【Hive SQL 每日一题】统计指定范围内的有效下单用户

文章目录 测试数据需求说明需求实现 前言:本题制作参考牛客网进阶题目 —— SQL128 未完成试卷数大于1的有效用户 测试数据 -- 创建用户表 DROP TABLE IF EXISTS users; CREATE TABLE users (user_id INT,name STRING,age INT,gender STRING,register_date STRING…

外卖点餐系统 springboot+vue+element-ui

免费获取方式↓↓↓ 项目介绍038: http://localhost:8080/ 账号:weiguanke 123 系统登陆后展示 用户可视界面 – 登录页面 – 首页: – 店铺查找页面: 店铺查找 – 店铺页面 店铺管理者可视页面 – 店铺页面 店铺管理员…

XCP协议系列介绍02-基于ASAP2 Tool-Set生成A2l介绍

本文框架 1. 前言2. ASAP2 Tool-Set系统介绍2.1 ASAP2 Creator介绍2.2 ASAP2 Updater介绍2.3 ASAP2 Merger介绍2.4 ASAP2 Comparer及Checker介绍2.5 ASAP2 Modifier介绍2.6 ASAP2 Studio介绍 3. 项目实操说明3.1 项目实操建议3.2 工具下载地址及使用 1. 前言 在XCP观测及标定整…

【计算机组成原理】1.1计算机的软硬件组成(记录学习计算机组成原理)

文章目录 1.早期的冯诺依曼机2.早期冯诺依曼机的基本运行框图3.早期冯诺依曼机的特点4.现代计算机的结构5. 小结 本次及以后有关于计算机组成原理的文章,旨在做学习时的记录和知识的分享。不论是应对期末考试,还是考研都是很有帮助的。希望大家多多支持更…

基于Android Studio 实现的鲜花(购物)商城App--原创

一、高质量源码(非开源) 关注公众号:《编程乐学》 后台回复:24060201 二、项目演示视频 基于Android Studio 实现的鲜花商城App--原创 三、开发环境 四、设计与实现 1.启动页 启动页我们需要用到倒计时和跳转功能。 2.注册登录 …

chat3-Server接收数据并转发给所有Client

本文档描述了Server端接收到Client的消息并转发给所有客户端或私发给某个客户端 服务端为当前客户端创建一个线程,此线程接收当前客户端的消息并转发给所有客户端或私发给某个客户端 一、Server: 1.1.Server端添加将消息转化给客户端的代码。有用集合保存输出流,…

学习小记录——python函数的定义和调用

今日小好运,未来有好运。🎁💖🫔 分享个人学习的小小心意,一起来看看吧 函数的定义 函数通常来说就是带名字的代码块,用于完成具体的工作,需要使用的时候调用即可,这不仅提高代码的…

[数据集][目标检测]旋风检测数据集VOC+YOLO格式157张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):159 标注数量(xml文件个数):159 标注数量(txt文件个数):159 标注类别…

音频信号分析与实践

音频信号分析与实践课程,方便理解音频信号原理和过程 1.音频信号采集与播放 两种采样模式和标准的采样流程 人说话的声音一般在2kHz一下: 采样频率的影响:采样率要大于等于信号特征频率的2倍;一般保证信号完整,需要使用10倍以上的…

unity2020打包webGL时卡进程问题

我使用的2020.3.0f1c1,打包发布WEB版的时候会一直卡到asm2wasm.exe这个进程里,而且CPU占用率90%以上。 即使是打包一个新建项目的空场景也是同样的问题,我尝试过一直卡在这里会如何,结果还真打包成功了。只是打包一个空场景需要20…

..\MYLIB\modbus.c(49): error: #84: invalid combination of type specifiers

在keil中添加相应的文件出现以下问题时 ..\MYLIB\modbus.c(49): error: #84: invalid combination of type specifiers 是由于:在定义的函数体的前面有一个变量类型

2024年西安交通大学程序设计竞赛校赛

2024年西安交通大学程序设计竞赛校赛 文章目录 2024年西安交通大学程序设计竞赛校赛D瑟莉姆的宴会E: 雪中楼I: 命令行(待补)J:最后一块石头的重量(待补)K: 崩坏:星穹铁道(待补)M:生命游戏N: 圣诞树 D瑟莉姆的宴会 解题思路: ​ …

模拟建造游戏:城市:天际线Cities: Skylines for Mac/win中文原生版

《城市:天际线》(Cities: Skylines)是一款由Colossal Order开发,Paradox Interactive发行的城市建设模拟游戏。这款游戏于2015年首次发布,迅速赢得了玩家和评论家的好评,并成为了备受欢迎的城市建设游戏之一…

java代码审计之fastjson反序列化漏洞

fastjson反序列化漏洞分析 Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。Fastjson 可以操作任何 Java 对象,即使是一些预先存在的没有源码的对象。该产品主要提供了两个接口&…

STM32作业实现(六)闪存保存数据

目录 STM32作业设计 STM32作业实现(一)串口通信 STM32作业实现(二)串口控制led STM32作业实现(三)串口控制有源蜂鸣器 STM32作业实现(四)光敏传感器 STM32作业实现(五)温湿度传感器dht11 STM32作业实现(六)闪存保存数据 STM32作业实现(七)OLED显示数据 STM32作业实现(八)触摸按…

Mistral大模型:Getting Started With Mistral

Getting Started With Mistral 本文是学习 https://www.deeplearning.ai/short-courses/getting-started-with-mistral/ 这门课的学习笔记。 What you’ll learn in this course In this course, you’ll access Mistral AI’s collection of open source and commercial mod…

物联网实战--平台篇之(十二)设备管理前端

目录 一、界面演示 二、设备列表 三、抖动单元格 四、设备模型 五、设备编辑 本项目的交流QQ群:701889554 物联网实战--入门篇https://blog.csdn.net/ypp240124016/category_12609773.html 物联网实战--驱动篇https://blog.csdn.net/ypp240124016/category_12631333.htm…

Java利用POI绘制表格

前提需求 最近公司要求写一些记录的表格,并且带有导出功能。再深入学习后,表格的底层其实就是list遍历塞值,导出功能的话可以由前端,后端实现,但技多不压身嘛,这里我自己就写了后端的导出功能,…

day-37 电话号码的字母组合

思路 设置一个char型的二维数组,每次从号码对应的子母中选出一个,拼接在一起即可 解题方法 注意:有的数字对应三个字母,有的对应四个字母 Code class Solution {public char arr[][]{{a,b,c, },{d,e,f, },{g,h,i, },{j,k,l, },…

虚拟现实环境下的远程教育和智能评估系统(三)

本周继续进行开发工具的选择与学习,基本了解了以下技术栈的部署应用; 一、Seata: Seata(Simple Extensible Autonomous Transaction Architecture)是一款开源的分布式事务解决方案,旨在提供高性能和简单易…