Программное обеспечение из дистрибутива согласованно механически связано и ожидает найти libavcodec.so.54
, поэтому неверсионное имя не требуется ни для одного из предварительно собранных пакетов.
Однако, если вы создаете программное обеспечение самостоятельно, обычно используется -lavcodec
или аналогичный, который обнаружит, что libavcodec.so
не версионирован. Точно так же сценарии сборки могут ожидать, что эти имена существуют.
Неверсированные имена не требуются для пакетов распространения, поэтому они не включены по умолчанию, но, поскольку они полезны при сборке другого программного обеспечения, они включены в пакет -devel
. Другие дистрибутивы имеют другие описания и включают ссылку .so
в основной пакет; оба варианта - разумный выбор.
В основном потому, что mosh использует протокол без установления соединения и правильно обрабатывает повторное связывание клиента и сервера. Я сам не уверен на 100% в деталях, но насколько я понимаю,в целом это работает так:
Конечно, здесь также задействована аутентификация (, в противном случае кто угодно может тривиально захватить ваши сеансы mosh ), но на самом деле это не особенно важно для того, как происходит переключение.
Вероятно, стоит отметить, что во многих программах P2P используются очень похожие методы (, то есть, по сути, эквивалентные шагам 2 и 3, только с туннелированием чего-то еще )для обеспечения устойчивости к сетевым изменениям. Примеры программного обеспечения, которое делает такие вещи, включают Syncthing и tinc .
Ваша цитата взята с сайта,https://mosh.org. Если вы начнете читать «Техническую информацию», на ваш вопрос будет дан ответ :-).
Is that a simple reconnect technology?
Это не традиционная технология переподключения, то есть тайм-аут + переподключение. Примером этого может быть тайм-аут SSH/TCP + ручное повторное подключение к , экрану или серверам tmux.
mosh
специально разработан как технология мобильности. Он может адаптироваться намного быстрее.
Roaming with SSP becomes easy: the client sends datagrams to the server with increasing sequence numbers, including a "heartbeat" at least once every three seconds. Every time the server receives an authentic packet from the client with a sequence number higher than any it has previously received, the IP source address of that packet becomes the server's new target for its outgoing packets. By doing roaming “statelessly” in this manner, roaming works in and out of NATs, even ones that may themselves be roaming. Roaming works even when the client is not aware that its Internet-visible IP address has changed. The heartbeats allow Mosh to inform the user when it hasn't heard from the server in a while (unlike SSH, where users may be unaware of a dropped connection until they try to type).
Другие технологии мобильности могут закорачивать -цепь с такой задержкой пульса в тех случаях, когда клиент знает о том, что его видимый -IP-адрес в Интернете изменился. В этом разделе не говорится, заботится ли mosh
об этом. Обновление через 3 секунды уже делает интерактивный сеанс mosh
полезным и гораздо более надежным, чем традиционные значения по умолчанию. Также есть более новые аспекты mosh, которые объясняются в «Технической информации», не слишком увязая в мелких деталях :).
По крайней мере, как описано выше, mosh
мобильность реализуется только для одного конца :клиента. Это помогает mosh
избежать необходимости в третьей стороне -, в отличие от мобильного IP, для которого требуется «домашний агент», работающий на маршрутизаторе со стабильным IP-адресом.
При реализации мобильности очень важно, чтобы она надежно контролировалась. mosh
уже включает безопасность, инициализированную через SSH. Мобильный IP не имеет этого преимущества; он надеется использовать IPsec. IPsec — это дополнительное расширение IP, которое необходимо настроить между вашим компьютером и маршрутизатором. Он, как правило, используется только в определенных узких сценариях.
Существует третье сходство между использованием mosh
и screen
или tmux
:. Оно работает только потому, что серверы SSH настроены на то, чтобы вы могли оставить программу запущенной на неопределенный срок после отключения. Если вы не используете systemd
с «официальной» конфигурацией по умолчанию :).systemd считает, что отсутствие возможности контролировать это было вопиющим упущением в истории Unix. Обратите внимание, что во многих других случаях использование ресурсов в течение неопределенного времени, когда вы даже не подключены к сети, будет считаться опасно расточительством. Многие веб-серверы настроены на отключение клиентов через несколько секунд, если они не отправляют или не получают значительный объем данных. См.https://en.wikipedia.org/wiki/Slowloris_(компьютер _безопасность)
Мобильный IP — старый проект. Гораздо более свежий проект — MP -TCP (multi -TCP ). Он реализует простую безопасность для управления мобильностью. MP -TCP больше похож на mosh
в том смысле, что начальное подключение осуществляется к одному IP-адресу сервера, который не является мобильным. Когда соединение установлено, клиент или сервер теоретически могут изменить свой IP-адрес и оставаться на связи. Однако он не может восстановиться, если все IP-адреса изменятся одновременно.