TCPIP协议详解卷一:Chapter3 笔记

    技术2022-07-15  51

    TCP/IP协议详解卷一:Chapter3 笔记

    Chapter 3 IP: 网际协议3.2节 IP首部3.3节 IP路由选择3.4节 子网寻址3.5节 子网掩码3.7节 一个子网的例子3.8节 ifconfig命令

    Chapter 3 IP: 网际协议

    3.2节 IP首部

    IP数据报格式 4位版本号:目前是4,即IPv4; 4位首部长度:首部占32bit的数目,一般等于5(20B * 8bit/B / 32bit = 5,不包括任何选择项)。由于4bit能表示的最大十进制数为15,因此首部长度最大为 15*32bit = 60字节; 8位服务类型(TOS)字段:优先权子字段3bit,TOS子字段4bit(分别代表最小时延/最大吞吐量/最高可靠性/最小费用),未用置0位1bit; 16位总长度字段:整个数据报的长度,以字节为单位,最大为65535字节; 16位标识字段:唯一地标识主机发送的每一份数据报; 16位标识字段、3位标志字段、13位片偏移字段,都与分片有关; 8位生存时间(TTL)字段:数据报可以经过的最多路由数。每经过一个处理它的路由器,其值就减去1;字段值为0时,就丢弃数据报,并发送ICMP报文通知源主机; 8位协议字段:用于识别是哪个协议向IP传送数据; 16位首部检验和字段:根据IP首部计算的校验和码。用于检验首部在传输过程中是否发生了差错。

    3.3节 IP路由选择

    路由表的每一项都包含的信息:

    目的IP地址:一个完整的主机地址或者一个网络地址;下一站路由器(next-hop router)的IP地址;标志:IP地址标志、下一站路由器或接口标志;为数据报的传输指定的一个网络接口。

    3.4节 子网寻址

    以B类地址为例,16位主机号可容纳的主机数为 2 16 − 2 2^{16}-2 2162; 全0和全1的网络号、主机号都作为保留地址,因而需要把总数减去2。 B类地址的一种子网编址为:16位网络号+8位子网号+8位主机号。

    子网的特点:

    子网对外部路由器隐藏了内部网络组织的细节;子网划分缩减了路由表的规模;子网对于子网内部的路由器是不透明的。

    3.5节 子网掩码

    主机用 子网掩码(subnet mask) 确定有多少比特用于子网号以及多少比特用于主机号。子网掩码中值为1的比特对应网络号和子网号,值为0的比特对应主机号。

    3.7节 一个子网的例子

    子网 子网的IP地址 变长子网 作者所在子网140.252.13中使用变长子网。后16位比特中,前11位为子网号,后5位为主机号。对应的子网掩码为 11111111111111111111111111100000 = 255.255.255.224 = 0 x f f f f f f e 0 1111111111111111 1111111111100000=255.255.255.224=0xffffffe0 11111111111111111111111111100000=255.255.255.224=0xffffffe011位子网号中前8bit始终为十进制13。剩下的3bit中,以001代表以太网,以010代表SLIP链路。

    以太网子网号(主机号五位置0):00100000 = 32 即 140.252.13.32; 点对点SLIP链路(主机号五位置0):01000000 = 64 即 140.252.13.64; 以太网上的广播地址(主机号五位置1):00111111 = 63 即 140.252.13.63;

    用四位十进制数字表示IP地址时,第四位数字小于64即位于子网13.32,大于64即位于子网13.64。 主机号 = IP地址第四位数字减去子网号第四位数字。 例如主机svr4的IP地址为140.252.13.34,子网号为140.252.13.32,主机号为 34 − 32 = 2 34-32=2 3432=2

    3.8节 ifconfig命令

    ifconfig命令用于显示或配置网络设备接口。 其中:

    le0、sl0、lo0都是网络接口(网卡)的设备名。最后一位数字是网卡的instance;第一行尖括号中的UP表示激活网卡,BROADCAST表示接口支持广播地址,NOTRAILERS表示报文尾不包括以太网帧数据的尾部,RUNNING表示该接口已被系统识别。inet 140.252.13.33表示接口le0的IP地址,netmask ffffffe0表示对应的子网掩码,broadcast 140.252.13.63表示所处以太网上的广播地址;第二行尖括号中的POINTOPOINT代表点对点直线连接,LINK0表示允许压缩SLIP数据。inet 140.252.1.29 --> 140.252.1.183 表示点对点连接两端的IP地址;第三行尖括号中的LOOPBACK代表本地回路。它是一个A类地址,没有进行子网划分,对应掩码为ff000000。

    netstat命令也能提供系统的接口信息。

    Processed: 0.015, SQL: 9