Irc
Internet Relay Chat (IRC) is a form of instant communication over the Internet that allows both one-to-one communication and group communication.
Technical information
RFC 1459 describes the protocol used by the early IRC2; 2810, 2811, 2812 and 2813 describe sets of proposed IRC extensions. Most IRC implementations consist of IRC2 with various add-ons and protocol extensions, resulting in incompatibilities preventing connection of servers running different software.
IRC is an open protocol that uses TCP and optionally SSL. An IRC server can connect to other IRC servers to form an IRC network. Users access IRC networks by connecting a client to a server. There are many client and server implementations. Most IRC servers do not require users to log in.
IRC is a plaintext protocol, which means that it is fully possible to use IRC via a raw socket connection, although quite inconvenient. However, there is no well-defined character encoding for messages and nicknames, making it impossible to guarantee that non-ASCII characters are displayed the same for each participant.
Because IRC connections are unencrypted and typically span long time periods, they are an attractive target for malicious hackers. Because of this, careful security policy is necessary to ensure that an IRC network is not susceptible to an attack such as an IRC takeover war. IRC networks also k-line or g-line users or networks that tend to have a harming effect.
IRC served as an early laboratory for many kinds of Internet attacks, such as using fake ICMP unreachable messages to break TCP-based IRC connections ("nuking") to annoy users or facilitate takeovers.
History
IRC was created by Jarkko Oikarinen (WiZ) in August 1988. It was created to replace a program called MUT (MultiUser Talk) on a BBS called OuluBox in Finland. Jarkko Oikarinen found inspiration in Bitnet Relay Chat which operated on the Bitnet network.
IRC gained prominence when it was used by users behind the Iron Curtain to report on the fall of the USSR during a media blackout. It was later used in a similar fashion by Kuwaitis during the invasion by Saddam Hussein.
Networks
Today there are many IRC networks; the largest include QuakeNet, EFNet, UnderNet, IRCNet, WebChat and GamesNET. They run various implementations of IRC servers, but the protocol exposed to IRC users is very similar, and all IRC networks can be accessed by the same client software.
IRC clients
There are also many automated clients, called "bots," short for "robot." The first 'bot was written by Greg Lindahl and provided moderation for the game of Wumpus, but most modern bots either are used to exercise operator privs (controlling channels), to annoy other users (perhaps by spamming them with lots of traffic), to answer repetitive user questions and provide help when channels are not attended, and serve as permanent points of contact for information exchange (an answering machine, file transfer, etc.).
Modern IRC
IRC has changed much over its life on the Internet. New server software has added a multitude of new features.
- Services: Network-Operated bots to facilitate registration of nicknames and channels to protect from takeovers or channel-wars. Services typically also include service for sending messeges for offline users (Memoserv) and network operator functions (Operserv).
- Extra Modes: While the original IRC system used a set of standard user and channel modes, new servers add many new modes for such features as removing color codes from text, or obscuring a users hostmask to protect from denial of service attacks.
- Proxy Detection: Most modern servers support detection of users attempting to connect through a proxy, which can then be denied a connection.
- Additional Commands: New commands can be such things as shorthand commands to issue commands to Services, to network operator only commands to manipulate a users hostmask.
Miscellany
Because major IRC servers support clients from different parts of the globe that interact in real time, UTC time is generally used for international meetings.
See also
External links
|