View Full Version : Computer can't establish UDP connections
kiosk
11-24-2010, 11:56 PM
Like it says in the thread title, I can't run any program that relies on UDP. The computer sends outgoing connections but doesn't receive any UDP packets back. I opened up my DSL modem's settings but I can't find anything UDP-wise. I disabled the firewall but the problem remained.
I'm running XPSP3 professional.
Is this related to the operating system or is my ISP blocking UDP connections? I'm not very good at networking, so any help would be appreciated.
Paul Komski
11-25-2010, 12:48 AM
UDP is unidirectional and thus broadcast only.
Comparison of TCP and UDP (http://en.wikipedia.org/wiki/User_Datagram_Protocol#Comparison_of_UDP_and_TCP).
yawningdog
11-26-2010, 09:02 AM
UDP is unidirectional and thus broadcast only.
I'm afraid this isn't quite right. UDP packets can have a recipient IP just like TCP packets can, so they are just as easily unicast as broadcast.
If you can resolve web addresses (like www.pcguide.com) then UDP is working, since DNS works over UDP. It is possible that certain UDP ports are being blocked by your ISP to preserve bandwidth. So the question now becomes, which UDP programs are you using that aren't working?
Paul Komski
11-26-2010, 10:36 AM
UDP packets can have a recipient IP just like TCP packets can
I agree absolutely and dont think I said anything to the contrary. So I also believe the statement that "communication is achieved by transmitting information in one direction from source to destination without verifying the readiness or state of the receiver" to be correct". There is thus a broadcast in one direction but no sense of any "handshaking" between the transmitter and the recipient.
The OP states "The computer sends outgoing connections but doesn't receive any UDP packets back" and which is just what I would expect to happen because there is no response back by the recipient to the originator of the packets. Yes a firewall could block them leaving but even if they left OK there would be no response.
yawningdog
11-26-2010, 10:52 AM
My exception is with your use of the term "broadcast". It is defined as follows.
Broadcast is the term used to describe communication where a piece of information is sent from one point to all other points. In this case there is just one sender, but the information is sent to all connected receivers.
UDP can be broadcast, but it can also be unicast or multicast. You said it was broadcast only.
It is true that UDP doesn't have it's own handshake protocol. But it is important to recognize that a handshake often takes place at the application level. A DHCP request goes out UDP (and broadcast) but it expects a udp reply with IP data and other stuff. So in this example as in many others there is a connection protocol, just not the same way that TCP uses it.
Paul Komski
11-26-2010, 03:11 PM
I am very far from being an networking guru and have never indicated that I was one so I'm sorry that I used the term broadcast in a lay sense instead of perhaps transmitted or unicast or multicast or whatever and apologise for being such an idiot.
I simply wanted to indicate in a simplistic way that one never expects a direct response from UDP as the OP had been anticipating. If I have misunderstood that as well then that too should be corrected.
yawningdog
11-27-2010, 08:18 AM
Go easy. I'm not trying to slap anybody down, I'm just trying to help.
If there is any time that a PC puts a packet on the wire and doesn't expect some sort of response, I would be interested in learning about it. In the case of UDP it's never going to be in the form of SYN/ACK/FIN flags, but there will pretty much always be some sort of response nonetheless in layer 5 or 6. If only the OP would return and enlighten us as to the application (probably a game) we could probably find out for sure.
Paul Komski
11-27-2010, 11:01 AM
LOL. Maybe just had "a bad day at the office".
When a radio station "broadcasts" to the world it can get all sorts of responses. Emails, letters to the press and even phone-in conversations in real time and so on. It isn't really very different, I think, to a UDP "broadcast".
The fact that there is no automatic SYN/ACK/ETC equivalent response of course doesn't mean that those that "hear" the broadcast cannot respond to it.
Protocolgeek
12-05-2010, 09:48 PM
Like it says in the thread title, I can't run any program that relies on UDP. The computer sends outgoing connections but doesn't receive any UDP packets back. I opened up my DSL modem's settings but I can't find anything UDP-wise. I disabled the firewall but the problem remained.
I'm running XPSP3 professional.
Is this related to the operating system or is my ISP blocking UDP connections? I'm not very good at networking, so any help would be appreciated.
To test whether there is a firewall blocking your connection to the Internet, try firebind.com
Firebind has a Java client that talks to the Firebind server over any of the 65535 TCP or UDP ports you choose. For example, you could choose UDP ports 1000-2000, and the Firebind client would send packets back and forth to the Firebind server on each of those 1000 ports. If the packets go back and forth intact, then the port isn't blocked. It's the only "path scanner" out there (not to be confused with port scanners, which it is not.)
ProtocolGeek
DONT REINSERT THE ACTIVE LINK
Moderator
Variable
12-06-2010, 06:24 PM
The question of multicast or broadcast is only relevant in a multi switch or router environment. I doubt the OP is having this issue. A router ends broadcast domains. Multicast router protocols are probably not an issue here. It is probably much simpler and based on a misunderstanding of the OP. As Yawningdog eluded to, the issue is best troubleshot knowing what application is involved. Suffice to say, UDP connections outbound from a PC to a generic soho router/firewall will expect a response and NAT/PAT will allow it back in... i.e. DNS requests.
Depending on the application, certain UDP ports may need to be allowed in via a firewall rule. Generically opening UDP ports is dumb. UDP is a connectionless, best effort protocol used when speed of packets is more important than content. This is best known for streaming video or audio.
There may be many reasons why, in a large internal network, the differences between UDP broadcast and multicast are relevant but, it is doubtful this is an issue here without knowing more from the OP.
There is also a difference between a payload containing information used by a service and UDP being multicast. UDP is connectionless, there is no end to end connection via UDP only.
V
vBulletin v3.6.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.