admin 管理员组文章数量: 1086019
2024年4月28日发(作者:scanf函数什么时候用)
第34卷第11期
计 算 机 学 报
Vo1.34 No.11
2011年11月
CHINESE JOURNAL OF COMPUTERS
NOV.2O11
面向下一代互联网实验平台的
新型报文处理模型——EasySwitch
李 韬 孙志刚 陈一骄 贾春波 苏 琪 郭腾飞
(国防科学技术大学计算机学院长沙410073)
摘 要 下一代互联网实验平台应能提供网络原型系统快速开发及部署能力,以有效支撑新型互联网体系结构关
键技术的实现和验证.基于FPGA(Field Programmable Gate Array)技术构建的网络实验平台可以提供较高的可编
程性和性能,而它对硬件逻辑设计能力的要求则严重限制了平台的广泛应用.新型报文处理模型EasySwitch通过
优化设计并预置通用报文交换及处理逻辑,有效实现用户定制报文处理逻辑与通用报文处理逻辑解耦;良定义的
用户模块接口则使用户仅需关注业务特定逻辑实现,有效简化用户逻辑设计.理论分析表明,EasySwitch可通过提
供确定性资源约束模型,有效支持FPGA资源的优化利用.此外,EasySwitch具有较低的报文调度处理延迟,对实
验系统输入流量真实特性影响较小.EasySwitch模型在NetMagic平台的有效实现及应用表明该模型可为下一代
互联网新型报文处理机制及协议的快速设计、开发和验证提供有力支撑.
关键词 报文处理模型;实验平台;报文交换;NetMagic平台;FPGA
中图法分类号TP393 DOI号:10.3724/SP.J.1016.2011.02187
A Novel Packet Processing Model for Next・_Generation Internet
Experimental Platform EasySwitch
LI Tao SUN Zhi—Gang CHEN Yi—Jiao JIA Chun-Bo SU Qi GUO Teng—Fei
(School of Computer,National University of Defense Technology,Changsha 410073)
Abstract To support the implementation and verification of the key technologies of the next—
generation Internet architecture,the corresponding network experimental platforms should pro—
vide the ability of rapid development and deployment of network prototype systems.The FPGA
(Field Programmable Gate Array)based experimental platforms provide both high programmabil—
ity and high performance.However,the requirement of the hardware logic design ability greatly
limits the widespread application of these platforms.A novel packet processing model,EasyS—
witch,is proposed to reduce the barriers of the network experimental system design and develop—
ment.By pre—placing the common packet switching and processing functions,EasySwitch decou—
pies the customized packet processing logic and the common packet processing logic.Its well—de—
fined standard User Module socket interfaces allow the users to focus on implementing their own
logic,simplifying the programming of hardware logic.Theoretical analysis shows that EasyS—
witch can optimize the hardware resource utilization of the FPGA with its deterministic resource
constraint mode1.Moreover,with the low packet scheduling latency,EasySwitch model has less
impact on the real characteristics of the input traffic from the experimental system.The imple一
收稿日期:2011一O8—29;最终修改稿收到日期:2011-09—16.本课题得到国家“九七三”重点基础研究发展规划“大规模流媒体高效传输技术”
(2009CB320503)资助.李韬,男,1983年生,博士,助理研究员,主要研究方向为网络处理器、路由与交换.E—mail:taoli.nudt@gmail.corn.
孙志刚,男,1973年生,博士,研究员,主要研究领域为网络通信、路由与交换.陈一骄,男,1972年生,博士,副研究员,主要研究方向为网
络通信、可重构路由器.贾春波,男,1987年生,硕士研究生,主要研究方向为网络测量、网络交换.苏琪,男,1985年生,硕士研究生,主
要研究方向为网络协议、网络测量.郭腾飞,男,1984年生,硕士研究生,主要研究方向为网络协议、网络测量.
计 算 机 学 报
mentation of EasySwitch model on the NetMagic platform demonstrates that EasySwitch can pro
vide efficient support for the rapid design,development and verification of the novel packet pro
cessing mechanisms and network protocols.
Keywords packet processing model;experimental platform;packet switching;NetMagic platform;
FPGA
1 引 言
在真实网络环境中进行实验并收集数据结果是
下一代互联网创新技术研究最有效和最具说服力的
手段.因此,下一代互联网体系结构研究_1 无论是采
用渐进式演进路线(如中国下一代互联网示范工程
CNGI)还是Clean Slate革命性路线(如美国国家科
学基金会FIND项目)都强调网络实验平台在实现
和验证新型网络协议和服务方面的关键地位.NSF
GENI(Global Environments for Network Innova—
tion)计划、EU FP7 FIRE计划,以及日本的JGNX
计划都试图通过构建大规模可编程实验床支持下一
代互联网技术研究.
以路由器为代表的网络设备作为支撑互联网运
行的基础,是支撑下一代互联网实验平台构建的关
键.为有效支持以软件定义网络、虚拟化、原语扩展
等下一代互联网技术,支撑网络技术研究的实验平
台必须提供可编程、可重构以及可重用特性,能有效
支持网络技术快速开发与部署,降低验证测试成本,
匹配新型互联网功能原语的时空演化特性.
面向上述需求,出现了基于通用微处理器(纯软
件)、网络处理器、图形处理单元GPU(Graphics
Processing Unit)、ASIC(Application—Specific Inte—
grated Circut)以及FPGA(Field Programmable
Gate Array)等的网络实验平台.其中,FPGA技术
由于具有可重构能力,可取得在性能和灵活性方面的
良好折衷,目前受到广泛关注.作为采用FPGA技术
的典型代表,NetFPGA平台_2 基于模块化可重用设
计思想,提供清晰的接口及丰富的参考设计,广泛应
用于网络教学和科研.然而,NetFPGA平台缺乏支
持用户开发的优化报文处理模型,难以为用户逻辑
功能的规划设计提供有效支撑.SwitchBlade¨3 基于
流水化思想,设计了一种可定制报文处理模型,能够
有效支持新型网络协议和虚拟化技术.然而,为减少
硬件综合时间,该模型预置了丰富的可配置流水线功
能模块,占用硬件资源较多,限制了用户开发灵活性.
基于FPGA技术的实验平台设计门槛较高,需
要开发者具有一定硬件开发及设计经验,很多平台
还需要用户提前规划实验方案的性能指标和硬件资
源使用,从而阻碍了FPGA实验平台的广泛应用.
面向下一代互联网技术的实验平台及相应模型应能
够最大限度简化用户硬件逻辑开发,降低设计开发
门槛.此外,针对FPGA硬件资源有限的特点还应
提供确定性资源占用及性能评估模型,以指导和协
助用户完成设计规划.
针对上述需求,本文提出了一种面向下一代互联
网实验平台的新型报文处理模型——EasySwitch.
EasySwitch模型主要特点包括:
(1)通过预置通用报文交换处理逻辑及良定义
用户逻辑开发接口,实现用户业务逻辑与通用处理
逻辑显式分离;
(2)支持并行数据平面和资源隔离,支持网络
虚拟化技术;
(3)提供确定性模型指导硬件资源配置及性能
优化,为用户逻辑规划和开发提供充分设计裕度.
2 相关工作
随着下一代互联网研究的开展和深入,支撑实
验床构建的网络设备平台体系结构和处理模型也逐
渐引起关注.
Click模块化路由器L4 支持以软件方式进行定
制协议和报文转发操作的快速开发.而基于内核的
报文转发很难实现线速处理性能.高性能软件路由
器RouteBricks_5 基于商用多核处理器实现可获得
较高报文转发性能,但可扩展性受限于连接网卡和
CPU的PCI—E(Peripheral Component Interconnect
Express)总线带宽.此外,采用RouteBricks开发的
原型也很难移植到硬件上.PacketShaderL6 利用
GPU加速软件路由器报文处理过程,通过应用程序
(库程序)控制硬件转发过程,可以达到每秒数百万
报文的处理速度.然而,所采用的批处理方式会引入
较高的报文处理延迟_3J.
l1期 李 韬等:面向下一代互联网实验平台的新型报文处理模型一Easyswitch 2189
Supercharged PlanetLab(SPP) 基于Intel
IXP网络处理器实现报文数据平面处理,具有同时
线速处理来自多个端口报文的能力.由于部署代价
昂贵,目前仅适合在大规模交换中心中部署.
PNIC-8 采用配备了IXP2855 16核网络处理器的
Netronome NFE—i8000构建,支持数据中心网络相
关技术,可以灵活实现虚拟网卡、Openflow交换[9]及
时钟同步等功能.基于网络处理器的方式可以获得
较高的处理性能和编程灵活性.然而,编程开发与特
定厂商平台相关,缺乏可移植性,限制了其数据平面
功能的优化实现与重用.
PLUGn 提供了一个编程模型框架用于实现
高性能报文查找芯片,可以获得高速报文处理能力,
然而全定制芯片设计代价较高,开发周期较长.
ServerSwitch[1 采用集成商用交换芯片方式实现报
文定制处理,由服务器CPU负责报文控制平面和
数据平面处理,可以有效实现数据中心网络多种组
网方式所需的路由交换功能.然而商用交换芯片的
可编程能力仍然局限于特定报文字段的匹配处理,
难以有效支持新型网络协议的实现与验证.
与基于ASIC的平台相比,基于FPGA的设计
不仅可以提供功能可重构能力,还可以极大缩短开
发和部署周期;相比基于软件的平台,在性能方面更
具优势.例如,NetFPGA平台作为一款面向网络课
程教学的评估卡,在教学科研中已得到十分广泛的
应用.NetFPGA通过提供丰富的参考设计(如IPv4
路由器、OpenFlow交换机等),以重用和修改移植
等方式,为用户逻辑功能实现提供支持.然而,由于
缺乏对用户逻辑和平台预置逻辑进行清晰划分的报
文处理模型,用户逻辑开发受限于特定参考设计的
复杂度和相似度,在一定程度上制约了网络实验原
型系统的快速构建.
基于FPGA实现的OpenFlow交换模型和
SwitchBlade处理模型 都试图通过硬件提供丰富
报文处理功能集合以增强新型网络技术的快速开发
和部署能力.然而,互联网技术的演进性将导致预置
报文处理功能集合不断膨胀,很难期望能够获得一
个稳定的功能基底.此外,上述模型预置的通用报文
处理逻辑较为复杂,与实验无关的特定功能逻辑占
用较多FPGA硬件资源,难以为用户开发提供充足
的可用资源.
3 EasySwitch处理模型
EasySwitch处理模型面向可重构FPGA技术
提出,试图通过预置优化的报文交换及处理功能,简
化用户逻辑开发及调试工作,并通过定义简洁而清
晰的接口,将用户业务逻辑与预置逻辑显式分离,使
用户可以专注于业务逻辑开发,而不需了解其它外
围模块的功能实现细节.
与已有模型不同,EasySwitch处理模型充分考
虑FPGA资源的有限性,仅试图通过预置网络设备
(路由器、交换机等)基础、稳定的通用报文处理功
能,即报文交换功能,将报文分类、查表匹配、深度报
文检测等高级报文处理功能以可重用硬件模块构件
方式提供给用户,供用户按需集成.除报文交换功能
外,EasySwitch还基于聚类合并方法,预置了核心
报文处理功能逻辑.基于对通用报文处理操作的归
纳总结,通过编码形成报文处理规则集合.
如图1所示,EasySwitch报文处理模型主要由
三部分组成,即输人控制IC(Input Contro1)、输出
控制OC(Output Contro1)以及用户模块UM(User
Module).基本的报文交换功能由IC/OC中输入调
度器IS(Input Scheduler)和输出调度器OS(Output
Scheduler)协同完成,而报文处理规则指定的报文
处理操作则由OC通过对来自UM的处理规则信号
解码完成.IC/0C是EasySwitch模型定义的预置
处理逻辑,UM承载用户业务处理逻辑实现.用户模
块接口UMS(User Module Socket)则显式定义了
预置处理逻辑与用户自定义逻辑间的接口,用户逻
辑的开发只需考虑满足UMS规范要求,无须关心
预置逻辑的具体实现.
图1 EasySwitch处理模型
为有效支持网络虚拟化技术,EasySwitch模型
支持集成多个UM实现并行数据平面.通过为多个
UM提供独立的处理和存储资源(如转发表),可以
实现并行数据平面间的资源隔离.EasySwitch也允
许多个UM间的资源共享,避免资源复制,以提高
FPGA资源利用率.
3.1输入/输出控制
EasySwitch模型中的输入控制负责接收来自
多个网络接口的报文,在完成校验后进行汇聚,并根
据报文分类规则分派到一个或多个UM中处理,同
一
报文仅允许分派到一个UM.由于多时钟域设计
计 算 机 学 报
会加剧FPGA逻辑设计复杂度,EasySwitch模型要
求各UM以及UMS运行在统一的时钟频率上.输
出控制OC负责接收UM处理完成后的报文以及相
应的处理规则,通过译码处理规则执行对该报文指
定的处理操作(如截断、复制等),之后将报文发送到
目标输出缓冲队列.
EasySwitch模型中输入调度器IS采用连续工
作模式(即若某输入缓冲队列中包含报文尾,调度器
将调度输出该完整报文,保证输出链路不空闲),对
输入缓冲队列IQ(Input Queue)进行调度.由于不
能预先假定UM对IQ报文的处理策略,IS采用公
平调度算法.可重用硬件模块库中也包含支持贪婪、
加权轮转等其它调度算法的IS,可供用户选择集
成.输出调度器OS主要负责响应并处理来自UM
的报文处理请求,也可采用类似IS的连续工作模式
和公平调度算法,以防止请求“饿死”.各UM也可
以选择集成内部输出缓冲队列,基于灵活性考虑,其
管理和配置由用户根据应用需求确定,EasySwitch
模型不作规定.
3.2用户模块uM
EasySwitch模型可灵活支持多种UM开发模
式.以单UM为例,包括旁路处理(bypass)模式、穿
透处理(pass—through)模式以及混杂处理(promis—
CUOUS)模式.
(1)旁路处理模式.UM不修改报文内容,只根
据报文中提取的关键字,通过查表等方式,决定报文
的处理行为.通过在IC与OC间设置输入报文缓冲
PB(Packet Buffer),到达的报文可在PB中缓存,
OC在接收到UM的处理控制信息后,从PB中读取
报文,并对其执行相应的处理.
(2)穿透处理模式.IQ中报文全部进入UM,
并在UM中缓存和处理.UM可以直接修改报文字
段,进行如地址替换、TTL(Time To Live)更新等操
作.OC接收uM处理完成后的报文,并按照对应的
规则对报文进行相应的转发控制操作.
(3)混杂处理模式.uM不修改报文内容,到达
的报文在PB中缓存,并根据输入报文信息构造产
生新的报文.UM必须产生与原始输入报文和新产
生报文一一对应的处理规则,并发送到输出控制,输
出控制根据处理规则,选择PB或UM中对应报文完
成指定转发控制操作.该模式不支持多UM实现.
需要注意的是,为简化控制复杂度,EasySwitch
模型要求多UM必须采用同一模式设计实现.
3.3 UMS接口
UMS定义了用户模块UM与预置模块IC/OC
间的接口,即UMS—I和UMS-0,所有满足UMS接
口约束的UM都可无缝集成到EasySwitch模型.
UMS—I为报文输入接口,是IC与UM间的通
信接口,采用简单的报文FIFO(First In First Out)
接口定义.UMS—I接口包括带内数据和带外信息两
部分.带内数据为完成校验处理的有效报文数据,数
据宽度通常设为多个字节以提高报文处理流量,带外
信息则包括编码后的报文头尾标识、输入接口号等.
UMS一0为报文输出接口,是OC与UM间的
通信接口,由报文数据接13和输出控制接口组成.报
文数据接口定义与UMS—I接口类似,其中带内报
文数据位宽与UMS—I相同,带外信息不包含报文
输入接1:3号信息.输出控制接口用于传递UM对报
文的决策结果,以报文处理规则形式定义,OC通过
译码处理规则,确定报文的下一步处理动作.EasyS—
witch模型定义并实现的报文处理规则由以下字段
构成:
(1)接口bitmap,用于选择接口集合中的一个
或多个接口输出报文;
(2)操作字段,指定处理动作即丢弃、转发或
截断;
(3)报文截断长度;
(4)保留字段.
上述处理规则各宇段通过相互组合可以覆盖按
端口转发、多端口复制转发、丢弃、截断后单端口或
多端口报文转发等多种报文转发处理操作,并通过
设置保留字段可支持功能扩展.此外,输出处理规则
还定义了报文规则绑定指示,用于选择从UM或
PB接收报文.
4资源及性能分析
对于基于FPGA的网络实验平台,由于用户硬
件逻辑设计受FPGA片上资源、处理频率等多方面
因素影响,在进行实验方案设计时,必须对方案的资
源占用及性能指标进行评估.NetFPGA采用基于
参考设计的开发方式,用户业务逻辑与预置逻辑间
缺乏明显划分,无法有效评估预置逻辑对业务逻辑
在资源和性能等方面的影响;SwitchBlade模型中预
置处理逻辑则过于复杂,也难以提供精确的资源及
性能分析评估模型.
EasySwitch模型基于简洁的UMS接口,实现
了用户逻辑与预置逻辑的清晰分离,可以提供确定
性资源约束及性能评估模型.下面介绍面向接口数
目及缓冲队列长度需求建立的EasySwitch资源约
11期 李韬等:面向下一代互联网实验平台的新型报文处理模型——EasySwitch
束模型,并针对网络测量应用需求,评估EasyS—
witch模型报文调度处理性能.表1列出了EasyS—
witch模型资源及性能分析涉及的相关参数.简化
起见,网络接口设为千兆以太网,内部数据通路
(FIFO接口)位宽为128位,Is采用连续工作模式.
表1 EasySwitch处理模型相关参数
N 输人接口的数目 B 输入缓冲队列容量
,
网络接口速率 , IS(即数据路径)的处理
(1Gbps) 频率(Hz)
,
Is调度输出速率 链路报文的最大长度
’。 (V。一,×Bd) (1500Bytes)
)州刻 Bd 数据通路位宽
叭 U J曼
FPGA缓冲队列容量
上限
4.1资源约束模型接口
EasySwitch模型中的预置逻辑在FPGA上实
现必须满足以下约束:一方面,FPGA片上资源(尤
其是存储资源)有限,EasySwitch模型中缓冲队列
(即IQ/OQ)占用存储资源比例不应过大,影响用户
逻辑开发自由度;另一方面,EasySwitch模型必须
保证在报文处理过程中预置逻辑不能造成输入报文
丢失,即输入缓冲队列不应出现溢出,这要求输入缓
冲队列必须有充足的缓冲存储资源①.上述约束模
型RS可以形式化为
fN×B C (1)
R5: a  ̄Bq
B X Vi--
邶
其中,式(1)反映了FPGA存储资源约束,式(2)则
用于保证输人缓冲队列在公平调度情况下不会出现
溢出,相关证明参见附录中定理1.
以EasySwitch处理模型在NetMagic一24@和
NetFPGA网络实验平台的实现为例,假设允许输
入缓冲队列最多占用40 存储资源.NetMagic一24
平台FPGA存储容量约为8×10 bits(C№M踱i 一
3.2×10 bits),数据通路位宽Bd为128位;NetFPGA
平台FPGA存储容量约为4.9×10。bits(CNetFPGA一
1.96×10。bits),数据通路位宽Bd为64位.在上述
条件下,图2和图3分别给出了NetMagic一24及
NetFPGA平台在不同IS处理频率下,接I=I数目N
与输入缓冲队列容量B问的约束关系.
由图可知,数据通路(调度器)处理频率越高,可
支持的接口数目越多.如图2所示,NetMagic平台
下,处理频率为75 MHz时,最多可支持10个千兆接
口;100MHz时,则最多可支持l4个千兆接口.经过
综合仿真,EasySwitch处理模型在NetMagic一24平
接口数目N
图2 NetMagic一24平台资源约束
接121数目N
图3 NetFPGA平台资源约束
台最高数据通路时钟频率_厂m 可达169.43 MHz,考
虑到用户业务逻辑的嵌入可能会导致综合后 的
下降,为保留设计裕度,其数据通路时钟频率厂设
定为125MHz.因此,由图2可知,在该频率下Net~
Magic一24最多可支持16个千兆接口.由于NetFPGA
平台数据通路时钟频率也设定在125 MHz,由图3
可知,若该平台采用EasySwitch处理模型,在该时
钟频率下,最多可支持8个千兆接口;若时钟频率提
高到150MHz,NetFPGA则最多可支持1O个千兆
接口.然而,NetFPGA实际仅集成了4个千兆接口.
NetFPGA采取保守设计的主要原因在于采用参考
路由器作为预置逻辑实现,功能复杂,资源占用较
多,无法保证更多接口报文的线速处理.
4.2报文调度性能
基于EasySwitch处理模型的网络实验平台可
以支持多种应用部署场景,不仅可作为报文流旁路
处理设备,也具有部署在报文数据通路内处理的能
力.后者是支持网络测量技术实现和验证极为重要
的手段.对于测量精度要求较高的实验,EasySwitch
模型可保证调度处理对输入报文流量特性的影响可
① 由于无法预知和假设UM报文向OQ写入速率,OQ长度
难以通过理论分析获得,通常采用经验值设定.
② 参见NetMagic官方网站www.netmagic.org
计 算 机 学 报
确定或可忽略.下面将具体分析EasySwitch处理模
型报文调度性能.
EasySwitch模型对报文P处理调度延迟E( )
可以分为两部分,即报文传输延迟以及排队调度
延迟.
E( )一T(p)+Q( ) (3)
其中,丁(p)表示报文P进入UM处理前经过输入
缓冲队列的传输延迟(即报文头进至尾进延迟),
Q( )表示报文P经过输入控制IC的排队调度延迟
(即报文尾进至头出延迟).
由于缓冲队列分布、数据通路位宽及处理频率
在实现时已知,且报文P的长度l( )可在接收时获
得,因此丁( )可由式(4)计算获得.对于网络测量
等应用场景,T(户)可以通过在UM中利用时间戳
修正机制消除.
T(p)一I z( )/(fXBd)l (4)
在EasySwitch处理模型中,不可修正的性能误
差主要由Q( )构成.由附录1中定理2可知,报文
P在』\,进1出的连续工作模式调度系统中,排队调
度延迟Q( )具有上限,即
Q( )<(N×L—Z( ))/(fXBd一(N一1)Vi)
(5)
根据式(5),图4给出了在IS不同处理频率下,
最大报文调度延迟与网络接口数目的关系.
图4报文调度延迟分析
由图可知,相同接口数目下,调度器处理频率越
高,报文调度处理延迟越低.对于特定处理频率,支
持的输入接口数目不应超过某一特定值,否则报文
调度延迟将急剧增长,以.厂:100MHz为例,支持接
口数目N应小于12,以保证获得可接受的报文调度
延迟.此外,对于延迟敏感的应用,可以通过提高处
理频率及减少占用接口的方法降低EasySwitch模
型调度延迟对系统延迟的影响,通常可以控制在
100肚s内.
5模型实现与应用
∞ ^ 盖
m 舳∞∞加o
我们基于NetMagic平台对EasySwitch处理
模型进行了实现和验证.如图5所示,NetMagic目
前提供NetMagic一24和NetMagic一08两个版本.
NetMagic一24采用部分可编程交换体系结构,将大
容量FPGA(MagicFPGA)与商用交换芯片相结合,
提供可编程性与性能的良好折中.24个千兆以太网
接口中,16个由MagicFPGA(Altera Arria II
GX EP2AGX125)控制,具有完全可编程能力.
NetMagic一08是NetMagic一24的lite版本,采用低
成本和小型化设计方案,基于Altera Arria II GX
EP2AGX45 FPGA提供共8个(4个光口4个电I:21)
完全可编程千兆以太网接口.
(a)NetMagic一24
(b)NetMagic一08
图5 开放式可重构网络实验平台NetMagic
5.1基本结构
如图6所示,MagicFPGA是NetMagic平台实
现报文处理可重构的核心,EasySwitch处理模型在
MagicFPGA中以预置方式实现,支持8或16个千
兆以太网接口报文接收,并提供转发、截断、复制等
EasySwitch定义的基本报文处理规则.此外,
EasySwitch模块对平台集成的外部存储器(如
-
Net M
№agic  ̄
0
一
。
MagicFPGA
I
I
管
局部控
理
制总线
模
块
一77_-:22把
I
l
交 :
换 :
i
些
P0 +P, +P … +P
图6 EasySwitch处理模型实现
11期 李 韬等:面向下一代互联网实验平台的新型报文处理模型——Easyswitch 2193
DDR、SRAM)以及高速XAUI接口等进行封装,为
UM提供良定义访问接口以及仲裁机制,有效隔离
各UM访问资源.用户仅需专注于UM业务逻辑,
而不必考虑网络接口、数据缓冲、平台管理等其它外
围逻辑的具体实现.uM与其它外围逻辑之间数据
通路位宽为128 bits,处理频率为125 MHz.
EasySwtich模型仅定义报文数据平面处理规
范,NetMagic平台提供基于以太网的通用管理控制
接口及协议,为控制平面处理功能实现提供兼容性
和可移植性支持.用户可在任何带有以太网接口的
主机或平台上,通过Socket编程,按照NetMagic访
问控制(NetMagic Accesss and Control,NMAC)协
议标准①,将管理控制命令封装成标准以太网报文,
发送到NetMagic管理控制接口P0对平台进行管
理和控制.MagicFPGA内部的管理模块负责基于
NMAC协议与外部控制器建立连接,并对管理报文
中封装的命令进行解析,转换为局部控制总线信号,
完成对平台中EasySwitch等模块及存储器的初始
化配置及管理控制.
表2及表3给出了NetMagic一24平台中管理模
块及全配置(接口数目N一16)EasySwitch模型的
资源占用情况.
表2管理模块资源占用
表3 ̄asySwitch模块资源占用
表4给出了在支持4个千兆输人端口线速报文
转发情况下,EasySwitch模型与NetFPGA参考路
由器及SwitchBlade基本模型占用FPGA逻辑/存
储资源情况.其中,NetFPGA及SwitchBlade相关
数据来源于文献[3].由表可得,与其它模型相比,
EasySwitch模型通过优化设计占用FPGA硬件资
源(尤其是存储资源)较少,可为用户提供极大的设
计裕度,有效减少用户逻辑开发的限制.
表4 EasySwitch模块资源占用(jv一4)
5.2应用实例
在EasySwitch处理模型下,网络报文数据平面
处理功能的定制工作基于硬件逻辑编程语言(如
Verilog等)对UM实现.用户可以选择在UM中的
自主实现报文定制处理功能,也可以选择通过修改、
移植参考设计等方式加速逻辑设计工作.下面介绍
基于EasySwitch处理模型在NetMagic平台上实现
的多种新型报文处理机制和网络协议.
5.2.1 RLI延迟测量与评估
RLI(参考延迟插值)延迟测量体系n 是普渡大
学在SIGCOMM 2010上提出的一种流级精确延迟
测量技术.RLI延迟测量体系可为互联网中微秒级
低延迟应用提供有效监测手段,支持网络故障快速
定位和排除.RLI通过在报文的发送端插入携带时
间戳的参考报文,并在接收端计算参考报文的真实
延迟,采用线性插值方法评估被测报文流的传输延
迟.我们基于EasySwitch模型在NetMagic平台上
实现了RLI延迟测量与评估功能.
如图7所示,RLI延迟测量与评估系统采用
Pass—Through模式实现,由参考报文产生UM和延
迟评估UM构成.参考报文产生UM负责接收来自
流量产生端(S)的待测报文,根据RLI算法完成参
考报文自适应插入,将提取的待测报文及参考报文
摘要信息(包括发送时间戳)封装后,通过UMS—O
接口发送到OS调度输出.其中,待测报文及参考报
文的目标端口为TX3(即待测设备输入端),而摘要
报文的目标端口则为TX5(即性能监测端).延迟估
计UM负责接收自待测设备返回的待测报文和参
考报文,并根据当前时间戳计算参考报文真实延迟,
最后封装待测及参考报文摘要信息(包括发送时间
戳等)并发送.返回的待测报文通过OS发送到流量
接收端(R),摘要报文发送到性能监测端(M),参考
报文则被废弃.
待
图7 RLI延迟测量与评估实现
RLI延迟测量与评估系统仅使用2个输人端
口,即N一2.根据式(2),输入缓冲队列IQ容量设
①NMAC协议实现(NMAC Protocol Implementation),Net—
Magic研究组,http://www.netmagic.org/Data/Code/
NMAC.rar.
2194 计 算 机 学 报 2011正
为12800bits(队列长度为100)即可保证报文队列
不溢出;由式(5)可得,对于任意以太网报文,
Q( )<1.568 bLS,可满足RLI延迟测量体系精度
(10 s~100us)要求.由于篇幅限制,详细内容参见
文献[13 .
5.2.2其它应用
我们与香港理工大学合作基于EasySwitch模
型在NetMagic平台上实现了OneProbe网络测量
机制[1 的硬件加速,相比传统基于软件的实现方式
具有更高的性能和精确性.此外,针对支持流媒体高
效传输的新型传输层协议Labelcast ̄的实现,则进
一
步验证了EasySwitch模型对新型网络协议实现
和验证的有效支持,关于EasySwitch模型更多应用
实例可参见NetMagic论坛④.
5.2.3特点与优势
EasySwitch模型在NetMagic平台的成功应用
表明,EasySwitch模型具有结构简单、接口清晰以
及资源占用少的实现特点,易于硬件实现.预置的
IS/OS等调度器及接口逻辑,允许应用开发聚焦于
用户逻辑UM实现,并可为多数据通路资源隔离提
供支持.通过采用UMS接口将UM与预置逻辑解
耦,可支持基于标准接口构建可重用硬件模块库.
EasySwitch模型资源、性能等特征参数可以采用精
确的数学模型表述,从而为高精度网络实验的规划
及实现提供理论依据,将实验系统误差控制在可接
受范围内,适用于网络测量等对网络设备性能及精
度要求较高的网络实验场景.
6 总 结
面向下一代互联网技术创新实验需求,针对现
有FPGA实验平台报文处理模型缺失、设计开发门
槛高、硬件资源有限等问题,本文提出了一种新型报
文处理模型EasySwitch.EasySwitch的设计基于严
谨的科学分析和丰富的设计经验,在考虑FPGA资
源约束情况下,通过优化设计预置逻辑,为用户逻辑
开发提供一个稳定、开放、通用的接口UMS,允许用
户专注于业务逻辑实现,减少设计开发工作量和周
期.EasySwitch模型支持通过集成多个UM实现并
行数据平面及资源隔离,从而为虚拟化技术提供实
现基础.通过提供精确的资源约束模型和性能分析
模型,EasySwitch可为网络实验系统设计规划提供
科学指导和优化.目前,EasySwitch模型已成功应
用于多种新型网络处理机制及协议的开发和验证.
参 考 文 献
Eli wu Jian—Ping。wu Qian.Xu Ke.Research and exploration
0f next_generation internet architecture. Chinese Journal of
Computers,2008,31(9):1536—1548(in Chinese)
(吴建平,吴茜,徐恪.下一代互联网体系结构基础研究及探
索.计算机学报,2008,31(9):1536—1548)
[2]Naous J,Gibb G,Bolouki S,McKeown N.NetFPGA:Re—
usable router architecture for experimental research//Pro—
ceedings of the ACM Workshop on Programmable Routers
for Extensible Services of Tomorrow(PREST0’08).New
York,USA,2008:1-7
[3]Anwer B,Tariq M,Motiwala M,Feamster N.SwitchBlade:
A platform for rapid deployment of network protocols on pro—
grammable hardware//Proeeedings of the ACM SIGCOMM
2O10.New Delhi,India,2010:183—194
[4]Kohler E,Morris R,Chen B,Jannotti J,Kaashoek M F.
The click modular router.ACM Transactions on Computer
Systems,2000,18(3):263—297
[53 Dobrescu M,Egi N,Argyraki K et a1.RouteBricks:Exploi—
ting parallelism to scale software r0uters//Proceedings of the
22nd ACM Symposium on Operating Systems Principles
(SOSP’09).Big Sky,USA,2009:15—28
[6]Han S,Jang K,Park K,Moon S.PacketShader:A GPU—
Accelerated software router//Pr0ceedings of the ACM SIG—
C0MM 2O10.New Delhi,India,2010:195-2O6
[7]Turner J,Crowley P,DeHart J et a1.Supercharging Planet—
Lab:A high performance,multi—application,overlay net—
work platform//Proceedings of the ACM SIGCOMM 2007.
Kyoto,Japan,2007:85—96
[8]Luo Yan,Murray Eric,Ficarra Timothy L.Accelerated vir—
tual switching with programmable NICs for scalable data cen—
ter networking//Proceedings of the 2nd ACM SIGCOMM
Workshop on Virtualized Infrastructure Systems and Archi—
tectures(VISA’1O).New Delhi,India。2010:65-72
[9]MeKeown N,Anderson T,Balakrishnan H,Parulkar G,
Peterson L,Rexford J,Shenker S,Turner J.OpenFlow:
Enabling innovation in campus networks.ACM SIGCOMM
Computer Communication Review,2008,38(2):69-74
[1o]Carli L D,Pan Y,Kumar A,Estan c,Sankaralingam K.
Flexible lookup modules for rapid deployment of new proto—
cols in high—speed routers//Proceedings of the ACM SIG—
COMM.Barcelona,Spain,2009:207—218
[11]Lu G et a1.ServerSwitch:A programmable and high per—
formance platform for data center networks//Proceedings of
the 8th USENIX Symposium on Networked Systems Design
and Implementation(NSDI’11).Boston,USA,2011:I-14
①
Labelcast Protoco1. Internet Engineering Task Force
Draft.http://tools.ietf.org/html/draft—sunzhigang—sam—
labelcast—O2
②
NetMagic官方论坛.http://bbs.netmagic.org
11期 李 韬等:面向下一代互联网实验平台的新型报文处理模型——Easyswitch 2195
[1 2]Lee Myungjin,Duffield Nick,Kompella Ramana Rao.Not
al1 microseconds are equal:Fine—grained per-flow measure—
ments with reference latency interpolation//Pr0ceedings of
the ACM SIGCOMM 2010.New Delhi,India,2O10:27:38
[13]Li Tao,Sun Zhigang,Jia Chunbo,Su Qi,Lee Myungjin.
Using NetMagic to observe fine~grained per-flow latency
measurements//Proceedings of the ACM SIGCOMM 2011.
附录
定理1. 连续工作模式的输入调度器,当接口数目~<
(fXBdXB+BXV.一_厂×Bd×L)/(B×V.)时,报文在输入
缓冲区中不溢出.
证明. 采用反证法.假设输入缓冲中的报文在T 时刻
有溢出,在此前调度器最后一次由空闲状态进入工作状态的
时刻为r厂0,即在区间[ ,T ]中调度器持续调度报文输出.
又假设设在rr】时刻接收缓冲区i溢出,在区间[ ,T ]中调
度器调度缓冲区i报文输出的时间为t ,调度其它(N一1)个
缓冲区报文输出的时间为t。,则有 +T1一t +tz.
由于在,r0之前调度器处于空闲状态,因此每个缓冲区
中都没有完整的报文待调度,即每个缓冲区的数据容量均小
于L.对于缓冲区i,在T 时刻溢出,可得
B<Ii(To)+( 1+t2)X ~VoXtl<L+( 1+t2)X —VoXt1
(6)
即T 溢出,表明在[ ,T ]区间内进入缓冲区的数据加上
时缓冲区原有的数据去除调度离开的数据大于缓冲区容
量B.
对于其余N一1个缓冲区,有
Ⅳ一1
XfXBd<(t1+ 2)XV x(N一1)+∑ii(丁o)
l
<(N一1)(t1+t2)XV。+(N一1)×L (7)
即在[T0,T ]区间,N一1个缓冲区中原有的数据量加上到
达的数据量大于调度输出的数据量.
由式(6)、(7)相加可得
t1+t2<(NXL~B)/[ ~N× ] (8)
LI Tao,born in 1983,Ph.D.,
lecturer.His research interests include
network processor and routing and
switching.
SUN Zhi—Gang,born in 1973,Ph.D.,professor.His
research interests include network communication,routing
and switching.
CHEN Yi・Jiao,born in 1972,Ph.D.,associate profes—
Toronto,Canada,20l1:46&467
El4]Luo Xiapu,Chan Edmond W W,Chang Rocky K C.Design
and implementation of TCP data probes for reliable and met—
ric—rich network path monit0ring//Pr0ceedings of the 2009
Conference on USENIX Annual Technical Conference.San
Diego,USA,2009:卜14
由式(6)得
t1+t2>(B—L)/V (9)
由式(8)、(9)得
(B—L)/Vi<(NX L—B)/[V。一NXV。] (1O)
即N>(fXBdXB+B×V 一fXBdXL)/(BXV ),与假设
矛盾,定理得证. 证毕.
引理1. 在任何时刻t,N个输入队列积累的数据和
TD(£)小于N×L.
证明. 在任何[T0,T1]连续调度周期中,输入调度的速
率S×N×V 不小于N个端口输入速率之和,因此在时间区
间[ ,T ]内,TD( )最大.TD(To)不可能超过N×L.否
则在 之间的很短的某个时刻,必有某个输入队列长度大
于L,即至少积累一个完成报文,这与 时刻才开始调度是
矛盾的. 证毕.
定理2. 在连续工作模式公平调度算法下,长度为z(户)
的报文在输入缓冲队列中最大排队调度延时为Q(户)<
(NXL一£(声))/((fXBa一(N一1)V.).
证明. 任何调度周期/非调度周期内,N一1个缓冲队
列中原有数据加上到达数据的量大于调度输出的数据量.因
此,在[ ,T ]连续调度中,报文P在t 时刻完全进入缓冲
区,其尾进头出延时Q( )满足
Q(户)XfXBd<TD( 1)一z(户)+(N一1)×、,.×Q(声)
<N×L—Z(p)+(N~1)×V ×Q(p),
因此可得Q( )<(NXL—z(p))/(fXBa一(N~1)×V ),
定理得证. 证毕.
sor.His research interests include network communication
and reconfigurable routers.
JlA Chun-Bo,born in 1 987,M.S.candidate.His re—
search interests include network measurement and network
switching.
SU Qi,born in 1985,M.S.candidate.His research in-
terests include network protocol and network measurement.
GUO Teng—Fei,born in 1 984,M.S.candidate.His re—
search interests include network protocol and network switc—
hing.
2196 计 算 机 学 报 2011年
Background
Network experimental platform is one of the key compo—
nents of the next—generati0n Internet technology research,
such as software—defined network(SDN),network virtual—
ization,primitive extension,etc.The FPGA—based network
experimental platform can achieve high flexibility and per—
formance.Up tO now,1ots of researches have focus on the
FPGA~based network experimental platform.However,
there are two main problems of existing platforms.The first
is the lack of accurate and optimized packet processing model
tO support and simplify the development for the users.Sec—
ondly,the scarce hardware resources restrict the users tO de—
velop and deploy their customized packet processing logic.
The main contributions of this work are as follows:
(1)A novel packet processing model is proposed for the FP—
GA—based network experimental platform.(2)With the pre—
placed packet switching logic and well— defined UMS inter—_
face,the customized packet processing logic and the common
packet processing logic can be efficiently separated.The US—
ers do not need to handle the common packet processing or
interface logics,such as input/output packet interface,pack—
et scheduler,ete.(3)Based on the model,theoretical analy—
sis can be utilized for optimizing hardware resources configu—
ration and packet processing performance,which provides ef—
ficient directions for the development and implementation of
the network experimental systems.
The EasySwitch model has been implemented on the
NetMagic platform,which is an open reconfigurable network
experimental platform designed by the National University of
Defense Technology.Several prototype systems have been
successfully built utilizing the platform with the EasySwitch
mode1.It is proved that the model can provide rapid develop—
ment and deployment and the required high packet processing
performance for the new network technologies.Moreover,
compared with the existing models,the EasySwitch requires
less hardware resources for implementing the preplaced pro—
cessing logic,which brings more design space tO the users.It
is worth mentioning that all gatewares and documents of the
hardware modules developed under the EasySwitch model on
the NetMagic platform are open tO the network community to
encourage the hardware reuse.
The research is partially supported by the National Basic
Research Program(973 Program)of China under grant
No.2OO9CB32O5O3.Especially,the research is mainly focus
on building an efficient experimental platform for implemen—
irng and verifying the new network protocols and packet pro—
cessing mechanisms proposed in the program.
版权声明:本文标题:面向下一代互联网实验平台的新型报文处理模型——EasySwitch 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1714244003a671461.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论