好吧,我注意到在 Java 和其他语言中可能有一个类似于 Socket 的选项
setTrafficClass(int tc)
我知道我正在使用的应用程序的流量类别为 24,但是尽管谷歌搜索我找不到这些类别对应的列表,也找不到有效类别的列表。
请赐教。md_5
根据 的规范Socket.setTrafficClass,我们看到:
对于 Internet 协议 v4,该值由一个 组成
integer,其中的最低有效 8 位表示套接字发送的 IP 数据包中 TOS 八位字节的值。RFC 1349 定义 TOS 值如下:
IPTOS_LOWCOST(0x02)IPTOS_RELIABILITY(0x04)IPTOS_THROUGHPUT(0x08)IPTOS_LOWDELAY(0x10)最后一个低位总是被忽略,因为它对应于 MBZ(必须为零)位。
24是0x18ie 0x10 | 0x08,它对应于IPTOS_THROUGHPUT并被IPTOS_LOWDELAY设置。
如您所见,TOS 仅作为提示;它要求高吞吐量、低延迟的路由......可能会或可能不会被服务!
您可以 在此处阅读RFC 1349和相关的 Wikipedia 文章中有关服务类型的更多信息。
流量等级最终是您和最近的路由器之间的问题。该领域经历了几次突变。它在 IPv4 和 IPv6 之间也有所不同。IPv4 的第一个定义在 RFC 791-5 中给出;这在RFC 1349中进行了修订,并在RFC 2474中完全重新定义为“差异化服务”。自从我在 2003 年左右为我的书研究它以来,整个业务很可能已经再次修改。对于 IPv6,请参阅 RFC 2460。Javadoc 中关于IPTOS_*值的内容是指 RFC 1349,并且在编写时已经过时了几年。