FlexE产生背景

FlexE(Flexible Ethernet)是基于高速以太网接口(100GE及以上接口),通过以太网MAC速率和PHY速率的解耦,实现灵活控制接口速率,以适应不同的网络传输结构。

光传输设备对于UNI(用户网络接口)的需求情况多变,而底层光传输网络的链路速率固定(接口和模块固定),如果通过调整底层传输的模块来适应各种传输需求,成本很高无法适应。FlexE技术是在Ethernet技术基础上,为满足高速传送、带宽配置灵活等需求而发展出来的技术。

FlexE基础概念

FlexE是OIF组织基于IEEE802.3/1指定的标准体系架构的扩展研究部。如下图所示,它就OSI七层模型,在PHY层(物理层)和MAC层(数据链路层)中间增加了shim层,用来实现MAC和PHY的解耦。

FlexE结构示意图

FlexE基于Client/Group架构定义,可以支持任意多个不同子接口(FlexE Client)在任意一组PHY(FlexE Group)上的映射和传输,从而实现上述捆绑、通道化及子速率等功能。其中:

  • FlexE Group:每个FlexE Group由1个或多个(最多254个)基于802.3标准的以太网PHY组成,组内所有的PHY使用相同的物理层,每个PHY在FlexE Group都有一个唯一的编号。
  • FlexE Shim:处于MAC和PHY之间,是FlexE的核心处理逻辑层。它将MAC层的FlexE Client数据流映射到FlexE Group的PHY上进行传输;并且也支持将FlexE Group内的PHY传输的数据反射到MAC层的FlexE Client数据流。FlexE Shim可以基于组对组内PHY的带宽进行捆绑、子速率、通道化处理。
  • FlexE Client:对应于以太网络中的传统接口,是基于MAC层速率的以太网数据流,用于对接不同速率的UNI(User Network Interface,网络用户接口)。FlexE Client的数据流按照64B/66B编码形成多个数据块(blocks),这些blocks会插入到FlexE Group的某个位置的Sub-Calendar中。
  • FlexE Calendar:是FlexE Shim处理映射和反映射处理的机制。将FlexE Group内的100G的PHY拆分成20个Slot,每个PHY的一组Slot称为Sub-Calendar,每个Slot承载5G速率。FlexE Calendar将FlexE Group内的每个PHY上的Sub-Calendar上承载的66B数据块分配给指定的FlexE Client。理论上每个FlexE Client可以被设置的带宽为5G的倍数。

FlexE通用架构示意图

FlexE支持的功能

捆绑

FlexE支持捆绑多个IEEE 802.3标准的物理接口,使多个PHY一起工作,以支持更高速率。例如,将2个100G物理接口捆绑,实现200G的MAC层速率。

捆绑功能示意图

通道化

对基于IEEE 802.3标准的物理接口的通道化是指多个低速率数据流共享一个PHY或多个PHY。例如,在1个100G速率的物理接口上承载25G和75G两个MAC层速率的数据流。

通道化功能示意图

子速率

基于IEEE 802.3标准物理接口的子速率是指一个低速率的数据流共享一个PHY或多个PHY。例如,在2个100G速率的物理接口上仅仅承载50G的MAC层速率。

子速率功能示意图

FlexE运行机制

FlexE帧结构

FlexE按照每个Client数据流所需带宽以及Shim中对应每个PHY的5G粒度Slot的分布情况,计算、分配Group中可用的Slot,形成Client到一个或多个Slot的映射,再结合Calendar机制实现一个或多个Client数据流在Group中的承载。每个64/66B数据块承载在一个Slot中。FlexE在Calendar机制中,将“20blocks”作为一个逻辑单元,并进一步将1023个“20blocks”作为一个Calendar。Calendar循环往复最终形成了5G为颗粒度的Slot数据承载通道。

FlexE帧结构示意图

FlexE Shim层通过定义Overhead Frame/MultiFrame的方式体现FlexE Client与FlexE Group中的Slot映射关系以及Calendar工作机制。FlexE Shim层通过Overhead提供带内管理通道,支持在对接的两个FlexE接口之间传递配置、管理信息,实现链路的自动协商建立。其中:

  • FlexE Overhead Slot:FlexE开销时隙,实际为64B/66B编码形成的数据块。FlexE开销时隙每隔1023个“20blocks”出现一次。
  • FlexE Overhead Frame:FlexE开销帧,由8个开销时隙组成。
  • FlexE Overhead MultiFrame:FlexE开销复帧,由32个开销帧组成。FlexE开销复帧的前16个开销帧,标记位为“0”;FlexE开销复帧的后16个开销帧,标记位为“1”。当FlexE开销复帧的前16个开销帧的标记位和后16个开销帧的标记位从“0”转换为“1”或从“1”转换为“0”时,可以实现CRC校验。

