Kermit (protocole) - Kermit (protocol)

Kermit
Protocole de communication
But Transfert de fichier
Développeur(s) Université Columbia
Introduit 1981 ; il y a 40 ans ( 1981 )
Site Internet www .kermitproject .org

Kermit est un protocole de transfert/gestion de fichiers informatiques et un ensemble d'outils logiciels de communication principalement utilisés dans les premières années de l'informatique personnelle dans les années 1980. Il fournit une approche cohérente du transfert de fichiers, de l' émulation de terminal , de la programmation de scripts et de la conversion des jeux de caractères sur de nombreuses plates-formes de matériel informatique et de système d'exploitation .

Technique

Le protocole Kermit prend en charge les transferts de fichiers texte et binaires sur des connexions série 8 bits et 7 bits en duplex intégral et semi-duplex de manière indépendante du système et du support, et est implémenté sur des centaines de plates-formes d'ordinateurs et de systèmes d'exploitation différentes. Sur les connexions en duplex intégral, un protocole de fenêtre glissante est utilisé avec une retransmission sélective qui offre d'excellentes performances et des caractéristiques de récupération d'erreur. Sur les connexions 7 bits, les décalages de verrouillage permettent un transfert efficace des données 8 bits. Lorsqu'ils sont correctement mis en œuvre, comme dans la collection Kermit Software de l'Université Columbia , ses auteurs affirment que les performances sont égales ou supérieures à celles d'autres protocoles tels que ZMODEM , YMODEM et XMODEM , en particulier sur les mauvaises connexions. Sur les connexions via des multiplexeurs statistiques RS-232 où certains caractères de contrôle ne peuvent pas être transmis, Kermit peut être configuré pour fonctionner, contrairement aux protocoles comme XMODEM qui exigent que la connexion soit transparente (c'est-à-dire que les 256 valeurs possibles d'un octet soient transférables).

Kermit peut être utilisé comme moyen d' amorcer d' autres logiciels, même lui-même. Pour distribuer Kermit via des réseaux propres non 8 bits , Columbia a développé .boo , un système de codage binaire en texte similaire à BinHex . Par exemple, les ordinateurs compatibles IBM PC et Apple avec une carte de compatibilité installée peuvent se connecter à des systèmes autrement incompatibles tels qu'un ordinateur central pour recevoir MS-DOS Kermit au format .boo. Les utilisateurs peuvent ensuite taper un "bébé Kermit" en BASIC sur leur ordinateur personnel qui télécharge Kermit et le convertit en binaire.

De même, les machines CP/M utilisent de nombreux formats de disquettes différents, ce qui signifie qu'une machine ne peut souvent pas lire les disques d'une autre machine CP/M, et Kermit est utilisé dans le cadre d'un processus de transfert d'applications et de données entre les machines CP/M et d'autres machines avec des systèmes d'exploitation différents. Le programme de copie de fichiers CP/M PIP peut généralement accéder au port série ( RS-232 ) d' un ordinateur , et s'il est configuré pour utiliser un débit en bauds très bas (car il n'a pas de correction d'erreur intégrée) peut être utilisé pour transférer un petit , version simple de Kermit d'une machine à une autre via un câble null modem , ou à défaut, une version très simple du protocole Kermit peut être codée manuellement en binaire en moins de 2K à l'aide de DDT, le CP/M Dynamic Debugging Tool. Une fois cela fait, la version simple de Kermit peut être utilisée pour télécharger une version entièrement fonctionnelle. Cette version peut ensuite être utilisée pour transférer n'importe quelle application ou données CP/M.

Les nouvelles versions de Kermit comprenaient un langage de script et l'automatisation des commandes. Le langage de script Kermit a évolué à partir de son langage de commande inspiré de TOPS-20 EXEC et a été influencé syntaxiquement et sémantiquement par ALGOL 60 , C , BLISS-10 , PL/I , SNOBOL et LISP .

L'exactitude du protocole Kermit a été vérifiée avec des méthodes formelles.

Histoire

À la fin des années 1970, les utilisateurs des ordinateurs centraux de l'Université de Columbia ne disposaient que de 35 kilo-octets de stockage par personne. Kermit a été développé à l'université afin que les étudiants puissent déplacer des fichiers entre eux et des disquettes sur divers micro-ordinateurs sur le campus, tels que les mainframes IBM ou DEC DECSYSTEM-20 et Intertec Superbrains exécutant CP/M . Les mainframes IBM utilisaient un jeu de caractères EBCDIC et les machines CP/M et DEC utilisaient ASCII , la conversion entre les deux jeux de caractères était donc l'une des premières fonctions intégrées à Kermit. Le premier transfert de fichiers avec Kermit a eu lieu en avril 1981. Le protocole a été initialement conçu en 1981 par Frank da Cruz et Bill Catchings.

