第二章网络奥现模型
第二章 网络实现模型
模型的重要性 ●网络算法学的一个难题是它需要多个领域的知识: 协议、硬件、体系结构、操作系统、算法等 需要不同领域的专家协作设计出高效的网络计算机系统 ●不同领域的专家通过简单的模型进行对话: 模型描述了问题的要点,又不涉及不必要的细节 最低程度:模型应能定义所需要的术语(能够交流) 最好情况:领域外的专家可以根据模型进行设计,并可 由领域内的专家对设计进行验证
模型的重要性 网络算法学的一个难题是它需要多个领域的知识: 协议、硬件、体系结构、操作系统、算法等 需要不同领域的专家协作设计出高效的网络计算机系统 不同领域的专家通过简单的模型进行对话: 模型描述了问题的要点,又不涉及不必要的细节 最低程度:模型应能定义所需要的术语(能够交流) 最好情况:领域外的专家可以根据模型进行设计,并可 由领域内的专家对设计进行验证
2.1协议抽象模型 cLOsE 协议定义了对等实体之 被动打开 上动打 可通信的规则 发送SYN 收到SYN LISTEN 发送SYN+ACK 被动打开 定义了对等实体之间交 收到RST 发送SYN 换的报文的格式和次序 收到SN发送SYN+ ACK ISYN-sen或超时 同时打开 主动打开 °收到ACK ●定义了在发送报文、收 收到SYN+ACK 发送ACK 到报文或收到其它事件 数据传送 被动关闭 阶段 送FN TABLISHEDA话AC CLOSE-WAr 后采取的动作(通常给 关闭 发送FN 主动关闭 关闭 出一个协议状态机) 发送FN 收到FN同时关闭 发送ACK FIN- WAIT-I CLOSING ●定义了调用接口 收到ACK 收到FN+ACK LAST-ACK 收到ACK 发送ACK收到ACK 收到FN 发送ACE IN-WAIT.2 TIME-WAIT 等特2MSL时间后 图533TCP的有限状态机 2021/1/26
2.1 协议抽象模型 协议定义了对等实体之 间通信的规则: 定义了对等实体之间交 换的报文的格式和次序 定义了在发送报文、收 到报文或收到其它事件 后采取的动作(通常给 出一个协议状态机) 定义了调用接口 2021/1/26
协议抽象模型(续) ●可将协议看成是加上了调用接口和报文格式定义的状态 机,所有协议都可以抽象为图中的状态机模型: 个上层接口调用使协议状态机初始化 在某个状态时,可能发送一个报文、收到一个报文或发 生一个定时器事件,并进入一个新的状态 User calls STATE Timer calls (e.g, seq numbers) Send message Receive message
协议抽象模型(续) 可将协议看成是加上了调用接口和报文格式定义的状态 机,所有协议都可以抽象为图中的状态机模型: 一个上层接口调用使协议状态机初始化 在某个状态时,可能发送一个报文、收到一个报文或发 生一个定时器事件,并进入一个新的状态
常见而耗时的功能(TCP/P) ●与数据包收发有关的功能 CONTROL TRANSFER ●数据操作:交换、数据拷贝、 检错等 Demultiplex Schedule tasks 分配资源(如内存、CPU) Set timers PROTOCO·与协议处理有关的功能: Manipulate state PROCESSING Look Up state 重组数据包 Reassemble 查表及修改状态 设置定时器 Allocate resources(buffers, CPU) 调度任务 DATA MANIPULATION ●数据包交付给应用: (e.g, switch, copy, checksum) ●解复用(确定目标程序) ●控制切换(唤醒目标程序)
常见而耗时的功能(TCP/IP) 与数据包收发有关的功能: 数据操作:交换、数据拷贝、 检错等 分配资源(如内存、CPU) 与协议处理有关的功能: 重组数据包 查表及修改状态 设置定时器 调度任务 数据包交付给应用: 解复用(确定目标程序) 控制切换(唤醒目标程序)
重要的性能指标 两个最重要的性能指标: ·吞吐量:每秒处理的包数(pps)或比特数(bps) 延迟:处理一个数据包的时间(通常关注最坏情况延迟) 性能测量分为: 全局性能测量:如端到端延迟和带宽,使用网络管理工 具(如 Open view)进行测量 ●本地性能测量:如路由器查找速度,使用计算机内部的 性能测量工具(如 Oprofile,Ⅴtune)测量 ●本课程关注数据包在本地的处理速度,线速处理是系 统优化的重要目标之
重要的性能指标 两个最重要的性能指标: 吞吐量:每秒处理的包数(pps)或比特数(bps) 延迟:处理一个数据包的时间(通常关注最坏情况延迟) 性能测量分为: 全局性能测量:如端到端延迟和带宽,使用网络管理工 具(如OpenView)进行测量 本地性能测量:如路由器查找速度,使用计算机内部的 性能测量工具(如Oprofile, Vtune)测量 本课程关注数据包在本地的处理速度,线速处理是系 统优化的重要目标之一
因特网环境的特点 ●链路速度已达到万兆量级 LoGbps已普及,40Gbps在数据中心很常见,1 ooDbs已出现 TCP流量占主导 ●大量应用使用TCP协议 小包很多 ·路由器收到的包中大约一半为最小长度(40字节)的包 移动互联网、即时通讯应用中大量都是小包 局部性很差 骨干网上,在一个非常短的时间内大约有一百万个并发流经 过一个路由器 ●这意味着,在一个包上执行的计算,在未来短时间内重用到 另一个包上的可能性很小
因特网环境的特点 链路速度已达到万兆量级 10Gbps已普及,40Gbps在数据中心很常见,100Gbps已出现 TCP流量占主导 大量应用使用TCP协议 小包很多 路由器收到的包中大约一半为最小长度(40字节)的包 移动互联网、即时通讯应用中大量都是小包 局部性很差 骨干网上,在一个非常短的时间内大约有一百万个并发流经 过一个路由器 这意味着,在一个包上执行的计算,在未来短时间内重用到 另一个包上的可能性很小
网络计算机系统面临的挑战 ●高速链路+大量小包: 包速率很高 线速处理难度大:处理一个包的时间必须非常短 高速链路+大规模并发流: 数据局部性很差 Cache用不上(命中率低),消除访存瓶颈困难 TCP流占主导+TCP处理开销大: 优化TCP实现很重要
网络计算机系统面临的挑战 高速链路 + 大量小包: 包速率很高 线速处理难度大:处理一个包的时间必须非常短 高速链路 + 大规模并发流: 数据局部性很差 Cache用不上(命中率低),消除访存瓶颈困难 TCP流占主导 + TCP处理开销大: 优化TCP实现很重要
2.2存储器 ●在现代计算机系统结构中,访存是最大的性能瓶颈: 存储器访问时间比指令执行时间长很多 处理器速度和访存速度之间的鸿沟越来越宽,使得访 存瓶项问题更加突出 访存构成了端节点和路由器的主要性能瓶颈: 数据包、状态信息、指令等都保存在内存中 ●许多系统优化工作都是围绕访存优化而展开的 2021/1/26
2.2 存储器 在现代计算机系统结构中,访存是最大的性能瓶颈: 存储器访问时间比指令执行时间长很多 处理器速度和访存速度之间的鸿沟越来越宽,使得访 存瓶项问题更加突出 访存构成了端节点和路由器的主要性能瓶颈: 数据包、状态信息、指令等都保存在内存中 许多系统优化工作都是围绕访存优化而展开的 2021/1/26
存储器的种类 寄存器: ●由一组有序的触发器构成,访问同一个片上寄存器的耗 时大约为051ns SRAM: 由一组寄存器构成。一般情况下,片上SRAM的访问时 间为1-2ns,片外SRAM的访问时间为510ns DRAM: 存储单元组织成行、列二维结构。片上DRAM的访存延 迟大约为3ons,最快的片外DRAM访存延迟为40-6ons, 连续读的延迟约为0ons 2021/1/26
存储器的种类 寄存器: 由一组有序的触发器构成,访问同一个片上寄存器的耗 时大约为0.5-1 ns。 SRAM: 由一组寄存器构成。一般情况下,片上SRAM的访问时 间为1-2ns,片外SRAM的访问时间为5-10ns。 DRAM: 存储单元组织成行、列二维结构。片上DRAM的访存延 迟大约为30ns,最快的片外DRAM访存延迟为40-60ns, 连续读的延迟约为100ns。 2021/1/26