Beta 2 is finally out and running in the wild. It's two weeks behind schedule and contains zero new features.

In retrospect why is pretty obvious, we released payments and then immediately set about doubling the size of our test network. In doing so we had raised the bar for the quality of our features and interfaces.

Many of the quirks that were previously acceptable were now major annoyances. So Beta 2 became a four week long marathon of much needed user experience polish.

What's new in Beta 2

xdai support that actually works well

Fixes for various UI inconsistencies

Improvements to peer discovery

Fixes to port toggling

Much faster startup

Better detection of crashes and automated recovery

Improved firewall setup

Fixes for stuck nonce preventing payments

Performance optimizations for accounting code

Payments roll-out

We are now at 100% of the network running Beta 2 and loaded with Ethereum to pay for their access.

The anti-overpay protections seem to be working flawlessly as all of the billing issues we've encountered have involved nodes underpaying. The current breakdown is about half of the network paying without any issue and the other half underpaying in some way.

Of those underpaying, a minority were underpaying dramatically due to a bug that caused their nonce values to desync from the blockchain, preventing new payments from being sent. This is fixed in Beta 2.

The rest are underpaying by a value between 5-10% which we've attributed to packet loss from radio links. This is only really a problem for exit -> client traffic since that's the only pay to receive scenario. In the general case packet loss will only result in overpayment since it's pay per forward.

The exit-client relationship is already fairly trustful so we can just couple what the user pays to what the exit sends and not necessarily what the user receives. With the usual safeguards against wallet draining attacks.

Intermediary < Relay

Two of our new relays, with incoming and outgoing antennas. On the right the outgoing antenna is a simple point to point, on the left it's a sector antenna that could potentially serve many other users

We now have 3 relays, meaning users who are also hooking up other users.

We used to use 'intermediary' as the term for this but in the process of actually getting people started we've found that relay is more quickly understood by most people so we're switching terminology.

We also had our first completely organic install in the Clatskanie network, a relay connected and setup their user without any intervention on our part.

The friction points for that case make up about half of our beta 2 fixes. While the relay had no issues with the actual physical setup several parts of our software where mislabled or confusing.

Upcoming features

With payments out and pretty rapid expansion on the table we're mostly focusing on user facing improvements for the time being. Like this new router dashboard.

The network DAO features continue to lag behind where I would like, but with payments online I expect to have it out the door within the next two release at least. Depending on how well dialling in bandwidth payments goes.