为什么将隧道称为“隧道”?


52

我不明白为什么“隧道”隐喻用来描述网络隧道。

起初我以为原因是因为发送的数据是加密的,所以窃听者将无法看到数据(他看到的数据封装在隧道中!)。

但是不使用加密的隧道协议又如何呢,为什么它们也被称为“隧道”!


21
通过隧道发送的数据被封装。它可能会也可能不会被加密。
DavidPostill

Answers:


83

就道路而言,真实世界中的隧道是一条经过构造的通道,可让您直接从A穿越至B,而不是走更长的路线和/或有更多东西使您减速。例子包括穿过山路的隧道,否则您可能必须绕过山路;通过地下通道,您无需走过道路即可到达道路的另一侧;以及使火车绕过城市而无需与道路和建筑物竞争的地铁隧道。

在每种情况下,隧道都会提供直接路径,从而避免了您原本必须处理的某种复杂性。在网络中,它的使用方式相同。

通过IPv6 over IPv6隧道,IPv4可以通过IPv6网络进入另一个IPv4网络,否则,如果原始计算机没有理解IPv6网络,这是不可能的。

VPN是专门用于连接两个专用网络的隧道,而无需在两端分别在专用地址和公用地址之间转换IP地址的开销。

将两者结合在一起的一个例子是类似Hamachi的游戏VPN软件,该软件可用于在互联网游戏上玩,这些游戏使用IPX等旧协议或依靠本地发现来寻找其他玩家。


2
我添加了对您的示例进行扩展的编辑,以使其更通用。在这种情况下,进行稍微繁重的编辑而不是发布单独的答案或在评论中冒出一点,这是更有礼貌的。抱歉,如果我与编辑大小不符。
卡塔尔

5
@Kaithar虽然进行了大量的编辑,但确实遵循了我试图传达的观点,而在使它保持简短和简单以及按照您的方式进行编辑之间,我陷入了困境。感谢您的修改。
Mokubai

38

为什么隧道称为“隧道”?

据我所知,该词组最早使用(据我所知)是在RFC 1075距离矢量多播路由协议中,其定义如下:

另外,为了允许实验遍历不支持多播的网络,开发了一种称为“隧道”的机制。

...

  1. 隧道

隧道是一种在由不支持多播路由的网关分隔的路由器之间发送数据报的方法。它充当两个路由器之间的虚拟网络。例如,运行在斯坦福大学的路由器和运行在BBN的路由器可能与隧道连接,以允许多播数据报遍历Internet。我们认为隧道是过渡性的手段。

使用弱封装的正常多播数据报来完成隧道。弱封装使用特殊的两元素IP松散源路由[5]。(这种封装形式比“强力”封装更可取,即在其之前添加一个新的IP报头,因为它不需要隧道端点知道彼此的最大重组缓冲区大小。它还具有正确行为的优点。发起者的生存时间值和其他任何IP选项。)

隧道具有与之关联的本地端点,远程端点,度量和阈值。隧道两端的路由器只需要在本地和远程端点上达成一致。有关如何配置隧道的信息,请参见第8节。由于隧道端点之间的中间网关数量未知,因此需要进行其他研究来确定适当的指标和阈值。

尽管以上陈述“我们认为隧道是过渡性的破解”。如今,隧道仍在使用,其含义基本相同-通过隧道发送的数据已封装,因此可以通过原本不支持传输的协议进行传输:

隧道是一种用于在通常不支持它的网络上传送外部协议的机制。隧道协议允许您使用例如IP在IP数据报的“数据”部分中发送另一个协议。大多数隧道协议在第4层运行,这意味着它们被实现为替代TCP或UDP之类的协议。

网络101:了解隧道


20
“我们认为隧道是一种过渡性的手段” –确实没有什么是永久性的解决方案。
通配符

21

因为无论放在隧道一端的任何东西都从另一端出来。


22
并非一切。我尝试一次将饮料放入VPN隧道的一端,不仅不等待我上班,而且我的计算机由于某种原因停止了工作。
HopelessN00b

17
@ HopelessN00b:可能是因为你喝不正确格式化为TCP / IP
斯蒂芬·

8
@ HopelessN00b饮料在第1层中实现,而大多数VPN在第4层中实现。您必须使用软件以某种方式将饮料转换为适当的层,以获取希望。另外,请确保在接收端安装软件,否则可能会导致不可预见的后果。
pcnate

5
@pcnate HM -层1是洁具。不知道它,它可以处理在所有的饮料。
斯蒂芬

5
对于葡萄酒,您需要一个USBwine适配器,我不确定是否可以破解它来做啤酒或伏特加酒。
satibel '17
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.