[Twisted-Python] [ANN]: Autobahn WebSockets new release

Tobias Oberstein tobias.oberstein at tavendo.de
Thu Mar 22 07:20:42 EDT 2012

New releases of AutobahnPython and AutobahnTestSuite completed:


Release 0.5.0 of AutobahnPython is done, including a bunch of new
features, improvements and some fixes:


 - DoS protection: WS opening handshake timeouts (configurable)
 - DoS protection: failing TCP by drop vs abort (configurable)
 - performance: optimized buffer management
 - performance: optimized/pluggable frame maskers
 - performance: PyPy compatibility/testing
 - performance: IOCP/epoll/kqueue compatibility/testing
 - feature: prepareMessage/sendPreparedMessage
 - feature: for WSS clients, automatically create TLS context
 - feature: user agent WS support detection helper


 - feature: exclude/eligible lists for publish
 - feature: Welcome message implemented
 - performance: optimized msg dispatch to subscribers


- polished / completed docs


 - Package: http://pypi.python.org/pypi/autobahn
 - Source: https://github.com/tavendo/AutobahnPython
 - Reference: http://autobahn.ws/developers/reference/python/index.html
 - Home (under construction): http://autobahn.ws/developers/autobahnpython


New release of AutobahnTestSuite:

 - now comes completely packaged on PyPi
 - installs as a single tool: "wstest"
 - wstest includes 12 modes

The modes:

 - fuzzing: the known fuzzing client/server doing the WS test suite dance
 - echo: simple WS echo client and server for testing
 - broadcast: simple WS broadcast server and client driver for testing
 - testee: client and server to test Autobahn itself
 - wamp: test client and server for WAMP implementors


 - wsperfcontrol / wsperfmaster:

We have started collaborating with the WebSocket++ project (Peter Thorson) to build
a distributed WS load generator / performance testing tool.

This will allow running multiple instances of the "wsperf" load generator/probe
distributed both in LAN and WAN.

The probe will produce load / tests onto a testee target WS server.

AutobahnTestSuite will act as a controller for the probes, aggregate results,
produce web UI, ..

This thing is preliminary / still in the cooking .. but I think it has the potential to
take "WS testing" to the next level.

 - Package: http://pypi.python.org/pypi/autobahntestsuite
 - Source: https://github.com/tavendo/AutobahnTestSuite
 - Docs: http://autobahn.ws/testsuite
 - wsperf: http://www.zaphoyd.com/wsperf

Misc Pointers

 - AutobahnTestSuite (the WebSocket testsuite) : has been split off into own repo / package
 - AutobahnJS (WAMP/JS implementation) : also was split off

An overview of all Autobahn related code repos on GitHub:

A documentation of WAMP (The WebSocket Application Messaging Protocol)
- asynchronous RPC/PubSub over WebSocket is started on

More information about the Twisted-Python mailing list