The TCP/IP Guide - Version 3.0 (Contents) ` 1634 _ © 2001-2005 Charles M. Kozierok. All Rights Reserved.
tions to each other; TCP is used because the connections are maintained over a long
period of time and reliable transport of data is required. Server connections are used to
exchange control information and user data, forming a logical IRC network at the appli-
cation level, which allows any server to send to any other using intermediate servers as
conduits. Servers are managed by IRC operators (IRCops) who have special privileges that
allow them to ensure that everything runs smoothly on the network.
The IRC network forms the backbone of the IRC communication service. A user can access
the network by running IRC client software on any TCP/IP-enabled device. The user enters
the name of one of the servers on the network and establishes a TCP connection to that
server. This causes the user to be connected directly to one server, and thus, indirectly to
all of the others on the network. This allows that user to send and receive messages to and
from all other users connected either to the user’s server or other servers.
Group Messaging and IRC Channels
The most common type of communication in IRC is group messaging, which is accom-
plished using IRC channels. A channel is a virtual meeting place of sorts, and is also
sometimes called a chat room (though IRC purists scoff at the use of that term.) Every IRC
network has hundreds or even thousands of different channels, each of which is dedicated
to a particular type of discussion, ranging from the serious to the silly. For example, a group
of people interested in talking about meteorology could establish a channel called
“#weather” where they would meet regularly to discuss various aspects of climatology and
interesting weather events.
IRC is an inherently text-based protocol (though it is also possible to use IRC clients to
transfer arbitrary files between users, including images and executable programs.) To
communicate in a channel, all a user needs to do is enter text in the appropriate spot on the
IRC client program; this text is automatically sent to every other member of the channel.
The IRC network handles the relaying of these messages in real time from one user, to that
user’s connected server, to other servers in the network, and then to all user machines on
those servers. When other users see the first user’s message they can reply with messages
of their own, which will in turn be propagated across the network. Each IRC user chooses a
nickname (often abbreviated nick) that is like a “handle” used for communication while
connected to the network.
Individual Messaging
IRC also supports one-to-one communication, which can be used for private conversation.
To use this method, all a user needs is the nickname of another user to whom he or she
wants to talk; he or she uses a special command to send messages directly to that user,
who can respond in kind. This is not a secure form of communication, since the messages
are not encrypted, and they pass through servers where they could be monitored. However,
there is so much traffic on a typical IRC network that any given message is unlikely to be
monitored, so there is not much concern (unless you work for the CIA or just developed a
cure for the common cold or something. ☺)