- 0
- 0
- 约4千字
- 约 29页
- 2017-12-02 发布于天津
- 举报
Part I 络算法学概述 络实现模型 实现原.PPT
接收端头部预测伪代码(续) 第一个子句检查标志位设置是否符合预期 第二个子句检查是否无窗口更新 第三个子句检查是否是预期接收的段(不是乱序到达或重发的) 若以上条件判断为真,这是预期接收的TCP段,再区分是纯ACK段还是纯数据段 若以上条件判断为假,不是预期接收的TCP段,执行常规的处理过程(慢路径) 标志域以及窗口大小组成一个32位的字,可将这个字的预期值保存到TCB中,头两个子句的检查只需用TCP头的第4个字与TCB中保存的字进行一次比较即可。 发送端头部预测 在发送端发送的一系列 TCP 段中,TCP头部有变化的域只有少数几个 发送端头部预测: 发送端在TCB中建立一个TCP头模板 每当需要发送一个TCP段时 ,将模板拷贝到相应的包缓冲区中,填写少数几个有变化的域 9.3 IP分片重组 分片重组的经典实现: 各分片按照分片偏移量保存在一个有序链表中 一个分片到达时,顺序查找链表,插入到合适的位置 在寻找插入位置的过程中,检查分片之前的数据是否全部到达;如果是, 在插入分片后继续沿链表向下查找,检查是否全部数据已到达;如果是, 重新扫描链表,将数据拷贝到另一个缓冲区中 优化预期情形 重组过程复杂的原因: 考虑到IP分片可能乱序到达,且分片之间可能有重叠 预期情形: IP分片按序到达,且没有重叠 优化预期情形: 若判断为预期情形,只需将到来的分片添加到链表尾部(一个常数时间操作) 优化的IP分片重组算法 在有序链表的基础上,增加一个指向链表尾部的指针 分片到来时,用分片的起始字节偏移量与链表上最后一个分片的末字节偏移量(存在一个变量中)进行比较 若分片顺序到达且无重叠,将分片添加到链表的尾部,更新指向链表尾部的指针,更新末字节偏移量 如果这是最后一个分片(MF=0),重组结束 寻找插入位置及检查重组是否结束,只需要常数时间 假设与实际相符吗? 分片重组优化算法隐含的假设: IP分片按照偏移量从小到大的顺序发送 多数情况下IP包顺序到达 实际测量: 许多较新的实现(包括Linux),发送端按照分片偏移量从大到小的顺序发送IP分片! 原因:最后一个分片携带了IP包总长度的信息,让最后一个分片最先到达接收端,方便接收端为数据包分配适当大小的缓冲区 算法调整 使用第一个到来的分片,判断发送端按照什么顺序发送IP分片 如果第一个到来的分片是第一个分片,使用前述实现 如果第一个到来的分片是最后一个分片,跳转到按逆序处理的程序: 最后一个分片放在链表头部,其余分片按偏移量降序排列 用分片的末字节偏移量与链表尾部分片的起始偏移量进行比较 9.4 总结 缓冲区分配: 空间利用率 vs 合并不连续空闲区域的难度 缓冲区共享: 缓冲区窃取 TCP输入处理、IP分片重组: 通过优化预期情形的处理,提高大多数情况下的算法性能 * Part I 第1章 网络算法学概述 第2章 网络实现模型 第3章 实现原则 第4章 原则的运用 Part II 第5章 数据拷贝 第6章 传输控制 第7章 定时器管理 第8章 提前解复用 第9章 协议处理 第九章 协议处理 本章主要内容 缓冲区管理 常规协议(TCP/UDP)处理:TCP头部预测 分片重组 在极高的数据速率下,协议处理的任何一个环节都不能忽视 对于大量小包来说,主要开销是一般性协议处理而不是数据处理 9.1 缓冲区管理 数据包到达后,首先要分配一个缓冲区 操作系统需提供分配和释放缓冲区的服务,包括: 管理空闲缓冲区 为数据包找到合适大小的缓冲空间 如果多个连接或用户共享一个缓存空间,还需提供某种形式的公平分配 困难:包缓冲区分配必须实时完成 9.1.1 缓冲区分配 经典的BSD UNIX包缓冲区实现称为mbufs: 使用一个缓冲区链来存放一个包,每个缓冲区为一段连续的存储空间 BSD定义了三种大小的缓冲区:100字节、108字节、2048字节(称cluster) Mbufs设计的出发点: 使用一个缓冲区链来存放一个包:允许动态扩展包的缓冲空间;适应各种协议栈 定义不同大小的缓冲区:充分利用内存空间 缺点:访问数据和拷贝数据的开销大 Sk_buff Linux操作系统的包缓冲区实现是sk_buff: 每个包缓冲区都是一块连续地址空间,提前为路径上需要添加的各种协议头预留了空间 Sk_buff的设计原则是用空间换时间: 使用连续地址空间的缓冲区,实现简单,时间开销小 包缓冲区必须满足最大包长,有时会浪费空间 如何为不同大小的包分配缓冲区? 给每个包分配最大长度的包缓冲区是一种浪费 较好的方法是按需分配内存: 当一个包到来时,为其分配一块合适大小的缓存空间 动态分配内存的困难: 用户会在不同的时间释放缓冲区,导致内存中出现许多不连续的、大小不同的空闲区域 教科书上的标准算
您可能关注的文档
- IBM HRL template - 内蒙古自治区住房和城乡建设.ppt
- Ichimoku - 外汇.ppt
- ICS 215215215215 - 湖北省建设信息.doc
- IEEE Xplore - 武汉科技大学图书馆.ppt
- INFOCHINA - 浙江业协会.ppt
- Innov-X Delta Classic DC2000便携式(经典型)合金 .doc
- Internet络系统与实现.ppt
- IntroducingPharmanex, Inc. - PX2健康.ppt
- Introduction - 广西大学图书馆.ppt
- IOA-SAA-1 - 北大未名BBS - 北京大学校园论坛北 .ppt
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 兰科植物促生菌筛选与人工栽培技术研究.pdf
- 氢氧化钠(片碱)MSDS安全技术说明书.docx
- 国家开放大学电大《成本会计》试题及答案.pdf
- 数学分析第四版下册课后习题答案.pdf
- 数学分析第四版下册课后习题答案.docx
- 2025年秋国家开放大学《商务英语3》形考任务参考答案.pdf
- Unit 2 Know your body Speed up 外研版(三起)(2024)英语三年级下册.pptx VIP
- 2026年春季开学教师收心会校长发言:骏驰启新程,笃行育新人;凝心再聚力,实干谱新篇.docx VIP
- Unit 2 Know your body Start up 外研版(三起)(2024)英语三年级下册.pptx VIP
- 空客A320飞行手册教程.doc VIP
原创力文档

文档评论(0)