网路交换器(俗称网络交换机,或者IP交换机)

2023-10-22 06:50

本文主要是介绍网路交换器(俗称网络交换机,或者IP交换机),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

網路交換器

网络交换机(英語:)是一种网络硬件,通过报文交换接收和转发数据到目标设备,它能够在计算机网络上连接不同的设备。一般也简称为交换机。

亚美亚(Avaya)的ERS 2550T-PWR 50端口的网络交换机

交换机是一种多端口的网桥,在数据链路层使用MAC地址转发数据。通过引入路由功能,一些交换机也可以在网络层转发数据,这种交换机一般被称为三层交换机或者多层交换机。

以太网交换机是网络交换机最常见的形式。第一个以太网交换机由Kalpana公司(1994年被思科收购)推出。在其他类型的网络中,交换机也普遍存在,如光纤通道、异步传输模式和InfiniBand。

中继器会在其所有端口转发相同的数据,让设备自行判断哪些是自己需要的数据,交换机则不同,它只会将数据转发到需要接收的设备。

工作原理

一个有交换机的网络

乙太網路交換器

交换机工作于OSI参考模型的第二层,即数据链路层。交换机内部的CPU会在每个端口成功连接时,通过将MAC地址和端口对应,形成一張MAC表。在今后的通讯中,发往该MAC地址的数据包将仅送往其对应的端口,而不是所有的端口。因此交换机可用于划分数据链路层广播,即冲突域;但它不能划分网络层广播,即广播域。

交换机对数据包的转发是建立在MAC地址——物理地址基础之上的,对于IP网络协议来说,它是透明的,即交换机在转发数据包时,不知道也无须知道信源机和信宿机的IP地址,只需知其物理地址。

交换机在操作过程当中会不断的收集资料去建立它本身的一个地址表,这个表相当简单,它说明了某个MAC地址是在哪个端口上被发现的,所以当交换机收到一个TCP/IP 封包时,它便会查看该数据包的目的MAC地址,核对自己的地址表以确认应该从哪个端口把数据包发出去。由于这个过程比较简单,加上这功能由一崭新硬件进行——ASIC,因此速度相当快。一般只需几十微秒,交换机便可决定一个IP封包该往哪里送。

如果目的地MAC地址不能在地址表中找到时,交换机会把IP 封包「扩散」出去,即把它从每一个端口中送出去,就如交换机在处理一个收到的广播封包时一样。二层交换机的弱点正是它处理广播封包的手法不太有效,比方说,当一个交换机收到一个从TCP/IP工作站上发出来的广播封包时,他便会把该封包传到所有其他端口去,哪怕有些端口上连的是IPX或DECnet工作站。这样一来,非TCP/IP节点的带宽便会受到负面的影响,就算同样的TCP/IP节点,如果他们的子网跟发送那个广播封包的工作站的子网相同,那么他们也会无缘无故地收到一些与他们毫不相干的网络广播,整个网络的效率因此会大打折扣。

工作方式

当一台交换机安装配置好之后,其工作过程如下:

  • 收到某网段(设为A)MAC地址为X的计算机发给MAC地址为Y的计算机的数据包。交换机从而记下了MAC地址X在网段A。这称为学习(learning)。
  • 交换机还不知道MAC地址Y在哪个网段上,于是向除了A以外的所有网段转发该数据包。这称为泛洪(flooding)。
  • MAC地址Y的计算机收到该数据包,向MAC地址X发出确认包。交换机收到该包后,从而记录下MAC地址Y所在的网段。
  • 交换机向MAC地址X转发确认包。这称为转发(forwarding)。
  • 交换机收到一个数据包,查表后发现该数据包的来源地址与目的地址属于同一网段。交换机将不处理该数据包。这称为过滤(filtering)。
  • 交换机内部的MAC地址-网段查询表的每条记录采用时间戳记录最后一次访问的时间。早于某个阈值(用户可配置)的记录被清除。这称为老化(aging)。

对于全交换(full-switch)局域网,交换机每个端口只连接一台设备,因此不会发生碰撞。交换机也不需要做过滤。

工作在OSI不同层级的交换技术

现代商业交换机主要使用以太网接口。提供多端口的二层桥接是以太网交换机的核心功能,而很多交换机也提供其他层级的服务,这种不仅仅提供了桥接功能的交换机也被称为多层交换机。多层交换机可以在许多层级上学习拓扑结构,也可以在一层或多层上进行转发。

一层

一层网络设备传输数据而不控制任何流量,比如集线器。任何进入端口数据包会被转发到除进入端口之外的其他所有端口。具体而言,即每个比特或码元被转发时是原封不动的。由于每个数据包被分发到所有端口,其冲突会影响到整个网络,进而限制了它的整体的能力。 到21世纪初,集线器和低端交换机的价格差异很小。[1]对于特定应用,集线器在一段时间内还是能够发挥作用的,比如给数据包分析器提供网络流量的副本。网络分流器还有交换机的端口镜像也可以实现同样功能。

二层

条目:橋接器

