同一子网上的两台主机之间的 ip 数据包会丢失吗?

发布于 2025-01-04 06:47:18 字数 115 浏览 1 评论 0原文

同一子网上的两台主机之间的ip数据包会丢失吗?还是需要涉及路由器?而且,我对数据包重新排序有同样的问题。

我应该澄清一下,这是数据中心有线网络上的子网,有两个通过 http 进行通信的 Web 服务。

Can ip packets be lost between two hosts on the same subnet, or does a router need to be involved? And, I have the same question about packet reordering.

I should clarify that this is a subnet on a wired network in a data center with two web services communicating over http.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

神爱温柔 2025-01-11 06:47:18

是的,数据中心的有线网络中的数据包可能会丢失。

在我家,丢包的一些原因包括:

  • 猫在交换机上撒尿
  • 兔子咬断了以太网线
  • 妻子移动了电缆,因为它很难看
  • 停电了
  • 我把架子上的交换机打翻

了虽然所有这些都可以在在专业运营的数据中心,它们似乎不太可能成为数据包丢失的原因。然而,即使是数据中心也存在问题:

  • 交换机过热时变得不稳定
  • 端点计算机过热时变得不稳定
  • 数据包量淹没了交换机的结构 数据
  • 包量淹没了端点计算机
  • 某些第 3 方计算机使 ARP 缓存中毒

如果您正在使用TCP,然后数据包丢失恢复几乎肯定会导致数据包重新排序。

Sender: Hey Bob, here's packet 78
Sender: Hey Bob, here's packet 79
Sender: Hey Bob, here's packet 80
Bob: Whoa, Sender, I'm missing 78!
Sender: Hey Bob, here's packet 78
Bob: Okay, I've got 78, 79, and 80.
Sender: Hey Bob, here's packet 81

您可以看到,发送者发送了数据包 78、79、80、78 和 81。对于外部观察者来说,这可能会被认为是无序的,因为他看到的是序列 80、78、81。

Yes, packets can be lost in a wired network in a data center.

At my house some sources of packet loss include:

  • The cat peed on the switch
  • The rabbit chewed through the Ethernet wire
  • The wife moved the cable because it was ugly
  • The power went out
  • I knocked the switch off the shelf

While all of those are possible at a professionally-run data center, they seem unlikely as causes of your packet loss. However, even data centers have problems:

  • The switch gets flaky when it overheats
  • The endpoint computers get flaky when they overheat
  • The packet volume overwhelms the switch's fabric
  • The packet volume overwhelms the endpoint computer
  • Some 3rd-party computer poisons the ARP cache

If you are using TCP, then packet loss recovery almost certainly results in re-ordered packets.

Sender: Hey Bob, here's packet 78
Sender: Hey Bob, here's packet 79
Sender: Hey Bob, here's packet 80
Bob: Whoa, Sender, I'm missing 78!
Sender: Hey Bob, here's packet 78
Bob: Okay, I've got 78, 79, and 80.
Sender: Hey Bob, here's packet 81

You can see, the sender sent the packets 78, 79, 80, 78, and 81. To an outside observer, that might be perceived as out of order, since he sees the sequence 80, 78, 81.

成熟稳重的好男人 2025-01-11 06:47:18

取决于网络上使用的底层链路层协议是什么。对于大多数无线协议来说,答案是“是”,对于某些(但不是全部)有线协议来说,答案是“否”。

Depends on what the underlying link-level protocol used on the network is. The answer will be "yes" for most wireless protocols and "no" for some (but not all) wired protocols.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文