Про Керміта

Source: https://kermitproject.org/kermit.html

ОСТАННІ:

Діє з 1 липня 2011 року ...

  • Кермітський проект у Колумбійському університеті скасовано
  • Відкрито новий веб-сайт проекту Kermit за адресою http://www.kermitproject.org .
  • Усе програмне забезпечення Kermit має ліцензію з відкритим кодом .
  • Архів програмного забезпечення Kermit і веб-сайт у Колумбійському університеті залишаться на місці.

Ласкаво просимо до нового проекту Kermit з відкритим кодом.

Анонс Kermit 95 C-Kermit E-Kermit Інше програмне забезпечення Kermit

ЩО ТАКЕ КЕРМІТ?

Kermit — це назва протоколу передачі файлів і керування ними та набору комп’ютерних програм для багатьох типів комп’ютерів, які реалізують цей протокол, а також інші комунікаційні функції, починаючи від емуляції терміналу й закінчуючи автоматизацією комунікаційних завдань за допомогою високорівневого перехресного зв’язку. мова сценаріїв платформи. Програмне забезпечення не залежить від транспорту, працює через з’єднання TCP/IP у традиційному режимі відкритого тексту або захищено за допомогою SSH, SSL/TLS або Kerberos IV або V, а також через з’єднання через послідовний порт, модеми та інші методи зв’язку ( X.25, DECnet, різні протоколи локальної мережі, такі як NETBIOS і LAT, паралельні порти тощо на певних платформах).

Проект Kermit було засновано в Комп’ютерному центрі Колумбійського університету (нині CUIT ) у 1981 році для задоволення конкретних потреб , і до середини та кінця 1990-х Kermit був стандартним програмним забезпеченням для підключення настільних комп’ютерів Columbia, яке повсюдно використовувалося студентами, викладачами та персоналом для підключення від настільних мікрокомп'ютерів, ПК, Macintosh і робочих станцій Unix до центральних обчислювальних засобів: мейнфрейми IBM (1963-2017), DECSYSTEM-20s (1977-1988), CLIO(перша бібліотечна онлайнова інформаційна система Колумбії, 1984-2003) і Cunix (наші сервери на базі Unix, з 1986 року по теперішній час), а також до відомчих VAX, PDP-11, Suns та інших міні-комп’ютерів. На початку появи мікрокомп’ютерів і ПК, але до широкого розгортання локальних мереж і настільних робочих станцій, які підключалися до них, програмне забезпечення Kermit пов’язувало робочий стіл з електронною поштою, дошками оголошень, обміном файлами, обробкою тексту, обміном повідомленнями та іншими аспектами нова онлайн-культура, яка зараз сприймається як належне, задовго до того, як досвід був доступний у більшості інших установ. У Columbia DEC-20s і міні-комп’ютери відділів давно минули, а мейнфрейми IBM тепер використовуються лише для бекофісу, але програмне забезпечення Kermit все ще використовується для сеансів SSH від робочого столу до CUNIX, і технічним персоналом для завдань адміністрування системи та мережі; наприклад,конфігурація стелажів, заповнених блейд-серверами HP , щойно вони надходять, керування телефонною системою університету , створення сценаріїв CGI , альфа -пейджинг чергового персоналу тощо. Крім того, звичайно, старожили, які просто віддають перевагу безпеці та ефективності сеансів оболонки в текстовому режимі для електронної пошти та для виконання своєї роботи; наприклад, розробка програмного забезпечення та керування веб-сайтами.

З роками проект Kermit переріс у всесвітню кооперативну некомерційну розробку та розповсюдження програмного забезпечення зі штаб-квартирою та координацією з Колумбійського університету , оскільки програмне забезпечення Kermit було портовано або розроблено для все більшої кількості комп’ютерів і операційних систем ( див. список ). Проект Kermit присвячений створенню кросплатформного, довготривалого, стабільного , сумісного програмного забезпечення для зв’язку, що відповідає стандартам, і активно бере участь у процесі стандартизації . Програмне забезпечення Kermit використовується в усьому світі в усіх секторах економіки: національному уряді, державному та місцевому уряді, академічній, медицині та охороні здоров’я, машинобудуванні, аерокосмічній, некомерційній та комерційній.

