没有合适的资源?快使用搜索试试~ 我知道了~
网络协议规范(pdf)
4星 · 超过85%的资源 需积分: 10 16 下载量 118 浏览量
2008-09-10
21:20:42
上传
评论
收藏 893KB PDF 举报
温馨提示
试读
223页
各种网络协议规范,包括 IP,TCP, UDP, TELNET, FTP, SMTP, POP3, SOAP, IPV6等,资料来自互联网,由本人整理。
资源推荐
资源详情
资源评论
网络协议总汇
Internet 协议(Internet Protocol)
1. 介绍
1.1. 产生原因
IP 协议是用于将多个包交换网络连接起来的,它在源地址和目的地址之前传送
一种称之为数据报的东西,它还提供对数据大小的重新组装功能,以适应不同网
络对包大小的要求。
1.2. 范围
IP 的责任就是把数据从源传送到目的地。它不负责保证传送可靠性,流控制,
包顺序和其它对于主机到主机协议来说很普通的服务。
1.3. 接口
这个协议由主机到主机协议调用,而此协议负责调用本地网络协议将数据报传送
以下一个网关或目的主机。例如 TCP 可以调用 IP 协议,在调用时传送目的地址
和源地址作为参数,IP 形成数据报并调用本地网络(协议)接口传送数据报。
1.4. 操作
IP 实现两个基本功能:寻址和分段。IP 可以根据数据报报头中包括的目的地址
将数据报传送到目的地址,在此过程中 IP 负责选择传送的道路,这种选择道路
称为路由功能。如果有些网络内只能传送小数据报,IP 可以将数据报重新组装
并在报头域内注明。IP 模块中包括这些基本功能,这些模块存在于网络中的每
台主机和网关上,而且这些模块(特别在网关上)有路由选择和其它服务功能。
对 IP 来说,数据报之间没有什么联系,对 IP 不好说什么连接或逻辑链路。
IP 使用四个关键技术提供服务:服务类型,生存时间,选项和报头校验码。服
务类型指希望得到的服务质量。服务类型是一个参数集,这此参数是 Internet
能够提供服务的代表。这种服务类型由网关使用,用于在特定的网络,或是用于
下下一个要经过的网络,或是下一个要对这个数据报进行路由的网关上选择实际
的传送参数。生存时间是数据报可以生存的时间上限。它由发送者设置,由经过
路由的地方处理。如果未到达时生存时间为零,抛弃此数据报。对于控制函数来
说选项是重要的,但对于通常的通信来说它没有存在的必要。选项包括时间戳,
安全和特殊路由。报头校验码保证数据的正确传输。如果校验出错,抛弃整个数
据报。
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:4 位
Internet 包头长度是以 32 位为单位标记的包头长度,它指向数据的开始位置,
这个域的最小合法值为 5。
服务类型:8 位
它是一些指示服务质量的参数,这些参数用于在特定网络指示所需要的服务。有
些网络会提供优先级服务。选择的基本原则是以下三者的权衡:低延时,高可靠
和高吞吐量。
0-2: 优先级
3: 0 = 通常延时 1 = 低延时
4: 0 = 通常吞吐量 1 = 高吞吐量
5: 0 = 通常可靠性 1 = 高可靠性
6-7: 保留
优先级的说明如下:
剩余222页未读,继续阅读
资源评论
- luziferr2012-03-08内容挺全的,就是少数图片清晰度差点,挺好的!
- hrbhitxw2023-02-22目录只到ftp协议,后面的需要用查找定位。看了一部分,可以用于参考,但掌握协议还需要补充资料
- freetime3652012-02-10内容非常全面,只是pdf文件没有目录,不便于查阅!
wwssir
- 粉丝: 3
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功