throbber
US00537719lA
`.
`5,377,191
`[11] Patent Number:
`[191
`United States Patent
`Farrell et al.
`[45] Date of Patent:
`Dec. 27, 1994
`
`
`OTHER PUBLICATIONS
`’-
`“Operating Systems: Design and Implementation”; An-
`drew S. Tannenbaum; pp. 104-105.
`Proceedings Real-Time Systems Symposium, Dec. 3-5,
`1985; pp. 67-75.
`“Real Time Dist. Control with Async. Message Recep-
`tion” Operating Systems Review; pp. 32—44; An Input-
`/Output Subsystem for the Hawk Operating System
`Kernel; Aug. 10, 1987.
`
`Primary Examz'ner—Douglas W. Olms
`Assistant Examiner——Dang Ton
`
`In a network communication system passing messages
`a
`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 notidentify
`recipient gateways as such; the gateways are used trans-
`parently. The data format is CCITT I988 X400 stan-
`dard with automatic conversion to and from this format
`at sending and receiving gateways plus automatic docu-
`merit conversion. Message handling involves waiting
`for many services and events. The invention allows
`routines to avoid pending while
`for
`events and services. Service routines, including event
`-
`-
`-
`-
`-
`watching and timer routines, schedule notifications on
`to queues and the main processing task runs notifica-
`15°35 °ff the ‘l“e“°S by calling 3 ‘"11 ‘°“fi“e-
`
`[54] NETWORK COMMUNICATION SYSTEM
`5
`:
`. F
`_
`- -
`_
`.
`[7 ]
`‘(I-Sahgszlne 1:-(I;1]ll’oIf-,hClhaI‘;1gri§ge
`United Kingdom
`
`Inventors
`
`’
`
`_
`
`_
`_
`[731 Asslgneei Data Genflal C0l'P0l‘3t10n: We5tb°1'°a
`M353
`
`[21] App]. No.: 604,696
`
`51
`Int Cl 5
`0
`0
`nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnu
`1
`
`E55 Field of Search
`""
`62 85
`370/85.1, 85.13, 85.14, 85.15, 95.3, 94.3;
`379/202, 93, 94, 96, 112, 114, 168, 219, 220,
`225, 271, 272, 34, 62; 455/9, 115; 340/8255,
`825.02, 825.51; 380/18; 371/3; 395/650;
`364/483, 492
`
`[56]
`
`References Cited
`U_S_ PATENT DOCUMENTS
`
`
`
`3,676,846 7/
`.......................... 200
`3°“ 5;; 3'
`----------------'
`,
`,
`.
`.........
`310
`4,562,550 12/1985 Beam, et al
`364/483
`4,620,283 10/1986 Butt et a1.
`......
`364/493
`1:: 395/650
`4,658,351
`4/1987 Teng
`4,685,125
`8/1987 Zave .... ... ...... ..
`.... ... 379/96
`
`4,734,931
`
`........................ .. 379/93
`3/1988 Bourg et al.
`MASTER
`DOOJENT
`CONVERTER
`
`COMINCATIONS SERVER SYSTEM 10
`
`26‘Claims, 17 Drawing Sheets
`
`PETWORK
`NTERFACES
`BA
`
`CEO
`3
`
`0
`HA
`
`Page 1 of 39
`
`AT&T EXHIBIT 1017
`
`Page 1 of 39
`
`AT&T EXHIBIT 1017
`
`

`
`U.S. Patent
`
`Dec. 27_, 1994
`
`Sheet 1 of 17
`
`11919773.,5
`
`MASTER
`DOCUNENT
`CONVERTER
`
`f_9MJ'1’N_'E&fl9.N§_5§B_"_EB§I§[5MJ2
`
`wMMM
`
`DISOSS
`NETWORK
`
`FIG.
`
`I
`
`Page 2 of 39
`
`Page 2 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 2 of 17
`
`5,377,191
`

`
`,_____ ___1
`
`11,}:
`
`PRINTER
`I/F
`
`.
`
`_
`
`14F
`
`ME
`
`max
`I/F
`
`
`
`I
`TERMINAL SWITCH
`2°
`
`’
`
`FAX
`1/F
`
`I
`
`36
`
`-
`
`LEASED
`
`LINE
`
`E MTIISA }
`;
`:
`L l _3_’*_
`
`I
`
`I J
`
`PDN
`
`'
`
`x25 SWITCH
`
`Ffl 32
`m MV2
`MV3
`
`MV1
`
`Page 3 of 39
`
`Page 3 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 3 of 17
`
`5,377,191
`
` SPECIFIC
`
`
`
` I
`TOOLS GUI ART
`LIBRARY
`
`SOFTWARE INTERFACE
`
`DIRECTORY
`
`ROUTINES
`
`
`
`
`
`MESSAGE
`NETWORK
`TRANSFER
`
`INTERFACE
`INTERFACE
`
`
`45
`
`
`
`ISB
`
`MESSAGING BACKBONE BUS
`
`
`
`MASTER
`DOCUMENT
`CONVERTER
`
`
`
`A H03
`
`
`
`
`DIRECTORY
`
`SERVICE
`
`
`
`
`13A
`
`10
`
`MEs§AgE
`°°”M”?z"§$§T3I“I
`ceé
`SERVE
`FORMAT
`
`
`
`
`I3A
`
`’
`
`10
`
`‘
`
`I
`
`13C
`
`
`
`MESSAGE
`COMMUNICATION
`"A"
`SERVER SYSTEM
`PROFS
`
`
`
` FORMAT
`
`
`
`
`F/0.5
`
`Page 4 of 39
`
`Page 4 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 4 of 17
`
`5,377,191
`
`X400 GATEWAY —12D"
`
`T30
`
`140
`
`44
`
`15A
`
`33?
`
`.
`
`A
`TOOLS
`CHECK VAL.
`
`1984
`x4oo
`
`NETWORK
`
`AND ADDRESSES
`
`TO TOOLS
`
`FROM QUEUE
`
`
`
` SPECIFIC ROUTINES
`1984x400 :—>-198T8><A00
`
`
`
`ADD TRACE INFO .
`
`F/0.7
`
`A
`
`I
`
`-
`
`A
`
`Page 5 of 39
`
`Page 5 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 5 of 17
`
`5,377,191
`
`-I2D-
`
`az.
`
`15A
`
`188
`
`15A
`
`—I2E-
`1.4:
`
`TOOLS
`
`F/0. 9
`
`-12E-
`
`ROUT I NES
`
`SPEC I F I C
`
`TOOLS
`
`cowv. om.
`
`AIS
`
`
`
`
`
`
`SPECIFIC ROUTINES
`GENERATE COPIES
`FORM DIAL NOS.
`COPIES ON QUEUE
`
`
`
`/-'/0.//
`
`Page 6 of 39
`
`
`
`Page 6 of 39
`
`

`
`U.S. Patent
`
`Dec. 27,’ 1994
`
`Sheet 6 of 17
`
`5,377,191
`
`FROM QUEUE
`
`-12E-
`
`
`
`
` WITH
`FAX CARD
`
`GCSP ROUTINESI
`
`USER
`ROUTINE5
`
`GUI
`RQUTINES
`
`CZ] CHE]
`
`CALL
`
`RETURN
`
`AXES
`
`TIME
`
`F/0. 74
`
`Page 7 of 39
`
`Page 7 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 7 of 17
`
`5,377,191
`
`USER
`PROCESSING
`
`
`
`UNPENDED
`REQUEST
`
`
`
`
`
`
`
`130
`
`13‘
`
`REQUEST INITIATED
`
`CHARACTER
`‘RECEIVED
`
`CHARACTER
`RECEIVED
`
`
`
`FURTHER
`USER
`PROCESSING
`
`
`
`
`
`CHARACTER
`‘RECEIVED
`
`
`CHARACTER
`RECEIVED
`
`
`
`
`
`
`
`TTTT"
`NOTIFICATION
`GUI-
`———— "“
`ROUTINE
`SCHEDULE
`
`138
`REQUEST TERMINATES
`
`
`
`I
`'33
`
`H0. /3
`
`T
`P‘
`
`Page 8 of 39
`
`INPUT
`LINE
`COMPLETE
`
`Page 8 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 8 of 17
`
`5,377,191
`
`USER
`MAIN TASK
`
`150
`
`CALL
`
`,
`
`—
`
`EVENT
`HANDLER
`PATH
`
`USER
`PROCESSING
`
`151
`
`CALL
`
`GCSP REQUEST
`
`152
`
`153
`
`156
`
` “
`
` GJF¥RfiR)
`
`INCOMING EVENT“*'
`
`155
`
`‘
`
`157
`
`l§:5EmCE
`
`INTERTASK
`‘MESSAGE
`
`GUI SCHEDULE
`
`158
`
`GCSP
`NOTIFICATION
`
`'59
`
`PENDED
`GUI_RUN()
`
`I
`
`‘55
`
`F/0.75
`
`Page 9 of 39
`
`Page 9 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 9 of 17
`
`5,377,191
`
`USER
`MAIN TASK
`
`‘
`
`'
`
`OTHER
`PATH
`
`USER
`PROCESSING
`
`mcomwe EvE:NT—>
`
`PENDED
`
`G”I—R”N
`
`160
`
`16'
`
`ggggassxwe
`
`’
`
`INTERTASK MESSAGE
`
`GUI_wAKE_UP
`
`162
`
`USER
`PROCESSING
`
`’63
`
`PENDED
`GUI RUN
`
`164
`
`F/0. 76-
`
`Page 10 of 39
`
`Page 10 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 10 of 17
`
`5,377,191
`
`USER
`MAIN TASK
`
`-
`
`EVENT
`HANDLER
`PATH
`
`USER
`PROCESSING
`
`GCSFLREQUEST
`
`no
`
`'7'
`
`INCOMING EVENT ——>
`
`usER
`[DL5
`LOOP
`
`I72
`
`SERVICE
`EVENT
`
`’
`
`'73
`
`INTERTASK
`
`MEssAeE
`
`:74
`
`E —
`
`'I
`
`I
`
`I75
`
`USER
`NOT|F|CATl0N
`
`'75
`
`USER
`IDLE LOOP
`
`Page 11 of 39
`
`Page 11 of 39
`
`

`
`U.S. Patent
`
`Dec.27,1994_
`
`Sheet 11 of 17
`
`5,377,191
`
`
`
`
`---'
`
`Ai
`
`2
`
`3
`
`
`
`Page 12 of 39
`
`
`
`
`
`I
`
`I
`
`185
`
`° GUI_SCHEDULE
`
`180
`
`184
`
`Page 12 of 39
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 12 of 17
`
`5,377,191
`
`GUI_RO0T
`
`--—.-
`
`
`
`
`
`OWNER 2
`Q ANCHOR
`
`OWNER N
`
`o ANCHOR "—"'-
`
`FIG. 79
`
`Page 13 of 39
`
`Page 13 of 39
`
`

`
`HmD
`
`19J,773.,
`
`
`
`
`
`zo=oz<zmzzom:o_>mz¢>mz¢
`
`.X82Wm:mm:.::mS25%vaiE225.._omfimvafimE230
`
`
`v_mE-~m:z_ngazemowBE.._mfizgo2815:...wE322
`
`
`
`
`5.
`
`
`
`_M88mo_,5:mfizzon__5o..5§NWQC
`
`m%:o_,_<52,5:32:32m%Fc
`
`
`
`
`
`
`%_§,_<en:.2E25~_o.._~§a2<k:5QCm_Ezzomo...%
`t___mo9a3P.mSMU
`
`DI
`
`Page 14 of 39
`
`

`
`m
`
`.o/.,m
`
`5
`
`1.919
`
`
`
`
`
`4}momowoxmzm.mmz3opxmzmom.o
`
`_omowzomozhomo
`
`7_omowzomozmmm_m
` 1.I.momommz_ooommommmzmommozmmmoMomowm_mmmoo_ooo_oomomoom>mm
`
`
`
`
`>H_mo_mm»H_mo_mm
`
`
`
`omow>mmmm.mmzmo_>mmm
`
`w .2A
`
`3,mm|.\
`
`eII_om>mmmm.M ommoommommowmomm;oz_:§
`
`o_,:_,_zomw.wmNFo.mS.5Ue
`
`gaD:
`
`NW.9:.\
`
`Page 15 of 39
`
`
`

`
`C
`
`M
`
`0wW...
`
`19la7739
`
`mN92n._$2
`
`mm$~_8<oziz_,_oE5::oz
`
`
`
`moz>mmm>mzm
`
`m22
`
`%eV92QC
`
`
`
`:32m_So9a.3p_.mm8252
`S.mU
`
`P
`
`
`
`
`
`7_2.5«EomowAl.En_..o:mo_,u_5o
`
`5.
`_Ezzono%=o_,_<5230AImznfizsoQC
`
`
`
`Page 16 of 39
`
`
`

