TSSnet Programming
17 messages in this thread
I was writing the press releases for TSSnet the other day, and started
thinking about promoting the programming aspects of it. I think it could
be the answer to a lot of vertical-market networking problems.
TSSnet is implemented as an AmigaDOS device, called "TSSnet.device". Using
standard DoIO()-type calls, you can make connections to other nodes, then
exchange data using a message-based or stream-oriented protocol. There's a
number of device calls, all described in the manual. The disk includes a
number of examples, in C. Even at our quantity one prices, someone would
pay about $750 per node to connect machines via Ethernet, and Arcnet prices
will be even more attractive than that in a few months. If they only
wanted to connect between two machines, they could use the serial port, and
make multiple connections between tasks on the two machines. What do y'all
think of this, as a custom solution to networking problems?
Must I talk directly to the TSSnet.device or is there some way to talk to a
device on some node on the net? Another way to ask the question is can I
make connections to devices/files on other nodes? How about programs on
other nodes? I'd definitely like to hear more. Victor A. Wagner, Jr.
On each machine on the net, TSSnet.device must be running. That's not a
big deal… You make requests to it, to make a connection to another node
on the net. This makes a stream-like connection that can send streams of
bytes, or packets of a given size. To connect two programs, the other node
must make a request that says it will wait for a connection. Once the
connection is made, you're free to do what you want. At this time, there
is no direct support for file sharing, but this will appear in future
versions.
Thanks for the info. It looks like our _need_ for a net will not be
occuring as soon as originally anticipated, I _would_ like to put together
a modest net soon to start getting used to using it.
I think that you mean that each *Amiga* node must have TSSnet.device
running. A VAX or other DECnet node will have its own implementation,
right?
I am still looking for somthing like this:
1.Tss> Dir TSSnet:MyVAX"username password"::DUA2:[Chris]*.COM;*
In other words, I want a standard way to address the network as a device.
Sort of like using SER:. Can I do that yet?
Even better, I would like a way to set up several such devices, ie.
TSSnet1: , TSSnet2:, TSSnet0:, etc. That way I could have, say, three
terminal emulation windows open, each talking to a different VAX, or all to
separate sessions on the same VAX.
Also, I've already talked to Bob Tolly about providing LAT protocall, and a
virtual terminal for the Amiga, so that from a VAX I could say SETHOST
MyAmi:: and get a CLI from my VT220!
By the way, although I think that the TSSnet manual could use some
improvement, it is very good for a first manual and the installation of
TSSnet was a snap! (Still could be improved for non-CLI familiar users
though. AmigaDOS 2.0 may help!) The manual for X-11 is not nearly as
nice!
Thanks for all the good work!
Chris -)—–
Be sure to write up your comments and send them attention Bob Tolly at the
Syndesis address…
As for 1), yes, we plan (someday) of adding a file system handler on the
Amiga side that will permit direct access of other filesystems on the
network. We're working on it, we want it real bad ourselves. With this,
of course, TSSnet becomes a very workable Amiga-to-Amiga network that
doesn't really need a VAX around. 😉
As for LAT, it requires an expensive license from DEC, but we are
considering it, so stay tuned, there may be developments in this area in
the future.
We've recently rewritten the manual for X Windows from GfxBase. Their
previous manual (xeroxed, stapled, you get the picture) wasn't very nice,
but the new manual comes in a binder similar to the TSSnet binder. Thanks
for the compliments on the TSSnet manual, and if you've got some specific
ideas for improvement, we're always here to listen.
John, sounds like you guys are doing a great job. And yes, a file system
handler for the Amiga so that normal Decnet type transfers of files and
data can take place (for instance, I open node::abc.dat on the remote node
like it were a local file) is just as important as you suggested. And the
idea of groups of VAXen and /or Amiga's all on the same DECnet network is
rather nice; even having just Amiga's talking DECnet to each other is nice.
Ron
Thanks, Ron. What's the state of your own interest in DECnet? I seem to
remember you were between jobs for a while, did you move to another company
that uses DECnet or X Window?
Yes, the new company is small shop but has several VAXen, three here in
NYC, plus several MVAX workstations, all on DECnet and Ethernet. We also
have direct dialups into a couple systems, and both end nodes and routing
nodes. At any rate, I've now been there three months and like it, much
saner then my previous place.
The workstations are used as traders workstations, with the traders having
things like Reuters or DJ screens (where they used to have multiple
terminals at each desk) and they can do data entry for trades using the
VT220 emulation in x/decwindows. They are all connected via ethernet, of
course. In fact, nearly every person in the place has a terminal, though
most are connected to terminal servers.
Ron
Thanks, I have your new manual for X. It's still not as good as the TSSnet
manual. I ruined my hard drive the other day so I have to reinstall. I'll
let you know how it goes.
I would also like a command line interface to NCP. That way I could create
icons for turning DDCMP on and of on my serial port.
One more question…
Can I get TSSnet running on Ethernet and serial simultaneously? Can I run
it over two serial ports simultaneously? I am thinking of getting a second
Amiga at home. If I do, I would want to network the two together, and
still connect via modem to my office. Get the picture?
Chris -)—–
But the X manual is certainly a lot better than it was, no? I wore out
three blue pencils on it. 🙂 As I've said, the best way to insure that
comments and enhancement requests to the right person is to write them down
and mail them to Bob Tolly! There's no guarantee that he'll ever see this
message, it sometimes takes weeks for me to bring transcripts to the
office. I can answer questions, and give information, but it's better if
you summarize your ideas and mail them in separately.
I'll mention the request for acommend line interface to NCP; chances are,
we'd install an ARexx port instead, which gives even more flexibility. As
for the second question, no, not at this time. On one machine, you can
only use Ethernet or serial, and you can't play router, either, meaning you
can't run two serial ports. If you run TSSnet on your home Amiga and the
office Amiga, and they are connected to the network, couldn't you dial-in
to the network and login to the Amiga? Stop me if I'm wrong, but I'm
winging it while Bob's at Xhibition this week. 🙂 And for your third
question, the next release of TSSnet will have a "netcopy" utility that
lets you move files between nodes. At this time, we don't have any direct
support for this. Would it be possible to use a terminal program on both
ends? What transfer methods do you use when you're on a simple non-DECnet
dial-up port?
Thanks for the reply…
Yes, I will write things down for Bob, but it's fun talking to you too!
I don't think that you understood my second question… I have a VAX
cluster at the office, plus several LANservers and PCs on the network (and,
now, one Amiga). At home I have one Amiga, and I would like to get a
second. So, it would look like this:
Amiga:—ser—:Amiga:—modem—:VAX/VMS-DDCMP:—ethernet—:anotherAmiga
Get the idea? The problem is having both home Amigas on the net at the
same time!
I suppose I could run DNET between the two home systems…
As for file transfers, I only have Kermit on the VAX system (and they are
not too happy about that–the only reason the auditors allow it is that
they can't understand how to get it to run). They don't like having file
transfer capabilities just lying around here. DECnet is different because
we will be adding dialback capabilities and other security measures.
I tried to use that program that you supply with TSSnet that converts
existing software so that it will use tssnet.device. Big City Guru. I'll
have to whip something up for myself.
Chris -)—–
I think I understood, and my answer was correct: You've got one Amiga (at
home) talking out two serial ports. Can't do that yet, with TSSnet, it can
have only one serial port on the net.
And what kind of Guru did you get with the TSSnet patcher program? What
were you trying to patch? Gee, *I* wrote that program. File a bug report,
pronto!
I guess I'll have to run TSSnet out of one serial port and DNET out of
another! As for the device patch program, I ran it on Handshake. Handshake
is a shareware VT220 emulator that I have just started to use. It seems to
work well and has more features that Meshugena (though the latter comes
with its own fonts so that you don't have to spread the screen out to get
all of the characters–a problem with Handshake). Handshake is available
in the AmigaTech library, I believe. Give it a try.
After I posted my last reply, I realize I forgot to ask you if the patch
program guru'd, or if the terminal program crashed. I now assume you mean
the terminal program. The patch program gives plenty of errors if
something goes wrong. As for Handshake, I think you should call Bob Tolly
at tech support about this, because I remember him fretting about Handshake
in the past. It may not be able to work with TSSnet, because of some very
strange things it does to the "serial.device".
Oh, John… Just a little note. It would be nice if VTTSS would either
quit or go back to the "select a node" screen when I log off of the VAX. I
*believe* that you can detect a log off (doesn't it lose the network
link?). Anyway, that and the CTERM bug… which you know about.
I think the serial solution is a good idea, but as far as accessability
goes, I would provide the user with a DOS logical-device (perhaps TSS:)
that could be accessed from most any application and CLI. From there, you
can devise a way to inform the TSSnet device on the other node(s) exactly
what device/file/port you want to communicate with.