Skip to content

Instantly share code, notes, and snippets.

@zsfelfoldi
Created May 24, 2018 16:00
Show Gist options
  • Save zsfelfoldi/bd618cbe0b529849abd692694ee11433 to your computer and use it in GitHub Desktop.
Save zsfelfoldi/bd618cbe0b529849abd692694ee11433 to your computer and use it in GitHub Desktop.

LES development plans for 2018

(written on 24/05/18)

ULC

Initial implementation (priority: very high, ETA 6/18)

[https://github.com/status-im/go-ethereum/tree/enhancement/48/ulc_mode_rebase]

Build an on-chain trust contract (priority: low, ETA maybe 12/18 depending on other progress)

  • any key can publish and revoke its trusted node IDs
  • trust becomes transitive: keys can publish statements like "I trust every node that N out of these M keys trust"
  • clients filter the relevant log events while header syncing and update their trusted set

Priority clients and micropayment

LES server RPC API extension (priority: high, ETA 7/18)

New API features:

  • safe client authorization using permanent keys from the keystore
  • set individual client bandwidth and priority
  • get notified about incoming client contacts
  • if necessary then manually accept or reject them, maybe kick someone else out
  • get info on connected peers and usage statistics which allows building a nice LES server dashboard in JS

Implementation of the new priority management:

ethereum/go-ethereum#16490

API specs: coming soon

Implement bandwidth auction based on the server API (priority: medium, ETA 10/18)

[https://github.com/zsfelfoldi/ethereum-docs/blob/master/les/service_model.md#continous-auction]

Examine existing business models

Contact those who are already offering or planning to offer Ethereum-related services (Infura, https://vipnode.org/ for example) and see whether they are interested in running LES servers using the new API (and whether the API can accomodate their business model). It would be great to cover everyone's use cases and avoid long-term forking of either the protocol or the implementation.

Testing framework (priority: high, ETA 7/18 for the first few test cases)

Finally the Swarm team's network simulator has been chosen as a suitable tool for building comprehensive end-to-end test scenarios. Suggestions for test scenarios are welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment