Niedokładności śledzenia korzystania z Internetu

0

Quick BackStory : Mam router 4G, który noszę na wakacje, a moja rodzina całkowicie wypaliła abonament, więc postanowiłem stworzyć mały program, który śledzi użycie i wyznacza dzienne limity.

Oto link do kodu źródłowego ; router to ZTE MF910 .

PS: Kod działa na routerze

Oto problem: dane, które zebrałem, wydają się pasować do bajtów ifconfig TX / RX; jednak ani ifconfig, ani mój program nie pasują do danych ISP.

Mój dostawca usług internetowych sugeruje, że od wczoraj użyłem 6-7 GB, ale mój router sugeruje, że użyłem około 2,5 GB ( podobnie jak mój program ).

Uruchomiłem ten program jednocześnie na moim komputerze podczas pobierania niektórych plików. Dane z mojego komputera były całkowicie zgodne z oczekiwaniami, podczas gdy dane z mojego routera były nieco opóźnione. (do% 90)

Wszelkie pomysły, dlaczego jest to tak niedokładne na moim routerze?

Oto ifconfig fragment:

bridge0   Link encap:Ethernet  HWaddr 74:4A:A4:9D:88:3E
      inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
      inet6 addr: fe80::9c2b:10ff:fef9:1c9f/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:1614602 errors:0 dropped:0 overruns:0 frame:0
      TX packets:832006 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:172761946 (164.7 MiB)  TX bytes:836806290 (798.0 MiB)

ecm0      Link encap:Ethernet  HWaddr 74:4A:A4:9D:88:3E
      inet addr:169.254.3.1  Bcast:169.254.3.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:6 errors:0 dropped:0 overruns:0 frame:0
      TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:672 (672.0 B)  TX bytes:672 (672.0 B)

rmnet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
      inet addr:178.243.134.235  Mask:255.255.255.0
      inet6 addr: fe80::8f76:7195:71fb:31e6/64 Scope:Link
      UP RUNNING  MTU:1500  Metric:1
      RX packets:832231 errors:0 dropped:0 overruns:0 frame:0
      TX packets:1594840 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:831615144 (793.0 MiB)  TX bytes:184526560 (175.9 MiB)

wlan0     Link encap:Ethernet  HWaddr 74:4A:A4:9D:88:3E  
      inet addr:169.254.1.1  Bcast:169.254.1.255  Mask:255.255.255.0
      inet6 addr: fe80::764a:a4ff:fe9d:883e/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:1844673 errors:0 dropped:0 overruns:0 frame:0
      TX packets:1173053 errors:0 dropped:2405 overruns:0 carrier:2405
      collisions:0 txqueuelen:1000 
      RX bytes:223033656 (212.7 MiB)  TX bytes:864781905 (824.7 MiB)
ulascan
źródło
Czy mówimy w każdym przypadku o gigabitach (10 ^ 9 bitów) czy GibiBytes (2 ^ 30 * 8 bitów)? Czy możesz uzyskać potwierdzenie od swojego dostawcy usług internetowych, jeśli używają binarnego lub dziesiętnego dla „G”, i bitów lub bajtów dla „B”?
Spiff,
Używają megabajtów, korzystam z usługi sms, aby regularnie sprawdzać moje użycie. Aktualizują go co godzinę.
ulascan
1 000 000 bajtów lub 1 048 576 bajtów? Ponadto, czy jest on wydzielony dla samego routera, czy też całe użycie danych dla wszystkich urządzeń w planie?
Spiff,
Ma on 1 048 576 bajtów. Jedynym urządzeniem w tym planie jest router.
ulascan