第八章 解复用.ppt
《第八章 解复用.ppt》由会员分享,可在线阅读,更多相关《第八章 解复用.ppt(24页珍藏版)》请在麦多课文档分享上搜索。
1、第八章 解复用,什么是解复用(demultiplexing),解复用: 协议实体将收到的报文交付给相应的客户 分层解复用: 利用包含在报文各层协议头中的解复用域逐层进行,例如: 以太帧头中的type域 IP头中的protocol域 TCP/UDP头中的dest port域 提前解复用(early demultiplexing): 报文到达时,使用一个操作确定报文要经过的整条协议路径,分层解复用示意图,为什么要提前解复用?,区分处理: 优先处理重要的包 尽早丢弃超载应用的包 保证某些应用的服务质量,等等定制路径: 为确定的包处理路径定制高效的处理代码快速分发: 去除每一层上的解复用代码,以及由逐
2、层解复用产生的控制开销(进程或线程调用),包过滤器(包分类器),包过滤器(包分类器): 实现提前解复用的数据结构 以完整的包头作为输入,将包映射到一条处理路径的端点处理路径: 路径端点:最终处理该包的应用进程 路径:在包交给端点之前,需要用来处理该包的一个协议序列,算法设计目标,安全性: 包过滤器由用户级程序提供,在内核实现,应确保用户之间不相互影响高速度: 解复用必须实时(线速)完成可组合性: 应能将N个独立的包过滤器组合为一个复合的包过滤器,并获得更高的匹配速度,8.1 Berkeley Packet Filter(BPF),专为高性能网络监视工具(如tcpdump)而设计 使用一个控制流
3、图模型(状态机)进行计算,感兴趣的包:src IP=X 的IP包和ARP包,BPF内置于OS内核,BPF的调用,BPF由用户提供的一组包过滤器组成,每个包过滤器有一个对应的缓冲区 到达的包首先被网卡驱动程序处理: 若BPF是活跃的,首先调用BPF: 用包头与每个过滤器匹配 对于每个匹配的过滤器,将一定数量的字节(由过滤器指定)拷贝到对应的缓冲区中 不与任何一个过滤器匹配的包交给TCP/IP栈处理,BPF的有用特性,先过滤再缓存: 若大多数包都不是应用想要的,可以避免不必要的浪费(缓冲空间,拷贝时间)允许一次read()调用返回多个包: 为区分包的边界,BPF为每个包加上一个头部,包括一个时间戳
4、和包长度,BPF的扩放性,收到的每一个包必须与每一个包过滤器匹配,处理时间为O(n): 对于典型的BPF应用没有问题:一个典型的BPF应用可能只提供几个过滤器将BPF应用于提前解复用,有扩放性问题: 一个繁忙的服务器中,并发的TCP连接数可能很大,每一个TCP连接可能提供一个包过滤器,8.2 Pathfinder,为在x-kernel中支持用户级网络而设计 设想有500个过滤器,每个过滤器具有相同的Ethernet type =IP和 IP protocol =TCP,只是TCP端口对不同 如果用BPF实现: 用到来的包与每个过滤器匹配,需比较500次Ethernet type 和 500次I
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八 章解复用 PPT
