早在两年前就计划对现在的内网管理系统进行一次全面的升级了,由于种种原因一直在搁置,从年初开始本系统终于有了实质性的进展,本系统的第一期项目也完成了需求、开发并正式落地投入使用,这套系统运用Linux下的rt_table、iproute、iprule、iptables、ipset、tc、netfilter-layer7、dpdk等技术实现支持多出口线路切换、IP分配、限速(白名单)、互通、流量统计等一系列功能,并通过SpringBoot+Vue打造的一套Web前端进行可视化管理。下面来讲一下这款产品的设计,这套设计基于前篇文章 系统需求分析管理[指导规范] 设计。
产品设计
用例图
智能网关设计针对5类用户,分别为网络工程师、网管、值班、员工、领导。
- 网络工程师:负责系统整体维护;
- 网管:使用本系统分配回收员工IP;
- 值班:主要使用本系统在线路故障时操作切网;
- 员工:可以查看自己的带宽使用情况;
- 领导:可以查看自己所负责部门的带宽使用情况以及员工带宽使用情况;
ER图
- 主机 :员工办公电脑或者在办公区的服务器,以IP作为标识
- 内网网段:每个网段统一采用24位192.168.0.0的子网,以网段第三位为标识
- 出网线路 :出口公网IP地址,以IP作为标识
- 接入商:宽带供应商名称,以名称作为标识
- 主机流量:以分钟记录主机使用的流量情况,以时间+主机为标识
- 目标地址:目标访问的地址及协议,以协议+地址+端口为标识
- 特殊权限:特殊网络权限如QQ权限等,以名称为标识
- 限速规则:限速的规则,以名称为标识
- 白名单类型:限速的白名单规则,类型为标识
- 员工:公司员工,采用OA取数据
- 部门:公司组织结构,采用OA取数据
数据库模型
产品结构
产品原型
重点流程
真正在做这套系统的时候的重点流程还有很多,以上的两个一个用于让开发成员理解用户,线路,出口的逻辑关系,一个用于了解流量的抓取逻辑。
系统线上效果
最后,目前整体1期功能已经上线,2期功能主要是集成WIFI管理,当然说一下为什么这个网关系统要叫智能网络,我们规划要运用算法针对主机进行智能的线路调配,以达到各线路最大化的带宽利用。