首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

3G上网流量统计

3G上网流量统计

需要查询3G路由的网络流量,对流量和费用有一个明确的估计。本设计对linux网络统计数据进行加工整理,从web页面可以查出网络流量。
网络流量是累计流量,累计的起始时间是上次手工清零,或者月初。
1进程名为rec_flow为指向rc进程的链接,程序被编译到rc进程中。
2、程序实现累计流量值,每隔1分钟从/mnt/jffs2/flow文件中读出上一次流量值,再从/proc/net/dev文件(/proc/net/dev记录了不同网络接口上的各种包的记录)中读取ppp0接口当前的接收和发送流量,计算当前与上一次的流量的差值并累加到总流量中,最后将流量值写入/mnt/jffs2/flow文件中。
3程序实现清空流量值,清空分手动清空和月初清空两种。分手动清空由WEB页面按钮提交给WEB服务器后台处理,月初清空由程序自动处理,/mnt/jffs2/month文件存放上次清空的月份值,程序每1分钟累计完流量后检查当前时间是否为月初(当前月份是否与上次清空月份相同,不同为新的月初),如果为月初则清空/mnt/jffs2/flow文件中的流量值。
4服务器后台增加动态查询流量函数ej_read_flow(),功能是从/mnt/jffs2/flow文件中读出来的接收总流量和发送总流量,将流量值输出到WEB页面。
5服务器后台在apply_cgi()按钮提交处理函数中增加手动清空流量处理,打开/mnt/jffs2/flow文件将文件清空,并输出信息到WEB页面。

3G上网流量统计需要资源:
Web页面显示和操作
保存流量的文件
Linux网络保存的流量
时间读取比较
返回列表