Re: recvfrom() strange operation
- From: Tauno Voipio <tauno.voipio@xxxxxxxxxxxxx>
- Date: Sat, 09 Sep 2006 14:05:57 GMT
kzsolt@xxxxxxxxxx wrote:
"3) Have the ..."
But in that case not working, because the frameing always require
buffer scroll (for escape sequence). Other side our task is "using with
standard calls", this mean we cannot go deeply to kernel, and we can
migrate any time to x86solaris.
I have only one escape way for this kind of UDP operation. In case of
TCP receive you always send data to upper level in sequence, because
you know the packet squence. In case of UDP you do not know the packet
sequence, maybe at revc() octett_n and octett_n+1 sended in reverse (IP
network nature). This is maybe the only reason why UDP do not enable to
read packet as octett only as packet.
But "application" can (must) discover packet squence reverse from
octett stream, so this is pain for us....
Other sides the UDP packet sequence problem littlebit mistificated. If
you have complex IP network (maybe generate packet squence reverse)
then you must use TCP instead of UDP. Otherwords in this kind of
network UDP has more disadvantege then advantage. If you have easy
network topology you must use UDP instead of TCP because the troughput
advantage.
In case of standard IP services you have no way to select which host
use UDP and which TCP for the same service. Our application can do it.
If a network have potential to serve it we make mouch higher troughput
and lower delay than TCP. Our higher level applications need it...
When you're at it, please understand that TCP *does not* preserve
packet boundaries. It guarantees the delivery of all input octets
in the order they were sent, but it can transport them in any size
of chunks it feels fit. This means that for TCP transfers you may
need to embed packet framing in the payload.
--
Tauno Voipio
tauno voipio (at) iki fi
.
- Follow-Ups:
- Re: recvfrom() strange operation
- From: kzsolt
- Re: recvfrom() strange operation
- From: Lew Pitcher
- Re: recvfrom() strange operation
- References:
- recvfrom() strange operation
- From: kzsolt
- Re: recvfrom() strange operation
- From: steve_schefter
- Re: recvfrom() strange operation
- From: kzsolt
- Re: recvfrom() strange operation
- From: steve_schefter
- Re: recvfrom() strange operation
- From: kzsolt
- Re: recvfrom() strange operation
- From: steve_schefter
- Re: recvfrom() strange operation
- From: kzsolt
- recvfrom() strange operation
- Prev by Date: GPRS connectivity in linux
- Next by Date: Re: malloc more than physical memory
- Previous by thread: Re: recvfrom() strange operation
- Next by thread: Re: recvfrom() strange operation
- Index(es):
Relevant Pages
|