[1 - INSTALL]
[1.1 ** Platform Windows] Not tested yet.
[1.2 ** Platform Linux] Tested on : Ubuntu , RedHat, CentOS
For a succesfull instalation you will need : 1 - Python 2.5 / 2.6{.2} 2 - scapy version ( 2.0.0.5 beta or latest stable version) 3 - google Protocol buffers
[2 - Features]
[2.1 - About Topology and network stuff] If this is the first time you read about CMTS, then it is worth to read the next lines first. It will help you understand how different things works.
DEVICE ( CM ) -- BROADCAST DHCP DISCOVER ----> CMTS ---- UNICAST ----> DHCP SERVER DEVICE ( CM ) <--OFFER------------------------ CMTS <--- OFFER ------- DHCP SERVER DEVICE ( CM ) -- DHCP REQUEST ---------------> CMTS ---- UNICAST ----> DHCP SERVER DEVICE ( CM ) <- ACK ------------------------- CMTS <--- ACK --------- DHCP SERVER
So, as you see the CMTS ( CableModem Termination system ) works as a router while doing DHCP discovering. After this, for the rest of protocols it will work as a bridge. This is important, so you can have a very basic picture of what is the CMTS, and why it is in the middle. Any Cable modem needs a CMTS. Sorry, but there is no magic at all.
[3 - Performance] This simulator trys to make the simulation as real as possible. So, there are a lots aspects the simulation can be modify for performance aspects. A lot of "layer communication" can be avoided, but I think this will help just to make this less educative. If needed i can work on a better "performance-oriented" simulator.
[2 - Questions]
Q - What is this A - This is a very first opensource network device simulator. It allows to simulate ( by terms of network traffic ) in a realistic way, how different network devices works.
Q - Why ? A - Because it is fun. Because if you use to play/develop with network devices you will understand how complex is to deploy something when you need the device at your side. Moreover, if you need to recreate a huge amount of devices, you simply can not buy hundreds of thounsands of devices "just for test". So here we are. Now, you will be able to simulate as many devices as you'd like :) By the momment, you will be able to play with basic cablemodems and CMTS, but more functionality/devices/layers are comming.
Q - Is this project close ? A - Absolutely no ! Actually, I had developed more layers / modules which will allow more realistic and complex simulations. Some layers are developed (under the radar) and more are comming (i.e TFTP, DNS , NTP, VirtualPCs, TR-069 devices, IPCameras , and so on.....)
Q - When those layers\modules will be released ? A - The schedule is not set and may vary uppon demand.
Q - How can i contribute ? A - Join to the mailing list. Submit your new device, features, fix or patch.
Q - Do you need financial support A - By the momment, this project its been developed in my spare time. Feel free to send me your contribution. :)
Q - I need to simulate the device XXXX Could you please create the virtual device for me. A - If I have time and the device is requested by many people i will do my best. If you want to pay for it, for sure i will have time :)
matt.- Matias Torchinsky ( tmatias@gmail.com )