首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以太网:网络拓扑

以太网:网络拓扑
EN

Server Fault用户
提问于 2010-12-21 15:21:51
回答 3查看 1K关注 0票数 2

考虑一个标准的GigE网络交换机。为了进行交换,它可能需要维护网络上存在的所有东西的MAC地址映射到其(交换机的)端口号。

  • 它如何维持这样的地图?
  • 涉及的协议是什么?
  • 如果我改变了网络的一个部分的拓扑结构,那么整个网络是否会得到通知,还是会被“懒散地”发现(也就是在第一次需要时)?
EN

回答 3

Server Fault用户

回答已采纳

发布于 2010-12-21 15:37:52

交换机通过查看每个传入数据包的源mac地址来学习mac端口映射。因此,交换机可以逐步构建mac表。

当需要转发数据包时,它会查看目标mac地址,并根据mac表将其转发到适当的端口。如果没有找到任何条目,它将将数据包发送到所有端口(发送端口除外)。

为了只保留mac表中的有效条目,开关会在特定超时之后刷新未使用的条目。

当网络拓扑发生变化时,交换机可以在接收新数据包时了解mac地址的新位置。它将覆盖此mac地址的旧映射。

有关更多信息,请访问此链接

票数 8
EN

Server Fault用户

发布于 2010-12-21 15:37:25

它被称为MAC地址表,它包含portMAC addresstimestamp。如果您更改了拓扑,因为您将断开某些电缆,那么所有包含相关端口的条目都将从MAC地址表中被丢弃。新条目是在每个第一包从设备接收到之后被学习的。如果设备没有直接连接,一些条目将保留在错误的端口,但通常,由于广播,它将很快被了解。如果没有来自设备的通信量,则必须通过超时,直到其条目被丢弃。超时时间通常为120秒。

票数 0
EN

Server Fault用户

发布于 2010-12-21 15:39:45

在这种情况下:

host_a -端口1 host_b -端口2

当host_a想要向host_b发送一个数据包时,就会按下交换机,它将记录host_a的mac地址,而且由于host_b没有发送任何内容,它将在所有端口上广播该帧-- host_b会注意到发送给他的内容,并在端口b上响应。

此时,交换机知道host_a在端口1上有mac1,host_b在端口2上有mac2。任何进一步的通信都将通过这个端口来完成,而不是广播。

  • 如何维护映射是特定于供应商的,但它可以归结为mac及其相关端口的列表。
  • 在最简单的模型中,除了在2级OSI上所发生的一切之外,没有真正的协议。
  • 如果更改拓扑,则开关将删除旧条目并使用新条目更新它(因为host_1 mac1位于端口10而不是1上)。

我所说的适用于非托管交换机,也可以应用于托管交换机,但事情变得更加复杂。例如,cisco可以配置mac到哪个端口,它们运行专有协议,如ISL或open dot1q http://en.wikipedia.org/wiki/IEEE_802.1Q链接文本

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/214881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档