TCP/IP协议详解v1(第三章IP网际协议)

本文详细介绍了IP协议的基本概念,包括其不可靠无连接的数据传输特性、IP数据报的格式与结构,以及IP路由选择的工作原理。此外,还探讨了子网寻址、子网掩码的应用及特殊IP地址的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

3.1 引言
IP协议是TCP/IP协议族最核心的协议。所有的TCP,UDP,ICMP,IGMP数据都以IP数据报格式传输
IP协议只提供不可靠无连接的数据传输服务
不可靠指IP协议不能保证数据报成功的到达目的地。IP仅提供尽力而为的传输服务,如果某个路由器的缓冲区满了将会丢弃这个数据报,并发送ICMP消息报给信源。可靠性必须由上一层的tcp协议提供
无连接(connectionless)指IP并不维护任何关于后续数据报的状态信息每个数据报是相互独立的。IP数据报可以不按顺序接收,每个数据报都是独立选路的
3.2 IP首部

4字节的32bit值通过一下的次序传输:首先是0~7bit,其次是8~15bit,16~23比特,24~31bit。
当前协议版本为4
首部长度代表32bit字的个数它是一个4bit的字段因此首部最长为60字节
服务类型(tos)字段包括一个3dit的优先权字段(忽略),4bit的TOS字段和1bit未用位必须置0,4bit的TOS分别代表最小时延,最大吞吐量,最高可靠性,最小费用。如果都为0那么就代表一般服务

总长度字段是指IP数据报的长度,以字节为单位。利用首部长度字段和总长度字段就可以知道IP数据报中数据内容的起始位置和长度。由于该字段长16bit,所以IP数据报最长可依达到65535字节。
总长度字段很有必要因为一些数据链路协议需要填充一些数据以到达最小长度。
标示字段唯一地标识主机发送的每一份数据报。通常每发送一份它的值就会加一
每发送一个IP数据报,IP层都要把一个内核变量的值加1.内核的初始值根据系统引导时的时间设置
TTL(time-to-live)生存时间字段设置了数据报可以经过的最多的路由器的个数。
一旦经过一个路由器TTL的值就减一,通常初始值为32或64。减到0 的时候丢弃报文,并发送ICMP报文通知源主机
根据协议字段可以知道那个协议向IP协议传输的数据报
首部校验和是根据IP的首部进行计算的校验和:首先把校验和字段设0然后说首部中每个16bit进行二进制反码求和接收方接受到以后同样对的IP首部中每个16bit位进行反码求和。如果没有差错应该全为1
由于路由器经常只修改TTL字段,因此当路由器转发一份报文时可以增加他的检验和,而不需要对IP整个首部进行重新计算,但是标准BSD并不是这样实现的
接下来是源IP和目的IP
任选项
3.3 IP路由选择
几乎所有的unix系统的主机都可以设置成路由器
主机和路由器的本质区别在于主机不把数据从一个接口转发到另一个接口,而路由器则要转发数据报。内含路由器功能的主机应该从不转发数据报,除非它被设置成路由器
路由表中包含一下信息
目的IP地址或网络号
下一站
标志 一个标示指明下一站是网络地址还是主机地址,另一个标志知名下一站路由器是否为真正的下一站路由器
为数据报的传输制定一个网络接口
IP路由选择主要完成以下功能
寻找与IP完全匹配的项
寻找网络号相同的项
寻找默认项
如果不能送达会向应用程序返回一个“主机不可达”或网络不可达
为一个网络指定一个路由器,而不必为每一个主机指定一个路由器
IP路由选择是通过逐跳实现的。数据报在各站的传输过程中目的IP地址始终不变,但是封装的目的链路层地址在每一站都可以改变。
大多数主机和许多路由器对于非本地网络的数据报都使用默认地址
3.4子网寻址
子网对外隐藏了内部网络组织的细节,缩减饿了路由表的规模
3.5子网掩码
给定IP地址和子网掩码以后主机就可以确定IP数据报的目的地
本子网上的主机
本网络中其他子网中的主机
其他子网中的主机
3.6特殊情况的IP地址

0代表全为0
-1代表全为1
netid,subnetid代表不全为0或1
3.8 ifconfig命令
lo代表环回地址
we以太网接口simplex 标示不能接受到本机传送的数据
3.9netstat命令
提供系统上的接口信息-in
习题
3.1环回地址不一定是127.0.0.1
3.5反对使用非连续的子网掩码
3.7数据报模式对面相连接的协议的好处
降低了路由器对连接状态的需求
数据报提供了基本的构件可以在它的上面构件可靠的运输层和不可靠的的运输层
数据报代表了最小的网络层假定,使得可以使用很大范围的数据链路层服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值