组织介绍
算力网络平台(CPN Platform)
1 Client(设备接入模块)
-
接入USB摄像头与IP摄像头设备,基于rtsp协议与opencv库实现图像捕捉与视频流预处理
-
定时捕捉视频流数据,完成图像数据编解码,对图像数据进行校验(verification)与确认(validation)
- 整理业务数据(多类业务),通过gRPC协议发送至TO模组
2 CNE(算力感知模组)
- 包含节点感知(node exporter)、网络感知(network exporter)等两个子模块
- 基于Prometheus API接口,获取各节点的资源负载与各容器的状态信息
- 基于自实现network-exporter,获取节点间链路的质量信息
3 CNA(算力通告模块)
- 接收CNE模块感知到的节点信息,封装为节点算力信息
- 基于分布式一致性协议,完成本节点对全网算力信息的汇聚同步,形成算力网络图
- 整理算力网络图数据,通过ZeroMQ协议发送至TOM模块,用于广义算力建模
4 TO(计算卸载模组)
- 包含调度(TOScheduler)、决策(TODecider)、建模(TOModeler)等三个子模块
- 基于算力网络图完成广义算力建模,得到时延预测模型,实现多类别任务的时延智能预测
- 基于图论的集中式计算卸载算法,实现多对多的任务卸载
- 整理业务数据,通过gRPC协议发送至AI(多server)
5 SR(业务转发模块)
- 支持SRV6的路由器完成组网,进行网络配置
- 基于算力网络图与路由拓扑,以最小化传输时延为目标设计转发数据压缩与业务数据分流算法
- 接收TOS模块发送的业务输入数据,发送至指定的AI推理模块,实现最短传输时延的智能路由
6 AI(业务推理模组)
- 包含人脸及属性识别(FR,基于Facenet-TFLite模型)、流量检测(TM,基于Mobilenet-TFLite模型)、图像增强(IA)、图像渲染(IR)、分布式模型训练(DMT)等五个子模块
-
封装gRPC接口并整理业务数据,将业务数据发送至展示平台
7 Istio(请求路由模块)
- 基于服务网格Istio向Pod内注入Sidecar代理容器,实现微服务间流量感知
- 基于算力网络图获取集群节点、链路、微服务的实时信息,实现集群整体的状态感知
- 基于Sidecar的流量拦截与流量转发机制,拦截并基于特定策略进行微服务请求的动态转发,实现微服务间请求路由
8 HPA(弹性伸缩模块)
- 基于Prometheus周期获取微服务实例实时指标,实现微服务状态感知
- 基于中心协调的分布式链路感知模块,各节点依次测试到其他节点的链路质量,实现集群整体链路状态感知
- 基于Kubernetes声明式配置,执行依照特定算法生成的、调整节点微服务实例个数的决策,实现微服务实例弹性伸缩
9 DS(展示平台)
-
基于Springboot框架搭建后台,通过gRPC与ZeroMQ协议接收业务流与网络状态简报数据,实现时序数据存储(业务流数据、算力网络图数据)与统计(推理模块的结果数据处理)
-
基于Vue+BMap+Echarts实现前端设计,完成网络拓扑(主图)、感知数据(算力网络图+感知通告)、业务数据(推理业务+模型训练)、服务数据(调度效率+转发效率)的可视化,使用Websocket实现前端后台通信
10 MC(管控平台)
- 基于kubernetes dashboard二次开发,具备节点管理、服务发现、服务部署、容器管理、资源分配等功能
- 基于ZeroMQ实现算力网络图订阅,基于goroutine实现算力网络图-后台-前端的数据透传
-
基于AngularJS+Echarts完成前端设计,基于WebSocket实现前端后台通信,实现算力网络图可视化与主要监控指标的实时刷新