`
`U.S. Patent
`
`Dec. 27, 1994
`
`Sheet 16 of 17
`
`5,377,191
`
`MAIN PROCESS
`
`‘
`
`.
`gu1_run
`
`262
`
`264
`
`tpc
`gui-schedu1e()
`
`266
`
`Ce0_mSg_
`
`"
`/9026/4
`
`‘
`
`268
`
`.
`
`B”}88Ls
`PD“
`
`DIRECTORY
`
`SERVER PROCESS
`
`276
`
`IPC f78,»’
`
`pen
`
`280
`
`ocsp
`r€QUeSt
`TO0LS_send()
`
`‘”}85E§T
`DFOCESSTHQ
`
`Directory
`
`LOOKUDS
`
`270
`
`272
`
`
`
`/‘
`
`/
`
`I-53l"'C37'3COCOOOOOO777?77CC:'C,'0‘C1'0
`
`Page17of39
`
`-———————————/
`
`/
`
`Directory
`Compietion
`
`‘\
`
`3
`/
`
`/
`
`Directory
`Completion
`
`Directory
`Comoietion
`
`To FIG 26B
`
`Page 17 of 39
`
`

`
`U.S. Patent"
`
`Dec. 27, 1994
`
`Sheet 17 of 17
`
`5,377,191
`
`From FIG.26A
`
`23h
`
`286
`
`GCSE request
`mti_send()
`
`Network
`Connection
`
`Connected ‘
`I
`
`7
`
`238
`
`290
`
`'
`
`29?
`
`Data confirmed
`
`mtieconnected()
`
`-TOOLS
`data GCCESS
`
`routine
`
`SEND _
`data
`
`TOOLS
`data access
`routine _
`
`SEND
`data
`
`Data confirmed
`——————--.-——----T-—->
`
`TOOLS
`data access
`routine
`
`SEND
`data
`
`Data~confirmed
`
`IPC to network
`
`Interface-
`Message done
`
`mti_send-done()
`
`Page18of39
`
`Page 18 of 39
`
`

