AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 11915
Accepted
Ryan Michela
Ryan Michela
Asked: 2009-05-25 22:12:29 +0800 CST2009-05-25 22:12:29 +0800 CST 2009-05-25 22:12:29 +0800 CST

路由器与交换机

  • 772

我知道路由器和交换机之间的区别,但在我的理解中有一些模糊的地方。

  1. 当您将一台交换机上行连接到另一台交换机时,它们是否共享 MAC 地址表?或者这是供应商特定的功能?如果他们不共享,他们如何处理发往他们不直接控制的 mac 的数据包?

  2. 仅使用交换网络可以有效处理的最大 IP 地址空间是多少,您应该在什么时候考虑将网络分成由路由器连接的多个网段?

  3. 哪个在架构上更合理:一个核心路由器将许多子网连接到 Internet 或路由器层次结构(每个部门一个上行链路到核心)?或者,最好给每个部门一个路由器,然后将它们组合成一个迷你互联网?

router switch
  • 5 5 个回答
  • 1833 Views

5 个回答

  • Voted
  1. Best Answer
    Murali Suriar
    2009-05-26T02:56:24+08:002009-05-26T02:56:24+08:00

    关于将一台交换机上行连接到另一台交换机:不,它们不共享 MAC 地址表。每个交换机都维护自己的桥接表,该桥接表是通过侦听每个交换机在给定端口上接收的流量来构建的。考虑以下示例(为糟糕的 ASCII 艺术道歉):

    ________     1________2      2________1     ________
    |Host A|-----|Switch 1|------|Switch 2|-----|Host B|
    --------     ----------      ----------     --------
    

    主机 A连接到交换机 1的端口 1。主机 B连接到交换机 2的端口 1。两台交换机都通过端口 2互连。

    假设一开始两个交换机的桥接表都是空的。主机 A想向主机 B发送帧。(为简化起见,我们假设主机 A 和主机 B 彼此具有静态 ARP 条目,因此不需要为 MAC 地址进行 ARP)。

    1. 主机 A向主机 B发送一个帧。帧的源 MAC 是AA:AA:AA:AA:AA:AA,目标 MAC 是BB:BB:BB:BB:BB:BB。
    2. Switch 1当前有一个空的桥接表。收到帧后,它会做两件事:
      1. 它在其桥接表中创建一个新条目AA:AA:AA:AA:AA:AA存在于端口 1上。
      2. 由于它不知道BB:BB:BB:BB:BB:BB在哪里,它会将帧泛洪到每个端口,除了最初从(端口 1)听到的那个端口。
    3. 交换机 2 在其端口 2上接收泛洪帧。同样,由于它的桥接表最初是空的,它遵循相同的过程:
      1. 新条目:端口 2上存在AA:AA:AA:AA:AA:AA(回想一下,这是在交换机 2 上,它与交换机 1 有一个独立的桥接表)
      2. 帧从所有端口溢出,除了接收它的端口。

    此时,主机 B接收到该帧。当主机 B发送响应时,会发生以下情况。

    1. 主机 B向主机A发送帧。帧的源 MAC 是BB:BB:BB:BB:BB:BB,目标 MAC 是AA:AA:AA:AA:AA:AA。
    2. 交换机 2 当前在其桥接表中有一个条目(AA:AA:AA:AA:AA:AA -> Port 2)。收到帧后,它会做两件事:
      1. 它在其桥接表中创建一个BB:BB:BB:BB:BB:BB存在于端口 1之外的条目。
      2. 由于它具有用于目标 MAC ( AA:AA:AA:AA:AA:AA ) 的特定桥接表条目,因此它仅将帧从端口 2转发出去,而不是像以前那样泛洪。
    3. 交换机 1 在其端口 2上接收转发的帧。同样,它遵循相同的过程:
      1. 新条目:BB:BB:BB:BB:BB:BB存在于端口 2之外
      2. 有一个特定的桥接表条目(AA:AA:AA:AA:AA:AA -> port 1),因此帧仅从该端口转发出去。

    在学习 MAC 地址方面,无论交换机的数量和连接到它们的设备的数量如何,都遵循相同的过程。当您为交换网络(VLAN、生成树)增加更多复杂性时,会出现更多微妙之处,但基本算法保持不变。

    关于你的第二个和第三个问题:

    2)我个人的偏见是尽可能减少切换。生成树是许多职业生涯的祸根;再加上以太网没有环路保护这一事实;一个小的错误配置可能会导致广播风暴,需要您手动干预和关闭链路以使其平息。即使您的网络很小,也至少有一个路由器可以挂起您的所有第 2 层子网;我认为这更容易。

    3) 这在很大程度上取决于您的网络规模,以及您期望看到的 Intranet 与 Internet 流量。如果部门之间会有大量的通信,那么有一个层次结构的路由器可能是有意义的,这样纯粹的内部流量就不会影响其他人的互联网访问。另一方面,如果您希望每个人都只能访问一组通用的服务(AD、电子邮件)和互联网,那么一个核心路由器(或一对,用于冗余)可能就足够了。

    在给每个部门一个路由器并将它们连接起来方面,这个网络是如何管理的?如果要建立一个管理 IT 机构,那么只需构建一个分层网络;让共享路由器为用户服务不会有问题。如果每个部门要维护自己的 IT 人员,则可能需要每个部门的路由器和内部对等互连,但这很可能会使您的网络设计复杂化。

    • 12
  2. Antoine Benkemoun
    2009-05-25T23:26:56+08:002009-05-25T23:26:56+08:00

    我将尝试尽可能清楚地回答您的所有问题。

    1. 我知道没有共享 Mac 地址表,因为真的没有必要。该交换机将寻找来自其他交换机的网络活动,并在其 Mac 地址表中记下条目。它还将寻找 ARP 请求。填满它的mac地址表只需要很少的时间。

    对于您关于他们不直接控制的 Mac 的问题,我认为您的意思是指未直接连接到其端口的 PC 的 Mac。好吧,让我们以我的交换机上的 PC A 和您的交换机上的 PC B 为例。两个交换机都通过标准上行链路连接。当我出现并连接我的交换机时,您的 PC 和交换机在网络世界中都是孤独的。我的交换机上的 PC 将需要您的 PC 的 MAC 地址,并且只需要发出广播 ARP 消息(Level2 广播但 Level3 单播,因为它具有您的 PC 的 IP 地址)。我的交换机将在它的每个端口上广播它。然后它到达你的交换机,谁会做同样的事情。然后你的电脑会回复我的电脑,他们都会知道对方的mac地址。进行中,

    1. 请记住,仅交换机网络在第 2 层上运行,因此它们(理论上)独立于第 3 层。假设超出 /8 (255.0.0.0) 不是很合理,并且会使您超出私有 IP 空间。

    2. 我肯定会说路由器的层次结构,因为它允许您进行更清晰的配置并在每个部门的基础上执行策略。思科在 CCNA 中同意我的观点 :-)

    • 1
  3. Zoredache
    2009-05-26T00:36:06+08:002009-05-26T00:36:06+08:00

    您的问题很长,我将解决这一部分。

    哪个在架构上更合理:一个核心路由器将许多子网连接到 Internet 或路由器层次结构(每个部门一个上行链路到核心)?或者,最好给每个部门一个路由器,然后将它们组合成一个迷你互联网?

    大多数路由器都可以实现某种防火墙。由于交换机是第 2 层设备,因此您通常不会在那里进行任何类型的过滤。如果您需要将部门分开以实现某种安全性,或者如果您需要为该部门实施不同的防火墙策略,那么如果它们位于单独的子网中,则执行此操作会更容易。

    仅使用交换网络可以有效处理的最大 IP 地址空间是多少,您应该在什么时候考虑将网络分成由路由器连接的多个网段?

    在集线器网络中,您的冲突域中限制为 1024 台设备。尽管这在技术上不再适用于交换网络,但我通常会尝试将其作为我在单个子网上放置多少设备的上限。

    如果您使用的协议可以进行大量广播,您可能还想用路由器断开您的网络。广播通常不通过路由器传递。


    引用 1024 设备限制。

    以太网:权威指南3.6 冲突域(谷歌书籍链接)

    在由与中继器连接的多个段组成的给定以太网上,所有站都包含在同一冲突域中。碰撞算法限制为 1024 个不同的退避时间。因此,标准中允许与中继器连接的多段 LAN 的最大站数为 1024。但是,这并不将您的站点限制为 1024 个站,因为以太网可以与交换集线器等分组交换设备连接在一起或路由器。

    • 1
  4. Alnitak
    2009-05-26T00:02:44+08:002009-05-26T00:02:44+08:00

    对于第二个问题,请参阅何时/为什么开始对网络进行子网划分?

    • 0
  5. LapTop006
    2009-05-26T05:48:32+08:002009-05-26T05:48:32+08:00

    当您将一台交换机上行连接到另一台交换机时,它们是否共享 MAC 地址表?或者这是供应商特定的功能?如果他们不共享,他们如何处理发往他们不直接控制的 mac 的数据包?

    通常堆栈在成员之间共享一个表(例如,Juniper 的“虚拟机箱”),因为它们通常具有冗余路径,而标准表不能工作。

    否则,每个交换机都需要自己的表,尽管通过 CDP 和 LLDP 等协议,它们可以从邻居那里获得更多信息。

    仅使用交换网络可以有效处理的最大 IP 地址空间是多少,您应该在什么时候考虑将网络分成由路由器连接的多个网段?

    如果安全不是问题,那么它只是归结为广播。台式机(和笔记本电脑)往往很健谈,因此只有几百台机器有明显的广播流量。管理良好的服务器(例如,arp 到期时间延长至数小时)几乎不会增加广播负载,因此对边缘路由器吞吐量的限制可能是限制因素。对于低流量服务器(或特殊网络),数千台服务器很容易位于同一个广播域上。

    哪个在架构上更合理:一个核心路由器将许多子网连接到 Internet 或路由器层次结构(每个部门一个上行链路到核心)?或者,最好给每个部门一个路由器,然后将它们组合成一个迷你互联网?

    两者都是有效的观点,但是在运行 OSPF 的第 3 层交换机的这些日子里,我倾向于第二种观点。

    • 0

相关问题

  • 购买网络交换机需要注意什么?

  • 那里有什么像样的小型办公室级路由器[关闭]

  • SOHO - 限制来自问题用户的 bittorrent 流量

  • 是否可以/建议远程升级 DD-WRT 路由器?

  • 为什么要在路由器上运行 DD-WRT 固件?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve