This commit is contained in:
Dmitry Zuikov 2023-02-23 07:34:02 +03:00
parent e8b87666e6
commit 9c5d9e01f8
1 changed files with 41 additions and 0 deletions

View File

@ -1,4 +1,45 @@
## 2023-02-23
TODO: http-cache-protocol
Сделать http worker, который будет поддерживать команды
```
GET /hash/read
GET /hash/cat
```
для чтения блока и стриминга блока соответственно.
Сделать протокол согласования HTTP CACHE, наподобие
```
data HttpCache =
HttpCacheRequestRead...
| HttpCacheRequestCat ...
| HttpCacheAnnounceRead ...
| HttpCacheAnnounceCat ...
```
Смысл в том, что публично доступная нода может просто
анонсировать свой HTTP Cache, и все могут качать с него.
Файлы будут отдаваться системным вызовом sendfile, снимая
всякую нагрузку с нас.
В дальнейшем можно сделать тоже самое для QUIC. То есть,
сигнализация будет ходить по нашему UDP, а вот проблематичные
жирные процессы будем выносить вовне.
При таком подходе, кстати, можно взять не хаскельную реализацию
QUIC, а любую устраивающую.
Нам по факту надо поддержать только скачивание, остальные команды
вполне могут ходить по UDP.
Напомним, что пытаться контролировать чтение каким-либо образом,
кроме криптографической защиты - бессмысленно. Можно даже не
утруждаться аутентификацией.
## 2023-02-22
TODO: prefer-local-peers