Существует ли спецификация реализации протокола передачи файлов Kermit (последовательного)?
Мне нужен последовательный протокол для встроенной системы, которая имеет некоторые причуды. Прямо сейчас это делает YModem, но есть икоты, поэтому я решил попробовать Zmodem или Kermit. Zmodem имеет и код, и достаточно четкую спецификацию реализации.
Я не могу найти ничего, из чего я могу реализовать протокол передачи файлов Kermit с "нуля" (ни пригодный для использования код).
Есть источник, который плохо организован и включает в себя полные терминальные эмуляторы и TCP-клиенты, со всеми видами разделов и опций для каждого компьютера, включая антиквариат. Например, C-Kermit 9.0. Я бы потратил больше времени на его рефакторинг, чтобы извлечь именно то, что мне нужно, а не реализовать его напрямую.
Есть заумная математическая статья, которую я нахожу запутывающей, так как она не говорит о битах и байтах, только что-то между формальным доказательством и псевдокодом. (Proof.pdf - и он имеет теоремы, доказательства и леммы!). Он претендует на то, чтобы быть какой-то спецификацией. Может быть, где-то похоронен, но та же проблема, мне придется потратить некоторое время на извлечение фактической информации о кодировании.
Мне нужны некоторые расширенные функции (полные раздвижные окна), но Embedded Kermit говорит, что у них нет таких функций (хотя есть некоторые частичные биты или зацепки), но есть некоторые другие вещи, которые я не хочу и не нуждаюсь.
Я не думаю, что у меня возникнут проблемы с написанием Kermit из реальной спецификации, предназначенной для программистов, относительно того, что происходит по проводам (контент и время), или, что еще лучше, чистой, но полной реализации.
Я тоже не могу найти. Кто-нибудь здесь знает об этом?
1 ответ
Протокол kermit был описан Фрэнком Да Крузом в книге Kermit, a File Transfer Protocol (Digital Press, 1987). В Интернете есть документ под названием « Руководство по протоколу Кермита» (1986), который, как я полагаю, является более ранней версией книги.
Некоторые из дополнительных функций в руководстве никогда не были реализованы, а также есть некоторые дополнительные функции, которые были реализованы, но так и не нашли своего отражения в руководстве. Если вас интересуют эти экзотические расширения, вам нужно будет просмотреть этот архив обсуждений протокола Kermit .