My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Featured
Downloads
Links

uMurmur is a minimalistic Mumble server primarily targeted to run on routers with an open OS like OpenWRT. The server part of Mumble is called Murmur, hence the name uMurmur.

uMurmur 0.2.10 released

Some minor polish added, like an updated Changlog, that was left out in the 0.2.9 release.

Highlights of this release are support for admin functionality and PolarSSL 1.1.x. See Changelog for details and Admin and Configuring02x for details of using the new functions.

Note that the ban stuff is not extensively tested since I want to keep my friends...

Note that uMurmur since 0.2.7 is built using ./configure && make && make install and that Protobuf-c library code no longer is included and have to be linked to just like any other library.

Overview

Version 0.2.x of uMurmur supports version 1.2.x Mumble clients. It is not compatible with version 1.1.x of Mumble.

Highlights of the 0.2.x releases:

  • Uses Mumble protocol 1.2.x, meaning that clients 1.2.x are supported.
  • Support for PolarSSL as an alternative to OpenSSL.
  • Whisper target to channels, channel trees and linked channels.
  • Temporary channels can be created by users.
  • Channel links can be configured in the configuration file.
  • Channels can be configured non-enterable in configuration file.
  • Positional audio is stripped if users are not in the same plugin context (playing the same game).

Documentation for 0.2.x

This is not complete yet (and probably never will...). Please check out the following resources:

Precompiled packages

I just make the source code available here. Precompiled packages are prepared by others. Here is a (incomplete) list of distributions/platforms, some found using Google.

  • OpenWRT Backfire. I've heard people are using these on DD-WRT as well.
  • Freetz
  • QNAP
  • XTreamer
  • Arch Linux
  • NetBSD

Do you like uMurmur?

I just got myself a Flattr account, so now you can show your appreciation of uMurmur by pressing the button below. I'm not expecting to get rich, but could definitely use some beer-money :)

Random info

uMurmur is written in C and uses OpenSSL or PolarSSL, libconfig libraries and libprotobuf_c from the Protobuf-c project for communication using Google's protocol buffers.

It targets to fill the needs of a pretty small group of users communicating, which in part originates from the other goal of working well on a small system with a limited CPU and limited amount of disk space. It also aims to minimize writing to the disk since these kinds of systems usually only has a flash memory for disk.

PolarSSL vs OpenSSL

PolarSSL uses a lot less RAM memory than OpenSSL:

  • uMurmur linked to PolarSSL lib with 7 connected users uses ~900 Kb (code + data). Each new connection increases mem usage by ~60-70 kB.
  • uMurmur linked to OpenSSL lib with 7 connected users uses ~4 Mb (code + data). Each new connection increases mem usage by ~400 kB.

The above figures are measured with top on a MIPS device (Netgear WGT634U) so the accuracy is not really high, but rather a rough indication.

On-disk memory usage is a lot less for PolarSSL:

root@router2:~# ls -l /usr/lib/libpolarssl.so
-rwxr-xr-x    1 root     root       183073 Feb 13 17:53 /usr/lib/libpolarssl.so
root@router2:~# ls -l /usr/lib/libssl.so.0.9.8
-rw-r--r--    1 root     root       204371 Sep 22 20:12 /usr/lib/libssl.so.0.9.8
root@router2:~# ls -l /usr/lib/libcrypto.so.0.9.8
-rw-r--r--    1 root     root       912927 Sep 22 20:12 /usr/lib/libcrypto.so.0.9.8

Note: PolarSSL library contains both SSL and crypto code.

I haven't noticed any great difference in CPU usage between the two.

Comparison to Murmur

uMurmur supports a subset of the features of Murmur. To list some of the differences compared to Murmur:

  • Channels are statically configured in configuration file - no channel add/rename/move. Temporary channels can be added however.
  • No user database.
  • No ACL support, but instead a simpler approach using a password enabled admin user functionality.
  • No ICE or DBus interface.
  • No user avatar support.

Some of the above might change in the future, but additions will always be within the original design goals of keeping it as lean, mean and simple as possible.

Powered by Google Project Hosting