`
`1
`
`NETWORK COMMUNICATION SYSTEM
`
`5,377,191
`
`10
`
`15
`
`20
`
`BACKGROUND OF THE INVENTION ’
`1. Field of the Invention
`This invention relates to a network communication
`system for use in handling communications between
`access units which may comprise office automation
`systems, telex, teletex, facsimile, etc.
`Abbreviations and acronyms used herein are listed at
`the end of the description. References to Data General
`are to Data General Corporation, the assignees of the
`present application.
`2. Description of the Prior Art
`There exist today many proprietary communications
`systems and various international standards relating to
`message handling and data transmission. Nevertheless
`there is no system in existence which will allow all kinds
`of access units to communicate freely with one another.
`It is true that there do exist gateway systems, known
`commercially as Soft-Switch and Mailbus which are
`intended to allow interchange of messages between
`dissimilar systems. However these known systems are
`25
`essentially suitable for use by private corporate and
`other large users because they utilize a proprietary mes- _
`sage transfer protocol handled via a central processing
`system which converts from and to the message proto-
`cols employed by the various gateways. Moreover they
`are set up as complete systems in which each gateway
`has to know what other gateways there are on the sys-
`tem and what are the characteristics of the various
`gateways.
`The known systems are neither intended for not suit-
`able for public services.
`Another problem with which the invention is con-
`cerned arises in conjunction with computer operating
`systems (e.g. MS-DOS and UNIX) which are single
`threaded, i.e. they can handle only a single processing
`thread at a time. This leads to the result that routines
`frequently have to wait if the processing path comes to
`a halt while waiting for an external event. The routine is
`said to pend. Although other operating systems can
`handle multiple threads (e.g. AOS/VS) the system ac-
`cording to the invention is desirably not restricted to a
`particular operating system and should be capable of
`operating with single threaded operating systems. Some
`systems, e.g. UNIX can simulate multitasking by hold-
`ing a plurality of copies of a program in memory and
`scheduling the allocation of the CPU to the different
`processes. However this is wasteful of memory re-
`sources. MS-DOS has no built-in facilities for achieving
`even this level of multi-tasking.
`In a network communication system waiting for.
`events occurs all the time, e.g. as transfers are effected
`across interfaces, and single threaded systems lead to
`inefficient usage of computer resources, for the reasons
`explained above.
`
`30
`
`35
`
`45
`
`50
`
`55
`
`SUMMARY OF THE INVENTION
`
`The object of the present invention is to provide an
`improved system which will allow access units to utilize
`gateways or nodes in an unrestrained way, without any
`knowledge of the nature of the system or of the other
`gateways or nodes in the system.
`— The terms “node” and “gateway” are used inter-
`changeably herein even although some nodes may not
`by strictest definition be gateways.
`
`65
`
`Page 19 of 39
`
`2
`More specifically the improved system is intended to
`be utilizable by PTTS (postal, telegraph and telephone
`authorities) to provide gateways which may be ac-
`cessed by the respective access units for transparent
`communication with access units connected to the same
`system or another system installed by a different PTT.
`The improved system is equally suitable for use by
`other large users such as public and private corpora-
`tions for example.
`Another object of the invention is to avoid the need
`for routines to pend awaiting external results, even in a
`single threaded operating system. Such a routine will be
`called an ‘unpended routine.
`The network communication system according to the
`invention comprises a plurality of gateways or nodes for
`serving respective access units. For example, one node
`may serve a facsimile network, another node a telex
`network, other gateways a plurality of proprietary of-
`fice automation systems such as CEO (Data General
`Corporation), DISOSS and PROFS (both IBM), etc.
`The gateways or nodes are connected to communi-
`cate with each other via a standard message handling
`system, preferably the CCITT X400 Standard, hereby
`incorporated by reference. X400 exists in a 1984 version
`(denoted 1984 X400 herein) which has been imple-
`mented by many users. X400 also exists in a 1988 ver-
`sion (denoted 1988 X400 herein) and it is this system
`which is preferably employed as the “backbone” of the
`inventive network communication system. It is particu-
`larly advantageous that the invention can thus employ
`an accepted, international standard and not introduce
`yet another proprietary message handling system. How-
`ever, since 1988 X400 is not yet widely implemented, it
`is particularly advantageous to provide as one of the
`gateways an X400 gateway, which can interface the
`“backbone” to the somewhat
`lower-specified 1984
`X400.
`
`Each gateway or node of the system according to the
`invention comprises a network interface providing ac-
`cess to the access unit or units served by that gateway.
`This is the external, user-specific interface of the gate-
`way. Each gateway moreover comprises an external
`message transfer interface (MTI) for sending messages
`to and receiving messages from the standard message
`handling system, or backbone.
`Internally each gateway comprises a software inter-
`face which is identical in all gateways and moreover
`matches the message transfer interface. A library of
`core routines provide communication between the mes-
`sage transfer interface and the software interface. This
`library contains the bulk of the gateway software and,
`since it is the same for all gateways, the invention avoids
`the heavy expense of developing a lot of software spe-
`cific to each gateway.
`Each gateway further comprises a library of specific
`routines individual to that gateway and which provide
`communication between the network interface and the
`software interface. These routines convert between the
`format and protocols of the network interface (which
`are specific to each gateway) on the one hand and the
`standardised format and protocols of the software inter-
`face on the other hand. These node-specific routines
`represent- a much smaller part of the software of each
`gateway.
`'
`Examples of the functions performed by the core
`routines are as follows:
`Assemble and transmit a packet of data to the back-
`bone
`
`Page 19 of 39
`
`

`
`5,377,191
`
`3
`Receive and disassemble a packet from the backbone
`Look up destination address in a directory
`Submit a document to a document format converter
`All housekeeping function, such as logging and audit
`trail, accounting, error handling.
`Examples of_t_he functions performed by the specific
`routines are as follows:
`Convert from/to the format specific to the network
`served by the gateway.
`Convert between addresses within the network
`served by the gateway and within the host back-
`bone.
`The communications between the gateways or nodes
`on the standard message handling system are effected in
`protocol data units (PDU’s). Each PDU comprises—see
`X—400——an envelope part and a message part. The
`envelope part includes data identifying the message
`originator and the message recipient but does not con-
`tain any data specific to the gateway serving the mes-
`sage recipient. In accordance with X400 1988, the enve-
`lope part, denoted P1, comprises primarily the origina-
`tor, the destination, message priority and an indication
`of whether a delivery report is required. The message
`part, denoted P2, comprises a header, which repeats
`much of the Pl data and includes a subject title, a docu-
`ment type identifier and the main body of the message.
`This is a highly significant feature of the invention
`because it enables any access unit to send a message to
`any other access unit without concerning itself in any
`way with the nature of the receiving gateway. Indeed
`the originator does not have to know that any gateways
`are involved. The system according to the invention is
`completely transparent to its users and can be installed
`by PTTs to enhance greatly their message handling
`capabilities in a way which requires no action on the
`part of end users. What is more the system does not
`have to be reconfigured when a gateway is added or
`removed. Of course, users have to know the addresses
`with which they wish to communicate but the fact that
`they are on various gateways does not have to be
`known. This is because the envelope part of each PDU
`does not contain any data specific to the gateway serv-
`ing the message recipient. All messages simply go out
`onto the universal messaging backbone and a gateway
`which recognises a recipient address accepts the mes-
`sage.
`A subsidiary problem resides in the existence of dif-
`ferent document formats. There are various word-proc-
`essing formats in common use, various file formats and
`formats specific to telex and teletex. Further features of 50
`the invention relieve an originating access unit of any
`need to worry about the format details of the message
`recipient (although common sense must naturally be
`employed—it is no use expecting a highly formatted
`word-processing file to be handled satisfactorily by a
`telex recipient). Document converters for format con-
`version are known in themselves and may be incorpo-
`rated in the network communication system according
`to the invention.
`
`4
`format, without regard to the document formats accept-
`able to recipients, secure in the knowledge that, if con-
`version is necessary, it will be taken care of automati-
`cally.
`Within the message handling system, such as 1988
`X400, there will be a standard address structure com-
`prising many parts for identifying message originators
`and recipients. Most network interfaces will employ
`different address formats of much more restricted
`
`range. It is accordingly preferred to provide at least one
`directory accessible to each gateway via the message
`handling system. The library routines include routines
`which submit data identifying the message originator
`and message recipient at an originating gateway to the
`directory or directories. This is used to determine iden-
`tifying data in a standard form (in accordance with the
`message handling system) for inclusion in the envelope
`part of the PDU. Further routines submit the identify-
`ing data in the envelope part of a received PDU to the
`directory or directories in order to determine at least
`the message recipient in the form which is required by
`the network interface of the receiving gateway.
`Preferably the system comprises a main directory unit
`holding a directory which is directly accessible by all
`the gateways on the message handling system. This
`directory may be in compliance with the CCITT X500
`Standard. However one or more subsidiary directories
`may be held in directory units within individual gate-
`ways. Such a directory is indirectly accessible to other
`gateways via the message handling system and the hold-
`ing gateway.
`The invention further comprises, as part of the core
`routines, an interface which can operate with different
`operating systems (such as AOS/VS on an MV com-
`puter, MS-DOS on a PC and UNIX on an MV com-
`puter or other hardware). The interface is referred to as
`a General Unpended Interface, GUI. Under GUI, when
`a routine wishes to make a request of a service provider,
`specifically
`a GUI—conforfnant
`service
`provider
`(GCSP) the user calls the relevant routine but does not
`wish to wait for its completion. Rather, the user is in-
`formed when the routine is complete by way of a notifi-
`cation routine. In the meantime the user can carry on
`with other processing.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 illustrates the overall system,
`FIG. 2 is a block diagram of the hardware of one
`gateway of the system,
`FIG. 3 is a functional block diagram of one gateway
`of the system,
`FIGS. 4 and 5 illustrate the transfer of a message
`between two different networks,
`FIGS. 6 to 12 show the steps in handling a message in
`more detail,
`FIG. 13 illustrates performance of two concurrent
`tasks under GUI (general unpended interface),
`FIG. 14 shows a key to FIGS. 15, 16 and 17,
`FIGS. 15 to 17 show the flow of routines under GUI,
`FIG. 18 shows the structure of a GUI,
`FIG. 19 shows a job queue structure for a GUI,
`FIGS. 20 to 25 show various GUI data structures,
`and
`
`FIGS. 26A and 26B show an example of usage of
`GUI within the communications server network.
`
`10
`
`15
`
`20
`
`25
`
`'
`
`30
`
`35
`
`45
`
`55
`
`The envelope part of any protocol data unit whose
`message part consist of a document (or part of a docu-
`ment) includes format information identifying the docu-
`ment format. The library of specific routines of each
`gateway includes routines which are responsive to re-
`ceived format information to submit the message part
`automatically to the document converter when the
`format information identifies an incompatible format.
`Gateways are thus free to transmit in any document
`
`65
`
`Page 20 of 39
`
`Page 20 of 39
`
`

`
`5
`
`DESCRIPTION OF THE PREFERRED
`EMBODIMENT
`
`5,377,191
`
`This description is in four main sections:
`I General system description
`II Network conignunication
`III General unpended interface
`IV Abbreviations and acronyms
`It is emphasised that the whole of the description is
`given by way example and the invention is not limited
`by any of the features disclosed, except insofar as de-
`fined by the appended claims. For example, GUI is
`described primarily in conjunction with a communica-
`tions server system but it is not limited to this particular
`application. The GUI routines do not necessarily have
`the structure described. The organisation of the routines
`of the communications server system offers infinite
`possibilities for variation, and so on. Moreover the de-
`tailed coding of the routines and indeed the language in
`which they are coded are a matter of choice for the
`programmer implementing the invention within the
`context of particular hardware and for a particular ap-
`plication.
`
`I GENERAL SYSTEM DESCRIPTION
`
`10
`
`15
`
`20
`
`25
`
`FIG. 1 shows a plurality of nodes or gateways 12 '
`communicating with each other via a universal messag-
`ing backbone 15 using the 1988 X400 protocol and, at
`least in part, the X25 packet switched message transfer
`protocol (although each gateway may use other media
`for part of its communication path, e.g. land lines). FIG.
`1 shows eight gateways by way of example; there is in
`principle no restriction on the number of gateways.
`Examples of the gateways are:
`CEO gateway 12A for the Data General CEO office
`automation network 13A
`SNADS gateway 12B for IBM DISOSS office auto-H
`mation network 13B
`SNADS gateway 12C for IBM PROFS office auto-
`mation network 13C‘
`X400 gateway 12D for 1984 X400 communication
`with X400 network 13D
`Fax/telex gateways 12E for communication with fax
`and telex networks 13E, F
`Each gateway is connected to its network through a
`standard interface or access unit 14A—14F. For clarity,
`each gateway is shown dedicated to a single network
`and indeed such a configuration may well be adopted in
`practice, at least so far as some gateways are concerned.
`On the other hand, a single gateway may serve a plural-
`ity of different access units. FIG. 2 described below is a
`combined fax/telex (telefax) gateway and, as another
`example, a gateway may be both a CEO gateway and a
`fax/telex gateway. This requires the gateway to have
`both the necessary interfaces and also the necessary
`specific routines for each type of access unit.
`The overall system in FIG. 1 is denoted Communica-
`tions Server (CS) System 10. Each gateway 12 has an
`interface 15A denoted MTI for message transfer inter-
`face and these interfaces communicate via the 1988
`X400 protocol as indicated by a ‘bus’ 15B—which may
`be constituted physically by any form of‘communica-
`tions links. The interfaces 15A and ‘bus’ 15B constitute
`the messaging backbone 15. The ‘bus’ 15B also provides
`communication with directory services 48 and a master
`document converter 46. These services, coupled with
`the messaging backbone 15 itself may be regarded as the
`host 10A of the communications server system 10.
`
`30
`
`35
`
`45
`
`50
`
`55
`
`65
`
`Page 21 of 39
`
`6
`The physical location of the master document con-
`verter 46 and the directory services 48 is immaterial.
`Structurally, each may comprise a database and a pro-
`cessing facility and each may thus be physically located
`in one of the gateways 12 or in a dedicated gateway.
`The master document converter 46 implements conver-
`sion routines, such as are well-known per se in PC pro-
`grams, as well as in more sophisticated applications
`software. The directory services 48 database may be, as
`already stated, in compliance with the CCITT X500
`Standard, hereby incorporated by reference and pro-
`vides standard database facilities for querying and
`searching directory entries as well as adding, amending
`and deleting entries.
`FIG. 2 shows the overall hardware configuration of a
`typical gateway, which interfaces to a plurality of net-
`works and devices. A combined telex/fax (telematic)
`gateway 13E,F is chosen as the illustrated example. It is
`assumed that a plurality of computers are required to
`handle the volume of processing and the embodiment‘
`shown comprises three Data General MV series mim-
`computers MV1, MV2, MV3, each with an associated
`disk drive D1, D2, D3 storing the respective computer
`programs. The computers are connected by a high
`speed LAN 16, such as a standard (thick) Ethernet
`LAN or an MRC bus carrying 400 Mb/s. The comput-
`ers are further connected via a disk controller 18 to a
`bank of disk drives D4 to D8 (for example) constituting
`a disk farm 22 for molding the user data.
`The computers are connected via a terminal switch
`20 to a plurality of interfaces here shown as a telex
`interface 14F, a fax interface 14E and a printer interface
`14P. The terminal switch 20 enables the various access
`units to share the computer resources and moreover
`enables two good computers to be used when one is
`down and generally makes it possible to use the re-
`sources in a flexible manner. In principle the invention
`does not require a plurality of computers and the way in
`which a plurality of computers is used forms no part of
`the invention. Briefly they will be handled in accor-
`dance with the known principles of multi-processor
`systems with one computer acting as master and assign-
`ing the activities of the others and controlling the termi-
`nal switch 20 and an X25 switch 32 so that the correct
`computer communicates with the correct interface for
`each input/output operation performed, also with pro-
`vision for a different computer to take over as master
`under fault conditions. In a simpler system, there will be
`one computer and the terminal switch 20 will not be
`required.
`Each computer moreover has a connection to the
`X25 switch 32 connected to a PDN (public data net-
`work) interface 34 and possibly also to a leased line 36,
`one use for which would be a direct connection to
`
`another gateway. The interface 34 implements the mes-
`sage transfer interface 15A of FIG. 1, forming part of
`the universal messaging backbone 15.
`FIG. 3 is drawn as another block diagram but illus-
`trates the configuration of a gateway in functional terms
`rather than hardware terms. If the gateway is again
`assumed by way of example to be a telematic gateway
`serving telex and fax, the actual telex and fax communi-
`cations will be handled by standard items with which
`the present invention is not concerned, e.g. a Hasler
`telex unit and a PC with a fax card, such as a Gam-
`maFax CP/1‘ card. These standard items communicate
`
`with a network interface 14 which acts as one port of
`the gateway and may comprise plural interfaces, as in
`
`Page 21 of 39
`
`

`
`5,377,191
`
`7
`FIG. 2. Similarly, the network interface 14 might be
`matched to a CEO network, a PROFS network, and so
`on. The message transfer interface 15A forms a second
`port communicating with the messaging backbone bus
`15B.
`
`The interfaces 14 and 15A are linked by a software
`interface 44 which is identical in all gateways. This
`interface 44 comprises a library of core routines which
`provide communication between the message transfer
`interlace 15A and the software interface 44. Although
`this core library could be and is always functionally
`equivalent to a single library it may, for convenience, be
`handled as a plurality of separately maintained libraries.
`In the present embodiment these comprise libraries
`denoted TOOLS, GUI, ART. GUI represents a Gen-
`eral Unpended Interface and is fully described below.
`ART represents ASN.1 (ISO standard) Run Times li-
`brary routines, i.e. routines for encoding data in a for-
`mat
`in accordance with the ISO ASN.1 standard,
`hereby incorporated by reference. These routines are
`used by TOOLS to build PDUs, specifically 1988 X400
`PDUs.
`
`10
`
`15
`
`20
`
`The non-specific software interface 44 is matched to
`the network interface 14 by a library of specific routines
`45. The specific routines comprise the routines neces-
`sary at higher level to control the flow of messages, in -
`accordance with the nature of the gateway which they
`serve. TOOLS on the other hand provides “tools” or
`services common to all gateways. More specifically
`TOOLS routines impose the X400 1988 format on the
`PDUs constructed by ART,send the messages, receive
`message confirmations, receive messages, send confir-
`mations, handle the disk saves, submission to the direc-
`tory service and to the document converter and may
`perform other functionsrequired in common by the
`gateways
`The gateway communicates via the messaging back-
`bone 15 with the document converter 46 and with the
`
`25
`
`30
`
`35
`
`8
`The message is checked for validity and the addresses
`of the recipients are checked to ensure that the recipi-
`ents are “within” the network communication system.
`These procedures are well known per se in communica-
`tions networks. The message is then placed on a queue
`of messages to be processed further, indicated at 60. The
`message is acknowledged to the remote (PTT) system
`13D.
`
`FIG. 7: The message was received in 1984 X400
`format and needs to be converted into 1988 X400 which
`is the internal format used_by the system. Trace Infor-
`mation is added in accordance with conventional com-
`munications techniques. This information is used to
`track a message through all the systems which it tra-
`verses. It is used to detect looping messages (they pass
`through the same system twice). The message is then
`passed to TOOLS in the software interface 44.
`FIG. 8: The recipients are looked up in the directory
`service 48 to see which gateways the message should be
`sent to. The originator is checked to see if he is allowed
`to use the network communication system. This use of
`the directory service is conventional per se.
`The new copy of the message is stored away (62) and
`placed on the queues (64) for the other gateways.
`FIG. 9: The message is now transferred to the peer
`TOOLS in the other gateway 10 (in this case Fax). This
`is done using what is referred to as a remote operation,
`meaning that a command (SUBMlT_MESSAGE) and
`some data (in this case the message itself) is transferred.
`A sequence number is also sent over in order to prevent
`duplication of messages.
`The message is thus now in TOOLS 44’ of the FAX
`gateway 12E. In FIGS. 9 to 12 the elements of this
`gateway are distinguished by added primes.
`FIG. 10: The message is stored again (72). The desig-
`nation of the originator is converted (CONV. ORIG.)
`into human readable form for use as a CSID (the string
`that appears at the top of the fax page). More call bar-
`ring checking is done to bar calls which are, according
`to the directory, not permitted to the addressed recipi-
`ent from the call originator iii question.
`_The message is handed to the specific software rou-
`tines 45’ of the fax gateway 12E. All action now takes
`place in the fax gateway 12E.
`FIG. 11: The copies of the message are generated and
`stored (76) one per recipient and the dialled numbers are
`formed. The format of fax addresses that are passed
`around are 9 <country code> <national number>.
`This is converted into a sequence of digits to dial.
`Each copy is now placed on a queue (78) to be sent
`when an outgoing line (fax card) becomes free.
`It will be noted that the message is repeatedly saved
`to disk. This is not a serious overhead because the ma-
`jority of the message is left on disc and the different
`“saves” are effected by constructing pointers to the
`stored message proper. There is some management to
`ensure that, when a copy is ‘deleted’, the stored message
`itself is not deleted until the last user releases it.
`FIG. 12: For each copy of the message, the specific
`routines 45’ wait until a fax card 82 becomes available,
`(signalled as an event), and then transfers the message
`via the fax network interlace unit 80 to the fax access
`
`45
`
`50
`
`55
`
`main directory service 48_. It may optionally include its
`own sub-directory

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket