2018-04-27 15:45:46 +00:00
|
|
|
---
|
2018-05-16 08:21:32 +00:00
|
|
|
id: 095-les-service-model
|
|
|
|
title: Adding a service model to LES
|
|
|
|
status: Draft
|
2018-04-27 15:45:46 +00:00
|
|
|
created: 2018-03-20
|
2018-04-28 03:12:22 +00:00
|
|
|
category: research
|
2018-08-04 07:31:49 +00:00
|
|
|
lead-contributor: @b00ris
|
2018-04-27 15:45:46 +00:00
|
|
|
contributors:
|
|
|
|
- themue
|
|
|
|
- jeka
|
|
|
|
- b00ris
|
|
|
|
- zsfelfoldi (external)
|
2018-04-28 03:12:22 +00:00
|
|
|
exit-criteria: yes
|
|
|
|
success-metrics: no
|
|
|
|
clear-roles: yes
|
|
|
|
future-iterations: yes
|
2018-04-27 15:45:46 +00:00
|
|
|
---
|
|
|
|
|
2018-04-06 14:31:11 +00:00
|
|
|
## Preamble
|
|
|
|
|
2018-05-16 08:21:32 +00:00
|
|
|
Idea: 095-les-service-model
|
|
|
|
Title: Adding a service model to LES
|
|
|
|
Status: Draft
|
2018-04-06 14:31:11 +00:00
|
|
|
Created: 2018-03-20
|
|
|
|
|
|
|
|
## Summary
|
|
|
|
|
2018-05-16 08:21:32 +00:00
|
|
|
Add the LES Service Model where clients can subscribe to higher quality services. Different payment models will
|
|
|
|
be available, negotiation between client and full node is done via auctions based on demands and capacity. This
|
|
|
|
way full node service provide are able to monetize the services they provide. LES will make the beginning, Whisper
|
|
|
|
and Swarm may follow.
|
2018-04-06 14:31:11 +00:00
|
|
|
|
|
|
|
## Swarm Participants
|
|
|
|
|
2018-08-04 07:31:49 +00:00
|
|
|
- Lead Contributor: @b00ris
|
2018-04-27 15:45:46 +00:00
|
|
|
- Testing & Evaluation: TBD
|
2018-04-06 14:31:11 +00:00
|
|
|
- Contributor: @jeka
|
|
|
|
- PM: @zsfelfoldi (external)
|
|
|
|
- UX (if relevant):
|
|
|
|
|
|
|
|
## Product Overview
|
|
|
|
|
2018-05-16 08:21:32 +00:00
|
|
|
Right now all light clients are treated equal by the full nodes they connect. A future service model will
|
2018-04-27 15:45:46 +00:00
|
|
|
introduce the separation between free and payed services. As outlined by Felföldi Zsolt:
|
2018-04-06 14:31:11 +00:00
|
|
|
|
|
|
|
- LES will be available either as free or paid service,
|
|
|
|
- paid service can guarantee availability and short response times,
|
|
|
|
- client bandwidth demand fluctuates with time, good service quality requires reserve capacity,
|
|
|
|
- for-profit LES servers can still give away their extra capacity for free (with lower priority than paid service),
|
|
|
|
- free service is a good indicator of high bandwidth capacity and therefore the capability to provide good service, and
|
|
|
|
- paying clients will prefer servers which already gave them free service so free service can act as an advertisement.
|
|
|
|
|
2018-05-16 08:21:32 +00:00
|
|
|
Here Status supports the development and testing to make the service model become a part of *geth* and be
|
2018-04-27 15:45:46 +00:00
|
|
|
integrated into Status.
|
2018-04-06 14:31:11 +00:00
|
|
|
|
|
|
|
### Remark
|
|
|
|
|
|
|
|
For Status it also could become interesting to become a service provider offering payed full node services not only
|
|
|
|
for own clients. This business case should be evaluated in an own swarm.
|
|
|
|
|
|
|
|
### Product Description
|
|
|
|
|
2018-05-16 08:21:32 +00:00
|
|
|
Parts of the LES Service Model introduction are:
|
2018-04-06 14:31:11 +00:00
|
|
|
|
|
|
|
- research, definition, and implementation of connection management system of paying clients for full nodes,
|
|
|
|
- research, definition, and implementation of auctioning,
|
|
|
|
- research, definition, and implementation of payment methods and models,
|
|
|
|
- documentation.
|
|
|
|
|
|
|
|
### Minimum Viable Product
|
|
|
|
|
2018-04-25 20:38:39 +00:00
|
|
|
Goal Date: TBD
|
|
|
|
|
|
|
|
Description:
|
|
|
|
|
2018-04-06 14:31:11 +00:00
|
|
|
- [ ] Auctioning protocol between client and full node is defined
|
2018-04-27 15:45:46 +00:00
|
|
|
- [ ] Payment methods and interfaces are defined
|
2018-04-06 14:31:11 +00:00
|
|
|
- [ ] Initial implementation validates auctioning and micropayment in automated tests
|
|
|
|
|
|
|
|
## Artifacts
|
|
|
|
|
2018-04-13 11:03:39 +00:00
|
|
|
- [Information about Micropayment](micropayment.md)
|
2018-04-06 14:31:11 +00:00
|
|
|
- [Logfile](log.md)
|
|
|
|
- [Links](links.md)
|
|
|
|
|
|
|
|
## Success Metrics
|
|
|
|
|
2018-05-16 08:21:32 +00:00
|
|
|
LES of `go-ethereum` is extended to provide micropayed services with a higher quality
|
2018-04-06 14:31:11 +00:00
|
|
|
level as well as free services depending on capacity and configuration.
|
|
|
|
|
|
|
|
## Copyright
|
|
|
|
|
|
|
|
Copyright and related rights waived via [CC0](https://creativecommons.org/publicdomain/zero/1.0/).
|
|
|
|
|