Незважаючи на те, що емуляція терміналів була значною мірою витіснена Інтернетом для онлайн-доступу, програмне забезпечення Kermit продовжує відігравати важливу роль в інших програмах, таких як дистанційне зондування та збір даних, керування та усунення несправностей мережевого та телекомунікаційного обладнання, бек-офіс, управління вантажами та запасами, подання заяви про медичне страхування, електронний переказ коштів та онлайн-подання декларацій про доходи. Програмне забезпечення Kermit вбудовано в мережеві маршрутизатори та комутатори, у вежі стільникового зв’язку, у медичне діагностичне та моніторингове обладнання, навіть у кардіостимулятори, не кажучи вже про касові апарати багатьох відомих роздрібних торговців. У 2002 році Керміт літав на Міжнародній космічній станції , а програмне забезпечення Kermit є методом зв’язку, який використовуєОкеанські плавучі пристрої EM APEX (ліворуч), які донині постачають дані в реальному часі дослідникам і трекерам ураганів (у 2010 році проект ураганів увійшов у нову розширену фазу на основі нової версії Embedded Kermit ).

Починаючи з 1980-х років, протокол і програмне забезпечення Kermit використовувалися на заводах у програмованих машинах для висікання, гальмування пресів, ламінування, плоских валків, ножиць, обробки металу та пластику, деревообробних та інших верстатах. Наприклад, у виробництві Boeing 787 , де Kermit використовується для керування стрічковим шаром , який формує певні компоненти корпусу. Ви можете прочитати більше про використання Kermit на заводі тут і тут .

У 1990-х роках програмне забезпечення Kermit використовувалося в автоматизації поштових відділень США , воно відіграло ключову роль у бразильських національних виборах 1994 року (найбільших в історії світу до того часу), а також було центральним у місії ООН з надання допомоги в Боснії , «з’єднання всього спектру операцій проекту, від мейнфрейму, міні-комп’ютера, ПК до портативних пристроїв і зчитувачів штрих-кодів».

У 1980-х роках надійність протоколу Kermit ідеально підходила для використання під час Зеленої революції в Африці, спільної європейсько-радянської космічної місії Giotto , і, мабуть, найбільш помітно для відновлення обміну даними між дослідницькими станціями США в Антарктиді та на материку після того, як вони були зруйновані. відрізаний у 1986 році через комп’ютерну аварію під час 9-місячної антарктичної зими. У 1989 році міжнародна конференція Керміта була проведена в Москві, СРСР, а сесії Керміта були представлені на інших конференціях протягом 1980-х років у Токіо, Берні, Парижі, Нашвіллі та інших місцях.

Протокол і програмне забезпечення Kermit названі на честь жаби Керміта , зірки телесеріалу «Маппет-шоу»; ім'я Керміт використовується з дозволу Henson Associates, Inc. Чому воно названо на честь жаби Керміт? У травні 1981 року ми вже мали перші реалізації протоколу, але ми ще не мали назви для протоколу чи програмного забезпечення. Група з нас обговорювала це (я, Білл Кетчінгс, Білл Шіліт, Джефф Даменс, я думаю, що це була група), насправді це не дуже хвилювало, оскільки ми ніколи не очікували, що програмне забезпечення пошириться по всьому світу та прослужить десятиліттями. Випадково я стояв обличчям до стіни, на якій був календар Маппетів, і оскільки мої діти були великими фанатами Маппет-шоу, я сказав: «А як щодо Керміта?»? Через тридцять років (травень 2011) я знайшов сторінку календаря, на яку дивився, коли сказав це. Ви можете побачити її ліворуч і можете натиснути на неї, щоб побачити більше зображення.

ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ KERMIT

Програмне забезпечення Kermit було написано для сотень різних комп’ютерів і операційних систем, деякі з них програмістами-волонтерами з усього світу, інші – професійним персоналом проекту Kermit. Основні особливості найпопулярніших програм Kermit:

  • Встановлення та обслуговування з’єднання для різноманітних методів з’єднання (TCP/IP, X.25, LAN, послідовний порт, модем тощо).
  • Емуляція терміналу .
  • Передача файлів без помилок.
  • Інтернет-протоколи, включаючи Telnet, Rlogin, FTP і HTTP.
  • Методи безпеки в Інтернеті , включаючи Kerberos, SSL/TLS, SSH і SRP.
  • Перетворення набору символів як під час емуляції терміналу, так і під час передачі файлів – унікальна функція програмного забезпечення Kermit.
  • Цифровий і буквено-цифровий пейджінг.
  • Програмування сценаріїв для автоматизації складних або повторюваних завдань.

