字节、字、位、比特,这四者之间的关系
1字=2字节=16比特=16位
1.位
位是计算机存储的最小单位,简记为b,也称为比特(bit)计算机中用二进制中的0和1来表示数据,一个0或1就代表一位。位数通常指计算机中一次能处理的数据大小
2、比特
比特(bit)是由英文BIT音译而来,比特同时也是二进制数字中的位,是信息量的度量单位,为信息量的最小单位;
3.字节
字节,英文Byte,是计算机用于计量存储容量的一种计量单位,通常情况下一字节等于八位,字节同时也在一些计算机编程语言中表示数据类型和语言字符,在现代计算机中,一个字节等于八位;
4.字
字是表示计算机自然数据单位的术语,在某个特定计算机中,字是其用来一次性处理事务的一个固定长度的位(bit)组,在现代计算机中,一个字等于两个字节。
IP报字段内容
- 版本(Version)
由4个比特标识IP首部的版本号。 - 首部长度(IHL)
图中每行是32bits(即4字节),图中标识的固定部分总共有5行,也就是说,没有可选项时,IP首部的长度位20字节,即最小为0101。首部长度最大是60个字节?首部长度为4位,而最大值为1111,所以为15*4(每行4个字节)即为60个字节。 - 区分服务(Type Of Service)
由8比特构成,用来标识服务质量… - 总长度(Total Length)
表示IP首部与数据部分合起来的总字节数。该字段长为16比特。因此Ip报的最大长度为65535=(2^16-1)字节。
如果“段总长度”字段为1位,则只能表示0或者1,数据包的最大长度为1(2^1-1)
如果“段总长度”字段为2位,则只能表示0b00、0b01、0b10、0b11,数据包的最大长度为0b11,即为3(2^2-1)
同理,如果“段总长度”字段为3位,则数据包的最大长度0b111,即7(2^3-1)
- 标识(Identification)
由16比特构成,用于分片重组。同一个分片的标识值相同,不同分片的标识值不同。通常,每发送一个IP包,它的值也会逐渐递增。此外,即使IP相同,如果目标,源地址或协议不同的话,也会被认为是不同的分片。 - 标志(flags)
由3比特构成,表示包被分片的相关信息。
0 未使用。现在必须是0
1 指示是否进行分片。0- 可以分片 1-不能分片
2 包被分片的情况下,表示是否位最后一个包。 0- 最后一个分片的包 1- 分片中段的包
- 片偏移(Fragement Offset)
由13位比特构成,用来标识被分片的每一个分段相对于原始数据的位置。第一个分片对应的值为0.由于FO域占13位,因此最多可以表示8192=(2^13)个相对位置。单位8字节,因此最大可表示原始数据8*8192=65536字节的位置。 - 生存时间(Time To Live)
由8比特构成,它最初的意思是以秒为单位记录在当前包在网络上应该生存的期限。然而,在实际中它是指可以中转多少个路由器的意思。每经过一个路由器,TTL会减少1,直到变为0则丢弃该包。 - 协议(Protocol)
由8比特构成,表示的是IP包传输层的上层协议编号。协议略… - 首部校验和(Header Checksum)
由16比特(2个字节构成),也叫IP首部校验和。 - 源地址(Source Address)
由32比特(4个字节构成),表示发送端的IP地址 - 目标地址(Destination Address)
由32比特(4个字节构成),表示接收端IP地址 - 填充
也称作填补物。在由可选项的情况下,首部长度可能不是32比特的整数倍。为此,通过向该字段填充0,调整为32比特的整数倍。 - 数据
存入数据。将IP上层协议的首部也作为数据进行处理