[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

MacIvory Sharing Ethernet with Other Applications?



It's impossible for two applications which implement the TCP/IP protocol
suite over Ethernet to run simultaneously on a Macintosh.  If, however,
both applications use a common driver (e.g., MacTCP), they can coexist.

MacIvory counts as an application in this situation.

The reason is that, in order to implement TCP/IP, a program must receive
all Ethernet packets which contain either IP packets or ARP (Address
Resolution Protocol) packets.  The Apple Ethernet card driver allows
only one program at a time to receive packets of a given type.

If Apple were to change its Ethernet driver to allow multiple
applications to receive all packets of a given type, coexistence would
be possible.  When I last asked Apple about this, they had no plans to
make such a change.

So, you might ask, why not change MacIvory to use MacTCP?

First, Lisp's TCP/IP package would have to be changed to make the
handling of the low level protocols (IP, TCP, UDP) optional.  I.e., on
native systems (XL400), Lisp has to implement the low level protocols;
on a MacIvory, Lisp has to not use its implementation but, instead,
interface to MacTCP.  This change would involve a major reworking of the
TCP/IP package.

Second, the MacIvory and the Macintosh would have to have separate
Internet addresses as is done with the UX400S and its host Sun.
Otherwise, when a remote machine requests some service (e.g., FTP),
there'd be no way to determine whether that service should be provided
by the MacIvory or a Macintosh application.  MacTCP doesn't support
multiple Internet addresses.

Lastly, the MacIvory would still have to talk directly to the Ethernet
driver to implement Chaos.

More comments are interspersed below ...

  - Gary

  -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

    Date: Wed, 3 Jan 90 20:09 EST
    From: SUHLER@IBM.COM (Paul Suhler)

    I've been trying to use TN3270 2.3d7 (and NCSA Telnet 2.3, as well) on a
    MacIvory.  The problem is that the two systems can't co-exist on the
    ethernet interface under MultiFinder.

    If I launch Genera first, it comes up.  Then I launch TN3270 and get an
    alert box saying,

	"Network Initialization Failed!
	 Couldn't Install IP Handler[E]"

    If I re-launch TN3270, it then works, but when I go back to Genera and
    try to use the ethernet, it won't work until I disable and re-enable the
    network.  

This behavior is caused by a design flaw in Apple's Ethernet driver and
a bug in TN3270.  Even though the call to install TN3270's IP packet
handler was rejected by the Ethernet driver, TN3270's cleanup code still
makes a call to deinstall the handler and the Ethernet driver obliges.
(The design flaw is that the detach call in the driver doesn't verify
that you're asking to detach the handler that's actually in effect.)
Consequently, Genera will stop seeing IP packets.  You must then disable
and enable the network again in Genera as that's the only way to get
Genera to make reattach its packet handlers.

	      Then I go to TN3270 and it has lost communication with the
    host.  So I restart it.  No alert box this time; it just runs, but then
    Genera... ad infinitum.  Same problem with Telnet instead of TN3270.

    1)  Does anyone have any experience with using Genera simultaneously
    with these or any other Mac applications that use the ethernet?  (TOPS
    and Public Folder have no problems with Genera.)

    2)  I don't have MacTCP yet.  Do the MacTCP versions of TN3270 and
    Telnet co-exist with Genera?  Has anyone used Genera with the MacTCP
    CDEV present?

    Thanks.

    Paul Suhler
    Hybrid Dataflow Systems
    IBM Watson Research Center
    914-789-7490

  -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

    Date: Thu, 4 Jan 90 14:33 PST
    From: maglio%cogsci@ucsd.edu (Paul Maglio)

	    I've been trying to use TN3270 2.3d7 (and NCSA Telnet 2.3, as well) on
	    a MacIvory.  The problem is that the two systems can't co-exist on the
	    ethernet interface under MultiFinder.
	
	    ... ...

	    2) I don't have MacTCP yet.  Do the MacTCP versions of TN3270 and
	    Telnet co-exist with Genera?  Has anyone used Genera with the MacTCP
	    CDEV present?

    Genera and MacTCP will co-exist if MacTCP uses AppleTalk instead of the
    Ethernet card. This is set with the Network control panel item. Otherwise we
    get the same problems you experience, i.e. the need to disable then enable the
    network manually. We have been successful using MacTCP over AppleTalk with
    NCSA Telnet and Apple X windows.

You have Apple's X windows product?  Is it available or do you have a
beta copy?

    Paul Maglio

    maglio@cogsci.ucsd.edu