You know what, I've never checked, and I've never seen anything officially stating that it was TCP, UDP, or both. I've always punched holes for both in my firewall/router, so you should do both.
“Two things are infinite: the universe and human stupidity; and I'm not sure about the universe.” — Albert Einstein
"Never try to teach a pig to sing; it wastes your time and it annoys the pig." — Robert Heinlein
It appears to be TCP only. Run a sniffer (tcpdump, wireshark, etc) against the default interface with a src or dst port 25565 and tell mc to hit a server with no port specified in the hostIP field. Or run a netfilter/packetfilter firewall and don't allow UDP. I do both and have never seen a UDP requester logged for any MC muiltiplayer, authentication, or updater activity.
ResilientHosting said: "Its UDP as TCP resends packets if they failed sending which would not really work for a multiplayer game."
... just ... No. Wrong answer, total BS. Ask an HPC/Networks admin about IP subprotocol choices for application-layer-instanciated traffic.
ResilientHosting is not wrong. TCP is a non-optimal choice for networked multiplayer, because it adds an incredibly heavy framework over the standard IP interface. UDP may lose packets, but there's no framework demanding that they all be received, and that they're in the right order. TCP does not supply a direct connection, but emulates one, and that involves sending lots of unnecessary data, and resending lots of potentially large packets(for multiplayer games. Most other services need that structure). And mixing UDP and TCP isn't a solution, because TCP has a tendency to greatly increase packet loss in UDP.
tl;dr TCP is not unviable for online multiplayer, but it is DEFINITELY not optimal (like a lot of minecraft code). Mojang's use of TCP would explain why minecraft servers have a tendency to be incredibly laggy, as well... More so than other games...
I'm starting a server and I need to know whether the minecraft servers use TCP or UDP as their protocol.
Thanks in advance!
If this is port-forwarding you need it for, use both protocols.
"Never try to teach a pig to sing; it wastes your time and it annoys the pig." — Robert Heinlein
Just use both and it will be fine
Tahnks!
ResilientHosting said: "Its UDP as TCP resends packets if they failed sending which would not really work for a multiplayer game."
... just ... No. Wrong answer, total BS. Ask an HPC/Networks admin about IP subprotocol choices for application-layer-instanciated traffic.
Hope this helps ^-^
tl;dr TCP is not unviable for online multiplayer, but it is DEFINITELY not optimal (like a lot of minecraft code). Mojang's use of TCP would explain why minecraft servers have a tendency to be incredibly laggy, as well... More so than other games...