Apple SNA•ps: Difference between revisions
(→System compatibility: More precise) |
(→AS/400 configuration: ALWVRTAPPN) |
||
(19 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
[[File:5250term.gif|thumb|right|Active 5250 client connection]] | [[File:5250term.gif|thumb|right|Active 5250 client connection]] | ||
[[File:Snagw-run.gif|thumb|right|SNA•ps Gateway information windows]] | [[File:Snagw-run.gif|thumb|right|SNA•ps Gateway information windows]] | ||
'''Apple SNA•ps''' is an application software package for Apple Macintosh | '''Apple SNA•ps''' is an application software package for Apple Macintosh computers running System 7. Its purpose is to provide Macintosh users access to resources located on IBM Midrange and Mainframe computers. It is the result of a collaboration between Apple and IBM in the early 1990s and has been developed by Orion Software. SNA•ps is short for ''Systems Networking Architecture protocols and services''. | ||
SNA•ps uses IBMs proprietary ''Systems Network Architecture'' family of network protocols to talk to the IBM side of affairs,<ref>Newer versions of the SNA•ps 5250 client also support IP/tn5250 as alternate network transport.</ref> and | SNA•ps uses IBMs proprietary ''Systems Network Architecture'' family of network protocols to talk to the IBM side of affairs,<ref>Newer versions of the SNA•ps 5250 client also support IP/tn5250 as alternate network transport.</ref> and Apple’s proprietary AppleTalk on the Macintosh side. | ||
So far, only two releases are known: version 1.1 from 1992, and version 2.0.1 from 1994. | So far, only two publicly available releases are known: version 1.1 from 1992, and version 2.0.1 from 1994. The beta-level release of SNA•ps 1.1 was available during 1991 and was the primary testing level for the ''IBM/Apple IBM Enterprise Networking Guide for SNA Products'' guide. | ||
The main differences between version 1.0, and version 1.1 are the introduction of 3287 printer emulation, and 16 Mbps Token Ring support. | |||
SNA•ps comprises of a client and server component. Both can run on the same Macintosh computer, though. | SNA•ps comprises of a client and server component. Both can run on the same Macintosh computer, though. | ||
* ''Gateway'' software with a license dependent maximum count of | * ''Gateway'' software with a license dependent maximum count of | ||
** 8, 32, or 64 [https://en.wikipedia.org/wiki/IBM_Systems_Network_Architecture#Logical_Unit_.28LU.29 LU]-sessions for version 1.1 | ** 8, 32, or 64 [https://en.wikipedia.org/wiki/IBM_Systems_Network_Architecture#Logical_Unit_.28LU.29 LU]-sessions for version 1.1 | ||
** 10, | ** 10, 35, or 70 users for version 2.0.1 | ||
* ''Client | * ''Gateway Client''<ref>Designated ''GC'' in product descriptions.</ref> for 3270 and 5250 terminal services, as well as printing services. | ||
<blockquote>'''Note:''' Further restrictions in terms of session count may apply depending on selected transport option technology, and available memory on said transport option.</blockquote> | |||
Different versions of ''SNA•ps'' are available on | This article focuses on AS/400 and thus on 5250 connectivity. Since the AS/400 platform also has 3270 compatibility support, the SNA•ps 3270 client for 3270 sessions can be used when required, and with an appropriately configured AS/400 system. See below for Macintosh System Software version requirements. | ||
Different versions of ''SNA•ps'' are available on Apple’s [https://macintoshgarden.org/apps/apple-cdsn-computers-connectivity-demonstration-and-support-network-reference-cd ''Computer's Connectivity Demonstration and Support Network'' Reference CD] at Macintosh Garden. Note that version 2.0.1 requires a serial number to be entered at install time. | |||
== General overview == | == General overview == | ||
Line 23: | Line 27: | ||
Examples of clients are the terminal emulations [https://en.wikipedia.org/wiki/IBM_3270 3270], and [https://en.wikipedia.org/wiki/IBM_5250 5250]). These allow Macs that are connected to the [https://en.wikipedia.org/wiki/AppleTalk AppleTalk] network (e. g. via [https://en.wikipedia.org/wiki/LocalTalk LocalTalk]) to establish terminal sessions to a SNA host. | Examples of clients are the terminal emulations [https://en.wikipedia.org/wiki/IBM_3270 3270], and [https://en.wikipedia.org/wiki/IBM_5250 5250]). These allow Macs that are connected to the [https://en.wikipedia.org/wiki/AppleTalk AppleTalk] network (e. g. via [https://en.wikipedia.org/wiki/LocalTalk LocalTalk]) to establish terminal sessions to a SNA host. | ||
An example of reverse direction is printing support. The ''SNA•ps Print'' | An example of reverse direction is printing support. The ''SNA•ps Print'' client emulates an IBM 8312 printer. Print jobs spooled into a printer queue on the AS/400 are picked up by ''SNA•ps Print'', to be printed using the default (AppleTalk) printer, set in the [https://en.wikipedia.org/wiki/Chooser_(Mac_OS) Chooser], or saved as text in a file.<br> | ||
This was a way of making the Apple [https://en.wikipedia.org/wiki/LaserWriter LaserWriter] usable from midrange, and indirectly from mainframe computers. The LaserWriter was very expensive at its introduction time. | This was a way of making the Apple [https://en.wikipedia.org/wiki/LaserWriter LaserWriter] usable from midrange, and indirectly from mainframe computers. The LaserWriter was very expensive at its introduction time. | ||
The counterpart to the ''SNA•ps Gateway'' is a system extension called ''SNA•ps Access''. Client applications use API routines provided by this extension. The SNA•ps API can also be used by third parties; examples have been published by Apple through their developer CDs. An example of this is [https://en.wikipedia.org/wiki/Database_abstraction_layer DAL] for the Macintosh. It can utilize several ways to connect to the actual database; such as IP (via MacTCP) and SNA (via SNA•ps Access). | The counterpart to the ''SNA•ps Gateway'' is a system extension called ''SNA•ps Access''. Client applications use API routines provided by this extension. The SNA•ps API can also be used by third parties; examples have been published by Apple through their developer CDs. An example of this is [https://en.wikipedia.org/wiki/Database_abstraction_layer DAL] for the Macintosh. It can utilize several ways to connect to the actual database; such as IP (via MacTCP) and SNA (via SNA•ps Access). | ||
In the 1990s, IBM made LocalTalk add-on cards for the AS/400, and additional software for OS/400 to implement the AppleTalk protocol stack on the AS/400 as well. The implementation on the AS/400 corresponded to the SNA•ps gateway, so that no Mac was required as a gateway: the necessary software ran only on the AS/400. | In the 1990s, IBM made LocalTalk add-on cards for the older AS/400's SPD slots, and released additional software for OS/400 to implement the AppleTalk protocol stack on the AS/400 as well. The implementation on the AS/400 corresponded roughly to the SNA•ps gateway, so that no Mac was required as a gateway: the necessary software ran only on the AS/400. It was only meant to provide display and print functions instead of full APPC capabilities, though. This enabled Macs to function as a console device to the AS/400, but made it impossible to use APPC based services, such as DAL, over the integrated LocalTalk connection. | ||
The IBM document ''Using Apple Macintosh with the AS/400'', Document Number GG24-4071-00 (March 1994) provides detailed insight about SNA•ps, and AS/400 configuration. Unfortunately, this document is no longer available publicly. | |||
== System compatibility == | == System compatibility == | ||
The SNA•ps 5250 client requires System 7.0 or higher. Launching it on System 6 gets you a corresponding error message, and the client does not open. | The SNA•ps 5250 client requires System 7.0 or higher. Launching it on System 6 gets you a corresponding error message, and the client does not open. Saying that, the 3270 terminal client officially runs under System 6.0.5, and later, though. | ||
The client works on Mac operating system versions up to, and including 8.1. OpenTransport compatibility seems sufficient to support that old software without changes. The client crashes upon connecting via a SNA•ps gateway on PowerPC Macs, though. | The client works on Mac operating system versions up to, and including 8.1. OpenTransport compatibility seems sufficient to support that old software without changes. The client crashes upon connecting via a SNA•ps gateway when ran on PowerPC Macs, though. | ||
A connection via TCP (possible with client version 1.1) provokes the message that the other party | A connection via TCP (possible with client version 1.1) provokes the message that the other party doesn’t use the 5250 protocol. This is reproducible under System 7.6.1/OT/PPC as well as under 7.1/MacTCP/68k. Reasons are unknown. | ||
The gateway software requires special hardware for the SNA network connection and is therefore limited to NuBus systems. Documentation states, the gateway needs System 7 to run. This has not yet been verified. Testing of the gateway software on the first generation NuBus equipped PowerMacs also | The gateway software requires special hardware for the SNA network connection and is therefore limited to NuBus systems. Documentation states, the gateway needs at least System 7.0 to run. This has not yet been verified. Testing of the gateway software on the first generation NuBus equipped PowerMacs also hasn’t been done, yet. | ||
== Performance == | == Performance == | ||
Comfortable performance can be attained by running at least the | Comfortable performance can be attained by running at least the client on 68040 equipped Macs, connected to the gateway through Ethernet.<ref>AppleTalk and IP performance for AFP transfers over the ''Apple Token Ring 4/16 NB Card'' do not exceed 200 kiB/s. In this regard, attainable performance is less than optimal.</ref> This provides answer times of less than a second, e. g. when scrolling through help texts, etc. Measuring of answer times for the gateway running on different classes Macs has not been done, yet. | ||
Running the client on Low End Macs such as the SE/30 yields answer times of around two seconds. All in all, fluid work is not attainable. Comparing LocalTalk and Ethernet with the SE/30 shows no significant differences. | Running the client on Low End Macs such as the SE/30 yields answer times of around two seconds. All in all, fluid work is not attainable. Comparing LocalTalk and Ethernet with the SE/30 shows no significant differences in answer time, hinting towards the network not being the bottleneck. | ||
== Network transport options == | == Network transport options == | ||
Line 54: | Line 60: | ||
|- | |- | ||
|Token Ring | |Token Ring | ||
|Apple Token Ring 4/16 NB Card | |Apple Token Ring 4/16 NB Card, Apple TokenTalk NB Card<ref>This is a pure 4 Mbps card, but already designed according to MCP specs.</ref> | ||
|- | |- | ||
|<s>Twinax</s><ref>5250 sessions over Twinax are not supported. Implementation was planned, but never was put into code before development ceased.</ref> | |<s>Twinax</s><ref>5250 sessions over Twinax are not supported. Implementation was planned, but never was put into code before development ceased. The Enterprise Networking Guide mentions third party products having been ''available which can utilize the twinax feature on this adapter.''</ref> | ||
|Apple | |Apple Coax/Twinax Card | ||
|} | |} | ||
All of these cards feature their own 68000 CPU, and local memory. They conform to the ''Macintosh Coprocessor Platform'' specification. A small process runs on the card, which exchanges data via message passing with its counterpart ''A/ROSE'' in the Mac OS. | All of these cards feature their own 68000 CPU, and local memory. They conform to the ''Macintosh Coprocessor Platform'' specification. A more or less small process runs on the card, which exchanges data via message passing with its counterpart ''A/ROSE'' in the Mac OS. | ||
As a novel feature, part of the ''SNA•ps'' gateway software runs on the processor of the respective MCP card. Along with the rest of the software running on the | As a novel feature, part of the ''SNA•ps'' gateway software runs on the processor of the respective MCP card. Along with the rest of the software running on the Mac’s main CPU, APPC sessions are encapsulated in AppleTalk, and available to other Macs connected to the network, including LocalTalk. The minimum amount of memory for SNA•ps use is 1 MB. For the 64 LU- and 70 user license, 2.5 MB are required. | ||
<gallery mode="packed"> | <gallery mode="packed"> | ||
File:Apple-Token-Ring-NB-Compside.jpg|Apple Token Ring 4/16 NB | File:Apple-Token-Ring-NB-Compside.jpg|Apple Token Ring 4/16 NB card, front | ||
File:Apple-Token-Ring-NB-Solderside.jpg|Apple Token Ring 4/16 NB | File:Apple-Token-Ring-NB-Solderside.jpg|Apple Token Ring 4/16 NB card, back | ||
File:Apple-Coax-Twinax-Compside.jpg|Apple Coax/Twinax | File:Apple-Coax-Twinax-Compside.jpg|Apple Coax/Twinax card, front | ||
File:Apple-Coax-Twinax-Solderside.jpg|Apple Coax/Twinax | File:Apple-Coax-Twinax-Solderside.jpg|Apple Coax/Twinax card, back | ||
</gallery> | </gallery> | ||
Line 74: | Line 80: | ||
== AS/400 configuration == | == AS/400 configuration == | ||
On the AS/400 side, autoconfiguration for controller, and device descriptions should — at least temporarily — be allowed. See the <code>WRKSYSVAL</code> command and the ''QAUTOCFG'', ''QAUTORMT'' and ''QAUTOVRT'' variables. Maybe also adjust the variables ''QLMTDEVSSN'' and ''QLMTSECOFR''. See help texts for details. | On the AS/400 side, autoconfiguration for controller, and device descriptions should — at least temporarily — be allowed. See the <code>WRKSYSVAL</code> command and the ''QAUTOCFG'', ''QAUTORMT'' and ''QAUTOVRT'' variables. Maybe also adjust the variables ''QLMTDEVSSN'' and ''QLMTSECOFR''. See help texts for details. | ||
The setting of the network attribute ''ALWVRTAPPN'' doesn't matter. | |||
A working Token Ring connection is also required. In its line description, the ''AUTOCRTCTL'' parameter should (temporarily) be set to ''*YES''. It is recommended that the associated ''AUTODLTCTL'' parameter be set to ''*NONE'' if <code>AUTOCRTCTL(*YES)</code> is to be retained. | A working Token Ring connection is also required. In its line description, the ''AUTOCRTCTL'' parameter should (temporarily) be set to ''*YES''. It is recommended that the associated ''AUTODLTCTL'' parameter be set to ''*NONE'' if <code>AUTOCRTCTL(*YES)</code> is to be retained. | ||
This preparation saves the tedious and error-prone configuration of the OS/400 controller (*CTLD) and device (*DEVD) descriptions for communication with the gateway on the Mac side. | This preparation saves the tedious and error-prone configuration of the OS/400 controller (*CTLD) and device (*DEVD) descriptions for communication with the gateway on the Mac side. | ||
In addition, the ''IBM/Apple IBM Enterprise Networking Guide'' contains detailed configuration for configuring 3270 sessions to an AS/400 starting page 30 (PDF page 40). | |||
== Gateway configuration == | == Gateway configuration == | ||
Line 92: | Line 102: | ||
Contrary, ''Local 6.2 LUs'' und ''Transaction Points'' apply to all configured peers. | Contrary, ''Local 6.2 LUs'' und ''Transaction Points'' apply to all configured peers. | ||
If several AS/ | If several AS/400’s are already internetworked via APPN, the gateway configuration can be made much easier. Just configure the AS/400 designated as APPN ''Network Node'' as partner connection. APPC sessions originating on the Macs are forwarded by the gateway to the (directly adjacent) Network Node AS/400. This one in turn forwards the LU sessions to the destination machines.<br> | ||
Note that the ''Network Node'' machine needs to have adjacencies to the desired other machines for this to work. SNA•ps can only use connections being already configured. | Note that the ''Network Node'' machine needs to have adjacencies to the desired other machines for this to work. SNA•ps can only use connections being already configured. | ||
=== Lines === | === Lines === | ||
[[File:Cfg-line.gif|thumb|right|Line configuration]] | [[File:Cfg-line.gif|thumb|right|Line configuration]] | ||
First, the Line configuration needs to be created. The name can be chosen freely.<br> | First, the Line configuration needs to be created. The name can be chosen relatively freely.<ref>Only CAPS, may not start with a number, and may only contain these special chars: #$_</ref><br> | ||
Increasing the ''Maximum I-Field Length'' parameter increases the data throughput and thus the speed at which data is forwarded through the gateway. The highest accepted value is 4105 bytes. Use of the maximum value is recommended. The line description of the AS/400 — corresponding to the line configuration of SNA•ps — usually contains 16393 bytes. The actual value used is negotiated dynamically at session establishment time. | Increasing the ''Maximum I-Field Length'' parameter increases the data throughput and thus the speed at which data is forwarded through the gateway. The highest accepted value is 4105 bytes. Use of the maximum value is recommended. The line description of the AS/400 — corresponding to the line configuration of SNA•ps — usually contains 16393 bytes. The actual value used is negotiated dynamically at session establishment time. | ||
Leave the other settings at default values. | Leave the other settings at default values. | ||
Line 113: | Line 123: | ||
|Name | |Name | ||
|<code>DSPNETA</code>, local control point name (LCLCPNAME) | |<code>DSPNETA</code>, local control point name (LCLCPNAME) | ||
| | |Naming restrictions as in the line configuration apply. | ||
|- | |- | ||
|Link Address | |Link Address | ||
Line 125: | Line 135: | ||
|Gateway XID | |Gateway XID | ||
| | | | ||
|Generate yourself. Has to start with ''056'', and must be unique at least on both sides of the adjacency-link.<ref>This value is copied to the AS/ | |Generate yourself. Has to start with ''056'', and must be unique at least on both sides of the adjacency-link.<ref>This value is copied to the AS/400’s controller description at the connection’s first start by auto configuration.</ref><ref>XID exchanges stay local to directly adjacent hosts, thus XID duplicates should not matter network-wide.</ref> | ||
|- | |- | ||
|Gateway Network Name | |Gateway Network Name | ||
| | | | ||
|Generate yourself. You can probably use the name from the ''Sharing'' control panel. | |Generate yourself. You can probably use the name from the ''Sharing'' control panel. Naming restrictions as in the line configuration apply. | ||
|- | |- | ||
|Gateway Network Qualifier | |Gateway Network Qualifier | ||
Line 136: | Line 146: | ||
|} | |} | ||
Other ''Characteristics'' settings are: | Other necessary ''Characteristics'' settings are: | ||
* Peer | * Peer: Set to Node Type 2.1, | ||
* SAP address (remains at) 4. | * SAP address, (remains at) 4. | ||
=== Local 6.2 LUs === | === Local 6.2 LUs === | ||
Line 147: | Line 157: | ||
!Remark | !Remark | ||
|- | |- | ||
|Name | |Name | ||
| | | | ||
|Corresponds to the ''SNA•ps Access'' Control Panel setting on the clients | |Must be ''PASSTHRU''. Corresponds to the ''SNA•ps Access'' Control Panel setting on the SNA•ps clients. | ||
|- | |- | ||
|''Network LU Name'' | |''Network LU Name'' | ||
| | | | ||
|Desired name for the gateway on the APPN network | |Desired name for the gateway on the APPN network. Naming restrictions as in the line configuration apply. | ||
|- | |- | ||
|Network Qualifier | |Network Qualifier | ||
Line 170: | Line 180: | ||
|Name | |Name | ||
| | | | ||
|''*'' (asterisk) | |Must be ''*'' (asterisk). | ||
|- | |- | ||
|Network LU name | |Network LU name | ||
Line 189: | Line 199: | ||
!LU setting | !LU setting | ||
!Corresponding AS/400 setting | !Corresponding AS/400 setting | ||
!Remark | |||
|- | |- | ||
|Name | |Name | ||
|<code>DSPNETA</code>, local control point name (LCLCPNAME) | |<code>DSPNETA</code>, local control point name (LCLCPNAME) | ||
| | |||
|- | |- | ||
|Network LU name | |Network LU name | ||
|<code>DSPNETA</code>, local control point name (LCLCPNAME) | |<code>DSPNETA</code>, local control point name (LCLCPNAME) | ||
| | |||
|- | |- | ||
|Network Qualifier | |Network Qualifier | ||
|<code>DSPNETA</code>, local network ID (LCLNETID) | |<code>DSPNETA</code>, local network ID (LCLNETID) | ||
| | |||
|} | |} | ||
Leave the other settings at default. | Leave the other settings at default. | ||
If you have more than one AS/400 in an APPN network, just add the corresponding LU names and Network Qualifiers from the other AS/ | If you have more than one AS/400 in an APPN network, just add the corresponding LU names and Network Qualifiers from the other AS/400’s in the same manner. This enables session forwarding by the ''Network Node'' AS/400 as described above. | ||
=== Modes === | === Modes === | ||
Line 248: | Line 262: | ||
Leave the other settings at default. | Leave the other settings at default. | ||
'''Note:''' Modes | '''Note:''' Modes aren’t shared. For each remote LU, you need to re-enter the values outlined above. | ||
It may happen that the gateway refuses to start because it claims there | It may happen that the gateway refuses to start because it claims there isn’t not enough memory (on the MCP card). Recommended action is to lower ''Maximum Sessions'', and ''Contention Winner'' settings locally, and on the AS/400 with the <code>CHGMODD</code> command. | ||
== Gateway Activation == | == Gateway Activation == | ||
After the gateway configuration has been saved, it is assigned to the existing physical connection using the ''SNA•ps Admin'' application. Launch it. The ''Network Gateway Status'' window appears. One line is displayed for each SNA capable card in the Mac, as shown in the second screen shot above. | After the gateway configuration has been saved, it is assigned to the existing physical connection using the ''SNA•ps Admin'' application. Launch it. The ''Network Gateway Status'' window appears. One line is displayed for each SNA capable card in the Mac, as shown in the second screen shot above. | ||
Highlight the desired | Highlight the desired card’s entry, and choose ''Select configuration…'' from the ''Gateway'' menu. Use the dialog box to locate and select the configuration file you've created and saved before.<br> | ||
In the same menu, select ''Change | In the same menu, select ''Change Settings …'' and | ||
* probably assign a nicer AppleTalk name to the gateway, and | * probably assign a nicer AppleTalk name to the gateway, and | ||
* in ''Characteristics'' tick all checkboxes except ''Initially Log Line Trace''. | * in ''Characteristics'' tick all checkboxes except ''Initially Log Line Trace''. | ||
The gateway can then be started in the Gateway menu with ''Start | The gateway can then be started in the Gateway menu with ''Start Gateway …''. A dialog window is shown with a summary. Click ''Start''. | ||
<blockquote>'''Note:''' It has been shown that — at least with ''SNA•ps Gateway'' version 1.1 — trying out configuration settings with manual stop and start sometimes provokes the message that there is insufficient memory. This statement refers to the memory on the corresponding MCP card. Apparently, resources there are not reliably freed. After restarting the computer, the error message is gone.</blockquote> | <blockquote>'''Note:''' It has been shown that — at least with ''SNA•ps Gateway'' version 1.1 — trying out configuration settings with manual stop and start sometimes provokes the message that there is insufficient memory. This statement refers to the memory on the corresponding MCP card. Apparently, resources there are not reliably freed. After restarting the computer, the error message is gone.</blockquote> | ||
Also in the ''Gateway'' menu, an overview of the available resources can now be displayed with ''Show | Also in the ''Gateway'' menu, an overview of the available resources can now be displayed with ''Show Gateway …''. An example can be seen in the second screen shot above. | ||
=== | === Screenshots === | ||
These | These screenshots show examples of all entities being displayed in short in the ''Show Gateway…'' window, in the second screen shot above. | ||
<gallery mode="nolines"> | <gallery mode="nolines"> | ||
File:Stat-line.gif | File:Stat-line.gif | ||
Line 284: | Line 298: | ||
[[File:Dft-connsel.gif|right|thumb|Dialog window to select a default session ]] | [[File:Dft-connsel.gif|right|thumb|Dialog window to select a default session ]] | ||
The minimal client configuration just requires the selection of the default connection in the ''Pref(erence)s'' menu. Alternatively, the desired session can be configured directly in the client: Menu ''Session'' → '' | The minimal client configuration just requires the selection of the default connection in the ''Pref(erence)s'' menu. Alternatively, the desired session can be configured directly in the client: Menu ''Session'' → ''Connection …''. Both ways show a dialog window to select a gateway resource in the AppleTalk network. | ||
Finally, the connection to the SNA gateway selected above is established by selecting ''Connect'' from the ''Session'' menu. After a few seconds, the familiar AS/400 sign-on screen should appear. | Finally, the connection to the SNA gateway selected above is established by selecting ''Connect'' from the ''Session'' menu. After a few seconds, the familiar AS/400 sign-on screen should appear. | ||
Line 301: | Line 315: | ||
After launching ''SNA•ps Print'' you will be asked for a file name for the newly to-be-created printer connection. Simply save this document with a meaningful name. | After launching ''SNA•ps Print'' you will be asked for a file name for the newly to-be-created printer connection. Simply save this document with a meaningful name. | ||
The minimal configuration just requires the selection of the default connection in the ''Pref(erence)s'' menu. Alternatively, the desired session can be configured directly in the client: Menu ''Session'' → '' | The minimal configuration just requires the selection of the default connection in the ''Pref(erence)s'' menu. Alternatively, the desired session can be configured directly in the client: Menu ''Session'' → ''Connection …''. Both ways show a dialog window to select a gateway resource in the AppleTalk network. | ||
Finally, the connection to the previously selected SNA gateway is established in the ''Session'' menu by selecting ''Connect''. The AS/400 creates a printer device file (*DEVD) and a corresponding output queue (*OUTQ) which can then be used by applications on the system. | Finally, the connection to the previously selected SNA gateway is established in the ''Session'' menu by selecting ''Connect''. The AS/400 creates a printer device file (*DEVD) and a corresponding output queue (*OUTQ) which can then be used by applications on the system. | ||
Line 309: | Line 323: | ||
Everything that is spooled to this new queue ends up in the print routine of ''SNA•ps Print''. | Everything that is spooled to this new queue ends up in the print routine of ''SNA•ps Print''. | ||
See the other menu items for the mostly self-explaining further functions ''SNA•ps Print''. | See the other menu items for the mostly self-explaining further functions of ''SNA•ps Print''. | ||
== Pitfalls == | == Pitfalls == | ||
* Neither SNA•ps 5250, nor SNA•ps print can be used on PowerPC machines when connecting via a ''SNA•ps gateway''. As soon as the connection is to be set, the client crashes with an ''illegal instruction'' error.<ref>This is the first and so far only 68k program | * Neither SNA•ps 5250, nor SNA•ps print can be used on PowerPC machines when connecting via a ''SNA•ps gateway''. As soon as the connection is to be set, the client crashes with an ''illegal instruction'' error.<ref>This is the first and so far only (productivity) 68k program I’m aware of not running on PowerPC.</ref> | ||
* Using the AppleTalk diagnostic tool ''Trawl'' on the gateway Mac itself somehow messes up the AppleTalk stack on it, so that the gateway no longer appears in the manager application. Only a reboot of the gateway computer fixes that error. | * Using the AppleTalk diagnostic tool ''Trawl'' on the gateway Mac itself somehow messes up the AppleTalk stack on it, so that the gateway no longer appears in the manager application. Only a reboot of the gateway computer fixes that error. | ||
== External links == | == External links == | ||
Line 333: | Line 344: | ||
* [https://www.ibm.com/support/knowledgecenter/zosbasics/com.ibm.zos.znetwork/znetwork_6.htm Introduction to networking on the mainframe], IBM | * [https://www.ibm.com/support/knowledgecenter/zosbasics/com.ibm.zos.znetwork/znetwork_6.htm Introduction to networking on the mainframe], IBM | ||
* [https://web.archive.org/web/20181229140138/http://docwiki.cisco.com/wiki/IBM_Systems_Network_Architecture_Protocols IBM Systems Network Architecture Protocols], Cisco Docwiki (aus dem Archiv) | * [https://web.archive.org/web/20181229140138/http://docwiki.cisco.com/wiki/IBM_Systems_Network_Architecture_Protocols IBM Systems Network Architecture Protocols], Cisco Docwiki (aus dem Archiv) | ||
* [https://bitsavers.org/pdf/ibm/sna/Z325-6027-0_IBM-Apple_Enterprise_Networking_Guide_for_SNA_Products_199110.pdf Z325-6027-00] IBM/Apple IBM Enterprise Networking Guide for SNA Products, IBM | |||
* [https://www.ibm.com/common/ssi/cgi-bin/ssialias?infotype=DD&subtype=SM&htmlfid=897/ENUS5733-CSR 5733-CSR IBM AS/400 Client Series End User Products], IBM | |||
== Notes == | |||
<references /> | |||
[[Category: Software Configuration Guide]] | [[Category: Software Configuration Guide]] | ||
[[Category: System Administration]] | [[Category: System Administration]] |
Latest revision as of 14:45, 14 March 2024
Apple SNA•ps is an application software package for Apple Macintosh computers running System 7. Its purpose is to provide Macintosh users access to resources located on IBM Midrange and Mainframe computers. It is the result of a collaboration between Apple and IBM in the early 1990s and has been developed by Orion Software. SNA•ps is short for Systems Networking Architecture protocols and services.
SNA•ps uses IBMs proprietary Systems Network Architecture family of network protocols to talk to the IBM side of affairs,[1] and Apple’s proprietary AppleTalk on the Macintosh side.
So far, only two publicly available releases are known: version 1.1 from 1992, and version 2.0.1 from 1994. The beta-level release of SNA•ps 1.1 was available during 1991 and was the primary testing level for the IBM/Apple IBM Enterprise Networking Guide for SNA Products guide.
The main differences between version 1.0, and version 1.1 are the introduction of 3287 printer emulation, and 16 Mbps Token Ring support.
SNA•ps comprises of a client and server component. Both can run on the same Macintosh computer, though.
- Gateway software with a license dependent maximum count of
- 8, 32, or 64 LU-sessions for version 1.1
- 10, 35, or 70 users for version 2.0.1
- Gateway Client[2] for 3270 and 5250 terminal services, as well as printing services.
Note: Further restrictions in terms of session count may apply depending on selected transport option technology, and available memory on said transport option.
This article focuses on AS/400 and thus on 5250 connectivity. Since the AS/400 platform also has 3270 compatibility support, the SNA•ps 3270 client for 3270 sessions can be used when required, and with an appropriately configured AS/400 system. See below for Macintosh System Software version requirements.
Different versions of SNA•ps are available on Apple’s Computer's Connectivity Demonstration and Support Network Reference CD at Macintosh Garden. Note that version 2.0.1 requires a serial number to be entered at install time.
General overview
The SNA•ps Gateway makes resources provided by the mainframe or the AS/400 via SNA PUs/LUs or APPN/APPC available to AppleTalk connected Macs. This means that an (expensive) card for connecting to the mainframe does not have to be installed in every Mac, but one can be shared by many users. Also, adding such a card is not possible in some cases: Compact Macs like the Mac Plus or Mac SE have no or only limited expansion options. In addition, the required network cabling may not exist.
Examples of clients are the terminal emulations 3270, and 5250). These allow Macs that are connected to the AppleTalk network (e. g. via LocalTalk) to establish terminal sessions to a SNA host.
An example of reverse direction is printing support. The SNA•ps Print client emulates an IBM 8312 printer. Print jobs spooled into a printer queue on the AS/400 are picked up by SNA•ps Print, to be printed using the default (AppleTalk) printer, set in the Chooser, or saved as text in a file.
This was a way of making the Apple LaserWriter usable from midrange, and indirectly from mainframe computers. The LaserWriter was very expensive at its introduction time.
The counterpart to the SNA•ps Gateway is a system extension called SNA•ps Access. Client applications use API routines provided by this extension. The SNA•ps API can also be used by third parties; examples have been published by Apple through their developer CDs. An example of this is DAL for the Macintosh. It can utilize several ways to connect to the actual database; such as IP (via MacTCP) and SNA (via SNA•ps Access).
In the 1990s, IBM made LocalTalk add-on cards for the older AS/400's SPD slots, and released additional software for OS/400 to implement the AppleTalk protocol stack on the AS/400 as well. The implementation on the AS/400 corresponded roughly to the SNA•ps gateway, so that no Mac was required as a gateway: the necessary software ran only on the AS/400. It was only meant to provide display and print functions instead of full APPC capabilities, though. This enabled Macs to function as a console device to the AS/400, but made it impossible to use APPC based services, such as DAL, over the integrated LocalTalk connection.
The IBM document Using Apple Macintosh with the AS/400, Document Number GG24-4071-00 (March 1994) provides detailed insight about SNA•ps, and AS/400 configuration. Unfortunately, this document is no longer available publicly.
System compatibility
The SNA•ps 5250 client requires System 7.0 or higher. Launching it on System 6 gets you a corresponding error message, and the client does not open. Saying that, the 3270 terminal client officially runs under System 6.0.5, and later, though.
The client works on Mac operating system versions up to, and including 8.1. OpenTransport compatibility seems sufficient to support that old software without changes. The client crashes upon connecting via a SNA•ps gateway when ran on PowerPC Macs, though.
A connection via TCP (possible with client version 1.1) provokes the message that the other party doesn’t use the 5250 protocol. This is reproducible under System 7.6.1/OT/PPC as well as under 7.1/MacTCP/68k. Reasons are unknown.
The gateway software requires special hardware for the SNA network connection and is therefore limited to NuBus systems. Documentation states, the gateway needs at least System 7.0 to run. This has not yet been verified. Testing of the gateway software on the first generation NuBus equipped PowerMacs also hasn’t been done, yet.
Performance
Comfortable performance can be attained by running at least the client on 68040 equipped Macs, connected to the gateway through Ethernet.[3] This provides answer times of less than a second, e. g. when scrolling through help texts, etc. Measuring of answer times for the gateway running on different classes Macs has not been done, yet.
Running the client on Low End Macs such as the SE/30 yields answer times of around two seconds. All in all, fluid work is not attainable. Comparing LocalTalk and Ethernet with the SE/30 shows no significant differences in answer time, hinting towards the network not being the bottleneck.
Network transport options
The following options to connect to IBM machinery are supported in general:
Phy | Hardware |
---|---|
Serial/SDLC | Apple Serial NB Card |
Token Ring | Apple Token Ring 4/16 NB Card, Apple TokenTalk NB Card[4] |
Apple Coax/Twinax Card |
All of these cards feature their own 68000 CPU, and local memory. They conform to the Macintosh Coprocessor Platform specification. A more or less small process runs on the card, which exchanges data via message passing with its counterpart A/ROSE in the Mac OS.
As a novel feature, part of the SNA•ps gateway software runs on the processor of the respective MCP card. Along with the rest of the software running on the Mac’s main CPU, APPC sessions are encapsulated in AppleTalk, and available to other Macs connected to the network, including LocalTalk. The minimum amount of memory for SNA•ps use is 1 MB. For the 64 LU- and 70 user license, 2.5 MB are required.
I do not own an Apple Serial NB card, yet.
AS/400 configuration
On the AS/400 side, autoconfiguration for controller, and device descriptions should — at least temporarily — be allowed. See the WRKSYSVAL
command and the QAUTOCFG, QAUTORMT and QAUTOVRT variables. Maybe also adjust the variables QLMTDEVSSN and QLMTSECOFR. See help texts for details.
The setting of the network attribute ALWVRTAPPN doesn't matter.
A working Token Ring connection is also required. In its line description, the AUTOCRTCTL parameter should (temporarily) be set to *YES. It is recommended that the associated AUTODLTCTL parameter be set to *NONE if AUTOCRTCTL(*YES)
is to be retained.
This preparation saves the tedious and error-prone configuration of the OS/400 controller (*CTLD) and device (*DEVD) descriptions for communication with the gateway on the Mac side.
In addition, the IBM/Apple IBM Enterprise Networking Guide contains detailed configuration for configuring 3270 sessions to an AS/400 starting page 30 (PDF page 40).
Gateway configuration
The configuration is created with the SNA•ps Config program and built layer by layer.
It is easily possible to configure several AS/400 peers in one configuration document. To do this, each machine must have its own definitions created for
- Lines,
- Partners,
- Remote 6.2 LUs,
- Modes.
Contrary, Local 6.2 LUs und Transaction Points apply to all configured peers.
If several AS/400’s are already internetworked via APPN, the gateway configuration can be made much easier. Just configure the AS/400 designated as APPN Network Node as partner connection. APPC sessions originating on the Macs are forwarded by the gateway to the (directly adjacent) Network Node AS/400. This one in turn forwards the LU sessions to the destination machines.
Note that the Network Node machine needs to have adjacencies to the desired other machines for this to work. SNA•ps can only use connections being already configured.
Lines
First, the Line configuration needs to be created. The name can be chosen relatively freely.[6]
Increasing the Maximum I-Field Length parameter increases the data throughput and thus the speed at which data is forwarded through the gateway. The highest accepted value is 4105 bytes. Use of the maximum value is recommended. The line description of the AS/400 — corresponding to the line configuration of SNA•ps — usually contains 16393 bytes. The actual value used is negotiated dynamically at session establishment time.
Leave the other settings at default values.
Partners
As long as the just created line is highlighted, the description for the actual network connection to the AS/400 can be defined in the partners field next to it.
The following table shows parameters of the partner configuration and the related parameters on the AS/400:
Partner setting | Corresponding AS/400 setting | Remark |
---|---|---|
Name | DSPNETA , local control point name (LCLCPNAME)
|
Naming restrictions as in the line configuration apply. |
Link Address | DSPLIND , local adapter address (ADPTADR)
|
|
Partner XID | DSPLIND , exchange identifier (EXCHID)
|
|
Gateway XID | Generate yourself. Has to start with 056, and must be unique at least on both sides of the adjacency-link.[7][8] | |
Gateway Network Name | Generate yourself. You can probably use the name from the Sharing control panel. Naming restrictions as in the line configuration apply. | |
Gateway Network Qualifier | DSPNETA , local network ID (LCLNETID)
|
Other necessary Characteristics settings are:
- Peer: Set to Node Type 2.1,
- SAP address, (remains at) 4.
Local 6.2 LUs
LU setting | Corresponding AS/400 setting | Remark |
---|---|---|
Name | Must be PASSTHRU. Corresponds to the SNA•ps Access Control Panel setting on the SNA•ps clients. | |
Network LU Name | Desired name for the gateway on the APPN network. Naming restrictions as in the line configuration apply. | |
Network Qualifier | DSPNETA , local network ID (LCLNETID)
|
Transaction points (TPs)
The Local 6.2 LU just defined must be highlighted so a new transaction point can be created.
TP setting | Corresponding AS/400 setting | Remark |
---|---|---|
Name | Must be * (asterisk). | |
Network LU name | DSPNETA , local control point name (LCLCPNAME)
|
|
Network name | DSPNETA , local network ID (LCLNETID)
|
Leave the other settings at default.
Remote 6.2 LUs
The partner created above must be highlighted in order to create an associated LU configuration.
LU setting | Corresponding AS/400 setting | Remark |
---|---|---|
Name | DSPNETA , local control point name (LCLCPNAME)
|
|
Network LU name | DSPNETA , local control point name (LCLCPNAME)
|
|
Network Qualifier | DSPNETA , local network ID (LCLNETID)
|
Leave the other settings at default.
If you have more than one AS/400 in an APPN network, just add the corresponding LU names and Network Qualifiers from the other AS/400’s in the same manner. This enables session forwarding by the Network Node AS/400 as described above.
Modes
The Remote 6.2 LU(s) created above must be highlighted in order to create an associated mode description.
Since there is no good enough mode description on the AS/400 by default, create a custom mode APLSNAPS:
CRTMODD MODD(APLSNAPS) COS(#CONNECT) MAXSSN(32) MAXCNV(32) LCLCTLSSN(0) INPACING(7) OUTPACING(7) TEXT('For Apple SNA.ps')
Now, set the values of the fields on the right side in the Characteristics pane in the Window as follows:
Mode setting | Value | Corresponding AS/400 setting |
---|---|---|
Maximum Sessions | 32 | Maximum sessions (MAXSSN) |
Contention Winner | 32 | Maximum conversations (MAXCNV) |
Prebound Sessions | 0 | Pre-established sessions (PREESTSSN) |
Send Pacing | 7 | Inbound pacing value (INPACING) |
Receive Pacing | 7 | Outbound pacing value (OUTPACING) |
Maximum RU Upper | 4096 | |
Maximum RU Lower | 256 |
Leave the other settings at default.
Note: Modes aren’t shared. For each remote LU, you need to re-enter the values outlined above.
It may happen that the gateway refuses to start because it claims there isn’t not enough memory (on the MCP card). Recommended action is to lower Maximum Sessions, and Contention Winner settings locally, and on the AS/400 with the CHGMODD
command.
Gateway Activation
After the gateway configuration has been saved, it is assigned to the existing physical connection using the SNA•ps Admin application. Launch it. The Network Gateway Status window appears. One line is displayed for each SNA capable card in the Mac, as shown in the second screen shot above.
Highlight the desired card’s entry, and choose Select configuration… from the Gateway menu. Use the dialog box to locate and select the configuration file you've created and saved before.
In the same menu, select Change Settings … and
- probably assign a nicer AppleTalk name to the gateway, and
- in Characteristics tick all checkboxes except Initially Log Line Trace.
The gateway can then be started in the Gateway menu with Start Gateway …. A dialog window is shown with a summary. Click Start.
Note: It has been shown that — at least with SNA•ps Gateway version 1.1 — trying out configuration settings with manual stop and start sometimes provokes the message that there is insufficient memory. This statement refers to the memory on the corresponding MCP card. Apparently, resources there are not reliably freed. After restarting the computer, the error message is gone.
Also in the Gateway menu, an overview of the available resources can now be displayed with Show Gateway …. An example can be seen in the second screen shot above.
Screenshots
These screenshots show examples of all entities being displayed in short in the Show Gateway… window, in the second screen shot above.
Client configuration: SNA•ps 5250
In the SNA•ps Access/5250 control panel, switch to Virtual Controller in the Display Configuration. The controller name is usually QPACTL01; the default entry has way too many zeros. Close the control panel to save the changes.
The minimal client configuration just requires the selection of the default connection in the Pref(erence)s menu. Alternatively, the desired session can be configured directly in the client: Menu Session → Connection …. Both ways show a dialog window to select a gateway resource in the AppleTalk network.
Finally, the connection to the SNA gateway selected above is established by selecting Connect from the Session menu. After a few seconds, the familiar AS/400 sign-on screen should appear.
Other parameters can then also be set: Larger font for large monitors, alternative key assignments for small Mac keyboards: the numeric keypad is ideal here as a substitute for the lack of function keys, etc. The settings then can be saved in a connection document. When opening such a document, the session is established automatically.
All other settings can be made according to taste.
Client configuration: SNA•ps Print
Before using this function, a printer on the AS/400 must be configured in the SNA•ps Access control panel.
In the Printer Configuration section of the Control Panel, click Printer Device List… and type in a valid AS/400 style print queue name. This name should not exist on the AS/400, it will be automatically created with the correct settings.
Close the control panel to save the settings. If you get an error message stating the control panel can't be opened, you probably have the SNA•ps 5250 client running in the background. Close it, and try again.
After launching SNA•ps Print you will be asked for a file name for the newly to-be-created printer connection. Simply save this document with a meaningful name.
The minimal configuration just requires the selection of the default connection in the Pref(erence)s menu. Alternatively, the desired session can be configured directly in the client: Menu Session → Connection …. Both ways show a dialog window to select a gateway resource in the AppleTalk network.
Finally, the connection to the previously selected SNA gateway is established in the Session menu by selecting Connect. The AS/400 creates a printer device file (*DEVD) and a corresponding output queue (*OUTQ) which can then be used by applications on the system.
An IBM 3812 Model 1 printer in SCS mode is emulated.
Everything that is spooled to this new queue ends up in the print routine of SNA•ps Print.
See the other menu items for the mostly self-explaining further functions of SNA•ps Print.
Pitfalls
- Neither SNA•ps 5250, nor SNA•ps print can be used on PowerPC machines when connecting via a SNA•ps gateway. As soon as the connection is to be set, the client crashes with an illegal instruction error.[9]
- Using the AppleTalk diagnostic tool Trawl on the gateway Mac itself somehow messes up the AppleTalk stack on it, so that the gateway no longer appears in the manager application. Only a reboot of the gateway computer fixes that error.
External links
- Wikipedia:
- Inside The Macintosh Coprocessor Platform And A/ROSE
- Terminalemulation bindet Apple-Welt an AS/400, Computerwoche 1993-06-11 (German)
- Administrator's Guide and Reference, SNA Client/Server Concepts, IBM
- Introduction to networking on the mainframe, IBM
- IBM Systems Network Architecture Protocols, Cisco Docwiki (aus dem Archiv)
- Z325-6027-00 IBM/Apple IBM Enterprise Networking Guide for SNA Products, IBM
- 5733-CSR IBM AS/400 Client Series End User Products, IBM
Notes
- ↑ Newer versions of the SNA•ps 5250 client also support IP/tn5250 as alternate network transport.
- ↑ Designated GC in product descriptions.
- ↑ AppleTalk and IP performance for AFP transfers over the Apple Token Ring 4/16 NB Card do not exceed 200 kiB/s. In this regard, attainable performance is less than optimal.
- ↑ This is a pure 4 Mbps card, but already designed according to MCP specs.
- ↑ 5250 sessions over Twinax are not supported. Implementation was planned, but never was put into code before development ceased. The Enterprise Networking Guide mentions third party products having been available which can utilize the twinax feature on this adapter.
- ↑ Only CAPS, may not start with a number, and may only contain these special chars: #$_
- ↑ This value is copied to the AS/400’s controller description at the connection’s first start by auto configuration.
- ↑ XID exchanges stay local to directly adjacent hosts, thus XID duplicates should not matter network-wide.
- ↑ This is the first and so far only (productivity) 68k program I’m aware of not running on PowerPC.