问答
直播中

郑川cc

9年用户 15经验值
擅长:嵌入式技术
私信 关注

【MiCO分享贴】微信查看路由器流量


# o' i/ q4 W7 o% f8 h
[url=]...[/url]
4 y. f( d" L7 Q- d& ^4 V
: E5 V7 l3 n, A/ W

( A0 T0 R4 Y$ m* w6 p
  • 原理很简单,MicoKit通过SNMP协议读取路由器的信息,通过简单的运算就可以得到实时流量信息,同时也给出CPU的负载率。
  • 测试的路由我用的是第三方的固件,DD-WRT和Tomato上都测试通过,只是每个路由的端口不一样要稍微改下端口定义。
  • 运行时间上可能有Bug,读出的运行时间是32位的ms计数器,计算出来是11天,但路由上显示的是99天,估计是溢出了。在刚重启过的路由器上是正常的。
  • 由于SNMP使用了ASN.1的编码,我移植了个开源库(https://github.com/ejrh/snmp),在此对开源者表示感谢!但移植后系统会不定期重启,调试了半天发现是内存溢出,然后SDK会调用exit()。我花了一个多星期的业余时间终于找到修复溢出点,真费劲~
  • 今天不知哪根筋不对劲,重新改了html微信里就是不更新,但在“在浏览器中打开”是好的,取消关注-清空聊天-重启手机-重新关注-还是不行,算了不折腾了
    ! ~- O* B7 t& ]& X/ }0 y

5 G1 F: _" Z6 `1 O7 S! V. f# d. }$ f' K8 u, ?  d" r' t# l
上图
, ~' ]8 q+ Z$ g$ Q8 O& p - A2 t% C4 O$ Q

8 f+ o. c+ `" \2 F[/url]: b. Z4 X6 C7 Y6 X8 ]' D
) n& d* M5 W% T! `

. L' F7 Z7 U" |0 G1 Q' M[url=http://mico.io/ask/uploads/article/20150831/4f4ac46da04a2e5853340fabf1f63593.jpg]

5 r- s( _; [9 b4 i/ M; v) b6 U- L' P' ]" K9 [
4 C: E) ~1 o7 z- }5 _
[/url]
$ ?$ o, Y& |5 I* L% ~" C3 T4 y

: D2 f4 g6 K$ i( o8 R4 A- Y1 P[url=http://mico.io/ask/uploads/article/20150831/2645b7e3a6258cd8eaabe080106c74dc.jpg]
( h4 l8 v2 [% Q

: q) ^! U6 m( ?1 u1 K) h 7 D* c3 U$ Z. p5 u1 m! Y# S  C

* {' ~' V5 v5 f( s+ m上代码,用的是SDK_MiCOKit_V2.2.0.6_Beta,在Cloud_RGB_Humiture基础上照猫画虎改的,只有IAR的工程! [6 j' @8 u. D+ S" N" j
3 s4 i" F7 i, I( i
http://pan.baidu.com/s/1qWEDAFi  r4 l1 y9 u6 G5 B# S
http://pan.baidu.com/s/1eQDCc5W
; Z! L3 e7 x5 f& t
4 p& s3 r- _3 l/ f3 m原作者:HackerBoygn1 O, q6 w7 `3 j5 k, o
感谢!3 Z- k6 B4 S' q& w4 g

1 h: u# h6 T9 Z3 [: }% x) ]

更多回帖

发帖
×
20
完善资料,
赚取积分