




已阅读5页,还剩71页未读, 继续免费阅读
(计算机系统结构专业论文)基于end模型的三层交换机驱动的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
电子科技大学硕士论文一基于e n d 模型的三层交换机驱动的设计与实现 摘矍 随着互联网的迅速发展,人们对网络带宽,网络性能和网络管理的要求也都 愈来愈高。传统的二层以太网交换机已不能满足网络互连的需求;而与此同时, 三层以太网交换机以其价格和性能上的优势成为必不可少的网络互连设备。因而 对于三层交换机的设计与研究也成为一个热点。对于三层交换机设计而言,不但 其主要的- - _ 三层报文线速转发功能基本上都是依靠硬件来完成的:而且它的网 络管理功能也要依靠管理交换机硬件来实现。而所有这些都需要交换机驱动的支 持,因而交换机驱动的设计是交换机系统设计过程中的一个关键技术,它设计的 好坏将对整个交换机系统的性能产生至关重要的影响。 结合上述背景,本文首先介绍了在这种需求下以太网技术的发展历程以及现 状,并在此基础上对三层交换技术和第三层交换机工作原理进行了阐述。然后, 详细分析了b c b l 5 6 1 5 芯片体系结构和数据转发流程,并根据芯片特性给出了一个 具体的三层交换交换机的软硬件系统。以此为基础,结合嵌入式驱动开发特点, 针对交换机驱动的功能需求,设计出符合此三层交换机系统的驱动子系统的功能 模块划分方案:将驱动分成硬件抽象层,b s p 和s s p 三个模块。而后根据各模块 的功能和在交换机体系结构中的层次设计出不同的驱动技术来实现。在设计和实 现过程中仔细分析了各模块的内部结构及初始化流程,并详细论述了v x w o r k s 环 境下交换机驱动程序的设计原理及实现方法。通过使用这种层次化模块结构设 计,使得上层协议模块与交换机硬件充分隔离,为交换机软件系统的移植和扩展 提供了良好的基础。 本文通过设计并实现了一个能驱动交换机硬件,屏蔽底层硬件操作细节,为 上层软件模块提供统一硬件控制接口的交换机驱动子系统;详细阐述基于s u b e n d 分层模型的交换机驱动程序的设计思想及实现过程;其中,重点描述了交换 机驱动核心部分;s s p 在e n d 模型中的具体设计与实现。同时还对硬件抽象,高 效收发包,任务调度机制,接口设计,函数挂接等技术的实现进行了研究和探讨。 最后,根据交换机未来的发展应用,提出了今后交换机驱动研究与设计的重点。 关键词:以太网,三层交换机,s s p ,b s p ,硬件抽象层,增强网络驱动( e n d ) 。 电子科技大学硕士论文一基于e n d 模型的三层交换机驱动的设计与实现 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fi n t e m e t ,p e o p l eh a v em o r e u r g e n tn e e d s o f n e t w o r ki nt h ea s p e c to fb a n d w i d t h ,p e r f o r m a n c ea n dm a n a g e m e n t a tt h e s a m et i m e ,t h el a y e r2s w i t c hc a n tc a t c h u p w i t ht h e s e r e q u i r e m e n t s 。f o r t h e a d v a n t a g eo f i t s p r i c e a n dp er f o r m a n c e ,t h el a y e r3s w i t c hi s b e c o m i n g e s s e n t i a ln e t w o r ki n t e r c o n n e c t i o ne q u i p m e n t a n dt h er e s e a r c ha n dt h ed e s i g n o fl a y e r3s w i t c hi sb e c o m i n gaf o c u sn o w a d a y s 。f o r l a y e r 3s w i t c h ,n o t o n l y i t sl i n e - r a t e l a y e r2s w i t c h i n ga n d l i n e r a t e l a y e r3r o u t i n g a l l d e p e n d0 1 3 h a r d w a r e ,b u ti tn e e d st om a n a g es w i t c hh a r d w a r ei t s e l f a l lt h e s ed e m a n d s n e e dt h es u p p o r to ft h es w i t c hd r i v e r ,w h i c hi st h ek e ye l e m e n tf o rt h ew h o l e s w i t c hs y s t e m a c c o r d i n g t ot h ea b o v e ,t h i st h e s i sf i r s td e s c r i b e st h ed e v e l o p m e n tp r o c e s s a n dt h ec u r r e n ts i t u a t i o no fe t h e m e tt e c h n o l o g y ,i n t r o d u c e st h ep r i n c i p l ea n d t e c h n o l o g yo fl a y e r3s w i t c h i n g t h e n i tm a k e sad e t a i l e d a n a l y s i s o ft h e s w i t c h i n gs t r u c t u r ea n d t h ed a t af l o w so f t h es w i t c hc h i pb c m 5 6 1 5 a c c o r d i n g t ot h e s e a n a l y s i s ,t h i s t h e s i sd e s c r i b e st h ei m p l e m e n t a t i o no fal a y e r3r o u t i n g s w i t c hb a s e do nb c m 5 6 1 5 t h es w i t c hd r i v e rs y s t e mi sd i v i d e di n t ot h r e ep a n s :h a r d w a r ea b s t r a c t l a y e r ,s s p a n db s p a n da c c o r d i n gt ot h ef u n c t i o no fd i f f e r e n tm o d u l e sa n d t h e i rl e v e l si ns w i t c h ss t r u c t u r e ,e v e r ym o d u l ei si m p l e m e n t e dw i t hd i f f e r e n t t e c h n o l o g y i nt h ed e s i g na n di m p l e m e n t a t i o n ,w e a n a l y z et h ei n n e rs t r u c t u r e o ft h em o d u l ea n dt h ei n i t i a l i z er o u t i n e ,d e s c r i b et h ed e s i g np r i n c i p l ea n d i m p l e m e n t i n gm e t h o d o fs w i t c hd r i v e ri nv x w o r k sc i r c u m s t a n c e b yu s i n gt h i s l a y e r - m o d u l ed e s i g n ,i tc a n i s o l a t et h eu p p e rp r o t o c o lm o d u l ef r o mt h es w i t c h h a r d w a r e ,a n dl e tt h es w i t c hs o f t w a r es y s t e mh a v eg o o dp o r t a b i l i t y a n d s c a l a b i l i t y t h r o u g hd e s i g n i n ga n di m p l e m e n t i n gt h es w i t c h d r i v e rs y s t e mt h a tc a n d r i v et h es w i t c hh a r d w a r e ,s h i e l dt h eo p e r a t i o no fh a r d w a r e ,a n dp r o v i d e t h e i i 电子科技大学硕士论文一基于e n d 模型的三层交换机驱动的设计与实现 i n t e r f a c ec o n t r o l l i n gh a r d w a r e ,t h i sp a p e rd e s c r i b e st h ed e s i g ni d e aw h i c hi s b a s e di ns u be n dm o d e la n dt h ei m p l e m e n t a t i o no ft h es w i t c hd r i v e rs o f t w a r e i nd e t a i l a n di ta l s od e s c r i b e st h ei m p l e m e n t i n go fs s pm o d u l ei ne n d m o d e l i nt h ep r o c e s s ,w eh a v ed o n el o t so fr e s e a r c ho fs w i t c hi nt h ea s p e c to f h a r d w a r ea b s t r a c t i o n ,r e c e i v i n ga n ds e n d i n gp a c k e ti n h i g he f f i c i e n c y , s c h e d u l i n gt a s k ,d e s i g n i n g i n t e r f a c ea n dr o l l b a c kf u n c t i o ne t c a tl a s t , a c c o r d i n gt ot h et r e n do ft h ed e v e l o p m e n ta n dt h ea p p l i c a t i o no fs w i t c h ,w e p o i n to u tt h ef o c u sp o i n to ft h es t u d ya n dd e s i g no ft h es w i t c hd r i v e r i nt h e _ u t lj r e k e yw o r d s :e t h e r n e t ,l a y e r 3s w i t c h ,s s p ,b s p ,h a r d w a r ea b s t r a c tl a y e r , e n h a n c e dn e t w o r kd r i v e r ( e n d ) i i i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名: 盔望量 日期:l 侔肛月。,e t 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名: 叠盘查: _ 1 相种 年,月v j 日 第一章绪论 1 1 以太网发展简介 第一章绪论 以太网( e t h e r n e t ) 技术是在2 0 世纪7 0 年代初发展起来的一种局域网( l a n ) 技 术。它最早是在1 9 7 3 年由x e r o x 公司的p a r c 研究中心提出,并于1 9 7 5 年研制成功。 而后从1 9 7 9 年到1 9 8 2 年,由d e c 、i n t e l $ 口x e r o x 三家公司联合制定了以太网最初 的技术规范d i x ,也就是l o m b 以太网“蓝皮书”。以此为基础形成了i e e e8 0 2 3 标准,从此以后i e e e8 0 2 委员会就成了以太网标准的主要制订者。在以后3 0 年中 以太网技术不断发展,成为迄今最广泛应用的局域网技术,同时产生了多种技术 标准。1 9 9 5 年,i e e e 正式通过8 0 2 3 u 快速以太网( 即百兆以太网) 标准,以太网 技术实现了第一次飞跃。1 9 9 8 年8 0 2 3 z 千兆以太网标准、2 0 0 2 年8 0 2 3 a e 万兆以 太网标准的正式发布,是以太网的第二次和第三次飞跃。从上世纪9 0 年代以来, 阻太网得到了前所未有的规模应用。 由于以太网技术具有共享性、开放性、结构简单、算法简洁、良好的兼容性 和平滑升级功能,并且传输带宽也在大幅提升。所以,以太网技术成为当今最重 要的一种局域网建网技术,并且已经在局域网领域取得霸主地位,在全球数据网 络中,以太网在数量上占有绝对的优势。同时随着干兆以太网的成熟和万兆以太 网的出现,加上低成本在光纤上直接架构干兆网和万兆网技术的成熟( o p t i c a l e t h e r n e t ) ,以及一些新的相关标准及协议,如快速生成树( 8 0 2 1 w ) ,v l a n 等的 出现,以太网的应用领域已开始逐步扩展到城域网( m a n ) 和广域网( w a n ) 领域。 从以太网的发展过程来看,可分成如下四个阶段: 1 传统以太网阶段( 1 9 7 5 1 9 9 5 ) 此阶段主要采用c s 姒c d 作为介质访问控制方法,标准带宽为l o m b p s 。传输 介质主要有细缆的l o b a s e 2 、粗缆的l o b a s e 5 和双绞线的l o b a s e t 。此时以太网组 网采用l a n 桥接技术,其网络拓扑结构是总线型,主要以半双工模式工作。 2 快速以太网( 1 9 9 5 1 9 9 7 ) 1 9 9 5 年。i e e e 正式通过了8 0 2 3 u 快速以太网标准,作为现行i e e e8 0 2 3 标准 的补充。快速以太网保留了传统以太网的所有特征,即相同的帧格式、相同的介 第一章绪论 质访问方法( c s m a c d ) 等。快速以太网标准主要包括采用双绞线作为传输介质 l o o b a s e t x 和l o o b a s e t 4 以及采用多模光纤作为传输介质的l o o b a s e f x 。此阶段 的组网技术主要采用交换技术,网络拓扑结构主要是星型结构,工作模式也开始 逐步采用全双工模式。同时,为了兼容传统以太网工作模式,快速以太网引入了 自协商来减轻网络管理员的工作负担。 3 千兆以太网( 1 9 9 8 2 0 0 1 ) i e e e 在1 9 9 8 年通过了8 0 2 3 z 千兆以太网标准,其后又完成了使用长距离光纤 和非屏蔽双绞线的千兆以太网标准i e e e8 0 2 3 a b 。于兆以太网仍然基于以太网协 议,其帧格式、帧长度以及介质访问方法仍然与传统以太网和快速以太网的标准 兼容,但其传输速率达到了1 g b p s 。千兆以太网标准主要包括采用光纤作为传输 介质的1 0 0 0 b a s e x 和采用非屏蔽双绞线作为传输介质的1 0 0 0 b a s e t 。在此期间三 层交换技术开始在以太网组网过程中应用起来。由于受到冲突窗口的限制,千兆 以太网最好以全双工方式进行通信,否则通信距离将受到限制。 4 万兆以太网( 2 0 0 2 一至今) 万兆以太网标准8 0 2 3 a e 于2 0 0 2 年6 月发布,是当前最新的以太网技术,其传 输速率可达到l o g b p s 。和以往的以太网技术一样,万兆以太网仍然采用i e e e 8 0 2 3 标准的以太网介质访问控制方法( c s m a c d ) 、帧格式和帧长度。万兆以太 网以全双工模式工作,从而提高了网络的整体性能和通信带宽,满足了主干网络 的应用需要。同时,它以更长的传输距离支持网络,目前,采用单模光纤作为传 输介质至少可以达到4 0 公里的传输距离。万兆以太网中引入了与s 0 n e t s d h 传输 速率、格式都匹配的广域网接口( w i s ) ,w 1 8 把交换机或路由器这些数据设备连接 至u s o n e t s d h 或光纤网上,这样以太网之间的连接可以简单地跨越这些网络。 1 2 以太网原理及现状 如前所述,传统以太网属于共享型局域网。网络上所有节点共享整个网络的 带宽。所以,以太网应当采用某种介质访问控制方式来保证任何节点都可以访问 网络。以太网采用c s m a c d ( 载波监听多路存取冲突监测) 协议判断一个以太网 节点是否被允许在共享信道上发送数据。c s m a c d ( 载波监听多路存取和冲突检 测) 具体工作原理如下: 第一章绪论 载波监听:当一节点( 包括服务器和工作站) 要向另一节点发送数据时,先 监听网络信道上有无数据正在传输,信道是否空闲,以确保现在没有其它节 点在使用共享介质。 信道忙碌:如果发现网络信道正忙,则等待并一直监听信道,直到发现网络 信道空闲为止。 信道空闲:如果发现网络信道空闲,则向网上发送数据。 冲突检测:节点发送数据的同时,还要监听网络信道,检测是否有另一节点 同时也在发送信息。如果有,两个节点发送的数据就会产生“碰撞”( 即冲 突) ,从而使数据帧被破坏。 遇碰停发:如果节点在发送数据期间检测到网上的冲突,则立即停止该次网 络数据发送,并向网上发送一个“冲突”信号,让其它节点也发现该冲突, 从而丢弃可能一直在接收的受损的数据帧。 多路存取:如果发送数据的节点因“碰撞”而停止发送,则等待一段时间后, 再回到第一步,重新开始载波监听和发送,直到数据成功发送为止。 所有共享型以太网上的节点,都是经过上述六步骤,进行数据传输的。由于 c s m a c d 介质访问控制方式只允许在同一时间里,只能有一个节点发送数据,其 它节点只能监听和等待,否则就会产生“碰撞”。所以当共享型以太网节点增加 时,每个节点在发送信息时产生“碰撞”的概率增大,当节点增加到一定数目后, 网站发送信息产生的“碰撞”会越来越多,想发送数据的节点不断地进行:监听 一 发送一 碰撞一 停止发送一 等待一 再监听一 再发送反复的冲突碰撞 使节点大部分时间在等待网络信道的空闲,网络信道则大部分时间充斥着冲突信 息,真正传输数据的时间大大减少,使网络效率低下。 为了解决共享型以太网的问题,于是产生了交换式以太网。交换式以太网的 特点是利用交换技术将以太网划分成两个或多个网段,网段之间通过网桥或交换 机连接。这样就可以把一个大的网络划分成几个独立的冲突域,就有效地减少了 网络中的碰撞,避免广播风暴,减少错误包的出现。同时也实现了让多个节点同 时使用网络。这样一来,每个节点就可以独自享用网络的传输速率而不用去考虑 其他节点的使用情况,因此网络的实际带宽得到大幅度提高,可以实现高速的数 据传输。 3 第一章绪论 由于交换式以太网主要是利用交换机来分割以太网,因而其工作原理主要就 是基于交换机来进行工作的。交换机检查每一个收到的数据包,并对数据包进行 相应的处理。在检测到网络节点间有数据传输的要求后,交换机在源节点和目的 节点之间建立独立的物理连接,这条连接是完全私用的,因而能有效的避免数据 碰撞。同时交换机还具有自动学习功能,可自动建立使用网段的地址信息,保存 每一个网段上所有节点的m a c 地址,并进行流量控制。当交换机接收到一个数 据包之后,根据自身保存的网络地址表检查数据包内包含的目的和源地址。如果 目的地址和源地址属于同一网段,该数据包就被交换机过滤,不会转发到其它网 段;如果目的地址与源地址处于不同网段,该数据包则被交换机转发到目的网段。 1 3 课题完成工作及论文组织结构 随着以太网技术的发展,对于以太网互联设备的提出了更高的要求,第三层 交换机也就在此背景下应运而生。本论文的工作就是在这种需求驱动下,结合具 体的第三层交换机研发而开展的。主要就是根据具体的第三层交换机体系结构和 交换芯片b c m 5 6 1 5 的特征,采用分层思想的s u be n d 模型来设计并实现三层交换 机驱动子系统,并重点对交换芯片驱动的设计和实现进行了详细的描述。本文共 分六个部分: 第一章介绍了以太网的发展、原理和现状作了简单描述。 第二章介绍了交换技术、交换机工作原理及其功能,并对第三层交换原理和 技术进行了详细的描述和分析,并在此基础上给出了三层交换机的实现原型。 第三章对b c m 5 6 1 5 交换芯片的体系结构和数据转发流程作了详细的分析,并 据此给出三层路由交换机的硬件体系结构和软件系统设计方案。 第四章在上一章的基础上,介绍了基于e n d 模型的第三层交换机驱动予系统 总体设计,并对硬件抽象层和b s p 模块的具体设计和实现进行了详细描述。 第五章详细描述s s p 的设计及实现。主要包括三个子模块:初始化,收发包 和控制管理接口的具体设计与实现。 第六章对交换机驱动设计进行总结,并根据交换机发展趋势对未来驱动设计 作出展望。 4 第二章第三层交换机原理及实现 第二章第三层交换机原理及实现 2 1 交换机概述 2 1 1 交换的概念 交换( s w i t c h i n g ) 是按照通信两端传输信息的需要,用人工或设备自动完 成的方法,把要传输的信息送到符合要求的相应路由上的技术统称。交换有多种 形式。局域网交换用于在位于相同或不同网段上的工作站之间传递分组报文:广 域网交换通常采用的形式是在两个终端节点之间提供一条虚连接。不管是哪种交 换形式都有如下共同属性: 工作于任何协议栈的第二层和二层以下。这意味着局域网和广域网的交换对 于运行在高层的i p 或其他网络协议及任何应用程序都是透明的。 交换由硬件实现。交换机把从一个输入端口上接收到的数据分组交换发送到 一个输出端口,这个工作过程不受其他处理器的干预。 交换的过程可以从两个不同的方面来说明:本地和端到端。 从本地的观点来看,需要研究的问题是:一个交换机是怎样根据接收到的数 据分组来决定将其交换到哪一个输出端口上去。换句话说,就是如何根据数据分 组携带的信息及交换机保存的信息来快速地将数据分组从输入端移动到输出端。 这个问题称为交换转发问题。从端到端的观点来看,问题就变成了如何在交换网 络中的两个端点之间建立和维护交换通路。这方面技术称为交换通路控制。 在交换转发过程中,正确的输出端口是根据分组中所携带的信息来确定,在 某些情况下可能根据交换机本身内部的信息决定。包含在分组中的信息可由下列 之一构成: 目的地址 源路由向量( s o u r c e r o u t ev e c t o r ) 连接标识符 以上所述的信息分别在不同的交换场合中应用。在交换式以太网中主要根据 分组信息中的目的地址来确定,交换机根据以太帧目的m a c ( 介质访问层) 地址 第二章第三层交换机原理及实现 来决定输出端口。而源路由向量信息主要用在a t m 交换和令牌交换中。连接标识 符信息交换也就是通常所说的标签( l a b e l ) 交换。由于本文主要讨论的是以太 网三层交换机,所以在后面将只详细描述目的地址交换转发技术,而对于其它两 种交换转发技术,本文将不作描述。 对于交换过程中第二个方面的问题:交换通路控制。由于所有的交换转发技 术全部都依赖于某种形式的交换通路控制在交换机中建立和维护信息,以便使分 组能够转发到目的地。同时,交换通路控制可能会引起网络中交换机之间的控制 消息的交换,从而使各交换机能建立一个一致的交换转发表。另外,它也可能导 致发送数据的源主机产生一条“通路设置”消息并将其发送到网络中。通路设置 消息用来在网络中发现一条通路,以使后续的数据分组能按这个通路流动。基本 的交换通路控制可以采用技术之一来实现: 地址学习( a d d r e s sl e a r n i n g ) 生成树( s p a n i n gt r e e ) 广播和发现( b r o a d c a s ta n dd i s c o v e r ) 链路状态选路( 1 i n ks t a t er o u l i n g ) 显式信令( e x p l i c i ts i g n a l i n g ) 在三层以太网交换机中主要用到了前四项技术。使用了以太网透明桥技术来 自动学习m a c 地址,并通过交换生成树协议报文来避免形成环路,同时还利用广 播报文和链路状态选路来建立网络路由信息。在三层交换机中,以上四项技术都 需要硬件芯片的支持,同时还要求有良好的驱动接口以便上层管理软件对其管理 和维护。而对于其他技术,本文将不再过多描述。 2 1 2 三种交换技术 自从“交换”概念提出来以后,伴随着计算机网络几十年的发展,交换技术 也取得了长足的进步,到目前为止,出现过以下三种交换技术。 端口交换:端口交换技术最早出现在插槽式的集线器中,这类集线器的背 板通常划分有多条以太网段( 每条网段为一个广播域) ,不用网桥或路由 连接,网络之间是互不相通的。以太主模块插入后通常被分配到某个背板 的网段上,端口交换用于将以太模块的端口在背板的多个网段之间进行分 第二章第三层交换机原理及实现 配、平衡。这种交换技术是基于o s i 笫一层( 物理层) 上完成的,具有灵 活性和负载平衡能力等优点,但没有改变共享传输介质的特点,也就不是 真正意义上的交换。 帧交换:帧交换是目前应用最广的局域网交换技术,它通过对传统传输媒 介进行微分段,提供并行传送的机制,以减小冲突域,获得高的带宽。一 般来讲不同公司的产品的实现技术均会有差异,但对帧的处理方式主要有 以下两种:直通交换和存储转发。前一种方法的交换速度非常快,但缺乏 对网络帧进行更高级的控制,缺乏智能性和安全性,同时也无法支持具有 不同速率的端口的交换。它又分成快速转发和自由分段两种模式:现在随 着交换芯片硬件技术的提高,后一种方式基本上成为目前交换机主流的帧 处理方式。这种交换技术也是我们设计三层交换机的采用的处理方式。将 在下一小节中对此进行详细描述。 信元交换:这种交换方式主要用在a t m 交换机中,主要用在广域网交换中。 由于在本文主要涉及到的是以太网交换技术,所以对其不做过多的介绍。 2 1 3 交换机的转发模式 交换机在交换数据帧时可以选择有三种不同的交换模式: 存储转发( s t o r e - a n d - f o r w a r d ) 模式:存储转发模式是指交换机收完整 个数据帧,并在c r c 校验通过之后,才能进行转发操作。如果c r c 校验失 败,即数据帧有错,交换机则丢弃此帧。这种模式保证了数据帧的无差错 传输,当然其代价是增加了传输延迟,而且传输延迟随数据帧的长度增加 而增加。 快速转发模式( f a s t f o r w a r d ) :快速转发模式是指交换机在接收数据帧 时,一旦检测到目的地址就立即进行转发操作。但是,由于数据帧在进行 转发处理时并不是一个完整的帧,因此数据帧将不经过校验、纠错而直接 转发,造成错误的数据帧仍然被转发到网络上,从而浪费了网络的带宽。 这种模式的优势在于数据传输的低延迟,但其代价是无法对数据帧进行校 验和纠错。 自由分段( f r a g m e n t f r e e ) 模式:自由分段( f r a g m e n t f r e e ) 模式是交 7 第二章第三层交换机原理及实现 换机接收数据帧时,一旦检测到该数据帧不是冲突碎片( c o l l i s i o n f r a g m e n t ) 就进行转发操作。冲突碎片是因为网络冲突而受损的数据帧碎 片,其特征是长度小于6 4 字节。冲突碎片并不是有效的数据帧,应该被 丢弃。因此,交换机的自由分段模式实际上就是一旦数据帧已接收的部分 超过6 4 字节,就开始进行转发处理。这种模式的性能介于存储转发模式 和快速转发模式之间。 图2 1 是以上三种交换模式的一个示意图。从中可以看到:在进行转发操作 之前,不同的交换模式所接收数据帧的长度不同,这也决定了相应的延迟大小。 接收数据帧的长度越短,交换机的交换延迟就越小,交换效率也就越高,但相应 的错误检测也就越少。 2 1 4 交换机的主要功能 图2 1 交换模式示意图 交换机主要有以下三个主要功能: 学习:以太网交换机了解每一端口相连设备的m a c 地址,并将地址同相应 的端口映射起来存放在交换机缓存中的m a c 地址表中。 转发过滤:当一个数据帧的目的地址在m a c 地址表中有映射时,它被转 发到连接目的节点的端口而不是所有端口( 如该数据帧为广播缎播帧则 转发至所有端口) 。 消除回路:当交换机包括一个冗余回路时,以太网交换机通过生成树协议 避免回路的产生,同时允许存在后备路径。 第二章第三层交换机原理及实现 2 2 交换机工作原理 由前一节的描述知道,所谓“交换”实际上就是指转发数据帧( f r a m e ) 。而 交换的过程主要涉及到两个技术问题:交换转发和交换通路控制。在数据通信中, 这两个技术也就是所有的交换机都要执行两个基本的操作: 交换数据帧,将从输入介质上收到的数据帧转发至相应的输出介质: 地址学习过程,用以构造和维护交换地址表,以便维护交换操作。 下面,探讨下这两个基本操作的具体细节。 2 2 1 数据帧转发 交换机根据数据帧的m a c ( m e d i aa c c e s sc o n t r 0 1 ) 地址( 即物理地址) 进 行数据帧的转发操作。交换机转发数据帧时,遵循以下规则: 如果数据帧的目的m a c 地址是广播地址或者组播地址,则向交换机所有端 口转发( 除数据帧来的端口) ; 如果数据帧的目的地址是单播地址,但是这个地址并不在交换机的地址表 中,那么也会向所有的端口转发( 除数据帧来的端口) ,这一过程称为泛 洪( f l o o d i n g ) : 如果数据帧的目的地址在交换机的地址表中,那么就根据地址表转发到相 应的端口; 如果数据帧的目的地址与数据帧的源地址在一个网段上,它就会丢弃这个 数据帧,交换也就不会发生。下面,以图2 2 为例来看看具体的数据帧交 换过程。 第二章第三层交换机原理及实现 图2 - 2 数据帧交换过程 1 ) 当主机d 发送广播帧时,交换机从e 3 端口接收到目的地址为 f f f f f f f f f f f f 的数据帧,则向e o 、e l 、e 2 和e 4 端口转发该数据帧。 2 ) 当主机d 与e 主机通信时,交换机从e 3 端口接收到目的地址为 0 2 6 0 8 c 0 1 5 5 5 5 的数据帧,查找地址表后发现0 2 6 0 8 c 0 1 5 5 5 5 并不在表 中,因此交换机仍然向e 0 、e 1 、e 2 和e 4 端口转发该数据帧。 3 ) 当主机d 与主机f 通信时,交换机从e 3 端口接收到目的地址为 0 2 6 0 8 c 0 1 6 6 6 6 的数据帧,查找地址表后发现0 2 6 0 8 c 0 1 6 6 6 6 也位于e 3 端口,即与源地址处于同一个网段,所以交换机不会转发该数据帧,而是 直接丢弃。 4 ) 当主机d 与主机a 通信时,交换机从e 3 端口接收到目的地址为 0 2 6 0 8 c 0 1 1 l l l 的数据帧,查找地址表后发现0 2 6 0 8 c 0 1 1 1 1 1 位于e o 端口,所以交换机将数据帧转发至e o 端口,这样主机a 即可收到该数据 帧。 5 ) 如果在主机d 与主机a 通信的同时,主机b 也正在向主机c 发送数据,交 换机同样会把主机b 发送的数据帧转发到连接主机c 的e 2 端口。这时e 1 和e 2 之间,以及e 3 和e 0 之间,通过交换机内部的硬件交换电路,建立 了两条链路,这两条链路上的数据通信互不影响,因此网络亦不会产生冲 突。所以,主机d 和主机a 之间的通信独享一条链路,主机c 和主机b 之 第二章第三层交换机原理及实现 间也独享一条链路。而这样的链路仅在通信双方有需求时才会建立,一旦 数据传输完毕,相应的链路也随之拆除。这就是交换机主要的特点。 从以上的交换操作过程中,可以看到数据帧的转发都是基于交换机内的m a c 地址表,所以下面详细如何建立和维护这个地址表。 2 2 2 地址学习过程 交换机的地址学习过程实际上就是交换机根据收到数据帧中的源地址建立 该地址同交换机端口的映射,并将其写入地址表中。交换机的交换地址表中,一 条表项主要由一个主机m a c 地址和该地址所位于的交换机端口号组成。整张地址 表的生成采用动态自学习的方法,即当交换机收到一个数据帧以后,将数据帧的 源地址和输入端1 :3 记录在交换地址表中。图2 - 3 为交换机收到帧时的转发及学习 过程。 当一个帧从交换机某个特定端口x 到达,交换机根据这两个信息可以得出: 从端口x 可以到达帧源地址域所指定的工作站,因此,交换机能够为该m a c 地址 更新转发数据库。为允许网络拓扑结构发生变化,数据库的每一项都配有寿命定 时器,当一个新项加到数据库时,就启动定时器,如果定时器时间到,该项就从 数据库搜索是否存在地址字段值和该帧源地址相同的项,如果数据库已存在这样 的项,项的内容被更新,重新设置定时器值。如果数据库中不存在这样的项,将 在数据库中添一新项,该新项中的地址为收到数据帧的源m a c 地址,端口号为收 到数据帧的端口,定时器值被设置成初值。 第二章第三层交换机原理及实现 图2 - 3 交换机的转发及地址学习流程 2 3 第二层交换原理及特点 由前文不难发现,传统意义上的交换一直都是工作在o s i 模型第二层链 路层,因此传统意义上的交换也称之为第二层交换。实际上前面对交换机概念, 相关技术和工作原理的介绍都是基于第二层交换而言的。第二层交换实质上指的 是:在交换网中,当网络上两个节点进行通信的时候,它们之间的数据帧通过交 换机中的m a c 的地址表确定其要转发的物理端口,然后由交换机将数据帧通过物 l2 第二章第三层交换机原理及实现 理端口发送至对方节点。而在此期间,交换机其他端口所连接的网络节点同时也 可以进行数据通信。从本质上说,通过采用第二层交换技术,以太网原来的共享 信道已经被改造成了点对点信道,这也就是为什么交换以太网比传统共享以太网 具备更高带宽和更快网速的缘故。而只具备第二层交换功能的以太网交换机称之 为以太网第二层交换机。 以太网第二层交换机( 以下简称二层交换机) 主要就是通过用线路将收到的 数据帧转发到另一端口。其主要功能包括物理编址,网络拓扑结构,错误校验, 帧序列以及流量控制等。以及其他一些功能,v l a n ,链路汇聚,安全认证和网络 管理等。 对于二层交换机而言,“交换”是在数据链路层对数据帧采用“点对点”的 方式而非“广播”方式进行转发。这种转发是以以太网的m a c 地址为基础,每台 以太网设备出厂时都有一个唯一的m a c 地址。一般二层交换机都有一张“地址表” ( 或称“地址解析逻辑表”) ,它会在工作时不断地收集资料去填充地址表,主要 是标明某个m a c 地址是在哪个端口发现的,从而建立起端1 3 地址与m a c 地址之间 的映射关系。同时二层交换机还要对此地址表定时刷新。二层交换机使用“源地 址学习”来建立自己的地址表:二层交换机在运行中检查经过它的以数据帧,分 析并记录其源m a c 地址,以及交换机上该数据帧入端口的信息。依靠这些数据, 二层交换机可以不断收集资料去建立更新自己的地址表。而通过这张地址表,二 层交换机就可以采用“目的地址转发”来交换收到的数据帧:当第二层交换机收 到一个数据帧时,它便在地址表中查找此数据帧的m a c 目的地址,若找到对应的 输出端口,则将所接收的数据帧从该端口发送;否则,向除入端口外所有的交换 机端口广播此数据帧,然后根据接收到的响应数据帧在地址表为该地址建立端1 3 映射关系,以后就可按该表指定的路径进行转发。此外,二层交换机还用这样的方 法来处理“地址老化”的问题:如果某一设备在规定的时间内既没有发送也没有 接收信息,该设备地址在地址表中的信息将被删除。 二层交换机使用变换技术在网段微化,允许并行交换,提升网络有效带宽方 面的优势是显而易见的。除了这些主要优点二层交换还有如下优点:时延短,延 伸网络传输直径,安全性和可管理性。但是,当二层交换机收到一个数据帧时, 如果m a c 目的地址不能在其地址表中找到,交换机就会象收到一个广播数据帧一 第二章第三层交换机原理及实现 样,把该数据帧“扩散”到网上的所有端口。这又使网络从“交换”回转到“介 质共享”的广播方式,降低了网络的整体效率。这正是传统第二层交换机的弱点 所在。 为了克服第二层交换技术无法对数据帧“扩散”进行有效控制的缺点,发明 了虚拟局域网( v l a n ) 技术。v l a n 技术将网络逻辑地分成多个子网( 子广播区) , 在某一子广播区中的广播帧被限制只在本广播区中传送,不会传送到其它广播区 里。这样,网络的广播信息自然就会得到控制。但是由于虚拟子网间无法传递广 播帧,因此寻址广播帧自然也无法在子网之间传送,这就造成两个v l a n 之间的 设备无法相互通信。可是,子网间的通信一般情况下是必须的,也就是常说的网 络层通信( 即三层通信) ;但是,由于二层交换机对三层网络层协议是透明的,所 以二层交换机在交换数据帧时不知道网络层的源地址与目的地址,也就无法获得 必要的网络层消息、从而进行网络层通信。这就要求交换机能够实现在网络层进 行数据交换,即第三层交换。 2 4 第三层交换机原理及实现 2 4 1 第三层交换原理 第三层交换是相对于传统交换概念而提出的,它在网络模型中的第三层实现 了数据包的高速转发。第三层交换技术将第二层交换机和第三层路由器两者的优 势结合成为一个有机的整体,是一种利用第三层协议中的信息来加强第二层交换 功能的机制,是新一代局域网路由和交换技术,也称为i p 交换技术。简单地说, 三层交换技术就是:二层交换技术+ 三层转发技术。通过使第二层与第三层相互 关联起来,第三层交换可在网络中各层次提供线速交换性能。这种集成化的方式 不仅保留了二层交换机的许多功能和特性如t r u n k ,v l a n 和安全等,还引进三层 以上特有的路由,流量控制处理和策略管理等多种功能。 第三层交换技术的基本思想是:对于同一节点发出的数据包,仅对第一个数 据包由网络路由协议在网络层进行选路操作,以保持一定的流量控制;然后将获 得的m a c 地址保存在交换机中,以后的数据包就可以直接在链路层传送,即所谓 “一次路由,多次交换”。即对于跨越网络( 也就是需要识别t p 地址) 的报文, 14 第二章第三层交换机原理及实现 由c p u 根据相关的路由协议和策略进行路由,路由成功后将主机i p 地址( 或网 络i p 地址) 、m a c 地址和对应的端口关联起来,并将其写入相关的表中,以后每 次基于此i p 地址的转发就不再由c p u 进行路由处理,而是直接由硬件根据相关 的表中的信息直接从相应的端口转发出去。为了更清楚地阐明第三层交换技术, 以下具体描述三层交换的过程。 假设两个使用i p 协议的节点a 、b 通过第三层交换机进行通信,节点a 在开 始发送时,把自己的i p 地址与b 节点的工p 地址比较,判断b 节点是否与自己在 同一子网内。若b 节点与自己在同一子网内,则直接发出数据包,由三层交换机 进行二层的转发,其具体对数据包的交换过程和对m a c 地址的学习过程和二层交 换机都是一样的。若两个节点不在同一子网内,则节点a 要向“缺省网关”发出 a r p ( 地址解析) 包,而“缺省网关”的i p 地址其实是三层交换机的三层交换模块 中的个三层接口地址。当节点a 对“缺省网关”的i p 地址广播出一个a r p 请 求包时,如果三层交换模块在以前的通信过程中已经知道节点b 的m a c 地址,则 向节点a 回复节点b 的m a c 地址。否则三层交换模块根据路由协议向节点b 广播 一个a r p 请求包,节点b 得到此a r p 请求包后向三层交换模块回复其m a c 地址, 三层交换模块则将节点b 的i p 地址和m a c 地址关联并保存起来,然后把此地址 回复给节点a ,同时将节点b 的m a c 地址发送到二层交换引擎的m a c 地址表中。 从这以后,节点a 向节点b 发送的数据包便全部交给二层交换引擎处理,不再进 行网络路由了,由此数据得以高速交换。由于仅仅在路由过程中才需要三层处理, 绝大部分数据都通过二层交换转发,因此三层交换机的速度很快,接近二层交换 机的速度。 从以上分析知道,第三层交换机收到a r p 请求包时并没有象第二层交换机一 样把它扩散出去,而是用第三层功能对其处理,因此第三层交换机对广播报
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届河北省忠德学校衡水教学部高三上化学期中统考试题含解析
- 2025年高考英语翻译:英汉互译能力提升模拟试卷
- 2026届江西省校级联考化学高一上期中调研模拟试题含解析
- 福建省莆田九中2026届化学高一第一学期期中经典模拟试题含解析
- 2026届甘肃省兰州市甘肃一中化学高一第一学期期末学业水平测试试题含解析
- 婚前财产约定协议
- 线上线下活动合作协议的特点
- 2026届安徽省二校联考化学高三上期中联考试题含解析
- 2025年住房租赁市场供需关系研究及策略优化服务合同
- 2025年城市轨道交通车辆融资租赁与抵押担保合同
- 新生儿病房护理安全管理
- 瑞雪迎春春节家宴主题说明书
- 军用车修理知识培训课件
- 医务人员职业道德准则(2025年版)全文培训课件
- 乘客遗失物品处理课件
- 2025年云南省中考物理真题(含答案)
- 医院保卫科岗位竞聘工作汇报
- 医院科室停电应急预案
- 2025年教育学家教学理论考试试题及答案解析
- 保健公司客户服务流程规定
- 项目初步验收汇报
评论
0/150
提交评论