|
|
The “Kermit” File Transfer Protocol Introduction As the need for computers around the globe became more and more important to various aspects of life and business, there was a definite need for computers to communicate with each other regularly. Because of this factor the traditional standalone computers were disregarded and today most computers are connected to each other via computer networks. The largest of this kind can be considered as the Internet. Especially in the business world computer networks are a must have weapon in their arsenal. But to enable networked communications, computers must be able to transmit data among one another. Protocols, in other words agreed upon methods of communication make this possible. Protocols can be also stated as a language that is agreed upon two or more computers to communicate. Network protocol standards are based upon the Open System Interconnection (OSI) Reference Model and the Institute of Electrical and Electronic Engineers (IEEE) 802 standards. In general most protocols follow the guidelines established by the OSI reference model. A protocol suite, also called a stack, is a combination of protocols that work together to achieve network communication. So as we can see networking and communicating plays a major role today, so because of this factor we must see how computers communicate and what kind of tools they use to communicate. After the initial brief introduction to the types of protocols used and their categorizations, I would be aiming the course of this research paper on describing a popular file transfer protocol named Kermit. I choose Kermit because even though it’s widespread, the wider end user population seems to know very little about the protocol and the software. The first few sections would contain an introduction to Kermit, its features and its use. Then moving on to technical aspects of how Kermit works, about Kermit software, and about its frame format. Lastly, I would be concentrating on some general Kermit commands, and the security of Kermit, thus, which protocols Kermit supports on security. 2 Types of Protocols There are three main categories of protocols, which are Network protocols, Transport protocols, and Application protocols. Network Protocols Network protocols provide the following services, addressing and routing information, error checking, requesting retransmission, and establishing rules for communication in a particular networking environment. These services are also called link services. Some popular network protocols are: * DDP (Delivery Datagram Protocol) Apple’s data transport protocol that is used in AppleTalk. * IP (Internet Protocol) Part of the TCP/IP protocol suite that provides addressing and routing information. * IPX (Internetwork Packet Exchange) and NWLink Novell’s NetWare protocol (and Microsoft’s implementation of this protocol, respectively) used for packet routing and forwarding. * NetBEUI Developed by IBM and Microsoft, it provides transport services for NetBIOS. (Reference 1.) Transport Protocols In addition, protocol suites also contain transport protocols, which are responsible for ensuring reliable data delivery between computers. Some popular transport protocols are: * ATP (AppleTalk Transaction Protocol) and NBP (Name Binding Protocol) AppleTalk's session and data transport protocols * NetBIOS/NetBEUI NetBIOS establishes and manages communications between computers; NetBEUI provides data transport services for that communication * SPX (Sequenced Packet Exchange) and NWLink Novell's connectionoriented protocol that is used to guarantee data delivery (and Microsoft's implementation of this protocol) * TCP (Transmission Control Protocol) The portion of the TCP/IP protocol suite that is responsible for reliable delivery of data 3 Application Protocols Finally, there are application protocols, which are responsible for applicationto- application services. Some popular application protocols are: * AFP (AppleTalk File Protocol) Apple's remote file management protocol * FTP (File Transfer Protocol) Another member of the TCP/IP protocol suite that is used to provide file transfer services * NCP (NetWare Core Protocol) Novell's client shells and redirectors NFS (Network File System) a client/server file system protocol primarily used to share directories with Unix systems. * SMB (Server Message Block) A protocol that sits above NetBEUI and NetBIOS that defines and formats commands for information passing between networked computers. * SMTP (Simple Mail Transport Protocol) A member of the TCP/IP protocol suite that is responsible for transferring email. * SNMP (Simple Network Management Protocol) A TCP/IP protocol that is used to manage and monitor network devices. (Reference 1.) What Is Kermit As mentioned earlier Kermit is a popular file transfer protocol, Kermit is available on most, if not all, the major platforms. Kermit was written at Colombia University in the early 1980’s in response to a growing demand to transfer mainframe files to a new and emerging technological wonder, the floppy disk. Kermit is unique in that it is not proprietary software. In other words, it doesn’t cost anything. It is exchanged freely and is widely available. Its availability has enabled many people to study it and make suggestions for improving it. Consequently, Kermit has grown and appears in many versions. Because there is so many versions the features change all the time, there could be changes undergoing even now. Because of this aspect I have decided to discuss Kermit in general. The name Kermit probably seems familiar. Indeed, Kermit is named after one of the late Jim Henson’s Muppet characters. According to daCruz. F. a researcher for Kermit, the name Kermit was chosen because the Muppet frog is a pleasant unassuming sort of a character and the protocol designers liked the association. To 4 justify its use they tried to think of a phrase for which Kermit was an acronym. After failing in their attempt, they decided to use the name anyway and requested and got permission from Henson Associates, Inc. to do so. Over the years, the Kermit project has grown into a worldwide cooperative nonprofit software development effort, headquartered at and coordinated from Colombia University. The Kermit Project is dedicated to production of crossplatform, long-lasting, standards-conformant, interoperable communications software, and is actively engaged in the standards process. Since its inception in 1981, the Kermit protocol has developed into a sophisticated and powerful tool for file transfer and management, incorporating, among other things: * File group transmission * File attribute transmission (size, date, permissions, etc) * File name, record-format, and character- set conversion * File collision options, including an "update" feature * File transfer recovery * Auto upload and download * Client/Server operations * Automatic per-file text/binary mode switching * Recursive directory-tree transfer, even between unlike platforms * Uniform services on serial and network connections * An Internet Kermit Service Daemon Kermit Software Kermit software has been written for hundreds of different computers and operating systems, some of it by volunteer programmers all over the world, some of it by the Kermit Project professional staff. The major features of the most popular Kermit programs are: * Connection establishment and maintenance for a wide variety of connection methods (TCP/IP, X.25, LAN, serial port, modem, etc).
|