SDN涉及协议及标准分析.ppt_第1页
SDN涉及协议及标准分析.ppt_第2页
SDN涉及协议及标准分析.ppt_第3页
SDN涉及协议及标准分析.ppt_第4页
SDN涉及协议及标准分析.ppt_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SDN涉及协议及标准分析 SDN标准研究 SDN标准 OpenFlowOF CONFIG I2RSNVO3ForCES SG13Y FNsdnSG11Q Supplement SDN ISGNFV Contents OpenFlow OF CONFIG IETF相关协议 2 3 OpenFlow架构 OpenFlow1 0 OpenFlow1 1 FlowTable的组成 MatchFields Actions Instructions Counters 基于Table Flow Port Queue的各种报文计数器 Actions forward enqueue drop modify fieldInstructions modifyaction setorpipelineproc FlowTable的matching PacketInStartatTable0 MatchedinTablen 更新计数器执行Instructions UpdateactionsetUpdatepacket matchsetfieldUpdatemetadata Yes No 根据表配置 1 丢弃 2 发给Controller 3 继续下一个流表匹配 执行ActionSet GotoTablen Yes No Pipeline的处理 每个openflowswitch的pipeline包含多个flowtable 每个flowtable包含多个flowentry 每个flowentry的处理结果只能交个序号更大的表进一步处理 Outputactionset和报文关联 可以用instructions来修改已匹配上的报文的actionset 当pipeline处理结束时 开始执行actionset中的动作 ActionSet执行时要按顺序 copyTTLinwards pop push copyTTLoutwards decrementTTL set qos group GroupTable Grouptable赋予了逻辑端口转发流的额外能力 引入grouptable的动机是为了支持L2 L3多路径转发 另外还可支持LAG linkaggregation ECMP non ECMP 快速重路由 multi homing BGP下一跳汇聚 GroupIdentifier Counters GroupType 组的类型 all 所有bucket执行 多播 广播转发 select 基于switch的bucket选择算法 indirect 执行定义的bucket 聚合 fastfailover 直接执行第一个livebucket 报文被一个组处理的计数器 ActionsBuckets 32bit 唯一标识一个组 有序的actionbucket列表 MultipathGroupTable示例 图1 从源S到目的D有两条路径1 2 4和1 3 4 交换机1有两个端口port0 port1 图2 用mpgroupid表示逻辑接口 先发送groupmod消息 配置group为多路径类型 再发送flowmod配置流表 并将最后的forward action指向group的逻辑端口 图3 或者在flowmod消息中隐含定义group 图4 定义hash表将mpgroupid映射到实际的硬件组 图1 图4 图3 图2 OpenFlow消息 OpenFlowProtocol由三种类型的消息controller to switchAsynchronousSymmetriccontroller to switch该消息由controller发送 用于管理和检查switch的状态Features消息 在SSL TCP会话建立后 controller给switch发送Features请求switch的相关信息 switch必须应答自己支持的功能 包括datapathid 数据路径接口号 接口名 接口MAC地址 接口支持的速率等等基本信息Configuration消息 controller可以设置或查询switch的状态Modify State消息 controller发送该消息给switch 来管理switch的状态 即增加 删除 更改流表 并设置switch的端口属性Read State消息 controller用该消息收集switch上flow tables ports individualflowentries的统计信息Send Packet消息 controller发送该消息到switch的特定端口Barrier消息 Controller用Barrierrequest reply消息来确保switch是否完成之前的操作得到应答后才会下发新的消息 用来解决消息依赖关系 OpenFlow消息 Asynchronous该消息由switch发起 当switch状态发生改变时 发送该消息告诉controller状态变化Packet in消息 对数据包来说 当FlowTable中没有匹配的表项或者匹配 sendtocontroller switch将给controller发送packet in消息 Flow Removed消息 当给switch增加一条表项时 会设定超时周期 当时间超时后 该条目就会被删除 这时switch就会给controller发送Flow Removed消息 当流表中有条目要删除时 switch也会给controller发送该消息Port status消息 当数据路径接口被添加 删除 修改的时候 datapath需要使用OFPT PORT STATUS消息来通知控制器Error消息 当交换机需要通知控制器发生问题或错误时 switch给controller发送Error消息 OpenFlow消息 Symmetric该消息由switch或者controller发起Hello消息 当一个OpenFlow连接建立时 controller和switch都会立刻向对端发送OFPT HELLO消息 该消息中的version域填充发送方支持的OpenFlow协议最高的版本号 接收方收到该消息后 接收方会计算协议版本号 即在发送方和接收方的版本号中选择一个较小的 如果接收方支持该版本 则继续处理连接 连接成功 否则 接收者回复一个OFPT ERROR消息 类型域中填充ofp error type OFPET HELLO FAILEDEcho消息 switch和controller任何一方都可以发起Echorequest消息 但收到的一方必须回应Echoreply消息 这个消息可以来测量latency controller switch之间的连接性 即心跳消息 Vendor消息 Vendor消息为OpenFlowswitches提供标准的额外功能 为未来版本预留 Vendor域为厂家ID信息 由IEEEOUI标示 OpenFlow支持的动作类型 v1 0 OpenFlow协议发展 1 011元组单流表 所有试验系统的基础目标1 1多表 转发面多表 pipeline设计 标签和隧道 支持标签操作 MPLS VLAN 虚接口 支持多路径转发 Group表支持多出口操作ECMP groups 1 2TLV描述matchfilde 动态多表完善对IPv6的支持完善Controller可靠性的问题1 3MeterTable 支持PBB tablemiss 控制通道多连接 多控制器协作1 3 1提高了版本协商能力 OpenFlow1 0协议 2009年12月发布Slicing支持为出端口配置多个队列 每个队列对应的带宽可配置 Flowcookies作为透明数据携带在修改流表命令中 转发面上报流表信息 例如查询流表状态 流表项超时 时 cookie会作为透明数据带回给控制器交换机描述信息 OFPST DESC 在转发面可配置的交换机描述数据 包括制造商信息 软硬件信息等流匹配字段增强支持ARP报文中IP字段的匹配支持匹配IPTos DSCP域查询端口的统计数据增强了流表项超时的精度 毫秒 纳秒 OpenFlow1 1协议变化 2011年2月发布Multipletables controller可在一台交换机上部署多个流表 流表由v1 0扁平式的MatchFields actions改为灵活的多个流表组成pipeline处理 GroupTable 引入grouptable支持L2 L3多路径转发 支持组播 负载均衡以及快速倒换等业务 Tag Tunnels 支持QinQ和MPLS 支持虚拟端口支持逻辑端口 隧道 转发面同时上报逻辑端口以及相应的物理端口Openflow连接失败删除了emergencyflowcache功能增加了Failsecuremode或者Failstandalonemode OpenFlow1 2协议变化 2011年12月发布OXM OpenflowExtensibleMatch 采用OXM 类似TLV格式的数据结构 来表示ofp match 增强了灵活性 OpenFlow1 1是固定的15个匹配项 而OpenFlow1 2采用了TLV格式的匹配模式 可以动态调整匹配项 这样使流表的长度从固定长度变为可变长度 增加流表灵活性的同时也增加转方面处理难度 增加set field动作采用OXM来描述对报文头部的修改全面支持experimenter 从消息交互 match action 队列 统计 错误码等都有所增加 IPv6支持支持IPv6 匹配字段增加了IPv6源地址 目的地址 协议号 传输类型 ICMPv6 多控制器支持定义了三种控制器角色 Equal Slave Master OpenFlow1 2协议变化 续 Matching变化匹配思路变化 从以自己定义的匹配项为中心 转移到以报文为中心的匹配 在1 1定义了15个匹配项及整体匹配流程 在1 2只定义匹配的元规则 这个有助于experimenter对报文结构及匹配规则进行创新 增加了OXMTLV类型定义 对match进行重新定义 TLV化 原来是静态定义 现在是动态扩展 OXMTLV的头部还明确了ONF成员和非成员定义 用TLV表达匹配项 没有列出来的匹配项相当于1 1的通配符效果 去掉了wildcards宏定义 消息变化Modify Add消息 如果没有指明清除统计是 不能清除旧表项的统计信息 1 1是直接清除 Modify消息 1 1 在没有表项时相当于Add 但在1 2不做处理 修改了Packet in消息格式 增加了OXM TLV格式 使携带的端口信息TLV化 OpenFlow1 3协议变化 2012年4月发布增强了控制器与交换机之间的能力协商描述流表支持的能力增加table miss流表项没有匹配上流表的报文被称为table miss报文 而table missflowentry专门处理这种报文 V1 3里改为增加一条table missflowentry 这条流表条目具有最低的优先级 并且其Match项忽略 table missflowentry的action可以是丢弃 送到另一个流表匹配 或者packet in到控制器 如果没有table missflowentry 缺省动作为丢弃 IPv6扩展头部的支持MeterTable的支持Meter表定义了per flowmeters 可完成简单的QoS操作 例如 速率限制 并且可以和端口队列一起完成复杂的QoS 例如 DifffServ Meters作为一种可选指令 直接和流表条目相关 queues是和端口绑定的 Meter指令是在Apply Actions指令之前执行的 OpenFlow1 3协议变化 续 交换机上报异步事件过滤器控制器指定其希望收到的异步事件增加控制器与交换机之间的辅助连接 慢通道 之前的版本中OF交换机和控制器之间只有一个OFChannel TCP或TLS V1 3中OF交换机可以有多个mainconnection和多个auxiliaryconnections auxiliaryconnections可以专门处理packet inandpacket out报文每个连接都由交换机DatapathID和AuxiliaryID标识 主连接的AuxiliaryID 0 DatapathID 0 Auxiliary连接必须使用和主连接相同的源IP地址 可以使用不同的传输方式 TLS TCP DTLS或UDP 必须使用和主连接相同的目的IP 目的端口号 支持PBB封装取消了报文封装标签的顺序限制所有标签均会被添加到最外层的位置 OpenFlow未来发展计划 由于Openflow协议新版本更新速度快 ONFBoard决定维护一个长期稳定的版本Openflow1 3 XOpenflow1 3 X不会增加新的功能 目标是澄清现有协议 如有必要进行相关的修正ONF鼓励其成员通过extension扩展的方式增加新的功能 ONF每隔3个月打包发布一批协议扩展Extensibility工作组也会继续开发Openflow1 4 1 5版本针对Openflow1 0 X 没有有进一步的工作计划 ExtensibilityWG活跃议题 Contents OpenFlow OF CONFIG IETF相关协议 2 3 OF CONFIG协议 对OpenFlow数据通路进行远程配置 完成一些实时要求不高的操作 例如生成转发表 确定转发动作 开启 关闭端口等 OpenFlow配置点并没有任何预置条件 它可以运行在controller上 也可以在传统网络管理框架内 YANG XML用于数据建模 NETCONF作为传送协议 要求支持OF CONFIG协议的设备必须应用NETCONF作为传送协议 也可以支持WebService Management等其他协议 OpenFlowcapable交换机必须支持OF CONFIG定义的schema OF CONFIG1 0协议 发布于Jan 2012 基于OpenFlow1 2Controllers到logicalswitches的连接配置管理 多控制器的支持Controller Logicalswitch的IP地址 端口号传输协议 TLSorTCP 缺省TLS故障模式的配置failsecurefailstandalone 只适用于Hybrid端口及其属性配置current speed no recv no fwd no packet in link down Blocked liveRate duplex Medium Negotiation Pause a symmetric 队列及其属性配置min rate max rate experimenterlogicalswitches配置资源的查询等 OF CONFIG1 1协议变化 发布于Apr 2012 基于OpenFlow1 3 OFv1 2 加密 针对TLS Certificate配置基于OF1 2and1 3的能力查询交换相关 maxpktbuffers numberoftables numberofsupportedports流表相关 listofmatches listofactions tableinstructions tablemissbehaviorgroup类型groupcapabilities selectweight liveness chaining actiontypesInstructiontypes流表属性查询max entries next tables listofmatches listofactions tableinstructions Metadata wildcardsTunnel配置IPinGRE VxLAN andNVGRE OF CONFIG1 1协议变化 续 1 1新增 OF CONFIG1 1 1协议变化 发布于March 2013 参考OpenFlow1 3 但支持OF1 0 1 1 1 2 增加了版本支持 其他的功能和描述也做了一些改善 C MWG活跃议题 Contents OpenFlow OF CONFIG IETF相关协议 2 3 IETF IETFNVO3 NetworkVirtualizationOverlays nvo3 主要研究数据中心网络 通过提供DCVPN满足多租户的流量隔离 地址独立 支持VM的自由迁移等要求 FrameworkforDCNetworkVirtualization IETFForCES ForwardingandControlElementSeparation主要目标是定义一个框架和机制 标准化控制平面各逻辑功能模块之间交互的信息 包括路由协议 信令 接入控制以及转发平面的包处理动作 包括包转发 队列调度 包头编辑等 RFC3549LinuxNetlinkasanIPServicesProtocol Informational RFC3654RequirementsforSeparationofIPControlandForwarding Informational RFC3746ForwardingandControlElementSeparation ForCES Framework Informational RFC5810ForwardingandControlElementSeparation ForCES ProtocolSpecification ProposedStandard RFC5811SCT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论