Internet协议Word文件下载.docx
《Internet协议Word文件下载.docx》由会员分享,可在线阅读,更多相关《Internet协议Word文件下载.docx(18页珍藏版)》请在冰豆网上搜索。
这种服务类型由网关使用,用于在特定的网络,或是用于下下一个要经过的网络,或是下
一个要对这个数据报进行路由的网关上选择实际的传送参数。
生存时间是数据报可以生存的时间上限。
它由发送者设置,由经过路由的地方处理。
如果未到达时生存时间为零,抛弃此数据报。
对于控制函数来说选项是重要的,但对于通常的通信来说它没有存在的必要。
选项包括时间戳,安全和特殊路由。
报头校验码保证数据的正确传输。
如果校验出错,抛弃整个数据报。
IP不提供可靠的传输服务,它不提供端到端的或(路由)结点到(路由)结点的确认,对数据没有差错控制,它只使用报头的校验码,它不提供重发和流量控制。
如果出错可以通过ICMP报告,ICMP在IP模块中实现。
2.总览
2.1.与其它协议的联系
下图显示了IP协议在协议体系中的位置。
IP上下有两个接口,一个是与主机与主机协议的接口,另一个是与本地网络的接口,本地网络可以是小型网络也可以大型网络,说不定的。
2.2.操作模式
下面的例子可以看到操作的模型是什么。
我们假设传输要经过中间网关。
传送进程调用本地IP模块传送数据,同时传送目的地址和其它参数作为调用参数。
IP层准备数据报头并把它加在需要传送的数据之前。
IP模块为这个网络地址决定一个本地网络地址,在这里就是网关地址。
IP传送数据报和本地网络地址到网络接口。
本地网络接口创建一个本地网络头加在数据报上,然后向本地网络发送。
加上本地网络头的数据报到达网关后,本地网络接口去掉这个头,将结果传送给(网关上的)IP模块。
这个IP模块决定决定目的主要的本地网络地址,然后再如上所述的过程传送数据报到本地网络接口。
这个本地网络接口创建一个本地网络头加在数据报上,将数
据报传送到目的主机。
在目的主机上,本地网络接口去掉数据报上的本地网络头,将结果交给IP模块。
IP模块决定数据报应该把数据报向哪一个应用程序传送,系统会发出系统调用,IP模块返回源地址和其它参数。
2.3.功能描述
IP的功能就是把数据报在互联的网络上传送,通过将数据报在一个个IP模块间传送直到目的模块来达到目的。
网络中每个主机和网关上都有IP模块。
数据报在一个个模块间通过路由处理网络地址传送到目的地址。
因此网络地址对于IP协议十分重要。
如前所述,因为各个网络上的数据报大小可能不同,因此有必要对大的数据报进行分段。
寻址
名字,地址和路由是有区别的,名字是我们要找的,地址指出这个名字在什么地方,路由解决如何到那里的问题。
IP主要处理地址的问题。
把名字和地址进行映射的工作由上层协议完成。
IP模块将地址和本地网络地址加以映射,而将本地网络地址和路由进行映射则是低层协议的任务。
地址是32位长,由网络号和本地地址两部分构成。
地址有三类:
A类的最高位为0,后7位表示网络号,其它的24位表示本地地址;
B类前两位为10,后14位表示网络地址,其它16位表示本地地址;
C类三位为110,后21位是网络号,其它8位代表本地地址。
在将网络地址和本地网络地址进行映射时必须注意,有些主机可能使用几个不同的IP地址(我们可以把本地网络地址理解为MAC地址)。
我们必须能够处理一台主机有几个处理端口,而每个端口都有几个逻辑的IP地址。
分段
对于不同的网络,其中传送的包大小可能不一样,因此把大包分小的功能是必须的。
数据报也可以被标记为“不可分段”,如果一个数据报被如何标记了,那么在任何情况下都不准对它进行分段。
如果不分段到不了目的地,那就把包在半路抛弃了。
在本地网内进行的重新分段和重组对IP模块是不可见的,这种方法也可以使用。
本地网分段和重组把重组的各段加上标记,接收方使用这些标记使不同的段区别开来。
段偏移量域告诉接收方应该把这一段放在什么地方,多段标记指示最后一个段,利用不同的域完全可以重组一个数据报。
标记域是用于唯一标记数据报的,它是最初的发送方设置,而且要保证数据报在网络传输的全过程中它中唯一的。
最初的发送方把多段标记设置为零,段偏移量设置为零。
我们假设IP模块把一个大数据报分为两个小的,IP模块首先取得数据报头,再分隔数据为两份,将数据报头加在两份数据上。
分隔数据时以8个字节为单位,第二段不一定是8个字节,但第一个必须是。
我们把第一段中的8位字节数称为段块数(NFB)。
新生成的第一个数据报内是生成的第一段数据,设置多段标记为1;
新生成的第二个数据报内是生成的第二段数据,多段标记等于原来数据报内的值,段偏移量等于原数据报中的值加上NFB。
上述过程可以从2扩展至N的情况。
对段的重组要求以下四个域有相同的值:
标记,源地址,目标地址和协议。
将不同的数据报根据自己带的偏移量重新组合为新段,第一个段的偏移量为0,最后一个段的多段标记为0。
2.4.网关
网关在不同网络间传送数据报,网关也实现网关到网关协议(GGP),它用于传送路由和其它控制信息。
网关中的高层协议根本不用实现,GGP的功能可以在IP模块内实现。
3.说明
3.1.Internet包头格式
包头格式如下:
版本:
4位
此域标明包头的格式。
我们现在说明的是IP版本4。
IHL:
Internet包头长度是以32位为单位标记的包头长度,它指向数据的开始位置,这个域的最小合法值为5。
服务类型:
8位
它是一些指示服务质量的参数,这些参数用于在特定网络指示所需要的服务。
有些网络会提供优先级服务。
选择的基本原则是以下三者的权衡:
低延时,高可靠和高吞吐量。
0-2:
优先级
3:
0=通常延时1=低延时
4:
0=通常吞吐量1=高吞吐量
5:
0=通常可靠性1=高可靠性
6-7:
保留
优先级的说明如下:
111-NetworkControl
110-InternetworkControl
101-CRITIC/ECP
100-FlashOverride
011-Flash
010-Immediate
001-Priority
000-Routine
如果使用了延时(D),吞吐量(T)和可靠性(R)选项可以增加服务质量。
这因各个网络不同而不同,没有通用性。
除了非常特殊的情况外,最多设置两个参数就够了。
服务类型是用来指示如何对待在网络中传送的数据报。
网络控制优先级原来是用于一个网络中的,而实际中却应用于每个网络了。
互联控制是用于网关控制的。
如果只在一个网络中实现了这些参数,那个网络必须在自己的范围之内控制对它们的访问。
总长度:
16位
总长度指的是数据报的长度,由字节计,包括数据和报头。
允许数据报的大小为64K。
这么大的数据报对大多数主机和网络来说是不适用的。
但是,所有主机必须能够接收大于576字节的数据报,无论它们是一起来,还是分段来。
如果知道对方主机能够接收大于576字节的数据报,最好在发送时不要发送小于576字节的数据报。
选择576是因为576=512(数据)+64(报头)。
报头最长不超过60字节,通常为20字节。
标识:
标记是发送用于帮助重组分段的包的。
标记:
3位
1:
保留,必须为0
2:
(DF)0=可分段,1=不可分段
Bit2:
(MF)0=最后一段,1=还有多段
1
2
D
M
F
段偏移:
13位
此域指示这个段在应该在数据报中什么位置,它以64位为单位计算,首段的偏移为零。
生存期:
此域说明数据报在互联网系统生存的最大时间。
如果此域的值为零,抛弃此数据报。
在处理报头的同时也处理此域。
时间以秒计,但每个处理单元都至少会对TTL减一,即使时间小于一秒。
协议:
此域指示用于数据报数据部分的下一层协议。
头校验码:
校验码只在头部,因此头域会在处理时改变,因此头会经常改变。
这种校验方法比较容易计算,实验证明它也是适用的,但它可能在未来被CRC校验过程取代。
源地址和目的地址:
32位,具体情况请看下文。
选项:
长度不定
在数据报中可以有选项也可以没有,但IP模块中必须有处理选项的功能。
有些情况下,安全选项是必须的。
它的长度不定,可以没有也可以是多个。
选项有两种格式:
单独一个选项类型字节
一个选项类型字节,一个选项长度字节和实际选项数据字节
选项长度是选项类型,长度本身和数据的长度。
选项类型可被看作有3个域:
1位复制标记
2位选项类
5位选项号
复制标记指这个选项要在分段是要存在于所有段中。
0=不复制
1=复制选项类有:
0=控制
1=保留
2=调度和测量
3=保留
下面是具体选项:
CLASS
NUMBER
LENGTH
DESCRIPTION
-
选项表结束。
只占一个字节,没有长度字节
无操作。
11
安全,用于传送安全,Compartmentation,用户组(TCC)和DOD规则兼容的处
理限制码
3
变长
松源地址路由,使用源地址提供的信息进行路由
9
紧源地址路由,使用源地址提供的信息进行路由
7
记录路由,用于跟踪数据报采用的路由
8
4
流ID,用于传送流标记
2
4
变长
Internet时间戳
特定选项定义
选项表结束
+--------+
|00000000|
Type=0
此选项指示选项