Network communication system
First Claim
1. A digital computer system comprising (i) an operating system, (ii) a plurality of routines operable under said operation system, and (iii) a plurality of queues for job data identifying routines to be run, said routines including routines in first, second and third modules, said first module including user routines, said second module including service routines providing services and said third module including interface routines,said user routines including routines requesting services from said service routines,said interface routines including a schedule routine callable by each service routine to place job data on a selected one of said queues and a run routine callable by a user routine to cause a notification routine identified by job data on a selected one of said queues to be run, at least some said service routines providing return results for said first module of routines,wherein, said queues are in sets allocated to a plurality of different owners and wherein each owner can only call said run routine in respect of a queue which that owner owns;
- andwherein, following a request to a service routine, processing within said first module can continue without pending for a return result from a service routine.
1 Assignment
0 Petitions
Accused Products
Abstract
In a network communication system passing messages between gateways via a message handling system the gateways are interfaced specifically to their respective network access units and are interfaced generically to the message handling system using routines common to all gateways. Messages are sent in protocol data units including recipient addresses which do not identify recipient gateways as such; the gateways are used transparently. The data format is CCITT 1988 X400 standard with automatic conversion to and from this format at sending and receiving gateways plus automatic document conversion. Message handling involves waiting for many services and events. The invention allows calling routines to avoid pending while waiting for events and services. Service routines, including event watching and timer routines, schedule notifications on to queues and the main processing task runs notifications off the queues by calling a run routine.
-
Citations
26 Claims
-
1. A digital computer system comprising (i) an operating system, (ii) a plurality of routines operable under said operation system, and (iii) a plurality of queues for job data identifying routines to be run, said routines including routines in first, second and third modules, said first module including user routines, said second module including service routines providing services and said third module including interface routines,
said user routines including routines requesting services from said service routines, said interface routines including a schedule routine callable by each service routine to place job data on a selected one of said queues and a run routine callable by a user routine to cause a notification routine identified by job data on a selected one of said queues to be run, at least some said service routines providing return results for said first module of routines, wherein, said queues are in sets allocated to a plurality of different owners and wherein each owner can only call said run routine in respect of a queue which that owner owns; - and
wherein, following a request to a service routine, processing within said first module can continue without pending for a return result from a service routine.
- and
-
2. A digital computer system comprising (i) an operating system, (ii) a plurality of routines operable under said operation system, and (iii) a plurality of queues for job data identifying routines to be run, said routines including routines in first, second and third modules, said first module including user routines, said second module including service routines providing services and said third module including interface routines,
said user routines including routines requesting services from said service routines, said interface routines including a schedule routine callable by each service routine to place job data on a selected one of said queues and a run routine callable by a user routine to cause a notification routine identified by job data on a selected one of said queues to be run, at least some said service routines providing return results for said first module of routines, wherein each of said queues has a data structure including; -
(a) the priority level of the queue, (b) the identifier for the queue, (c) pointers to control blocks for the first and last notification routines on the queue, and (d) pointers to the next and previous queues, and wherein each control block has a data structure including; (e) pointers to the next and preceding control blocks, (f) a pointer to said notification routine, and (g) arguments to be passes to said notification routine; and wherein, following a request to a service routine, processing within said first module can continue without pending for a return result from a service routine. - View Dependent Claims (3)
-
-
4. A network communication system including a plurality of gateways for serving respective access units, said gateways being connected to communicate with each other through a message handling system, wherein at least one gateway comprises:
-
a network interface providing access to the access unit served by that gateway, a message transfer interface for sending messages to and receiving messages from said message handling system, and a software interface including a library of routines which provide communication between said message transfer interface and said network interface and process data passing through that gateway to effect at least format conversion, and wherein said routines in said software interface include routines in first, second and third modules, said first module including user routines, said second module including service routines providing services and said third module including interface routines, said user routines including routines requesting services from said service routines, said interface routines including a schedule routine callable by each service routine to place job data on a job data queue and a run routine callable by a user routine to cause a notification routine identified by job data on said queue to be run, at least some said service routines providing return results for said first module of routines, wherein, following a request to a service routine, processing within said first module can continue without pending for a return result from a service routine. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11)
-
-
12. A network communication system including a plurality of gateways for serving respective access units, said gateways being connected to communicate with each through a message handling system, wherein at least one said gateway of said plurality of gateways comprises:
-
a network interface providing access to a selected access units served by that gateway, a message transfer interface for sending messages to and receiving messages from said message handling system, a software interface which matches said message transfer interface, computer means for executing processing routines for handling at least one of messages to be transmitted and received messages, means storing a plurality of said routines which provide communication between said message transfer interface and said software interface, and means storing a plurality of specific ones of said routines individual to that gateway and providing communication between said network interface and said software interface, wherein said specific routines convert between the format and protocols of the network interface and the format and protocols of said software interface and wherein communications between said gateways on said message handling system are effected in protocol data units including an envelope part and a message part, said envelope part including data identifying the message originator and non-gateway specific data identifying the message recipient, wherein said routines include service routines implementing services required during message handling, and wherein said computer means is operative to execute a main processing task including a plurality of said routines, during execution of a calling routine of said main processing task to call at least one of said service routines, continue with further processing in said main processing task without pending said at least one called calling routine, terminate said service routine and store job data identifying a notification routine, execute a run routine within said main task to cause a notification routine identified by stored job data to be executed. - View Dependent Claims (13)
-
-
14. A network communication system including a plurality of gateways for serving respective access units, said gateways being connected to communicate with each through a message handling system, wherein each gateway of said plurality of gateways comprises:
-
a network interface providing access to said access units served by that gateway, a message transfer interface for sending messages to and receiving messages from said message handling system, a software interface which matches said message transfer interface, computer means for executing processing routines for handling at least one of messages to be transmitted and received messages, means storing a plurality of generic ones of said routines which provide communication between said message transfer interface and said software interface, and means storing a plurality of specific ones of that routines individual to said gateway and providing communication between said network interface and said software interface, wherein said specific routines convert between the format and protocols of the network interface and the format and protocols of said software interface and wherein communications between said gateways on said message handling system are effected in protocol data units including an envelope part and a message part, said envelope part including data identifying the message originator and non-gateway data identifying the message recipient. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. In a network communication system comprising a plurality of gateways for serving respective access units, said gateways being connected to communicate with each through a message handling system, a method of handling messages comprising the steps of:
- (a) providing each gateway with a network interface providing access to said access units served by that gateway, (b) providing each gateway with a message transfer interface for sending messages to and receiving messages from said message handling system, (c) processing a message entering said network interface by a library of specific routines matched to said access units to provide an intermediate message in a system-standard format, (d) processing said intermediate message by a library of core routines which are substantially the same in all gateways to form at least one protocol data unit including an envelope part and a message part, said envelope part including data identifying the message originator and data identifying the message recipient but no data specific to the gateway serving said message recipient, wherein said library of specific routines converts between the format and protocols of said network interface and the format and protocols of said intermediate message and said library of core routines converts between said format and protocols of said intermediate message and the format and protocols of said message transfer interface, (e) transmitting said at least one protocol data unit on said message handling system via said message transfer interface.
- View Dependent Claims (25, 26)
Specification