交换机学习笔记
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
交换技术
一、 以太网
以太网技术标准主要定义了数据链路层和物理层的规范。同一层次的技术标准包括令牌环网等等。TCP/IP 协议本身是与数据链路层和物理层无关的,TCP/IP 协议栈可以架构在以太网技术上,也可以是令牌环网。 LLC
MAC
物理层
数据链路层
以太网技术范围
以太网是广播网。半双工传输时采用CSMA/CD 技术,全双工模式不需要。
在采用CSMA/CD 传输介质访问的以太网中,任何一个CSMA/CD LAN 工作站在任何一时刻都可以访问网络。发送数据前,工作站要侦听网络是否堵塞,只有检测到网络空闲时,工作站才能发送数据。工作站在发送数据帧时需要等待一个时间片的时间,用来检测刚才发送出去的帧是否发生冲突。冲突发生时,采用时间指数退避算法,延后一段时间后在发送数据包。
一层设备:代表设备是HUB ,作用于7层网络模型的第1层,物理层,主要用于电信号的放大,以增加传输距离。一层设备不存在交换。以太网HUB 工作于半双工状态,HUB 连接的所有主机同时只能有一台主机发送以太帧,并且所有的主机都能够接收到这个帧,所有的端口处于同一个冲突域,一个广播域。
以太网帧结构:
最小以太帧为64字节,若小于64字节,则需要“填充”。
交换机基本结构
目前的L2/L3交换芯片一般采用分布式交换的体系结构,主要包括:CPU (带管理的交换机)或者EEPROM (不带管理的交换机)、交换结构、MAC 芯片、物理层芯片几个部分,如果是提供光口还需要光模块。其中的核心是MAC 芯片,实现了MAC 源地址学习和L2层以太帧转发,以及流量控制功能,如果是L3芯片,则在MAC 层芯片中还有路由模块。所有的2层地址学习、2层转发和3层路由都是分散在各个MAC 芯片中完成的。虽然地址学习是分散在各个芯片中完成的,但是系统中的所有MAC 芯片会通过内部通讯协议通过交换结构互相交换地址学习信息,使得整个系统中的地址学习表是统一的。
图中所示的是一个L2/L3层交换的MAC芯片,它主要包括了L2交换模块、L3路由模块、流分类模块和转发引擎等几个部分:
1、L2交换模块主要进行MAC地址学习和L2层转发判断
2、L3路由模块主要根据路由表进行L3层路由转发,如果是L2芯片则没有这个模块
3、流分类模块主要是对进入以太帧做QOS方面的调整或者流量限制。如果是L2层芯片,则可以根据源目的MAC地址、端口、VLAN号、以太帧中的COS位进行流控,降低优先级甚至丢弃,如果是L3层芯片还可以根据IP包中的TOS位、IP源目的地址、IP地址加上TCP/UDP的端口号,甚至根据应用层的信息进行QOS调整和流量控制。转发引擎主要是根据前面几个模块的结果做转发操作,输出队列的选择依据以太帧中的COS与优先级队列映射表或者Diffserv表等。
交换机构:总线结构、共享内存交换结构、CROSSBAR结构
两种转发方式:直接转发、存储转发
VLAN及三层交换
二层交换式网络中,整个网络是一个扁平的结构。网络全部由二层交换机构造起来,整个网络是一个大的广播域。
在以太网中,所谓广播域就是指在一个网络中,广播帧(目的MAC地址为ff-ff-ff-ff-ff-ff的帧)将要被转发的最大范围。
在二层交换机中,交换机仅根据MAC地址进行帧的选路和转发,当一个完整正确的以太网帧从一个交换机端口上被接收上来以后,交换机将在自己维护的MAC地址表中去查找地址,根据地址类型的不同和查找结果的不同情况,交换机对帧采取不同的处理。
单播帧(Unicast),目的地址在MAC地址表中存在:
按照目的地址在地址表中的表项所指的输出端口,将帧转发到相应的端口上。(单播MAC地址在地址表中只能指向一个输出端口)
单播帧(Unicast),目的地址在MAC地址表中不存在:
在广播域的所有端口上广播该帧
多播帧(Multicast),目的地址在MAC地址表中存在:
按照目的地址在地址表中的表项所指的输出端口,将帧转发到相应的端口上。(多播MAC地址在地址表中可以指向一个或一组输出端口)
多播帧(Multicast),目的地址在MAC地址表中不存在:
在广播域的所有端口上广播该帧
广播帧(Broadcast):
在广播域的所有端口上广播该帧
为了解决网络由广播导致的效率下降和安全性等问题,VLAN的概念被引入,在支持VLAN功能的交换机组成的网络中,每一个VLAN被设计为一个独立的广播域。
VLAN之间被严格地隔离开来,任何一个帧都不能从自己所属的VLAN被转发到其他的VLAN中。整个网络被划分为若干个规模更小的广播域,网络的广播被控制在相对比较小的范围内,提高了网络的带宽利用率,改善网络效率和性能。
每一个人都不能随意地从网络上的一点,毫无控制地直接访问另一点的网络或监听整个网络上的帧,隔离的广播域改善了网络的安全性。
对于VLAN概念的理解,有几点要注意:
分离了广播域;
2.单独的一个VLAN模拟了一个常规的交换以太网,因此VLAN将一个物理交换机分割成了一个或多个逻辑交换机;
3.不同VLAN之间通信需要三层参与;
4.当多台交换机级联时,VLAN通过VID来识别,该ID插入到标准的以太帧中,被称作tag;
5.大多数的tag都不是端到端的,一般在上行路上第一个VLAN交换机打tag,下行链路的最后一个VLAN交换机去除tag;
6.只有在一个数据帧不打tag就不能区分属于哪个VLAN时才会打上tag,能去掉时尽早要去掉tag;
7.最终,IEEE 解决了VLAN的tag问题。
VLAN间通信
用传统的路由器进行VLAN之间的路由在性能上还有一定的不足:由于路由器利用通用的CPU,转发完全依靠软件进行,同时支持各种通信接口,给软件带来的负担也比较大。软件要处理包括报文接收、校验、查找路由、选项处理、报文分片,导致性能不能做到很高,要实现高的转发率就会带来高昂的成本。由此就诞生了三层交换机,利用三层交换技术来进一步改善性能。
三层交换机的设计基于对IP路由的仔细分析,把IP路由中每一个报文都必须经过的过程提取出来,这个过程是个十分简化的过程:
IP路由中绝大多数报文是不包含IP选项的报文,因此处理报文IP选项的工作在多数情况下是多余的;
不同的网络的报文长度都是不同的,为了适应不同的网络,IP实现了报文分片的功能,但是在全以太网的环境中,网络的帧(报文)长度是固定的,因此报文分片的功能也是一个可以裁减的工作;
三层交换机采用了和路由器的最长地址掩码匹配不同的方法,使用精确地址匹配的方式处理,有利于硬件实现快速查找;
三层交换机采用了Cache的方法,把最近经常使用的主机路由放到了硬件的查找表中,只有在这个Cache中无法匹配到的项目才会通过软件去转发。这样,只有每个流的第一个报文会通过软件进行转发,其后的大量数据流则可以在硬件中得以完成。
三层交换机在IP路由的处理上做了以上改进,实现了简化的IP转发流程,利用专用的芯片实现了硬件的转发,这样绝大多数的报文处理都在硬件中实现了,只有极少数报文才需要使用软件转发,整个系统的转发性能能够得以成百上千倍地增加。相同性能的设备在成本上得以大幅度下降。交换机的报文转发
L2交换机中的3张表:
地址转发表