UUCP is an
acronym
An acronym is a word or name formed from the initial components of a longer name or phrase. Acronyms are usually formed from the initial letters of words, as in ''NATO'' (''North Atlantic Treaty Organization''), but sometimes use syllables, as ...
of Unix-to-Unix Copy. The term generally refers to a suite of
computer program
A computer program is a sequence or set of instructions in a programming language for a computer to execute. Computer programs are one component of software, which also includes documentation and other intangible components.
A computer program ...
s and
protocol
Protocol may refer to:
Sociology and politics
* Protocol (politics), a formal agreement between nation states
* Protocol (diplomacy), the etiquette of diplomacy and affairs of state
* Etiquette, a code of personal behavior
Science and technology
...
s allowing remote execution of commands and transfer of
file
File or filing may refer to:
Mechanical tools and processes
* File (tool), a tool used to ''remove'' fine amounts of material from a workpiece
**Filing (metalworking), a material removal process in manufacturing
** Nail file, a tool used to gent ...
s,
email
Electronic mail (email or e-mail) is a method of exchanging messages ("mail") between people using electronic devices. Email was thus conceived as the electronic ( digital) version of, or counterpart to, mail, at a time when "mail" meant ...
and
netnews
Usenet () is a worldwide distributed discussion system available on computers. It was developed from the general-purpose UUCP, Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis (computing), Jim Ellis conceived th ...
between
computer
A computer is a machine that can be programmed to Execution (computing), carry out sequences of arithmetic or logical operations (computation) automatically. Modern digital electronic computers can perform generic sets of operations known as C ...
s.
A command named is one of the programs in the suite; it provides a user interface for requesting file copy operations. The UUCP suite also includes (user interface for remote command execution), (the communication program that performs the file transfers), (reports statistics on recent activity), (execute commands sent from remote machines), and (reports the UUCP name of the local system). Some versions of the suite include
/ (convert 8-bit binary files to 7-bit text format and vice versa).
Although UUCP was originally developed on
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and ot ...
in the 1970s and 1980s, and is most closely associated with
Unix-like
A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-li ...
systems, UUCP implementations exist for several non-Unix-like operating systems, including
DOS
DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems.
DOS may also refer to:
Computing
* Data over signalling (DoS), multiplexing data onto a signalling channel
* Denial-of-service attack (DoS), an attack on a communicatio ...
,
OS/2
OS/2 (Operating System/2) is a series of computer operating systems, initially created by Microsoft and IBM under the leadership of IBM software designer Ed Iacobucci. As a result of a feud between the two companies over how to position OS/2 ...
,
OpenVMS
OpenVMS, often referred to as just VMS, is a multi-user, multiprocessing and virtual memory-based operating system. It is designed to support time-sharing, batch processing, transaction processing and workstation applications. Customers using Ope ...
(for VAX hardware only),
AmigaOS
AmigaOS is a family of proprietary native operating systems of the Amiga and AmigaOne personal computers. It was developed first by Commodore International and introduced with the launch of the first Amiga, the Amiga 1000, in 1985. Early version ...
,
classic Mac OS
Mac OS (originally System Software; retronym: Classic Mac OS) is the series of operating systems developed for the Macintosh family of personal computers by Apple Computer from 1984 to 2001, starting with System 1 and ending with Mac OS 9. The ...
, and even
CP/M
CP/M, originally standing for Control Program/Monitor and later Control Program for Microcomputers, is a mass-market operating system created in 1974 for Intel 8080/ 85-based microcomputers by Gary Kildall of Digital Research, Inc. Initial ...
.
History
UUCP was originally written at
AT&T Bell Laboratories
Nokia Bell Labs, originally named Bell Telephone Laboratories (1925–1984),
then AT&T Bell Laboratories (1984–1996)
and Bell Labs Innovations (1996–2007),
is an American industrial research and scientific development company owned by mult ...
by
Mike Lesk
Michael E. Lesk (born 1945) is an American computer scientist.
Biography
In the 1960s, Michael Lesk worked for the SMART Information Retrieval System project, wrote much of its retrieval code and did many of the retrieval experiments, as well as ...
.
By 1978 it was in use on 82 UNIX machines inside the Bell system, primarily for software distribution. It was released in 1979 as part of
Version 7 Unix
Seventh Edition Unix, also called Version 7 Unix, Version 7 or just V7, was an important early release of the Unix operating system. V7, released in 1979, was the last Bell Laboratories release to see widespread distribution before the commercial ...
.
The first UUCP emails from the U.S. arrived in the United Kingdom in 1979 and email between the UK, the Netherlands and Denmark started in 1980, becoming a regular service via
EUnet
EUnet was a very loose collaboration of individual European UNIX sites in the 1980s that evolved into the fully commercial entity EUnet International Ltd in 1996. It was sold to Qwest in 1998. EUnet played a decisive role in the adoption of TCP/IP ...
in 1982.
The original UUCP was
rewritten by AT&T researchers Peter Honeyman, David A. Nowitz, and Brian E. Redman around 1983. The rewrite is referred to as ''HDB'' or ''HoneyDanBer'' uucp, which was later enhanced, bug fixed, and repackaged as ''BNU UUCP'' ("Basic Network Utilities").
Each of these versions was distributed as proprietary software, which inspired
Ian Lance Taylor
Ian or Iain is a name of Scottish Gaelic origin, derived from the Hebrew given name (Yohanan, ') and corresponding to the English name John. The spelling Ian is an Anglicization of the Scottish Gaelic forename ''Iain''. It is a popular name in Sc ...
to write a new
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
version from scratch in 1991.
''Taylor UUCP'' was released under the
GNU General Public License
The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the Four Freedoms (Free software), four freedoms to run, study, share, and modify the software. The license was th ...
. Taylor UUCP addressed security holes which allowed some of the original
network worms to remotely execute unexpected shell commands. Taylor UUCP also incorporated features of all previous versions of UUCP, allowing it to communicate with any other version and even use similar config file formats from other versions.
UUCP was also implemented for non-
UNIX
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and ot ...
operating systems, most-notably
DOS
DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems.
DOS may also refer to:
Computing
* Data over signalling (DoS), multiplexing data onto a signalling channel
* Denial-of-service attack (DoS), an attack on a communicatio ...
systems. Packages such as UUSLAVE/GNUUCP (
John Gilmore John Gilmore may refer to:
* John Gilmore (activist) (born 1955), co-founder of the Electronic Frontier Foundation and Cygnus Solutions
* John Gilmore (musician) (1931–1995), American jazz saxophonist
* John Gilmore (representative) (1780–1845), ...
, Garry Paxinos, Tim Pozar), UUPC/extended (Drew Derbyshire of Kendra Electronic Wonderworks) and FSUUCP (Christopher Ambler of IODesign), brought early
Internet
The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a '' network of networks'' that consists of private, pub ...
connectivity to personal computers, expanding the network beyond the interconnected university systems. FSUUCP formed the basis for many
bulletin board system
A bulletin board system (BBS), also called computer bulletin board service (CBBS), is a computer server running software that allows users to connect to the system using a terminal program. Once logged in, the user can perform functions such as ...
(BBS) packages such as Galacticomm's
Major BBS
The Major BBS (sometimes MajorBBS or MBBS) was bulletin board software (a bulletin board system server) developed between 1986 and 1999 by Galacticomm. In 1995 it was renamed Worldgroup Server and bundled with a user client interface program na ...
and
Mustang Software
Mustang Software, Inc. was a California-based corporation that developed telecommunications software products. Mustang was incorporated in 1988, became a public corporation (NASDAQ ticker symbol MSTG) in 1995, and was finally merged into Quintus C ...
's
Wildcat! BBS
Wildcat! BBS is a bulletin board system server application that Mustang Software developed in 1986 for MS-DOS, and later ported to Microsoft Windows
Windows is a group of several proprietary graphical operating system families developed and ...
to connect to the UUCP network and exchange email and
Usenet
Usenet () is a worldwide distributed discussion system available on computers. It was developed from the general-purpose Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis conceived the idea in 1979, and it was ...
traffic. As an example, UFGATE (John Galvin, Garry Paxinos, Tim Pozar) was a package that provided a gateway between networks running
Fidonet and UUCP protocols.
FSUUCP was the only other implementation of Taylor's enhanced 'i' protocol, a significant improvement over the standard 'g' protocol used by most UUCP implementations.
Technology
Before the widespread availability of
Internet access
Internet access is the ability of individuals and organizations to connect to the Internet using computer terminals, computers, and other devices; and to access services such as email and the World Wide Web. Internet access is sold by Internet ...
, computers were only connected by smaller
local area network
A local area network (LAN) is a computer network that interconnects computers within a limited area such as a residence, school, laboratory, university campus or office building. By contrast, a wide area network (WAN) not only covers a larger ...
s within a company or organization. They were also often equipped with
modems
A modulator-demodulator or modem is a computer hardware device that converts data from a digital format into a format suitable for an analog transmission medium such as telephone or radio. A modem transmits data by Modulation#Digital modulati ...
so they could be used remotely from
character-mode terminals via
dial-up
Dial-up Internet access is a form of Internet access that uses the facilities of the public switched telephone network (PSTN) to establish a connection to an Internet service provider (ISP) by dialing a telephone number on a conventional telepho ...
telephone lines. UUCP used the computers' modems to dial out to other computers, establishing temporary, point-to-point links between them. Each system in a UUCP network has a list of neighbor systems, with phone numbers, login names and passwords, etc. When ''work'' (file transfer or command execution requests) is queued for a neighbor system, the program typically calls that system to process the work. The program can also poll its neighbors periodically to check for work queued on their side; this permits neighbors without dial-out capability to participate.
Over time, dial-up links were replaced by Internet connections, and UUCP added a number of new
link layer protocols. These newer connections also reduced the need for UUCP at all, as newer application protocols developed to take advantage of the new networks. Today, UUCP is rarely used over dial-up links, but is occasionally used over
TCP/IP
The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the set of communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suit ...
.
The number of systems involved, as of early 2006, ran between 1500 and 2000 sites across 60 enterprises. UUCP's longevity can be attributed to its low cost, extensive logging, native
failover
Failover is switching to a redundant or standby computer server, system, hardware component or network upon the failure or abnormal termination of the previously active application, server, system, hardware component, or network in a computer net ...
to dialup, and persistent queue management.
Sessions
UUCP is normally started by having a user log into the target system and then running the UUCP program. In most cases, this is automated by logging into a known user account used for transfers, whose account's shell has been set to . Thus, for automated transfers, another machine simply has to open a modem connection to the called machine and log into the known account.
When uucico runs, it will expect to receive commands from another UUCP program on the caller's machine and begin a session. The session has three distinct stages:
# Initial handshake
# File request(s)
# Final handshake
Initial handshake
On starting, uucico will respond by sending an identification string,
\20Shere=''hostname''\0
, where \20 is the control-P character, and \0 is a trailing null. The caller's UUCP responds with
\20S''callername'' ''options''\0
, where ''options'' is a string containing zero or more Unix-like option switches. These can include packet and window sizes, the maximum supported file size, debugging options, and others.
Depending on the setup of the two systems, the call may end here. For instance, when the caller responds with their system name, the called system may optionally hang up if it does not recognize the caller, sending the
RYou are unknown to me\0
response string and then disconnecting.
File requests
If the two systems successfully handshake, the caller will now begin to send a series of file requests. There are four types:
:S causes a file to be Sent from the caller to the called system (upload). The from and to names are provided, allowing the filename to be changed on the receiver. When the S command is received on the called system, it responds with SY if it succeeded and it is ready to accept the file, or SNx if it failed, where x is a failure reason. If an SY is received by the caller, it begins uploading the file using the protocol selected during the initial handshake (see below). When the transfer is complete, the called system responds with CY if it successfully received the file, or CN5 if it failed.
:R is a Request for the called system to send a file to the caller (download). It is otherwise similar to S, using RY and RN to indicate the command was accepted and it will begin to send data or had a problem, and expecting a CY and CN5 from the caller at the end of the transfer.
:X uploads commands to be eXecuted on the called system. This can be used to make that system call another and deliver files to it. The called system responds with XY if it succeeded, or XN if it failed.
:H, for Hangup, indicates the caller is done. The called system responds with HY if it succeeded, or HN if it failed.
Final handshake
After sending an H command, the calling system sends a final packet (control-P, six ohs, null-terminator) and the called system responds with (control-P, seven ohs, null-terminator). Some systems will simply hang up on the successful reception of the H command and not bother with the final handshake.
g-protocol
Within the suite of protocols in UUCP, the underlying g-protocol is responsible for transferring information in an error-free form. The protocol originated as a general-purpose system for packet delivery, and thus offers a number of features that are not used by the UUCP package as a whole. These include a secondary channel that can send command data interspersed with a file transfer, and the ability to renegotiate the packet and window sizes during transmission. These extra features may not be available in some implementations of the UUCP stack.
The packet format consisted of a 6-byte header and then between zero and 4096 bytes in the payload. The packet starts with a single \020 (control-P). This is followed by a single byte, known as "K", containing a value of 1 to 8 indicating a packet size from 32 to 4096 bytes, or a 9 indicating a control packet. Many systems only supported K=2, meaning 64 bytes. The next two bytes were a 16-bit checksum of the payload, not including the header. The next byte is the data type and finally, the last byte is the XOR of the header, allowing it to be checked separately from the payload.
[
The control byte consists of three bit-fields in the format TTXXXYYY. TT is the packet type, 0 for control packets (which also requires K=9 to be valid), 1 for alternate data (not used in UUCP), 2 for data, and 3 indicates a short packet that re-defines the meaning of K. In a data packet, XXX is the packet number for this packet from 0 to 7, and YYY is the last that was received correctly. This provides up to 8 packets in a window. In a control packet, XXX indicates the command and YYY is used for various parameters. For instance, transfers are started by sending a short control packet with TT=0 (control), XXX=7 and YYY the number of packets in a window, then sending another packet with XXX=6 and YYY as the packet length (encoded as it would be in K) and then a third packet that is identical to the first but XXX=5.][
g-protocol uses a simple ]sliding window
A sliding window protocol is a feature of packet-based data transmission protocols. Sliding window protocols are used where reliable in-order delivery of packets is required, such as in the data link layer (OSI layer 2) as well as in the Transm ...
system to deal with potentially long latencies between endpoints. The protocol allows packets to size from 64 to 4096 8-bit bytes, and windows that include 1 to 7 packets. In theory, a system using 4k packets and 7 packet windows (4096x7) would offer performance matching or beating the best file-transfer protocols like ZMODEM
ZMODEM is an inline file transfer protocol developed by Chuck Forsberg in 1986, in a project funded by Telenet in order to improve file transfers on their X.25 network. In addition to dramatically improved performance compared to older protocols, ...
. In practice, many implementations only supported a single setting of 64x3. As a result, the g-protocol has an undeserved reputation for poor performance. Confusion over the packet and window sizes led to the G-protocol, differing only in that it always used 4096x3. Taylor UUCP did not support G, but did support any valid requested window or packet size, so remote systems starting G would work fine with Taylor's g, while two Taylor systems could negotiate even faster connections.[
]Telebit
Telebit Corporation was a US-based modem manufacturer, known for their TrailBlazer series of high-speed modems. One of the first modems to routinely exceed 9600 bit/s speeds, the TrailBlazer used a proprietary modulation scheme that proved highly ...
modems used protocol spoofing
Protocol spoofing is used in data communications to improve performance in situations where an existing protocol is inadequate, for example due to long delays or high error rates.
Spoofing techniques
In most applications of protocol spoofing, a ...
to improve the performance of g-protocol transfers by noticing end-of-packet markers being sent to the remote system and immediately sending an back to the local host, pretending that the remote system had already received the packet and decoded it correctly. This triggered the software stack to send the next packet, so rapidly that the transfer became almost continuous. The data between the two modems was error-corrected using a proprietary protocol based on MNP that ran over Telebit's half-duplex connections much better than g-protocol would normally,[ because in the common 64x3 case the remote system would be sending a constant stream of s that would overflow the low-speed return channel. Combined with the modem's naturally higher data rates, they greatly improved overall throughput and generally performed about seven times the speed of a 2400 bps modem. They were widely used on UUCP hosts as they could quickly pay for themselves in reduced long-distance charges.
]
Other protocols
UUCP implementations also include other transfer protocols for use over certain links.
f-protocol is designed to run over 7-bit error-corrected links. This was originally intended for use on X.25
X.25 is an ITU-T standard protocol suite for packet-switched data communication in wide area networks (WAN). It was originally defined by the International Telegraph and Telephone Consultative Committee (CCITT, now ITU-T) in a series of drafts ...
links, which were popular for a time in the 1980s. It does not packetize data, instead, the entire file is sent as a single long string followed by a whole-file checksum. The similar x-protocol appears to have seen little or no use. d-protocol was similar to x, but intended for use on Datakit Datakit is a virtual circuit switch which was developed by Sandy Fraser at Bell Labs for both local-area and wide-area networks, and in widespread deployment by the Regional Bell Operating Companies (RBOCs).
Datakit uses a cell relay protocol simi ...
networks that connected many of Bell Labs
Nokia Bell Labs, originally named Bell Telephone Laboratories (1925–1984),
then AT&T Bell Laboratories (1984–1996)
and Bell Labs Innovations (1996–2007),
is an American industrial research and scientific development company owned by mult ...
offices.[
t-protocol originated in the BSD versions of UUCP and is designed to run over 8-bit error-free ]TCP/IP
The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the set of communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suit ...
links. It has no error correction at all, and the protocol consists simply of breaking up command and file data into 512 or 1024-byte packets to easily fit within typical TCP frames. The less-used e-protocol, which originated the HoneyDanBer versions as opposed to t from BSD, differs only in that commands are not packetized and are instead sent as normal strings, while files are padded to the nearest 20 bytes.[
]
Mail routing
The and capabilities could be used to send email
Electronic mail (email or e-mail) is a method of exchanging messages ("mail") between people using electronic devices. Email was thus conceived as the electronic ( digital) version of, or counterpart to, mail, at a time when "mail" meant ...
between machines, with suitable mail user interfaces and delivery agent programs. A simple UUCP mail address was formed from the adjacent machine name, an exclamation mark
The exclamation mark, , or exclamation point (American English), is a punctuation mark usually used after an interjection or exclamation to indicate strong feelings or to show emphasis. The exclamation mark often marks the end of a sentence, f ...
(often pronounced ''bang''), followed by the user name on the adjacent machine. For example, the address ''barbox!user'' would refer to user ''user'' on adjacent machine ''barbox''.
Mail could furthermore be routed through the network, traversing any number of intermediate nodes before arriving at its destination. Initially, this had to be done by specifying the complete path, with a list of intermediate host names separated by bangs. For example, if machine ''barbox'' is not connected to the local machine, but it is known that ''barbox'' is connected to machine ''foovax'' which does communicate with the local machine, the appropriate address to send mail to would be ''foovax!barbox!user''.
User ''barbox!user'' would generally publish their UUCP email address in a form such as ''…!bigsite!foovax!barbox!user''. This directs people to route their mail to machine ''bigsite'' (presumably a well-known and well-connected machine accessible to everybody) and from there through the machine ''foovax'' to the account of user ''user'' on ''barbox''. Publishing a full path would be pointless, because it would be different, depending on where the sender was. (e.g. Ann at one site may have to send via path ''gway!tcol!canty!uoh!bigsite!foovax!barbox!user'', whereas from somewhere else, Bill has to send via the path ''pdp10!router22!bigsite!foovax!barbox!user''). Many users would suggest multiple routes from various large well-known sites, providing even better and perhaps faster connection service from the mail sender.
Bang path
An email address of this form was known as a bang path.
Bang paths of eight to ten machines (or ''hops'') were not uncommon in 1981, and late-night dial-up UUCP links could cause week-long transmission times. Bang paths were often selected by both transmission time and reliability, as messages would often get lost. Some hosts went so far as to try to " rewrite" the path, sending mail via "faster" routes—this practice tended to be frowned upon.
The "pseudo-domain" ending .uucp
UUCP is an acronym of Unix-to-Unix Copy. The term generally refers to a suite of computer programs and communications protocol, protocols allowing remote execution of commands and transfer of Computer file, files, email and netnews between compute ...
was sometimes used to designate a hostname as being reachable by UUCP networking, although this was never formally registered in the domain name system
The Domain Name System (DNS) is a hierarchical and distributed naming system for computers, services, and other resources in the Internet or other Internet Protocol (IP) networks. It associates various information with domain names assigned to ...
(DNS) as a top-level domain
A top-level domain (TLD) is one of the domains at the highest level in the hierarchical Domain Name System of the Internet after the root domain. The top-level domain names are installed in the root zone of the name space. For all domains in ...
. The uucp community administered itself and did not mesh well with the administration methods and regulations governing the DNS; .uucp works where it needs to; some hosts punt mail out of SMTP queue into uucp queues on gateway machines if a .uucp address is recognized on an incoming SMTP connection.
Usenet
Usenet () is a worldwide distributed discussion system available on computers. It was developed from the general-purpose Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis conceived the idea in 1979, and it was ...
traffic was originally transmitted over the UUCP protocol using bang paths. These are still in use within Usenet message format ''Path'' header lines. They now have only an informational purpose, and are not used for routing, although they can be used to ensure that loops do not occur.
In general, like other older e-mail address formats, bang paths have now been superseded by the " @ notation", even by sites still using UUCP. A UUCP-only site can register a DNS domain name, and have the DNS server that handles that domain provide MX record
A mail exchanger record (MX record) specifies the mail server responsible for accepting email messages on behalf of a domain name. It is a resource record in the Domain Name System (DNS). It is possible to configure several MX records, typically p ...
s that cause Internet mail to that site to be delivered to a UUCP host on the Internet that can then deliver the mail to the UUCP site.
UUCPNET and mapping
UUCPNET was the name for the totality of the network of computers connected through UUCP. This network was very informal, maintained in a spirit of mutual cooperation between systems owned by thousands of private companies, universities, and so on. Often, particularly in the private sector, UUCP links were established without official approval from the companies' upper management. The UUCP network was constantly changing as new systems and dial-up links were added, others were removed, etc.
The ''UUCP Mapping Project'' was a volunteer, largely successful effort to build a map of the connections between machines that were open mail relay
An open mail relay is a Simple Mail Transfer Protocol (SMTP) server configured in such a way that it allows anyone on the Internet to send e-mail through it, not just mail destined to or originating from known users. This used to be the default con ...
s and establish a managed namespace. Each system administrator would submit, by e-mail, a list of the systems to which theirs would connect, along with a ranking for each such connection. These submitted map entries were processed by an automatic program that combined them into a single set of files describing all connections in the network. These files were then published monthly in a newsgroup
A Usenet newsgroup is a repository usually within the Usenet system, for messages posted from users in different locations using the Internet. They are discussion groups and are not devoted to publishing news. Newsgroups are technically distinct ...
dedicated to this purpose. The UUCP map files could then be used by software such as "pathalias" to compute the best route path from one machine to another for mail, and to supply this route automatically. The UUCP maps also listed contact information for the sites, and so gave sites seeking to join UUCPNET an easy way to find prospective neighbors.
Connections with the Internet
Many UUCP hosts, particularly those at universities, were also connected to the Internet
The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a '' network of networks'' that consists of private, pub ...
in its early years, and e-mail gateways between Internet SMTP
The Simple Mail Transfer Protocol (SMTP) is an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients typical ...
-based mail and UUCP mail were developed. A user at a system with UUCP connections could thereby exchange mail with Internet users, and the Internet links could be used to bypass large portions of the slow UUCP network. A "UUCP zone" was defined within the Internet domain namespace to facilitate these interfaces.
With this infrastructure in place, UUCP's strength was that it permitted a site to gain Internet e-mail and Usenet connectivity with only a dial-up modem link to another cooperating computer. This was at a time when true Internet access required a leased data line providing a connection to an Internet ''Point of Presence'', both of which were expensive and difficult to arrange. By contrast, a link to the UUCP network could usually be established with a few phone calls to the administrators of prospective neighbor systems. Neighbor systems were often close enough to avoid all but the most basic charges for telephone calls.
Remote commands
''uux'' is remote command execution over UUCP. The uux command is used to execute a command
Command may refer to:
Computing
* Command (computing), a statement in a computer language
* COMMAND.COM, the default operating system shell and command-line interpreter for DOS
* Command key, a modifier key on Apple Macintosh computer keyboards
* ...
on a remote system
Remote administration refers to any method of controlling a computer from a remote location. Software that allows remote administration is becoming increasingly common and is often used when it is difficult or impractical to be physically near a s ...
, or to execute a command on the local system using files from remote systems. The command is run by the daemon, which handles remote execution requests as simply another kind of file to batch-send to the remote system whenever a next-hop node is available. The remote system will then execute the requested command and return the result, when the original system is available. Both of these transfers may be indirect, via multi-hop paths, with arbitrary windows of availability. Even when executing a command on an always-available neighbor, uux is not instant.
Decline
UUCP usage began to die out with the rise of Internet service provider
An Internet service provider (ISP) is an organization that provides services for accessing, using, or participating in the Internet. ISPs can be organized in various forms, such as commercial, community-owned, non-profit, or otherwise private ...
s offering inexpensive SLIP
Slip or SLIP may refer to:
Science and technology Biology
* Slip (fish), also known as Black Sole
* Slip (horticulture), a small cutting of a plant as a specimen or for grafting
* Muscle slip, a branching of a muscle, in anatomy
Computing and ...
and PPP services. The UUCP Mapping Project was formally shut down in late 2000.
The UUCP protocol has now mostly been replaced by the Internet TCP/IP based protocols SMTP
The Simple Mail Transfer Protocol (SMTP) is an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients typical ...
for mail and NNTP
The Network News Transfer Protocol (NNTP) is an application protocol used for transporting Usenet news articles (''netnews'') between news servers, and for reading/posting articles by the end user client applications. Brian Kantor of the Univers ...
for Usenet news.
In July 2012, Dutch Internet provider XS4ALL closed down its UUCP service, claiming it was "probably one of the last providers in the world that still offered it"; it had only 13 users at that time (however prior to its shut-down it had refused requests from new users for several years).
Current uses and legacy
One surviving feature of UUCP is the chat file format, largely inherited by the Expect
Expect is an extension to the Tcl scripting language written by Don Libes. The program automates interactions with programs that expose a text terminal interface. Expect, originally written in 1990 for the Unix platform, has since become availa ...
software package.
UUCP was in use over special-purpose high cost links (e.g. marine satellite links) long after its disappearance elsewhere, and still remains in legacy use . In addition to legacy use, in 2021 new and innovative UUCP uses are growing, especially for telecommunications in the HF band, for example, for communities in the Amazon rainforest
The Amazon rainforest, Amazon jungle or ; es, Selva amazónica, , or usually ; french: Forêt amazonienne; nl, Amazoneregenwoud. In English, the names are sometimes capitalized further, as Amazon Rainforest, Amazon Forest, or Amazon Jungle. ...
for email exchange and other uses. A patch to Ian's UUCP was contributed to UUCP Debian Linux package to adapt for the HERMES (High-Frequency Emergency and Rural Multimedia Exchange System) project, which provides UUCP HF connectivity.
In the mid 2000s, UUCP over TCP/IP (often encrypted, using the SSH
The Secure Shell Protocol (SSH) is a cryptographic network protocol for operating network services securely over an unsecured network. Its most notable applications are remote login and command-line execution.
SSH applications are based on a ...
protocol[) was proposed for use when a computer does not have any fixed ]IP addresses
An Internet Protocol address (IP address) is a numerical label such as that is connected to a computer network that uses the Internet Protocol for communication.. Updated by . An IP address serves two main functions: network interface ident ...
but is still willing to run a standard mail transfer agent
The mail or post is a system for physically transporting postcards, letters, and parcels. A postal service can be private or public, though many governments place restrictions on private systems. Since the mid-19th century, national postal syst ...
(MTA) like Sendmail
Sendmail is a general purpose internetwork email routing facility that supports many kinds of mail-transfer and delivery methods, including the Simple Mail Transfer Protocol (SMTP) used for email transport over the Internet.
A descendant of the ...
or Postfix.
Bang-like paths are still in use within the Usenet
Usenet () is a worldwide distributed discussion system available on computers. It was developed from the general-purpose Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis conceived the idea in 1979, and it was ...
network, though not for routing; they are used to record, in the header of a message, the nodes through which that message has passed, rather than to direct where it will go next. "Bang path" is also used as an expression for any explicitly specified routing
Routing is the process of selecting a path for traffic in a network or between or across multiple networks. Broadly, routing is performed in many types of networks, including circuit-switched networks, such as the public switched telephone netw ...
path between network hosts. That usage is not necessarily limited to UUCP, IP routing, email messaging, or Usenet.
The concept of delay-tolerant networking
Delay-tolerant networking (DTN) is an approach to computer network architecture that seeks to address the technical issues in heterogeneous networks that may lack continuous network connectivity. Examples of such networks are those operating in mo ...
protocols was revisited in the early 2000s. Similar techniques as those used by UUCP can apply to other networks that experience delay or significant disruption.
See also
* Routing
Routing is the process of selecting a path for traffic in a network or between or across multiple networks. Broadly, routing is performed in many types of networks, including circuit-switched networks, such as the public switched telephone netw ...
* Sitename
In computer networking, a hostname (archaically nodename) is a label that is assigned to a device connected to a computer network and that is used to identify the device in various forms of electronic communication, such as the World Wide Web. Hos ...
* Mesh networking
A mesh network is a local area network topology in which the infrastructure nodes (i.e. bridges, switches, and other infrastructure devices) connect directly, dynamically and non-hierarchically to as many other nodes as possible and cooperate wit ...
* FidoNet
* Berknet
* History of email
The history of email entails an evolving set of technologies and standards that culminated in the email systems in use today.
Computer-based messaging between users of the same system became possible following the advent of time-sharing in the ear ...
* History of the Internet
The history of the Internet has its origin in information theory and the efforts of scientists and engineers to build and interconnect computer networks. The Internet Protocol Suite, the set of rules used to communicate between networks and de ...
References
External links
* ''Using & Managing UUCP''. Ed Ravin, Tim O'Reilly, Dale Doughtery, and Grace Todino. 1996, O'Reilly & Associates, Inc.
* Mark Horton Mark Horton may refer to:
* Mark Horton (archaeologist) (born 1956), British maritime and historical archaeologist, television presenter and writer
* Mark Horton (bridge) (born 1950), British author, journalist and expert on bridge
* Mary Ann Horto ...
(1986). '': UUCP Mail Interchange Format Standard''. Internet Engineering Task Force
The Internet Engineering Task Force (IETF) is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster or requirements and a ...
Requests for Comment.
Taylor UUCP Documentation
– useful information about UUCP in general and various uucp protocols.
* The UUCP Project:
{{DEFAULTSORT:Uucp
Network file transfer protocols
Network protocols
Usenet
Unix SUS2008 utilities
File transfer software