good morning!!!!

Skip to content
Snippets Groups Projects
  1. Jan 16, 2021
    • Gary Rong's avatar
      les: remove useless protocol defines (#22115) · 034ecc32
      Gary Rong authored
      This PR has two changes in the les protocol:
      
      - the auxRoot is not supported. See ethereum/devp2p#171 for more information
      - the empty response will be returned in GetHelperTrieProofsMsg request if the merkle
         proving is failed. note, for backward compatibility, the empty merkle proof as well as
         the request auxiliary data will still be returned in  les2/3 protocol no matter the proving
         is successful or not. the proving failure can happen e.g. request the proving for a
         non-included entry in helper trie (unstable header).
      034ecc32
  2. Nov 25, 2020
  3. Apr 09, 2020
  4. Feb 26, 2020
  5. Aug 27, 2019
  6. Aug 21, 2019
  7. Jul 22, 2019
  8. Apr 08, 2019
  9. Feb 26, 2019
    • Zsolt Felföldi's avatar
      les, les/flowcontrol: improved request serving and flow control (#18230) · c2003ed6
      Zsolt Felföldi authored
      This change
      
      - implements concurrent LES request serving even for a single peer.
      - replaces the request cost estimation method with a cost table based on
        benchmarks which gives much more consistent results. Until now the
        allowed number of light peers was just a guess which probably contributed
        a lot to the fluctuating quality of available service. Everything related
        to request cost is implemented in a single object, the 'cost tracker'. It
        uses a fixed cost table with a global 'correction factor'. Benchmark code
        is included and can be run at any time to adapt costs to low-level
        implementation changes.
      - reimplements flowcontrol.ClientManager in a cleaner and more efficient
        way, with added capabilities: There is now control over bandwidth, which
        allows using the flow control parameters for client prioritization.
        Target utilization over 100 percent is now supported to model concurrent
        request processing. Total serving bandwidth is reduced during block
        processing to prevent database contention.
      - implements an RPC API for the LES servers allowing server operators to
        assign priority bandwidth to certain clients and change prioritized
        status even while the client is connected. The new API is meant for
        cases where server operators charge for LES using an off-protocol mechanism.
      - adds a unit test for the new client manager.
      - adds an end-to-end test using the network simulator that tests bandwidth
        control functions through the new API.
      c2003ed6
Loading