- Notifications
You must be signed in to change notification settings - Fork3
Python (Euro)DOCSIS Traffic Meter
License
cite/pydtm
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Python (Euro)DOCSIS (3.0) Traffic Meter
This tool uses a DVB-C capable video card (e.g. a cheap USB stick) to measurethe EuroDOCSIS 3.0 traffic per frequency, allowing you to venture an educatedguess about your local segment's utilization.
Data is written to a UDP socket ingraphiteformat.
This was tested with cPython 2.7.13 and cPython 3.5.3 using a Hauppauge WinTVsoloHD USB stick on a Raspberry Pi 3 running Raspbian/stretch.
It should however work with most Python versions as long as the DVB-C cardis supported by your kernel and it's driver complies with the DVBv5 API.
EuroDOCSIS 3.0 uses standard DVB-C mechanisms to transport it's data: It'sencoded as a standard MPEG Transport Stream onPID8190 with either 64- or 256-QAMmodulation with a symbol rate of 6952ksyms/s. Since cable is a shared medium,determining the total amount of data transferred and comparing this to the totalamount possible afterFEC (which is about51Mbit/s for 256-QAM and 34 MBit/s for 64-QAM) will show you how much capacityis used.
Take a look at your cable modem's management pages.
No, you can't.
I wanted to learn Python.
You can easily use tools likenetcat
to capture the data.
Yes. You would probably not see other cable modems upstream signals due to...erm, "electrical" stuff.
About
Python (Euro)DOCSIS Traffic Meter