L'université de Columbia a coordonné le développement de versions de Kermit pour de nombreux ordinateurs différents à l'université et ailleurs, et a distribué le logiciel gratuitement ; Kermit pour le nouvel ordinateur personnel IBM est devenu particulièrement populaire. En 1986, l'université a fondé le projet Kermit, qui a repris le développement et a commencé à facturer des frais pour un usage commercial ; le projet était financièrement autonome. Pour une utilisation non commerciale, l'Université de Columbia a déclaré que

Kermit est pour tout le monde à utiliser et à partager. Une fois que vous l'avez obtenu, n'hésitez pas à le transmettre à vos amis et collègues. Bien qu'il soit protégé par le droit d'auteur et non dans le domaine public, nous vous demandons seulement de ne pas tenter de le vendre à des fins lucratives et de ne l'utiliser qu'à des fins pacifiques et humaines.

En 1988, Kermit était disponible sur plus de 300 ordinateurs et systèmes d'exploitation. Le protocole est devenu une norme de communication de données de facto pour le transfert de fichiers entre des systèmes informatiques différents, et au début des années 1990, il pouvait convertir les codages de caractères multilingues . Le logiciel Kermit a été utilisé dans de nombreux pays, pour des tâches allant de simples devoirs d'étudiants à la résolution de problèmes de compatibilité à bord de la Station spatiale internationale . Il a été porté sur une grande variété de systèmes centraux, de mini - ordinateurs et de micro-ordinateurs jusqu'aux ordinateurs de poche et calculatrices de poche électroniques. La plupart des versions avaient une interface utilisateur basée sur le TOPS-20 Kermit original. Les versions ultérieures de certaines implémentations Kermit prennent également en charge les connexions réseau et série .

Les implémentations actuellement prises en charge incluent C -Kermit (pour Unix et OpenVMS ) et Kermit 95 (pour les versions de Microsoft Windows à partir de Windows 95 et OS/2 ), mais d'autres versions restent également disponibles.

Depuis le 1er juillet 2011, Columbia University a cessé d'héberger ce projet et l'a publié en open source. En juin 2011, le projet Kermit a publié une version bêta de C-Kermit v9.0 sous une licence BSD Open Source révisée à 3 clauses .

En plus des implémentations développées et/ou distribuées par l'Université de Columbia, le protocole Kermit a été implémenté dans un certain nombre de progiciels de communication tiers, entre autres ProComm et ProComm Plus . Le terme « SuperKermit » a été inventé par des fournisseurs tiers pour désigner les implémentations Kermit à plus grande vitesse offrant des fonctionnalités telles que le fonctionnement en duplex intégral, les fenêtres coulissantes et les paquets longs ; Cependant, ce terme a été déprécié par l'équipe Kermit d'origine de l'Université de Columbia, qui les considérait simplement comme des caractéristiques du protocole Kermit de base.

Dénomination et droit d'auteur

Kermit a été nommé d'après Kermit la grenouille des Muppets , avec la permission de Henson Associates . L' icône du programme dans la version Apple Macintosh était une représentation de Kermit la grenouille. Un backronym a néanmoins été créé, peut - être pour éviter les problèmes de marques, K L10 E rror-libre R eciprocal M icroprocessor I nterchange sur T lignes TY.

Kermit est un protocole ouvert - n'importe qui peut baser son propre programme dessus, mais certains logiciels et code source Kermit sont protégés par les droits d'auteur de l'Université de Columbia. Depuis la version 9.0 (à partir de la première version de test après Alpha.09), C-Kermit dispose d'une licence Open Source, la licence BSD révisée à 3 clauses. Tout le monde peut l'utiliser à sa guise pour n'importe quel usage, y compris la redistribution et la revente. Il peut être inclus avec n'importe quel système d'exploitation sur lequel il fonctionne ou peut être fait fonctionner, y compris les versions gratuites et commerciales d'Unix et de Hewlett-Packard (anciennement DEC) VMS (OpenVMS). L'assistance technique était disponible auprès de l'Université de Columbia jusqu'au 30 juin 2011.

Voir également

Les références

Lectures complémentaires

Liens externes