af88241d227f977178b0c42a473bbfc3d863e735 |
|
11-Sep-2013 |
Alex Deymo <deymo@chromium.org> |
lansim: Add a LAN simulator in python to use in tests. lansim is a LAN simulator that runs over a TAP network interface and allows to simulate network traffic on that interface from Python code. A TAP interface is a virtual network kernel device that acts as any other network interface, except that instead of sending and receiving the traffic through a hardware interface it allows a given program to handle that traffic through a socket. It is essentially a bi-directional pipe where one side is a network interface and the other side is a socket on a program. This simulator is useful on situations where you can't fake a network service using the normal kernel network stack. For example, if you need to fake a network of several hosts publishing services via mDNS with multicast you can write those services using this simulator but it's more complicated to do the same using the system's network stack since an outbound multicast packet will be sent out on the real interface. The simulator consists on various Python modules with the logic and a small C module that exposes many system dependent constants to Python. The C module is required to expose the architecture dependent constants. BUG=chromium:288385 TEST=Ran "make install test" on lansim/src/ (runs unittests). Change-Id: I5475e445046ce505503627f48ed4ab220a6cfef2 Reviewed-on: https://chromium-review.googlesource.com/168882 Reviewed-by: Chris Sosa <sosa@chromium.org> Commit-Queue: Alex Deymo <deymo@chromium.org> Tested-by: Alex Deymo <deymo@chromium.org>
/external/autotest/client/deps/lansim/lansim.py
|