FlexE开销帧示意图

在FlexE开销帧中,FlexE开销时隙中包含控制字符与“O Code”字符等信息。在信息传送过程,对接的两个FlexE接口之间通过包含“0x4B”的控制字符与“0x5”的“O Code”字符的匹配确定第一个FlexE开销帧,从而在二者之间建立了一个管理信息通道,实现对接的两个接口之间配置信息的预先协商、握手等。

Client/Slot映射机制

Client/Slot映射机制是指FlexE Client数据流在发送端的FlexE Shim/Group数据通道中映射到Slot,然后当这些Slot映射信息、位置等内容传送到接收端后,接收端可以从数据通道中根据发送端的Slot映射等信息恢复该FlexE Client的数据流。

1.FlexE Mux

FlexE Mux是指将FlexE Client数据映射到Slot。将不同带宽的FlexE Client数据插入到Calendar中。只要Calendar中有足够的Slot,分配给特定FlexE Client的Slot并不都不需要位于FlexE Group的同一个PHY上,这样可以使用多个PHY并行发送FlexE Client的数据流,提高了发送效率。

FlexE Mux示意图

2.FlexE Demux

FlexE Demux是指将Slot承载的数据恢复为FlexE Client数据。FlexE将从多个PHY接收到的Slot数据重新封装,恢复为2个FlexE Client数据。

FlexE Demux示意图

3.Slot/Calendar更改机制

FlexE通过为每一个FlexE Client提供Slot/Calendar更改机制,即每允许FlexE Client的Slot/Calendar映射关系实时变化,实现带宽动态调整。

本端FlexE接口记录了多种不同的FlexE Calendar信息,例如Calendar A和Calendar B。FlexE Client的带宽在Calendar A和Calendar B中是不同的,通过动态切换CalendarA和Calendar B,并进一步结合系统应用控制可以实现无损带宽调整。本端进行FlexE Calendar切换后,可以通过传递FlexE开销帧来通知对端FlexE接口进行FlexE Calendar切换,保证两端FlexE接口的传输速率一致。

Slot/Calendar更改机制示意图

FlexE应用场景

通过FlexE捆绑实现超大带宽接口

基于捆绑技术,通过接口速率组合,FlexE可以实现超大带宽接口,而且可以基于时隙调度,把数据流均匀的分发到所有的物理接口,实现100%带宽利用率,解决了现有链路带宽小、带宽资源利用率低的问题。

FlexE捆绑实现超大带宽接口

通过FlexE实现IP + Optical灵活组网

FlexE接口作为路由器与光传输设备之间的UNI(User Network Interface,用户网络接口),可以通过速率灵活匹配实现UNI实际承载的数据流带宽与光传输设备接口链路承载的带宽一一对应,从而极大简化路由器的FlexE接口在光传输设备上的映射,降低设备复杂度以及投资成本和维护成本。FlexE标准定义了三种和光传输对接的模式:Unaware、Termination和Aware模式,目前推荐使用Unaware模式。Unaware模式可以充分利用现有光传输网络设备,在无需硬件升级的情况下实现对FlexE的承载。

FlexE Unaware Transport模式在传输网络映射示意图

通过FlexE实现网络切片

如果把通信网络类比为交通系统,那么数据包就是“车辆”,网络就是“道路”。随着车辆的增多,城市道路变得拥堵不堪,为了缓解交通拥堵,交通部门需要根据不同的车辆类型、运营方式进行车道划分和车流量管理,比如设置快速公交通道、非机动车专用通道等。网络亦是如此,要实现从人与人联接到万物互联,连接数量和数据流量将持续快速上升。如果不加干预,网络必将越来越拥堵,越来越复杂,最终影响网络的业务性能。与交通系统的管理相似,通信网络也需要对网络实行“车道”划分和流量管理,即网络切片。

网络切片是指在同一个共享的网络基础设施上提供多个逻辑网络(切片),每个逻辑网络服务于特定的业务类型或者行业用户。每个网络切片都可以灵活定义自己的逻辑拓扑、SLA需求、可靠性和安全等级,以满足不同业务、行业或用户的差异化需求。

多台路由器通过FlexE技术进行数据传输,路由器的一个物理接口可配置为多个FlexE接口(逻辑接口),FlexE接口之间带宽资源严格隔离,等同于物理口,这使FlexE能用于不同业务的网络切片中,实现安全可靠的一网多用。

FlexE技术实现网络切片

