交换基本原理
2008-03-24 23:23
337 查看
[align=left] 在传统的以太网中,站点之间通过集线器相连,主机只能以半双工模式通信,是一种共享式以太网,整个网络处于一个冲突域。[/align]
[align=left] 现代以太网是通过交换机进行站点之间的连接,是一种交换式以太网,主机工作在全双工的模式下。交换机通过识别数据帧的MAC地址将帧转换到特定端口,而不是像集中器将数据复制到所有其他端口(广播),所交换机可以隔离冲突域。[/align]
[align=left] 交换机是基于硬件实现对数据转发的。它可以为任意两个交换数据帧的端口建立一条数据通道,大大提高了数据交换的速率。[/align]
[align=left] 1、交换模式[/align]
[align=left] 存储转发。读取整个数据帧,对其进行检错再决定其去向。如果发生错误则丢弃,这是一种异步传输。[/align]
[align=left] 贯穿交换。只读取数据帧的目的MAC,然后在整个数据帧到达之前就开始转发数据帧了。[/align]
[align=left] 无分片交换。是贯穿交换的改进。[/align]
[align=left] 贯穿交换和无分片交换为同步交换,要求源和目的的端口工作在相同的比特率(速率)下。[/align]
[align=left] 2、MAC寻址[/align]
[align=left] 交换机是根据数据帧中的目的MAC地址做出转发决定的。当数据从某个端口接受数据后,读取该帧的目的MAC地址信息,然后查阅MAC地址表。若有则发送到对的端口,若无则泛洪(flooding)。这个和路由器不同,如果路由表中没有该数据包到达目的地址的路由,路由器将该数据包丢弃(在没有默认路由的情况下)。[/align]
[align=left] MAC地址表的建立:[/align]
[align=left] MAC地址表存储在交换机的ram中,交换机刚启动时MAC地址映射表是空的。[/align]
[align=left] 主机A向主机B发送数据,数据从E0口进入交换机,交换机查看自己的MAC地址表,没有到达主机B的映射,将数据帧向所有其他端口转发(泛洪),并且读取数据帧的源MAC地址,将其和E0口映射并保存到MAC地址表中。这样下次有发送到A的数据帧就可以按映射进行转发。[/align]
[align=left] 网络中所有的主机都收到A的数据,检查目的MAC,若和自己的MAC不符合则丢弃,若符合则接受。[/align]
[align=left] 当B、C、D主机发送数据时,交换机同样读取源MAC地址并和接收端口映射保存到MAC地址表。这样就形成了完整的MAC地址表。[/align]
[align=left] [/align]
[align=left] 3、内存缓冲[/align]
[align=left] 以太网交换机可以使用缓冲技术将分组存储和转发到一个或多个端口。[/align]
[align=left] 基于端口的存储缓冲。分组存储在链接到特定端口的队列中,只有当队列中所有在它前面的分组成功发送出去,该分组才发送到外出端口。[/align]
[align=left] 共享式的存储缓冲。所有分组存入交换机所有端口共享的一个缓冲区中。分组动态链接到发送端口,链接到为该端口分配的存储区域中。[/align]
[align=left] [/align]
由于图片插入不成功,只好以附件的形式上传了。
[align=left] [/align]
[align=center][/align]
[align=left] 现代以太网是通过交换机进行站点之间的连接,是一种交换式以太网,主机工作在全双工的模式下。交换机通过识别数据帧的MAC地址将帧转换到特定端口,而不是像集中器将数据复制到所有其他端口(广播),所交换机可以隔离冲突域。[/align]
[align=left] 交换机是基于硬件实现对数据转发的。它可以为任意两个交换数据帧的端口建立一条数据通道,大大提高了数据交换的速率。[/align]
[align=left] 1、交换模式[/align]
[align=left] 存储转发。读取整个数据帧,对其进行检错再决定其去向。如果发生错误则丢弃,这是一种异步传输。[/align]
[align=left] 贯穿交换。只读取数据帧的目的MAC,然后在整个数据帧到达之前就开始转发数据帧了。[/align]
[align=left] 无分片交换。是贯穿交换的改进。[/align]
[align=left] 贯穿交换和无分片交换为同步交换,要求源和目的的端口工作在相同的比特率(速率)下。[/align]
[align=left] 2、MAC寻址[/align]
[align=left] 交换机是根据数据帧中的目的MAC地址做出转发决定的。当数据从某个端口接受数据后,读取该帧的目的MAC地址信息,然后查阅MAC地址表。若有则发送到对的端口,若无则泛洪(flooding)。这个和路由器不同,如果路由表中没有该数据包到达目的地址的路由,路由器将该数据包丢弃(在没有默认路由的情况下)。[/align]
[align=left] MAC地址表的建立:[/align]
[align=left] MAC地址表存储在交换机的ram中,交换机刚启动时MAC地址映射表是空的。[/align]
[align=left] 主机A向主机B发送数据,数据从E0口进入交换机,交换机查看自己的MAC地址表,没有到达主机B的映射,将数据帧向所有其他端口转发(泛洪),并且读取数据帧的源MAC地址,将其和E0口映射并保存到MAC地址表中。这样下次有发送到A的数据帧就可以按映射进行转发。[/align]
[align=left] 网络中所有的主机都收到A的数据,检查目的MAC,若和自己的MAC不符合则丢弃,若符合则接受。[/align]
[align=left] 当B、C、D主机发送数据时,交换机同样读取源MAC地址并和接收端口映射保存到MAC地址表。这样就形成了完整的MAC地址表。[/align]
[align=left] [/align]
[align=left] 3、内存缓冲[/align]
[align=left] 以太网交换机可以使用缓冲技术将分组存储和转发到一个或多个端口。[/align]
[align=left] 基于端口的存储缓冲。分组存储在链接到特定端口的队列中,只有当队列中所有在它前面的分组成功发送出去,该分组才发送到外出端口。[/align]
[align=left] 共享式的存储缓冲。所有分组存入交换机所有端口共享的一个缓冲区中。分组动态链接到发送端口,链接到为该端口分配的存储区域中。[/align]
[align=left] [/align]
由于图片插入不成功,只好以附件的形式上传了。
[align=left] [/align]
[align=center][/align]
相关文章推荐
- 转转转转:初学者如何开发出一个高质量J2EE系统
- 4-积累
- [原]Linux文件交换
- 脱下穿上
- JS制作的滚动公告栏-文字图片每翻一行停顿几秒
- [原创][PowerShell教程][04]PowerShell面向对象基础之一
- 序列化和反序列化
- zz本站使用的滚动新闻javascript函数
- 小技巧
- 网上找到的源码网址
- 雅思考试口语练习——Agriculture 农业
- 自反+递归 实现评论的无限引用
- 删除源代码的管理信息(VSS)
- 收音机抗干扰
- 空间分割二叉树
- Permission Base开源项目,研究NHibernate最好实例
- 读取UTF-8文件的JAVA代码
- 我们应该改变我们的交流方式
- 学习VC的心得
- 使用Buffalo集成Spring写的一个登录实例