编辑:我似乎误解了这篇文章,或者被这篇文章误导了,这似乎暗示需要一个 10 Gbps 的交换机才能充分利用十几个具有千兆端口的节点。澄清了 10/100/1000 通常指的是链接速度,剩下的问题就没有多大意义了!
我是网络新手,我无法找到有关如何通过以太网路由流量的资源。据我了解,大多数千兆兼容设备可以通过单个接口处理全部千兆带宽,甚至 cat6 电缆也可以处理 10 Gbps——因此,接口和链路都不太可能成为网络的速率限制组件。但我不清楚确实存在的限制是如何应用的。我有几张图来说明。
假设我在节点 1 上有 1 Gb 的数据,我想将 1/3 Gb 的数据发送到其他每个节点。
网络 A 很简单,看起来很标准。假设交换机只能处理 1 Gbps 的净流量(我读过似乎暗示这一点的文章,但我从未见过明确说明),显然传输不能超过 1 秒,节点1 个以 1 Gbps 的速度发送,节点 2-4 以 1/3 Gbps 的速度接收。
在网络 B(两个交换机)中,是否存在以下情况:1)流量通过两个交换机分配,因此传输完成速度是网络 A 的两倍,或者 2)整个网络协议只能处理 1 Gbps 的数据传输率不变?
在网络 C(全连接)中,每个节点都有许多接口,通信协议是否强制实施带宽限制,还是接口速度是唯一的瓶颈?
注意:我知道这是一个过于简单的案例——在某些情况下,链接和接口可能是瓶颈,而且我忽略了很多开销、理论与实际带宽等问题。但我不相信这些对于我要问的问题是必要的。
这是一个不正确的假设,我想你已经添加了。交换机将具有数据平面速度,这是它可以在以太网端口之间移动数据的速度。对于我家的 1Gb 交换机,它的数据平面速度为 16Gbs,虽然我怀疑我是否能达到这个速度,但对于大多数实际应用来说已经足够了。出于商业目的,您通常需要具有更高数据平面速度的交换机,具体取决于您的要求。
现在,关于速度的“限制”——这受接口的限制,也受电缆长度和质量的限制,电缆中连接了多少对,所有这些都会导致接口决定它可以连接的速度. 如果在 cat5e(或更好的)电缆中检测到 4 对,则接口将尝试以 1Gbps 的速度运行。如果仅检测到 2 对,则将限制为 100Mbps。
Link speed (1Gbps) 是物理接口速度。网络使用的协议没有速度概念,并且独立于物理介质,它们只是使用物理基础设施。
虽然某些交换机可能限制为 1Gbps,但当多个设备连接并独立通话时,它们会导致瓶颈。虽然多端口交换机可能不支持同时在每个端口上双向传输 1gbps,但如果它们被限制为总共 1gbps,我会感到惊讶。
对于网络 1,是的,一个端口上的饱和链路将限制其他设备尝试从该机器获取数据的速度。您将有效地获得(1 /(传输次数)),或者在您的情况下获得链接速度的 1/3。
对于网络 2,如果计算机都支持并正确设置链接聚合(组合独立链接以模拟单个路径),那么任何给定计算机的有效链接速度将为 2gbps。如果他们不支持或不使用聚合,那么他们可以简单地使用他们发现首先工作的任何链接。这取决于网络的设置方式。
对于网络 3,机器之间的链接速度是它们的传输速度。
否(“交换机只能处理 1 Gbps 的净流量”)。对您的问题非常笼统地说,期望每个物理链路都可以以交换机的规定带宽速率传输双工数据。
为什么
在工业界,速度度量(10M/100M/1G)bps直接指的是链路速度;即在实验室条件下,进入此设备的线路额定运行速度最高为 1Gbps。这并不意味着它将是1Gbps,它不能超过1Gbps,甚至(通常)它可以一直维持1Gbps。
至于将数据从一个内部设备链接多路复用或切换到另一个,这通常不是处理器限制,因为 CPU 速度通常比链接速度高一个数量级(1Gbps = 125MBps;即使在假设的 1 字节总线上也是 1Ghz仍然 > 125MBps;在 32 位和 64 位总线的世界中,您永远不会落后于您的处理器)。
您会在内存队列中看到失败的地方,这在您考虑时非常明显。您的内存量是有限的,但在 4 端口 1Gbps 交换机中,您可能有 3 个 1Gbps 端口正在接收数据,而只有 1 个 1Gbps 端口正在发送数据。在内存不足并开始丢弃数据包之前,您显然无法长时间维持网络队列中超过 2Gbps 的速度。