Skip to content
Felföldi Zsolt edited this page Nov 15, 2016 · 3 revisions

The Light Ethereum Subprotocol (LES) and its Geth implementation are currently in experimental "alpha" stage and may still contain critical bugs. Please consider this when using it with accounts that contain a high amount of funds or have control over high value assets.

Things you should know

  • you can start geth in light client mode with the --light switch
  • you can set up a light server by running a full node and using --lightserv (maximum percentage of resources committed to serving clients, somewhere between 20 and 80 is recommended) and --lightpeers (maximum number of clients allowed at a time, recommended between 20 and 100) options
  • there are light servers running on the mainnet and testnet but you can run a server on your private chain too. Clients will automatically find a suitable server with a matching genesis block hash (may take a few minutes for the server to advertise itself on the peer discovery network).
  • light clients and servers are using an experimental new discovery protocol (RLPx v5, "Topic discovery") to find each other. This protocol is neither properly specified or fully implemented at the moment, it is absolutely in experimental stage. At the moment, it runs on a separate UDP port (that is the normal discovery UDP address + 1) to avoid any interference. Users should be aware of potential port collisions.

Development status

  • most of the LES/1 protocol version is finalized but the specification and communication of server capabilities is still under development
  • the light API is similar to the full node API, some more work might be needed in order to always work smoothly with Mist but it usually works without any noticeable difference
  • RLPx v5 protocol is still being developed and message formats will change in the future but it serves its current purpose to find servers for light clients

Coming soon

  • peer discovery protocol getting closer to its final form (still needs more testing and wider consensus)
  • server selection based on service quality statistics
  • garbage collection
Clone this wiki locally