Linux下不使用IP协议的局域网

Linux下不使用IP协议的局域网

我读过一些关于互联网协议的知识,并推断在局域网中,没有必要使用IP协议,尽管它通常被使用。

是否可以在 Linux 中关闭 IP 协议并仅使用 MAC(以太网)地址进行帧传输?你会怎么做?

我估计会有问题TCP。我不确定它是否可以在LLC layer.

IP 协议开销是如此之小以至于它也被用在 LAN(带有集线器)上?

答案1

AoE(以太网上的 ATA)等协议允许在没有 IP 的情况下进行通信。问题是这样的协议并不常见。事实上,除了像以前的旧文件共享协议这样的恐龙之外,我现在看不到任何东西榕树藤,数字化网络, ETC。

IP 占据主导地位毕竟是有原因的。开销对于我们的硬件来说不再代表太多,并且增加了灵活性。

答案2

理论上是可行的,但实际上现在许多 UNIX 程序和守护进程都期望至少有一个基本功能的 IP 堆栈。开销可以忽略不计,当然不值得您花费时间和麻烦,您需要耐心地向一个又一个软件解释它甚至不应该费心寻找 127.0.0.1...

答案3

理论上,您可以直接在没有 IP 标头的以太网帧中发送 TCP 数据包,但这实际上是不可能的,因为使用 TCP 的应用程序期望处理 IP 地址,而不是以太网 MAC 地址。 IP 标头仅为每个数据包添加约 20 字节的开销,不到 1500 字节以太网数据包的 2%,因此可以忽略不计。

答案4

这是可能的。

IIRC,您需要合适的套接字和权限/功能。您需要处理底层媒体(MAC)地址并制作自己的帧等。这与我们对许多嵌入式系统所做的没有太大不同。看数据包(7)

您将无法以极低的价格获得 IP 所提供的好处,例如名称解析、路由、可靠的流等。

正如其他答案所说,您可能不会有太多的应用程序支持。

相关内容