2024-04-21-23-30
This commit is contained in:
parent
911cb57941
commit
3bd2e7b80d
BIN
data/media/gemini_protocol/alt-web-protocols-comparison.png
Normal file
BIN
data/media/gemini_protocol/alt-web-protocols-comparison.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 55 KiB |
@ -199,8 +199,9 @@ _underline_
|
||||
Спорным моментом является обязательное шифрование TLS поверх уже имеющегося слоя.
|
||||
|
||||
Также сертификат TLS предусматривает наличие CN записи, что может стать проблемой при выборе сервера с поддержкой CN/SNI в формате IPv6.\\
|
||||
Разработчики серверов не ймут сути вопроса по части отсутствия домена и если есть задача работать с классической адресацией Yggdrasil, следует сразу обратить внимание на форк сервера [[https://github.com/YGGverse/titan-II|Titan-II]].
|
||||
Разработчики серверов не ймут сути вопроса по части отсутствия домена и если есть задача работать с классической адресацией Yggdrasil, следует сразу обратить внимание на форк сервера [[https://github.com/YGGverse/titan-II|Titan-II]] (реализация хостинга статики на его основе - реализована в проектах β-Doku и Pulsar).
|
||||
|
||||
В виду указанных особенностей, более целесообразным выбором для сети Yggdrasil может быть протокол [[:nex_protocol|Nex]].
|
||||
==== DNS ====
|
||||
|
||||
Пользователи [[:yggdrasil:dns:internal_dns|DNS с подключением через Yggdrasil]] и в частности - [[:yggdrasil:dns:alfis#скорость_работы|Alfis DNS]], использующего стандартно AdGuard, могут столкнуться с задержками при открытии казалось-бы легковесных страниц Gemtext.
|
||||
@ -217,12 +218,46 @@ _underline_
|
||||
* %%gemini://[301:23b4:991a:634d::db]%% - эксплорер блокчейна KevaCoin [[https://github.com/kvazar-network/geminiapp|KVAZAR]]
|
||||
* %%gemini://kvazar.ygg%% - алиас
|
||||
* %%gemini://kvazar.duckdns.org%% - алиас в Интернет
|
||||
|
||||
* %%gemini://[301:23b4:991a:634d::feed]%% - агрегатор лент RSS на базе движка с открытым кодом [[https://github.com/YGGverse/Pulsar|Pulsar]]
|
||||
===== Похожие протоколы =====
|
||||
|
||||
* Gopher
|
||||
* Guppy - %%gemini://guppy.000090000.xyz/guppy-spec.gmi%%
|
||||
* Spartan
|
||||
* Nex
|
||||
* [[:nex_protocol|Nex]] - %%nex://nightfall.city/nex/info/specification.txt/%%
|
||||
* Scroll - %%gemini://scrollprotocol.us.to%%
|
||||
* Text - https://textprotocol.org
|
||||
|
||||
==== Сравнение ====
|
||||
|
||||
<code>
|
||||
gemini spartan scroll nex
|
||||
------ ------- ------ ---
|
||||
naming scheme space sparta/greece scrolls & libraries cityscape & highways
|
||||
transport TCP + TLS TCP TCP + TLS TCP
|
||||
request structure full URL hostname & path full URL path
|
||||
request encoding utf-8 us-ascii utf-8 utf-8
|
||||
status codes 18 4 18 0
|
||||
document type text/gemini text/gemini text/scroll text/plain
|
||||
input prompt 1x status "=:" prompt line 1x status none
|
||||
|
||||
data upload limited yes limited no
|
||||
mimetypes yes yes yes no
|
||||
virtual hosting yes yes yes no
|
||||
same-site redirects yes yes yes no
|
||||
cross-site redirects yes no yes no
|
||||
proxy requests yes no yes no
|
||||
"lang" response parameter yes no yes no
|
||||
lang request parameter no no yes no
|
||||
response metadata heuristic heuristic yes heuristic
|
||||
abstract/metadata requests no no yes no
|
||||
|
||||
link relationships heuristic heuristic yes heuristic
|
||||
list nesting no no yes heuristic
|
||||
</code>
|
||||
|
||||
Источник: %%gemini://scrollprotocol.us.to%%
|
||||
|
||||
===== Статьи внутри раздела =====
|
||||
|
||||
|
62
data/pages/nex_protocol.txt
Normal file
62
data/pages/nex_protocol.txt
Normal file
@ -0,0 +1,62 @@
|
||||
====== Nex (протокол) ======
|
||||
|
||||
Минималистичный сетевой протокол семейства [[https://ru.wikipedia.org/wiki/Gopher|Gopher]] / [[:gemini_protocol|Gemini]] для обмена преимущественно текстовыми файлами.
|
||||
|
||||
От последнего отличается:
|
||||
|
||||
* отсутствием внешних и внутренних редиректов
|
||||
* отсутствием [[:gemini_protocol#коды_статусов|статус-кодов]]
|
||||
* не требует обязательной сертификации TLS, следовательно - привязки к домену посредством CN/SNI, что выгодно при использовании классической адресации 0200::/7 в Yggdrasil, где передаваемый трафик уже зашифрован а DNS - зачастую не используется
|
||||
|
||||
===== Спецификация =====
|
||||
|
||||
==== NEX ====
|
||||
|
||||
Сервер принимает подключения посредством TCP на порту 1900 и взависимости от наличия слеша в конце пути запроса, возвращает либо директорию либо текстовый или бинарный файл.
|
||||
|
||||
**Пример запроса:**
|
||||
|
||||
<code>
|
||||
telnet nightfall.city 1900
|
||||
nex
|
||||
</code>
|
||||
|
||||
**Подробнее:**
|
||||
|
||||
%%nex://nightfall.city/nex/info/specification.txt%%
|
||||
|
||||
|
||||
==== NPS ====
|
||||
|
||||
Протокол отправки данных по типу Titan для Gemini, по-умолчанию используется порт 1915.
|
||||
|
||||
Целостность отправляемого пакета обеспечивается наличием точки в конце сообщения, после чего пакет считается отправленным и соединение с сервером прекращается.
|
||||
|
||||
**Спецификация:**
|
||||
|
||||
%%nex://nightfall.city/nps/info/specification.txt%%
|
||||
|
||||
===== Программное обеспечение =====
|
||||
|
||||
==== Сервер ====
|
||||
|
||||
* [[https://hg.sr.ht/~m15o/nexd|nexd]] - очень простой сервер на Go для публикации статики на 1900 порту, по-умолчанию открывает файлы с названием "[[https://hg.sr.ht/~m15o/nex-pfm/browse/handler.go?rev=tip#L93|index]]" (репозиторий mercurial)
|
||||
* [[https://hg.sr.ht/~m15o/kinex|kinex]] - проксирующий сервер на Go для публикации статики на 8080 порту, также добавляет разметку HTML
|
||||
|
||||
==== Клиенты ====
|
||||
|
||||
* [[https://github.com/skyjake/lagrange|Lagrange]] - браузер для различных smallnet протоколов, включая nex.
|
||||
|
||||
==== Утилиты ====
|
||||
|
||||
* [[https://github.com/YGGverse/nex-php|nex-php]] - PHP 8 / Composer библиотека для разработки веб-приложений
|
||||
|
||||
===== Внутрисетевые ресурсы =====
|
||||
|
||||
* %%nex://[301:23b4:991a:634d::1900]%% - блог проекта YGGverse в формате [[:gemini_protocol#gemtext|gemtext]]
|
||||
|
||||
===== Ссылки =====
|
||||
|
||||
* [[https://nightfall.city]] (%%nex://nightfall.city%%) - домашняя страница - документация, полезные ссылки и ресурсы сообщества
|
||||
* [[https://hg.sr.ht/~m15o/]] - тематические проекты с открытым кодом
|
||||
* [[:gemini_protocol#сравнение|Сравнение протоколов gemini, spartan, scroll, nex]]
|
Loading…
x
Reference in New Issue
Block a user