Venus
项目介绍
Linux平台上,对常用的系统API进行面向对象的封装SDK,使用C++实现,没有使用C++11特效,支持CentOS、Ubuntu、RedHat各个发行版本和不同内核版本使用,没有任何门槛。
软件架构
一、基础模块
日志模块
日志模块是一个独立的功能模块,不依赖于SDK中其他的任何模块,可独立使用,日志输出级别和对应模块高度可配,输出到文件或终端可配,输出内容可配置。
系统模块
系统模块是对系统API的简单面向对象封装,为上层进一步抽象提供基础编码,也可直接使用。包括:socket、epoll、file、网络设备、mutex、thread、condition、pipe、进程单例、semaphore、shm、inotify、文件监控、进程相关、动态库加载、以及一些系统常用的命令等。
网络模块
网络模块是对网络相关的功能进行面向对象封装,提供简单易用的对象,包括:高并发服务(epoll server),衍生出:TCP Server、TCP Client、UDP server、UDP client。
公共功能模块
共公功能模块是对网络开发中最常用的功能进行面向对象的封装,包括:Data Buffer、Config Manager、File Monitor、File Stream、Process Helper、Message Queue、Object Pool、Process Object、Singleton、Smart Point、Thread Pool、Timer Server等。
通用工具库模块
工具库模块实现:base64编解码、decoder字符集编码识别和转码、Hex转换、ini文件读写、md5、xml读写。
二、业务框架
DPI框架
实现DPI深度包分析框架,使用者基于此框架进行开发,可以避开复杂的底层数据包分析,通过过滤规则配置,可以直接进入用户层数据进行分析。
安装教程
xxxx
xxxx
xxxx
使用说明
xxxx
xxxx
xxxx
参与贡献
Fork 本项目
新建 Feat_xxx 分支
提交代码
新建 Pull Request
码云特技
使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.md
GVP 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目