一文读懂Flex Ethernet(FlexE)技术相关推荐

  1. 一文读懂TOF深度相机技术原理--TI-Tintin-OPT8241二次开发和应用系列--Theory Level

    一文读懂TOF深度相机技术原理--TI-Tintin-OPT8241二次开发和应用系列--Theory Level 转载请附上出处,本文链接:https://www.cnblogs.com/pans0 ...

  2. 一文读懂5G基站节能技术

    文章版权所有,未经授权请勿转载或使用 近年来,全球运营商营收整体不断下滑,OPEX支出却不断增加,其中基站电费在网络运营支出中占比超30%.5G基站由于更大的带宽.更多的通道数.器件集成度低等因素影响 ...

  3. 独家 | 一文读懂Corda分布式记账技术

    作者:Dan Newton 翻译:申利彬 校对:丁楠雅 本文约2600字,建议阅读10分钟. 本文为你介绍借鉴了区块链的部分特性的分布式记账技术,并分析其背后的原因. 什么是Corda? 最近我开始了 ...

  4. 一文读懂I/O多路复用技术

    前言 当我们要编写一个echo服务器程序的时候,需要对用户从标准输入键入的交互命令做出响应.在这种情况下,服务器必须响应两个相互独立的I/O事件:1)网络客户端发起网络连接请求,2)用户在键盘上键入命 ...

  5. 一文读懂现代化的智能天线技术

    (本文部分来源于华为智能天线技术) (文末有<智能天线MATLAB版>福利)    "智能天线"通常是指带紧密信号处理器的任何天线阵,它可以调整或自适应其波束方向图.智 ...

  6. 一文读懂8K超高清技术

    最近,小编听到很多关于8K的讨论,比如: "8K只是锦上添花,有4K就够了." "4K也好,8K也好,看上去没有任何区别." "用户终端观看立马进入1 ...

  7. 解析|一文读懂AGV的关键技术——激光SLAM与视觉SLAM的区别

    来源:新机器视觉 移动机器人(AGV)是工业机器人的一种.它由计算机控制,具有移动.自动导航.多传感器控制.网络交互等功能,在实际生产中最主要的用途是搬运,可以说只要有搬运需求的地方,就有移动机器人的 ...

  8. 一文读懂计算计仿真技术

    来源:传感器技术 计算机仿真作为分析和研究系统运行行为.揭示系统动态过程和运动规律的一种重要手段和方法, 随着系统科学研究的深入.控制理论.计算技术.计算机科学与技术的发展而形成的一门新兴学科.近年来 ...

  9. 一文读懂前端与HTML5技术的区别!

    现在好多人都把HTML5和前端的概念弄混淆了.例如,H5是HTML5的简称,而现在好多人把HTML5看成了是前端开发的总称.今天就为各位普及一下,到底前端和HTML5有哪些区别? 什么是前端开发 以一 ...

最新文章

  1. easyui tabs 使用iframe 出现两个垂直滚动条 解决方法
  2. excel根据rgb自动填充颜色_Excel一键定位空值与自动填充
  3. spark mapreduce术语梳理
  4. TreeView无限极分类绑定(从数据库读取数据源)
  5. LeetCode 587. 安装栅栏 / LintCode 1152. 安装栅栏(凸包检测:排序+叉积正负判断+正反扫描+去重)
  6. android 崩溃日志捕获,安卓Java崩溃的捕获和日志记录
  7. CouchDB 1.3.0的新特性以及算法的强化
  8. C++ 中两个数据交换总结
  9. 190515每日一句
  10. AForge.net获取摄像头
  11. latex中文小标题_latex定制标题样式
  12. 对敏捷管理模式核心价值的解读
  13. 路由器上DNS的设置
  14. 仿射密码之加解密及破解
  15. Zephyr 3.2 弃用devicetree 中node 里的label property
  16. Hybrid App开发实战
  17. 安装PyTorch后,又安装TensorFlow,CUDA相关问题思考
  18. Qt多路视频监控软件(Qt+VLC支持本地视频/RTSP流/RTMP流)
  19. 深度学习08 - 决策树
  20. 电脑测试瓶颈的软件,电脑性能检测工具(Fresh Diagnose)

热门文章

  1. 前端js将字符串按照逗号分割
  2. 图机器学习(Graph Machine Learning)- 第二章 图机器学习简介 Graph Machine Learning
  3. SAP ABAP 添加企业微信群机器人并调用 API 发送消息
  4. 十分钟带你了解 Python3 多线程核心知识
  5. 从点击事件看微信小程序的数据传递
  6. java merkle树,11个默克尔树开源项目
  7. 微博上流传的BAT对应级别和工资
  8. jsapi前端微信支付完成后没有执行回调函数
  9. 计算机毕业设计Java京东仓库管理系统(源码+系统+mysql数据库+lw文档)
  10. 几分钟了解云服务器ECS