我好像还是没有理解 ipv6 头部去掉选项的精妙之处?

2021-11-06 15:56:40 +08:00
 amiwrong123

首先先说一下我已经理解的 ipv6 的好处:

  1. 128 的 ip 地址,这下每个沙子都可以有 ip 地址了。大家不用抢了。
  2. ipv6 不让中间路由器分片和重装。这下 路由器轻松多了,不用干这个麻烦活了。
  3. 头部里删除了 以前的选项,放到了 数据里面。 这下 头部就固定 40 字节了。(但需要注意,选项实际没有删除,它放到了数据里面)

但是这个第 3 点我不太理解哈,那比如现在一个 ipv6 分组可能是这样:

那这个 ipv6 分组 到达一个路由器或主机,虽然 40 字节头部固定了,但它不还是得去找, 数据部分里是不是 有选项,如果有,是不是还得去看 有几个选项?

就怎么有种 掩耳盗铃的感觉,就是你即使这样划分了,但该做的工作还是没有少呢(也不知道我提问得对不对,我已经尽力描述了 QAQ )(或者说,你只是在头部里去掉了选项,但是 在数据里,还是有的呀,这个长度可变的选项不还是一样成为了负担吗)

2559 次点击
所在节点    程序员
10 条回复
amiwrong123
2021-11-06 16:10:10 +08:00
我把原文描述加上:ipv6 对选项的删除
![]( https://s3.bmp.ovh/imgs/2021/11/0a303a5d269401d0.jpg)
Tianao
2021-11-06 16:16:19 +08:00
「那这个 ipv6 分组 到达一个路由器或主机,虽然 40 字节头部固定了,但它不还是得去找, 数据部分里是不是 有选项,如果有,是不是还得去看 有几个选项?」

除了逐跳扩展头部以外的其它扩展头部,中间路由器是不需要处理的,这点和禁止中途分片异曲同工。
amiwrong123
2021-11-06 16:33:07 +08:00
@Tianao #2
我在 TCP/IP 协议详解书中 找到了你说的 逐跳扩展头部,它说这个选项 是每个经过路由器都要进行处理的。 所以说,即使 ipv6 固定了 40 字节头部,但还是 需要消耗一定功夫 来看是否有这个 逐跳扩展头部的呗。

虽说这个消耗不多了。
amiwrong123
2021-11-06 16:35:43 +08:00
@Tianao #2
如果说只提 第 3 点好处的话,我觉得其实 ipv4 现有的协议也可以马上 固定住头部的嘛。
因为你看,ipv4 也是 前面 20 字节的 肯定有的头部,然后是 可能有的选项,然后是 才是数据。

就是说,不用升级 ipv6 ,也能固定处 头部的呀?
Tianao
2021-11-06 16:38:04 +08:00
@amiwrong123 #3 是的,这一改进的核心思路是尽量避免让路由器和主机处理不必要的信息。
amiwrong123
2021-11-06 16:48:07 +08:00
@Tianao #5
谢谢大佬今天的解惑了。看来今晚上能安心看决赛了。

PS:4 楼我的问题有点杠精了哈,也不用管。
jaywhen
2021-11-06 17:04:01 +08:00
今天在 v 站多次看到两位的讨论,准备晚上开始看自顶向下了
amiwrong123
2021-11-06 17:06:15 +08:00
@jaywhen #7
哈哈哈,我就是问题太多了,幸好大佬愿意解惑
Tianao
2021-11-06 17:20:36 +08:00
@amiwrong123 #4
1. IPv4 可变长头部中的可选字段需要使用全 0 填充至 4 字节的整数倍,这将带来不必要的传输与端口资源开销。
2. 单一可变长头部相较于定长头部+多个可选的扩展头部,需要更复杂的 /成本更高昂的软件和硬件设计实现,可能涉及到寄存器地址空间、TCAM 资源分配之类的。据我所知,现在市售的商品路由器(交换机)在处理 IPv4 可选头部时是必上送 CPU 的,这将带来更多的计算资源开销、更多的内部总线 /fabric 开销、更大的延迟和抖动(不确定性),但是很多设备在处理 IPv6 的扩展头部时是可以直接在接口板(线卡)上执行转发决策的。题外话,很多设备的内部 fabric 交换走的是定长信元切片,看中的也是定长信元带来的确定性(刚性)。

目前想到这些,欢迎交流。
amiwrong123
2021-11-06 17:38:15 +08:00
@Tianao #9
>单一可变长头部相较于定长头部+多个可选的扩展头部,需要更复杂的 /成本更高昂的软件和硬件设计实现
这一点我大概理解啦,毕竟 ipv4 的头部 上来就是不确定的,怎么想都会需要更多的设计和消耗。谢谢大佬的仔细讲解,不过后面有一些术语太专业没大懂😂,哈哈,看来还需要多学习呀

PS:希望今年能看完 计网自顶向下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/813499

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX