From 9c5d9e01f88e9942aa9a6c6b210c37a21241c642 Mon Sep 17 00:00:00 2001 From: Dmitry Zuikov Date: Thu, 23 Feb 2023 07:34:02 +0300 Subject: [PATCH] devlog --- docs/devlog.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/docs/devlog.md b/docs/devlog.md index 4672bf1e..e6031f9a 100644 --- a/docs/devlog.md +++ b/docs/devlog.md @@ -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