Re: Question on sending data over UDP endpoints
Re: Question on sending data over UDP endpoints
- Subject: Re: Question on sending data over UDP endpoints
- From: Igor garnov <email@hidden>
- Date: Fri, 2 Jul 2004 00:12:10 +0400
On Thursday, Jul 1, 2004, at 23:44 Europe/Moscow, Justin Walker wrote:
Hi Justin and thanks very much for your early reply.
I understand very well that UDP is NOT reliable. However, I
experience the
following situation with my application:
I send a UDP datagram, and immediately install an OT timer, which
will fire
in 5 seconds.
But before this timer actually fires, I receive an ICMP message of
type 3
(Destination unreachable) and code 0 (Network unreachable error). I
strongly suspect that this message has something to do with the data
I have
sent, because there is really nothing else I do, except send this UDP
packet.
The ICMP message may have enough of a packet in it to determine that
it is one that you sent.
Yes, but unfortunately I cannot investigate it at the moment... I
certainly will as soon as I am finished with other stuff.
The thing I do not understand about this particular ICMP message, which
comes right after I have sent out data over UDP, is that it's 56 bytes
long (my log shows this). As far as sources say, ICMP message is 36
bytes long. Here I have 56. What are those 20 bytes all about? maybe,
this is the IP header of this ICMP message itself? I am very curious,
hope to get to this tomorrow.
Should I call OTRcvUDErr before calling OTCloseProvider?
What should I do with the ICMP message apparently pertaining to this
endpoint, which I have already read? Maybe, I should peek at this
ICMP data
without actually reading it into my buffer? Will this ensure that a
higher-level protocol will receive it and take appropriate action
(like
calling my notifier routine with T_UDERR code)?
I can't say anything about the proper sequence of OT calls to make.
However, I think it's safe to say that there is no "higher-level
protocol" code that will take any action unless that code is from your
app, and you wrote it to do so.
I am sorry to have to raise this topic again, but I have read some RFC
today, and it says that in the case of ICMP message of type 3, the
transport protocol must be notified on this. I cannot recall the exact
wording though, but the overall summary is this.
Sorry I can't offer specific suggestions. It may take waiting for the
dust to settle at WWDC before someone with the background to answer
can find the time.
Oh, it can be long...
Regards,
Igor
_______________________________________________
macnetworkprog mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/macnetworkprog
Do not post admin requests to the list. They will be ignored.