Інтерфейс користувача та мова програмування сценаріїв Kermit узгоджуються між платформами та методами зв’язку, що дозволяє інвестиціям у навчання знову й знову окупатися, коли ви переходите з однієї платформи на іншу, від одного методу спілкування до іншого.

Наші перші версії програмного забезпечення Kermit:

  • Kermit 95 для Windows 95/98/ME, Windows NT/2000/XP/Vista/7/8/10 і OS/2;
  • C-Kermit для UNIX , VMS, VOS та кількох інших сімейств операційних систем;
  • E-Kermit для вбудовування.
  • MS-DOS Kermit для DOS і Windows 3.x;
  • IBM Mainframe Kermit для VM/CMS, MVS/TSO та CICS.

C-Kermit і IBM Mainframe Kermit — це хост-пакети з неперевершеною різноманітністю. Kermit 95 і MS-DOS Kermit — це повнофункціональні комунікаційні програми для настільного комп’ютера, які за якістю конкурують із будь-чим іншим на ринку (або поза ним), за винятком, можливо, яскравого інтерфейсу користувача: програми Kermit дотримуються стилю підказок і команд у текстовому режимі. минулих років, що дивує деяких людей, поки вони не усвідомлять переваги:

  • Набір команд досить узгоджений для всіх платформ і майже повністю узгоджений для сучасних платформ, таких як Windows, Mac OS X, Linux і VMS. Вивчіть це один раз, використовуйте всюди.
  • Команди можна поєднувати в «макроси» або «програми», щоб автоматизувати будь-яке завдання, яке можна виконати вручну, як описано тут . Насправді в C-Kermit і Kermit 95 мова команд — це повномасштабна мова програмування зі змінними, керуючими структурами, функціями, «підпрограмами» та кількома сюрпризами.
  • Вам не потрібно знати команди заздалегідь або вводити їх повністю. Стиль команди називається «контекстно-залежне меню на вимогу» (ви бачите доступні варіанти, коли вводите знак питання), а ключові слова можна скорочувати. Існує багато вбудованої довідки, і ще багато довідки можна знайти на веб-сайті Kermit; наприклад підручник C-Kermit і підручник Kermit 95 , лише для початку.
  • Сенсорні друкарки можуть працювати швидше, коли їм не потрібно відводити руки від клавіш головного екрана, і вони менше страждають від повторюваних травм.

Певні речі просто неможливо зробити ефективно чи взагалі за допомогою інтерфейсу GUI. Ось абсолютно випадковий приклад, але він має суть:
На ПК у мене є каталог, який містить тисячі зображень разом із їхніми мініатюрами. Для кожного зображення xxx.jpg є мініатюра xxx-t.jpg . Я хочу завантажити всі мініатюри у Photoshop. Використовуючи мишу, це займе цілий день. За допомогою Kermit ви можете зробити це так (у командному рядку Kermit):
mkdir мініатюри

перейменувати *-t.jpg мініатюри/

  • А потім у підкаталозі ескізів натисніть Ctrl-A, щоб «виділити все» та перетягніть його до Photoshop (а потім, за бажанням, перетягніть ескізи назад у вихідний каталог одним рухом миші або перейменуйте їх за допомогою однієї команди Kermit).

Kermit 95 було розроблено не лише для задоволення потреб Columbia у підключенні від Windows 95 (і пізніших версій) до центральних текстових служб, але й для збору коштів на підтримку проекту Kermit. На відміну від інших програм Kermit, K95 була суто комерційною, доступною як у роздрібній упаковці (праворуч), так і в пакетних ліцензіях на право копіювання . З моменту випуску в 1995 році до середини 2011 року було придбано понад чверть мільйона масових ліцензійних місць у понад 1000 ліцензійних ліцензій розміром від 100 до 10 000 місць. Було продано близько 30 000 копій у термозбільшуваній упаковці, ще багато тисяч придбано для завантаження з e-academy , і K95 отримав ліцензію на сайті понад 100 університетів, а також цілих загальнодержавних університетських систем, таких як SUNY (64 кампуси з приблизно 400 000 студентами).

