That is sooooooooooooooooooo cool !!! Nice
interface too... So
when are you setting up the terminal servers and modem racks to open up
for business again ;-)
This implementation uses my tcpser (or tcpser4j) application to move
traffic from RS232 to TCP/IP.
The system does not preclude a person setting up modem banks, but I'm
intending to use the Internet as my network.
tcpser is more no frills (POSIX C app), but tcpser4j has the wow factor
(It sounds out the DTMF digits if the "speaker" is on, and plays the dial
tone, the rings, the V90 negotiation, etc. (sound files modifiable by
user).
Still, though, for this use, either will work fine.
We did find a nasty issue during LD testing the other night. When I would
connect to the server here, all worked well. But, when Ohio would
connect, the packet engine in the client would continue to reset the link.
Thinking network latency was the culprit, I had someone in Sweden setup a
loopback port to give me some easy latency to test with (I head dummynet
also will work, but this was quicker). I then looked at the packets
destined for the client, and saw:
5A .. .. .. .. ..
0D
The packets are typically 8+ bytes long, and always end with 0x0d (the
system took advantage of X.25 LINE mode, and made each packet look like a
line of text).
On a hunch, I changed my server code from:
send(packet.getBytes());
send(byte)0x0d);
to send all of the data in one go. Magically, the client started working.
Later, someone posted to the forum that they had seen some code in the
client to check a timer, but had no idea why. It turns out the client was
smart. If it found packet data, but did not see a CR char for 8
rasterlines (~65 CPU cycles each), it invalidated the entire packet, since
the packet network would have not delayed that long to send a trailing CR.
Of course, the issue may still exist (due to IP fragmentation), but as
long as the link is not in reset state, the retransmit system can deal
with it. I think though, long term, we might just offer a patch to remove
the timer.
It's been an interesting challenge, only having the client and some screen
shots with which to work with.
The client is pretty impressive, though, as it is a true multi-tasking
system wrapped up in a telecomm client. While you are sending an email in
chat, for example, incoming chat replies will appear on the screen bhind
your text and scroll the chat portion of the screen up if needed, all
while not affecting your email composition.
Probably more than you were interested in...
Jim
--
Jim Brain
brain at
jbrain.com