Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have been told that IRC uses UDP for client to server communication and TCP for server to server communication (in the case of linked servers). It seems that TCP is the better transport layer protocol for text chat since you need a ensure the text gets to the server. Just because a client displays the text as being in the channel/on the server it doesn't mean the server actually received it.

It's clear that IRC uses UDP. Is UDP used to pass the text messages from client to server?

share|improve this question

closed as off-topic by larsks, mdpc, kce, Andrew B, Christopher Perrin Aug 9 '13 at 15:08

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions must be relevant to professional system administration. Server Fault is a site dedicated to professionals; novice questions are off-topic. Please see the Help Center for more information on topicality. The best advice we can give you is to hire a professional to help you out." – larsks, mdpc, kce, Andrew B, Christopher Perrin
If this question can be reworded to fit the rules in the help center, please edit the question.

3 Answers 3

up vote 2 down vote accepted

IRC uses TCP for client-server communication.

Try it for yourself: telnet irc.freenode.net 6667 will establish a TCP connection between you and an IRC server.

The wikipedia page you linked to also lists the TCP port range 6665–6669 as IRC.

share|improve this answer

IRC definitely uses TCP for client to server as well as server to server. That said, many years ago at least, maybe some still do. UnderNet's ircu used to have a built in UDP ping utility that allowed admins to ping delinked servers from IRC so they didn't have to go to the shell and do it.

Interestingly, IRC doesn't really have an official port. 194 was originally used but requires root access to bind to (all ports under 1025 do). Nearly all networks use client TCP ports 6660-6669, 7000 or some close derivative. TCP port 6667 is mentioned in a few examples in RFC1459, but nothing ever declares an "official" port.

share|improve this answer

As kenny.r notes, IRC uses TCP. According to that page, HTTP also uses UDP. Numerous other services are also listed as using their ports on both UDP and TCP, even though they really only use one or the other.

I believe those ports were simply reserved for both protocols to avoid the confusion that would happen from another service having the same port on the other protocol; Having something running on UDP port 80 would potentially be confusing.

At the same time, other services only list the 'correct' protocol; HTTPS, SMTP and POP3 on that list, for example, all only list TCP. Nothing uses the same port numbers on UDP, though.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.