IPv6标头优先级

时间:2012-12-10 19:42:07

标签: networking tcp ip

从这个网站(http://www.ipv6.com/articles/general/IPv6-Header.htm),它说:

Packet priority/Traffic class (8 bits) The 8-bit Priority field in the IPv6 header can assume different values to enable the source node to differentiate between the packets generated by it by associating different delivery priorities to them. This field is subsequently used by the originating node and the routers to identify the data packets that belong to the same traffic class and distinguish between packets with different priorities.

我想知道,是否可以实际“破解”TCP / IP堆栈,以便为您的数据包提供更高的优先级。您是否会获得网络性能的任何实质性收益。此外,如果可能,它是如何防止的?

3 个答案:

答案 0 :(得分:1)

是的,这是可能的,但它并不是真正的黑客攻击。有一个标准的编程接口,允许程序向堆栈指示如何填充Traffic Class头字段。

是否衡量任何性能差异取决于处理数据包的网络。将Traffic Class字段视为网络的提示;建议您如何处理数据包。网络可能会忽略它,甚至将其更改为不同的代码点。此外,作为交通类字段解释的“优先级”(也称为“优先级”)概念已经退回到更丰富的每跳行为(PHB)集合。

IETF RFC 3542 Advanced Sockets Application Program Interface (API) for IPv6。特别是,请阅读第4节“访问IPv6和扩展标头”的第一​​部分,以及第6.5节“指定/接收流量类别值”。

这是一个代码段,它将流量类字段设置为套接字MY_TCLASS上发送的所有数据包的整数sk

int tclass;
tclass = MY_TCLASS;
setsockopt(sk, IPPROTO_IPV6, IPV6_TCLASS, &tclass, sizeof(int));

相关阅读:

答案 1 :(得分:0)

我不明白这个问题。你不需要破解任何东西。提供了一个用于在套接字上设置TC的API。它的影响取决于干预路由器的合作。

答案 2 :(得分:0)

源可以更改优先级,但是路由器和网关可以根据优先级不同的数据包类型更改优先级