- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第四章IP
4.3IP实现
4.3.2IP进程的流程图
概述
➢ipproc()流程图
ipproc()在IP软件整体结构中的位置
允许IP进程被阻塞
过程ipgetp包含了一种微妙的优化思想:
✓如果所有输入队列都空,IP进程在调用过程
ipgetp()时被阻塞。
✓一旦有一个数据报到达,IP进程就恢复执行并
立刻检查已有数据报到达的那个接口。
允许IP进程被阻塞
1.当与某个特定接口相关联的设备驱动程序在它的输入队列中
放入一个数据报时.就向IP进程发送一个报文.
2.ipgetp中的循环语句以调用receive结束,
①在ipgetp遍历所有网络接口而没有发现任何数据报之后,
它调用receive,receive在信息到达之前为阻塞状态。
②当ipgetp返回时,它以函数值的形式向主调过程传送一
个报文。
③报文中包含了一个指针,指向已有数据报到达的接口。
3.ipgetp将该接口指针赋值给ifnext,并重新开始遍历
允许IP进程被阻塞
•IP进程的结构:--simple
–IP不断地调用ipgetp来选择一个数据报,
–接着调用一个过程来计算下一跳的地址,并将数据报置
入与将要发送该数据报的网络接口相关联的队列中。
•许多细节问题使程序代码复杂化。
–如果数据报来自于某个网络,IP必须验证此数据报的校
验和是否正确。
允许IP进程被阻塞
•许多细节问题使程序代码复杂化。
–若选路表中没有指定的目的站,IP必须生成一个
ICMP“目的站不可达”报文。
–若选路表指出该数据报应当被送往产生这个数据报的网络
中的某个目的站,IP必须生成一个ICMP“重定向”报文。
–IP必须处理定向广播这一特殊情况,此时IP向指定的网络
发送数据报的副本,并向网关自身的上层协议软件也发送
一份副本。
•IP进程从过程ipproc的执行开始。
小结
➢ipproc()流程图
文档评论(0)