Srecko
The speed depends on many factors, like the underlying media of your
network, the network card etc.
Nera
"Srecko" <srecko.t...@esf.ericsson.se> wrote in message
news:3C05E7A1...@esf.ericsson.se...
Srecko
Testing your app for communications speed while NOT connected to the
network is meaningless! It's like asking how far can I travel while
running in-place.
What you WILL do is eliminate network latency issues from your app, and
thus can be useful in determining its efficiency from a local processing
perspective (cpu utilization, i/o, etc.).
When it comes to network communications, TCP/IP has no inherent
limitations, but there are 1001 external factors that can affect
communications performance. Consider the simple fact of hub vs. switch --
most SOHO setups use a hub (it's cheap), but a hub is only half-duplex
(even w/ 100mbps, you still can't send and receive at the same time), not
to mention that a hub uses a round-robin technique to locate the target
(i.e., other machines are hit in the process - this is why large networks
are often broken-up into subnets). For these reasons, businesses turn to
switches ($$$), which are typically full-duplex (send and receive
simultaneously), AND connect directly to the target.
Of course, the amount of traffic (i.e., likelihood of collisions), distance
between client and hub/switch (might need repeaters), physical limits of
cabling, RF interference, etc., all play a factor.
-- Jim
Whan I changed the internal sizes of socket's receive and send
buffers to zero in the client and in the server, the performance
was a bit better. 7082 KB/s being the best result.
Next I tested how it performs when I sent from one network card to
another. I have 10/100 PCI card and 10 ISA card in my computer. To
my surprise the speed was about 6000 KB/s. It looks like that it
does not use cards. I have to test this at work tomorrow where we
have more than one computer on 100 Mbit/s network.
I have implemented this discard server with I/O Completion Port
technique. It's work in progress. This proves that IOCP is quite
good. It has capacity to perform well. Network card seems to be
the bottleneck and obvioulsy the hard disk.
I have Pentium Pro 200 MHz and Windows 2000 Pro.
--
JMu
"Srecko" <srecko.t...@esf.ericsson.se> wrote in message
news:3C05E7A1...@esf.ericsson.se...
BTW, is 100 Mbit/s 100 * 1024 * 1024 / 8 bytes or 100 * 1000 *
1000 / 8 bytes?
Then to IOCP. I made a stupid comment that "This proves that IOCP
is quite good." My test case didn't prove that. The same can be
achieved with blocking calls if there are small number of threads
(one thread per client). But, IOCP is very good technology,
because it does not require a lots of threads. A lots of threads
uses a lots of resources and CPU. My IOCP used just one thread.
When there are thousands of clients, IOCP shows its fingers.
--
JMu
"Jarmo Muukka" <jarmo.muukka@helsoftreplacewithdotfi> wrote in
message news:1LxN7.541$Yd6....@read2.inet.fi...
The latter, AFAIK (and it makes sense based on the performance figures you
gave).
Bits and bitrates tend to be 10^3, 10^6 etc, and bytes and byte-rates tend
to be 2^10, 2^20 etc. Except (in the latter case) with hard drives, where
they are just trying to con you :). 137GB ATA limit... puhleeease.
As for why... I'd guess it's a comms thing.
Alex
Srecko
I have never used select.
It looks like that you have more modern computer than I have.
Anyway, I'm satisfied with mine.
--
JMu
"Srecko" <srecko.t...@esf.ericsson.se> wrote in message
news:3C0B33B0...@esf.ericsson.se...