Проект Kermit був переведений на самофінансування в 1984 році, і з того часу до його скасування в 2011 році він реалізував 8 894 912,00 доларів США доходу для університету, а також грант на обладнання ( Проект Hermit ), оцінений у 3 000 000,00 доларів США . З 1984 року, коли розпочався «бізнес» Kermit, до 1998 року, коли Інтернет захопив світ, ми здійснили 31 591 поставку програмного забезпечення Kermit на магнітних носіях (переважно 10-дюймові котушки 9-доріжкової магнітної стрічки); 4679 з них є міжнародними до 107 різних країн, включаючи деякі, які вже не існують, такі як СРСР і Югославія, а також інші, яких ви, можливо, не очікуєте, такі як Нова Каледонія.

Книги Kermit Kermit 95 C-Kermit E-Kermit G-Kermit Поточні версії програмного забезпечення

КЕРМІТСЬКИЙ ПРОТОКОЛ

З моменту свого створення в 1981 році протокол Kermit перетворився на складний, потужний і розширюваний незалежний від транспорту інструмент для передачі файлів і керування ними, що містить, серед іншого:

Протокол Kermit використовує чітко визначені, послідовні, перевірені на помилки пакети в кожному напрямку для здійснення сеансу передачі файлів, дотримуючись стандартних правил розрівнювання протоколу. Пакети створені для максимальної прозорості, тож вони можуть проходити через будь-яке середовище зв’язку, незалежно від того, наскільки воно обмежене. Напівдуплекс (зупинка та очікування), повний дуплекс (ковзні вікна з вибірковою ретрансляцією) і безперервний потоковий транспорт можна використовувати для адаптації до будь-якого з’єднання.

Особливістю, яка відрізняє протокол Kermit від більшості інших, є його широкий діапазон налаштувань, які дозволяють адаптувати будь-який тип і якість з’єднання між будь-якими двома типами комп’ютерів — довжина пакета, кодування пакета, розмір вікна, набір символів, метод виявлення помилок, тайм-аути. , паузи. Більшість інших протоколів розроблено для роботи лише з певними видами чи якостями з’єднань та/або між певними типами комп’ютерів чи подібними файловими системами, і тому погано (або взагалі не працюють) в інших місцях і пропонують лише кілька методів адаптації до незапланованих - для ситуацій. Kermit, з іншого боку, дозволяє досягти успішної передачі файлів і максимально можливої ​​продуктивності на будь-якому даному з’єднанні.

На відміну від FTP або X-, Y- та ZMODEM (інших протоколів, з якими Kermit найчастіше порівнюють), протокол Kermit не передбачає та не вимагає:

  • повнодуплексне підключення;
  • з'єднання, прозоре для керуючих символів;
  • 8-бітне підключення;
  • чисте з'єднання;
  • великі буфери на всьому шляху зв'язку;
  • управління потоком фізичного рівня зв'язку.

(хоча Kermit не вимагає жодної з цих умов, він може скористатися ними, коли вони доступні). Особлива стаття про протокол Kermit Тіма Кіентзла в журналі Dr. Dobb's Journal за лютий 1996 року зазначала, що «віконний підхід Kermit швидший, ніж такі протоколи, як XModem і YModem. . . Багато людей не розуміють, що за неідеальних умов віконний підхід Kermit значно швидший, ніж ZModem, протокол із заслуженою репутацією швидкого передавання через якісні лінії». Ефективність протоколу Kermit детально аналізується тут і тут .

При цьому Kermit майже кожен раз передає роботу «з коробки». А на вищому рівні мова команд Kermit дозволяє використовувати різноманітні зручні критерії вибору файлів у будь-якій комбінації, наприклад:

  • Символи підстановки та шаблони для відповідності іменам файлів
  • Вибір за діапазонами дат
  • Підбір за розмірними рядами
  • Тільки текстові файли
  • Тільки бінарні файли
  • Лише файли, які не існують на іншому кінці або новіші
  • Списки винятків і шаблони

щоб виконати майже будь-яке групування, яке ви можете собі уявити. Під час передавання набір символів файлу може бути перетворений, його можна пропустити через фільтр тощо, а після успішної передачі вихідний файл можна видалити або перейменувати, файл призначення можна перейменувати або надіслати поштою тощо.

Специфікація протоколу Kermit

