System, method and article of manufacture to remotely configure and utilize an emulated device controller via an encrypted validation communication protocol
First Claim
1. A system to facilitate remote configuration and utilization of an emulated device controller via communication of encrypted data external to said controller comprising:
- at least one security administrator central processing unit communicably attached to an emulation server central processing unit;
at least one client central processing unit communicably attached to said emulation server central processing unit;
first software for validating authorized remote user access to at least one emulated device and encryption of data, said first software executing from within said emulation server central processing unit;
second software for facilitating remote configuration and utilization of an emulated device controller, for controlling mainframe devices said second software executing from within said emulation server central processing unit;
at least one hardware adaptor card communicably attached to said emulation server central processing unit; and
at least one host processor central processing unit communicably attached to said emulation server central processing unit via said hardware adaptor card.
0 Assignments
0 Petitions
Accused Products
Abstract
Remote configuration and utilization of an emulated device controller via communication of encrypted data external to the controller. In a preferred embodiment, first and second software means executing within a server central processing unit facilitates secured and verified access to emulated input/output devices on behalf of a user community. The emulated input/output devices are further associated with session oriented application programs executed on one or more host central processing units. A user requests utilization of one or more emulated input/output device types whereupon the security software validates the user'"'"'s request. If authorized, a hardware adaptor card is initialized with an input/output device configuration reflecting the user'"'"'s request and control is passed to session oriented programs whereupon the user input/output requests are facilitated via an emulated device as opposed to physical devices associated with the host processors.
49 Citations
20 Claims
-
1. A system to facilitate remote configuration and utilization of an emulated device controller via communication of encrypted data external to said controller comprising:
-
at least one security administrator central processing unit communicably attached to an emulation server central processing unit;
at least one client central processing unit communicably attached to said emulation server central processing unit;
first software for validating authorized remote user access to at least one emulated device and encryption of data, said first software executing from within said emulation server central processing unit;
second software for facilitating remote configuration and utilization of an emulated device controller, for controlling mainframe devices said second software executing from within said emulation server central processing unit;
at least one hardware adaptor card communicably attached to said emulation server central processing unit; and
at least one host processor central processing unit communicably attached to said emulation server central processing unit via said hardware adaptor card. - View Dependent Claims (2, 3, 4, 5, 6)
(a) a software component means for initializing said emulation server central processing unit;
(b) a software component means for terminating communication with said emulation server central processing unit;
(c) a software component means for loading said hardware adaptor with an emulated input/output device configuration;
(d) a software component means for recognizing and communicating with at least one client central processing unit;
(e) a software component means for disconnecting a previously recognized client; and
(f) a software component means for executing administrative support protocol.
-
-
7. A computer based method for facilitating remote configuration and utilization of an emulated device controller for controlling mainframe devices via communication of encrypted data external to said controller comprising:
-
(a) initializing and communicating with an emulation server central processing unit;
(b) establishing a client connection with said emulation server;
(c) loading a hardware adaptor card in communication with said emulation server with an emulated input/output device configuration;
(d) disconnecting said previously connected client;
(e) terminating communication with said emulation server central processing unit; and
(f) executing administrative support protocol from a security administrator central processing unit. - View Dependent Claims (8, 9, 10, 11, 12, 13)
(a) initializing module-wide variables utilized by a hardware device driver;
(b) enumerating hardware adaptors using said adaptor'"'"'s vendor and device identifiers;
(c) initializing hardware adaptor-specific variables utilized by said driver;
(d) allocating and reserving said adaptor resources;
(e) resetting said adaptor;
(f) downloading microcode to said adaptor;
(g) initializing said adaptor;
(h) requesting said adaptor'"'"'s connection to each unique interrupt request line;
(i) initiating an adaptor timer and timer support;
(j) exposing standard module-wide support to applications;
(k) initializing variables utilized by a host dynamically linked library;
(l) clearing a user connection block;
(m) exposing and making available to first software an adaptor specific administrative instruction set;
(n) creating a serialization mechanism to be used by configuration support routines;
(o) opening said driver;
(p) requesting from said driver the number of recognized adaptors;
(q) returning from said driver the number of adaptors in response to immediately preceding request;
(r) requesting from said driver its version number;
(s) returning driver version number in response to immediately preceding request;
(t) recording driver version and the number of adaptors controlled by said driver;
(u) indicating said adaptor'"'"'s unavailability;
(v) loading said adaptor'"'"'s offline status;
(w) loading said adaptor'"'"'s activity status;
(x) loading a second inactive configuration data sequence; and
(y) ensuring loaded adaptor configuration is within operational ranges.
-
-
9. The computer based method of claim 7 wherein terminating communication with said emulation server central processing unit further comprises:
-
(a) disconnecting each currently connected user;
(b) forcing recognized adaptors offline;
(c) closing a hardware device driver;
(d) freeing all allocated storage and resources;
(e) stopping all timers;
(f) eliminating module-wide exposure of support to applications;
(g) causing each adaptor to be offline and resetting each adaptor;
(h) disconnecting all previously connected interrupt request lines;
(i) destroying each adaptor object instance;
(j) destroying each adaptor'"'"'s logical unit driver object instances;
(k) eliminating the exposure of logical unit support to applications; and
(l) freeing all allocated storage and resources.
-
-
10. The computer based method of claim 7 wherein said loading of a hardware adaptor with an emulated input/output device configuration further comprises:
-
(a) indicating said adaptor'"'"'s unavailability;
(b) disconnecting client currently utilizing said adaptor;
(c) determining if adaptor should be online or offline to host processor;
(d) requesting actual or empty driver configuration for said adaptor predicated upon adaptor'"'"'s online or offline status configuration;
(e) causing the adaptor to be offline to an associated channel;
(f) obviating each of said adaptor'"'"'s logical unit driver object instances;
(g) eliminating exposure of logical unit support to applications;
(h) freeing all adaptor allocated storage and resources;
(i) determining if logical units are to be emulated;
(j) requesting said adaptor be brought online to an associated channel; and
(k) indicating said adaptor is availability for clients.
-
-
11. The computer based method of claim 7 wherein said establishing of a client connection further comprises:
-
(a) initializing client dependant variables;
(b) employing first software to effect a connection to a host dynamically linked library;
(c) retaining client name in said dynamically linked library;
(d) ascertaining authorized device types and security groups for said client;
(e) creating a new client object instance for said client;
(f) stating said client object in a user connection block;
(g) communicating to host dynamically linked library the command version level representing client'"'"'s feature set;
(h) storing the client'"'"'s command version level;
(i) sending to the host dynamically linked library emulated device type of interest;
(j) storing client'"'"'s device type of interest;
(k) determining host dynamically linked library command version level;
(l) storing host dynamically linked libraries command version level;
(m) requesting currently available emulated devices of host dynamically linked library;
(n) returning response block in response to the client'"'"'s request; and
(o) requesting from the host dynamically linked library to be connected to a logical unit.
-
-
12. The computer based method of claim 7 wherein said disconnecting of a previously connected client further comprises:
-
(a) closing logical unit connection;
(b) terminating threads created to perform input/output with the logical unit;
(c) setting the logical unit in-Use flag to “
not in use”
;
(d) setting the logical unit Client value to “
none”
;
(e) freeing all allocated storage and resources for said client object.
-
-
13. The computer based method of claim 7 wherein said execution of said administrative support protocol further comprises:
-
determining an instruction set sequence to execute based upon a user input command string; and
executing said determined instruction set sequence.
-
-
14. A computer readable medium encoded with a computer program for facilitating the remote configuration and utilization of an emulated device controller for controlling mainframe devices via communication of encrypted data comprising:
-
(a) an instruction set for initializing an emulation server central processing unit;
(b) an instruction set for terminating communication with said emulation server central processing unit;
(c) an instruction set for loading a hardware adaptor with an emulated input/output device configuration for controlling mainframe devices;
(d) an instruction set for establishing a client connection;
(e) an instruction set for disconnecting a previously connected client; and
(f) an instruction set for executing an administrative support protocol. - View Dependent Claims (15, 16, 17, 18, 19, 20)
(a) initializing module-wide variables utilized by a hardware device driver;
(b) enumerating hardware adaptors using said adaptor'"'"'s vendor and device identifiers;
(c) initializing hardware adaptor-specific variables utilized by said driver;
(d) allocating and reserving said adaptor resources;
(e) resetting said adaptor;
(f) downloading microcode to said adaptor;
(g) initializing said adaptor;
(h) requesting said adaptor'"'"'s connection to each unique interrupt request line;
(i) initiating an adaptor timer and timer support;
(j) exposing standard module-wide support to applications;
(k) initializing variables utilized by a host dynamically linked library;
(l) clearing a user connection block;
(m) exposing and making available to first software an adaptor specific administrative instruction set;
(n) creating a serialization mechanism to be used by configuration support routines;
(o) opening said driver;
(p) requesting from said driver the number of recognized adaptors;
(q) returning from said driver the number of adaptors in response to immediately preceding request;
(r) requesting from said driver its version number;
(s) returning driver version number in response to immediately preceding request;
(t) recording driver version and the number of adaptors controlled by said driver;
(u) indicating said adaptor'"'"'s unavailability;
(v) loading said adaptor'"'"'s offline status;
(w) loading said adaptor'"'"'s activity status;
(x) loading a second inactive configuration data sequence; and
(y) ensuring loaded adaptor configuration is within operational ranges.
-
-
16. The computer program of claim 14 wherein said instruction set for terminating communication with said emulation server central processing unit further comprises:
-
(a) disconnecting each currently connected user;
(b) forcing recognized adaptors offline;
(c) closing a hardware device driver;
(d) freeing all allocated storage and resources;
(e) stopping all timers;
(f) eliminating module-wide exposure of support to applications;
(g) causing each adaptor to be offline and resetting each adaptor;
(h) disconnecting all previously connected interrupt request lines;
(i) destroying each adaptor object instance;
(j) destroying each adaptor'"'"'s logical unit driver object instances;
(k) eliminating the exposure of logical unit support to applications; and
(l) freeing all allocated storage and resources.
-
-
17. The computer program of claim 14 wherein said instruction set for loading a hardware adaptor with an emulated input/output device configuration further comprises:
-
(a) indicating said adaptor'"'"'s unavailability;
(b) disconnecting client currently utilizing said adaptor;
(c) determining if adaptor should be online or offline to host processor;
(d) requesting actual or empty driver configuration for said adaptor predicated upon adaptor'"'"'s online or offline status configuration;
(e) causing the adaptor to be offline to an associated channel;
(f) obviating each of said adaptor'"'"'s logical unit driver object instances;
(g) eliminating exposure of logical unit support to applications;
(h) freeing all adaptor allocated storage and resources;
(i) determining if logical units are to be emulated;
(j) requesting said adaptor be brought online to an associated channel; and
(k) indicating said adaptor is availability for clients.
-
-
18. The computer program of claim 14 wherein said instruction set for establishing a client connection further comprises:
-
(a) initializing client dependant variables;
(b) employing first software to effect a connection to a host dynamically linked library;
(c) retaining client name in said dynamically linked library;
(d) ascertaining authorized device types and security groups for said client;
(e) creating a new client object instance for said client;
(f) storing said client object in a user connection block;
(g) communicating to host dynamically linked library the command version level representing client'"'"'s feature set;
(h) storing the clients command version level;
(i) sending to the host dynamically linked library emulated device type of interest;
(j) storing client'"'"'s device type of interest;
(k) determining host dynamically linked library command version level;
(l) storing host dynamically linked library'"'"'s command version level;
(m) requesting currently available emulated devices of host dynamically linked library;
(n) returning response block in response to the client'"'"'s request; and
(o) requesting from the host dynamically linked library to be connected to a logical unit.
-
-
19. The computer program of claim 14 wherein said instruction set for disconnecting a previously connected client further comprises:
-
(a) closing logical unit connection;
(b) terminating threads created to perform input/output with the logical unit;
(c) setting the logical unit In-Use flag to “
not in use”
;
(d) setting the logical unit Client value to “
none”
;
(e) freeing all allocated storage and resources for said client object.
-
-
20. The computer program of claim 14 wherein said instruction set for executing an administrative support protocol further comprises:
-
determining an instruction set sequence to execute based upon a user input command string; and
executing said determined instruction set sequence.
-
Specification