If you are searching plain WebSocket implementation, then EM-WebSocket is probably best. If you want support for non-flash fallback(like old phones or iPhone 3G) you should try Socket.IO-rack.
For full-featured implementations like Pusher(with authentication and channels) you have two opensource choices: Socky and Juggernaut.
Socky is a pure ruby project using EM-WebSocket(like pusher) and it has some nice tools for Rails. On the other hand Juggernaut has more history(and more users atm.) but the new version was rewritten to Node.JS(client is still ruby-based) and require Redis. Both should work fine.