Специфікація протоколу передачі файлів Kermit наведена в книзі Керміт, Протокол передачі файлів Френка да Круза з передмовою Дональда Кнута (тепер доступна в Інтернеті у форматі PDF ). Специфікація також доступна в Інтернеті в шостому виданні Посібника з протоколу Керміта (1986). Обидва вони позбавлені пізніших удосконалень, але включають режим сервера, довгі пакети, ковзні вікна тощо. Документація для пізніших доповнень зібрана та загальнодоступна ТУТ . Офіційну специфікацію та перевірку протоколу Керміта опублікував Джеймс Хаггінс з Мічиганського університету в 1995 році; ви можете завантажити його ТУТ.

ПРИКЛАД ПЕРЕДАЧІ ФАЙЛУ KERMIT

Давайте розглянемо звичайний випадок, коли у вас є настільний комп’ютер Windows із підключенням — будь-яким типом підключення (модем, послідовний порт, звичайний Telnet, безпечний Telnet, rlogin, безпечний rlogin, SSH) — до сеансу оболонки на сервері Unix (" Unix" = Linux, Mac OS X, FreeBSD, Solaris, AIX, HP-UX тощо ), і ви хочете передати файл між ПК і сервером Unix. Ваш емулятор терміналу в Windows — це Kermit 95 , а на сервері Unix встановлено C-Kermit або G-Kermit , які можна викликати, просто ввівши «kermit» у командному рядку (або, можливо, «ckermit» або «gkermit»).

Щоб завантажити файл, скажімо, message.txt , ви вводите таку команду в командному рядку:

kermit -s повідомлення.txt

Файл надсилається до поточного каталогу Kermit 95 на вашому ПК (або до його КАТАЛОГУ ЗАВАНТАЖЕННЯ , якщо ви його визначили). Немає значення, текстовий файл чи двійковий; Керміт розраховує і автоматично переводить у відповідний режим.

Так само, якщо ви хочете передати групу файлів, скажімо, усі файли, імена яких починаються з « щоденно. ”:

kermit -s щоденно.*

Kermit надсилає кожен відповідний файл, автоматично перемикаючись між текстовим і двійковим режимами відповідно до кожного файлу (daily.jpg, daily.xls, daily.txt, ...)

Завантажити файл зі свого комп’ютера в Unix так само просто. Припустімо , що у поточному каталозі Kermit 95 на вашому комп’ютері є файл під назвою “ budget.xls ”. Щоб завантажити його в UNIX, введіть це в командному рядку оболонки Unix:

kermit -g бюджет.xls

Це основи; існує безліч варіацій і доопрацювань; наприклад:

  • Передавайте лише файли, новіші за аналоги на іншому кінці.
  • Конвертуйте набори символів текстових файлів належним чином (наприклад, між ISO 8859-1 та Unicode UTF-8).
  • Відновити часткове перенесення з точки збою (тільки двійковий режим).

Щоб не вводити текст, ви можете визначити псевдоніми в Unix (у своєму профілі оболонки):

псевдонім s="kermit -Ys"

псевдонім g="kermit -Yg"

( s для надсилання, g для отримання). І потім:

s message.txt

g бюджет.xls

Варто зазначити, що ви передаєте свої файли через те саме підключення, яке вже маєте; тому немає необхідності встановлювати нове підключення, повторно автентифікуватися або подібні бюрократичні процедури. Якщо з’єднання захищено SSH, Kerberos, SSL, TLS або SRP, то передача файлів також безпечна автоматично.

Це означає неперевершений ступінь зручності. Коли ви наказуєте C-Kermit на Unix надіслати або отримати файл, його перший пакет для передачі файлів автоматично розпізнається емулятором терміналу Kermit 95, і K95 переходить або в режим отримання, або в режим сервера, залежно від напрямку та коли передача завершується завершено, K95 повертається до екрану емуляції терміналу. Якщо сталася помилка (наприклад, якщо у вас немає дозволу на запис у цільовому каталозі), K95 залишається на екрані передавання файлів, щоб ви могли побачити, у чому полягала проблема.

Ті самі процедури також працюють із Unix-to-Unix, K95-to-VMS, Unix-to-VMS, VMS-to-Unix або OS/2 до VMS чи Unix, якщо ви використовуєте K95 або C-Kermit як термінал програма.