网络基础学习(3):交换机

1.交换机结构

(1)网线接口和后面的电路部分加在一起称为一个端口,也就是说交换机的一个端口就相当于计算机上的一块网卡。

如果在计算机上安装多个网卡,并让网卡接收所有网络包,再安装具备交换机功能的软件,那计算机也就可以作为一台交换机了。

(2)交换机的工作方式和网卡不同。网卡本身具有MAC地址,通过核对收到的包的接收方MAC地址判断是不是发给自己的,如果不是发给自己的则丢弃;相对地,交换机的端口不核对接收方MAC地址,而是直接接收所有的包并存放到缓冲区中。交换机的端口也不具有MAC地址。

一些集成了更多功能的交换机的端口可能会有MAC地址

(3)交换机的全双工模式可以同时发送和接收信号,集线器不具备这样的功能,因此交换机可以隔离冲突域,而集线器不可以

交换机也并不是固定为全双工模式,有一种自动协商的功能会让连接双方提前相互告知各自支持的工作模式,从而选择一个最佳方案,这时交换机就可能工作在半双工模式下

(4)交换机可以同时转发多路数据,而集线器不可以

2.交换机自动维护MAC地址表

2.1收到包自动记录

交换机收到某台设备发来的网络包时,就会在MAC表中记录该设备的连接的端口号及其MAC地址,这样当其他设备要与该设备通信时就可以找到它了

2.2定时删除记录

为了防止某些设备从端口断开导致通信失败,交换机会在大约几分钟后删除MAC地址表的记录。

如果在交换机删除MAC地址表记录以前就发生了通信错误,那只需重启交换机即可。

一些具备管理功能的交换机也可以手动维护MAC地址表

3.交换机的两种特殊操作

3.1当数据包的目的端口和其源端口相同

交换机会直接丢弃这个包,以避免通信错误

3.2当找不到MAC地址时

这时交换机会向除了源端口的所有端口转发此数据。相应的接收者会接收这个包,其他设备会忽略这个包。接收者收到数据包会发送响应信息,这时交换机就可以在MAC地址表中记录它的MAC地址了

*如果接收方地址是一个广播地址(ip:全255,MAC:全F),交换机也会向除了源端口的所有端口转发此数据

相关推荐
极客小云2 小时前
【ComfyUI API 自动化利器:comfyui_xy Python 库使用详解】
网络·python·自动化·comfyui
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [drivers][input]serio
linux·笔记·学习
符哥20082 小时前
用Apollo + RxSwift + RxCocoa搭建一套网络请求框架
网络·ios·rxswift
相思难忘成疾2 小时前
通向HCIP之路:第四步:边界网关路由协议—BGP(概念、配置、特点、常见问题及其解决方案)
网络·华为·hcip
君陌社区·网络安全防护中心3 小时前
基于Mininet模拟SDN环境
网络
Porco.w3 小时前
C#与三菱PLC FX5U通信
网络·c#
枷锁—sha3 小时前
Burp Suite 抓包全流程与 Xray 联动自动挖洞指南
网络·安全·网络安全
云飞云共享云桌面3 小时前
高性能图形工作站的资源如何共享给10个SolidWorks研发设计用
linux·运维·服务器·前端·网络·数据库·人工智能
爱学习的程序媛3 小时前
PSTN(公共交换电话网)的起源与发展
网络·信息与通信
roman_日积跬步-终至千里4 小时前
【Java并发】Java 线程池实战:警惕使用CompletableFuture.supplyAsync
java·开发语言·网络