- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第三章ARP协议分析
3.3ARP的实现
3.3.1ARP的软件设计
概述
➢ARP概念层次
➢ARP软件在理论上的结构
➢ARP设计方案举例
ARP概念层次
➢设备驱动程序直接与网络硬件通信,并只能使用网络物理地
址发送和接收分组。
➢ARP将上层的IP地址与底层的物理地址进行绑定(binding)。
➢地址绑定软件形成了只能使用IP地址的上层协议软件与只能
使用物理地址的下层设备驱动程序软件之间的分界线。
使高层协议与物理地址完全独立。
Q:地址转换协议(ARP)软件,属于网络接口层or网络层?
ARP概念层次
•OSI模型:ARP协议属于链路层;从功能角度
–当网络层的IP包进入链路层时,链路层通过
ARP协议添加链路信息,
•TCP/IP模型:ARP协议属于网络层。从协议封装
角度
ARP软件在理论上的结构
从理论上讲,ARP软件可划分为三部分:
➢输出模块:发送数据时,将高层协议地址(如IP地址)与相
应的物理地址相绑定;
•被定义为一个过程(函数),需要时被网络接口软件调用
•函数返回一个地址绑定给网络接口程序,用于封装和发
送链路分组
➢输入模块:处理收到的ARP分组
•增加新的绑定来修改ARP高速缓存中的内容
•是否需要应答
➢高速缓存管理程序:实现了高速缓存替换/删除表项策略。
ARP设计方案举例
ARP软件几个简单的设计规则:
➢单一的ARP高速缓存
一台设备(多归属主机)设立一个缓冲区,指明每个表项来
自哪个接口,而不是为每个接口设立一个缓冲区
➢全局替换策略。针对局部替换策略
ARP设计方案举例
ARP软件几个简单的设计规则:
➢高速缓存中的超时与删除每个表项设置寿命字段
➢等待地址绑定的高层协议分组以多队列的形式等待发送
对ARP缓冲区每个表项设置一个外发分组等待队列
➢互斥访问:互斥访问ARP缓存,互斥机制由调用者完成
2021/7/8
ARP设计方案举例
比较两种方案:
➢每个接口分配一个独立的高速缓存+本地替换策略
保持了网络接口之间的相对独立性
➢单一的ARP高速缓存,全局替换策略
破坏网络接口的独立性
高速缓存总是保持着100%的容量--若某个网络接口上的
通信量所涉及的目的站数目大大超过了其他网络接
管理员会监督网络性能问题,并在出现这样的问题时,
分配附加高速缓存空间。
2021/7/8
XINUARP软件结构
整个ARP软件主要分为4个部分:
➢ARP软件初始化
➢ARP报文处理
➢ARP缓存维护
➢ARP请求的发送。
ARP软件初始化
•ARP软件初始化是伴随着系统网络模块初始
化进行的,网络初始化函数netstart()会调用
arpinit()函数初始化ARP软件,同时会创建。
XINUARP软件结构维护ARP缓冲区
IP分片队列
IP路由表信息
维护ARP缓冲区
发送arp
请求初始化
文档评论(0)