1. 位段:把若干整形的空间 分配给若干整型的成员用 <只能是整型>
1 struct tt{ 2 int a:2; //最高位为符号位 3 unsigned int b:4; //四位 4 unsigned int c:10; 5 int :3; 6 int d:5;7 };
用法和结构体一样,用.引用成员变量
2.TTL:8位生存时间
剩余能过路由的跳数值,每次经过一次路由,TTL值减1,当减为0时被丢失
3.IP校验和只检验IP首部,其余协议(首部和和数据)都校验
问:为什么IP协议只校验首部数据?
答:路由器是第三层设备,转发IP数据报,而且每次转发都要经经过两次校验:
- 接收数据时,校验数据包是否正确;
- 转发前需要更改MAC地址,故须更改校验和
而且路由器工作量很大,所以需要校验的数据越少越好。
4.校验算法:
相邻两个字节求和再按位取反;