二层交换机依据硬件地址(MAC 地址)在数据链路层(第二层)传送网络帧。 二层交换机对于路由器和主机是“透明的”,主要遵从802.1d 标准。该标准规定交换机通过观察每个端口的数据帧获得源MAC 地址,交换机在内部的高速缓存中建立MAC 地址与端口的映射表。当交换机接受的数据帧的目的地址在该映射表中被查到,交换机便将该数据帧送往对应的端口。如果它查不到,便将该数据帧广播到该端口所属虚拟局域网(VLAN)的所有端口,如果有回应数据包,交换机便将在映射表中增加新的对应关系。当交换机初次加入网络中时,由于映射表是空的,所以,所有的数据帧将发往虚拟局域网内的全部端口直到交换机“学习”到各个MAC 地址为止。这样看来,交换机刚刚启动时与传统的共享式集线器作用相似的,直到映射表建立起来后,才能真正发挥它的性能。这种方式改变了共享式以太网抢行的方式,如同在不同的行驶方向上铺架了立交桥,去往不同方向的车可以同时通行,因此大大提高了流量。从VLAN的角度来看,由于只有子网内部的节点竞争带宽,所以性能得到提高。主机1 访问主机2 同时,主机3 可以访问主机4 。当各个部门具有自己独立的服务器时,这一优势更加明显。但是这种环境正发生巨大的变化,因为服务器趋向于集中管理,另外,这一模式也不适合Internet的应用。不同VLAN之间的通讯需要通过路由器来完成,另外为了实现不同的网段之间通讯也需要路由器进行互连。

三层

三层交换机则可以处理第三层网络层协议,用于连接不同网段,通过对缺省网关的查询学习来建立两个网段之间的直接连接。

三层交换机可以实现路由器的全部或部分功能,但只能用于同一类型的局域网子网之间的互连。这样,三层交换机可以像二层交换机那样通过MAC地址标识数据包,也可以像传统路由器那样在两个局域网子网之间进行功能较弱的路由转发,它的路由转发不是通过软件来维护的路由表,而是通过专用的ASIC芯片处理这些转发;

四层

四层交换机可以处理第四层传输层协议,可以将会话与一个具体的IP地址绑定,以实现虚拟IP [2] ;

七层

更加智慧的交换器,可以充分利用頻宽资源来过滤,识别和处理应用层数据转換的交换设备。

分类

带宽

网络交换机带宽分为:10Mb/s、100Mb/s、1Gb/s、10Gb/s、40Gb/s、100Gb/s。

Mbps换算MB/s:1Mbps=0.125MB/s。

参考文献

  1. ^  Matthew Glidden. . About This Particular Macintosh blog. October 2001 [June 9, 2011]. (原始内容存档于2019-01-06).
  2. ^  . 太平洋电脑网. 2004-06-08 [2014-11-18]. (原始内容存档于2014-02-28).

参见

  • 网络地址转换
  • 桥接器
  • 集线器
  • 路由器
  • 调制解调器
  • Wi-Fi
  • 无线接取器
  • 互联网历史
  • 电池交换机

这篇关于网路交换器(俗称网络交换机,或者IP交换机)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/259807

相关文章

Python中使用正则表达式精准匹配IP地址的案例

《Python中使用正则表达式精准匹配IP地址的案例》Python的正则表达式(re模块)是完成这个任务的利器,但你知道怎么写才能准确匹配各种合法的IP地址吗,今天我们就来详细探讨这个问题,感兴趣的朋... 目录为什么需要IP正则表达式?IP地址的基本结构基础正则表达式写法精确匹配0-255的数字验证IP地

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

SpringBoot使用OkHttp完成高效网络请求详解

《SpringBoot使用OkHttp完成高效网络请求详解》OkHttp是一个高效的HTTP客户端,支持同步和异步请求,且具备自动处理cookie、缓存和连接池等高级功能,下面我们来看看SpringB... 目录一、OkHttp 简介二、在 Spring Boot 中集成 OkHttp三、封装 OkHttp

Linux系统之主机网络配置方式

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、查看主机的网络参数1、查看主机名2、查看IP地址3、查看网关4、查看DNS二、配置网卡1、修改网卡配置文件2、nmcli工具【通用

使用Python高效获取网络数据的操作指南

《使用Python高效获取网络数据的操作指南》网络爬虫是一种自动化程序,用于访问和提取网站上的数据,Python是进行网络爬虫开发的理想语言,拥有丰富的库和工具,使得编写和维护爬虫变得简单高效,本文将... 目录网络爬虫的基本概念常用库介绍安装库Requests和BeautifulSoup爬虫开发发送请求解

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重

Linux配置IP地址的三种实现方式

《Linux配置IP地址的三种实现方式》:本文主要介绍Linux配置IP地址的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录环境RedHat9第一种安装 直接配置网卡文件第二种方式 nmcli(Networkmanager command-line

Linux虚拟机不显示IP地址的解决方法(亲测有效)

《Linux虚拟机不显示IP地址的解决方法(亲测有效)》本文主要介绍了通过VMware新装的Linux系统没有IP地址的解决方法,主要步骤包括:关闭虚拟机、打开VM虚拟网络编辑器、还原VMnet8或修... 目录前言步骤0.问题情况1.关闭虚拟机2.China编程打开VM虚拟网络编辑器3.1 方法一:点击还原VM

Nginx实现动态封禁IP的步骤指南

《Nginx实现动态封禁IP的步骤指南》在日常的生产环境中,网站可能会遭遇恶意请求、DDoS攻击或其他有害的访问行为,为了应对这些情况,动态封禁IP是一项十分重要的安全策略,本篇博客将介绍如何通过NG... 目录1、简述2、实现方式3、使用 fail2ban 动态封禁3.1 安装 fail2ban3.2 配