`United States Patent
`4,788,637
`[11] Patent Number:
`Tamarn
`{45] Date of Patent:
`Nov. 29, 1933
`
`364le
`4.484.263 llr’l934- Olson et a].
`
`. 364/300
`4.558.413 12fl985 Schmidt et a].
`4.742.516 5/[983 Yamaguchi ......................... "370x91
`OTHER. PUBLICATIONS
`
`Mano. M. M.. Computer System Architecture. NJ. Pren-
`tice-Hall, 1932. pp. 18—20. 323—333 and 462—473.
`Primary Examiner—Gareth D. Shaw
`Assistant Examiner—Joseph T. Fitzgerald
`Attorney. Agent, or Firm—Foley 8c Lardner, Schwartz.
`Jefi'ery. Schwaab. Mack, Blumenthal 3: Evans
`
`[51]
`
`ABSTRACT
`
`A communication control apparatus wherein the ver-
`sion number of a communication control program in a
`packet accepted by a receive circuit is compared at a
`comparator with that of the local station. When the
`version for the local station is determined to be older
`than the version for the remote station, the apparatus
`receives the latest communicaticm control program
`from the remote station and stores it
`in a rewritable
`memory.
`thereby allowing communication using the
`13"“ V9310“-
`
`8 Claims, 5 Drawing Sheets
`
`2
`
`3
`
`[54] COMMUNICATION CONTROL APPARATUS
`
`[75]
`
`Inventor:
`
`[73] Assignee:
`
`Kiiclu'ro Tenant, Tokyo. Japan
`Kabushiki Knish Toshiba, Kawasaki,
`Japan
`
`[211 Appl. No: 912,516
`
`[22] Filed:
`
`Sep. 29, 1986
`
`Foreign Application Priority Data
`[30]
`Sep. 30. :93:
`[JP]
`Japan .............................. .. 60216040
`
`Int. Cl.‘ .......................... GOGF 13/00; H043 3/24
`[51]
`[52] US. Cl. .............................. .. 364/200; 370/94
`[53] Field of Search
`.... .. 370/90, 91, 92, 93.
`370/94. 95; 364/2“) MS File. 900 MS File
`
`
`
`[56]
`
`References Cited
`'u.s. PATENT DOCUMENTS
`4.060349 112‘ 1917 Bienva et el.
`................. .. 364/200
`
`4.309.156
`1/1932 Heckler .......... ..
`.. 364/30]
`
`
`3:3,“,
`4.425.615 mm Bishop et a].
`22’1984 Bryant et a1.
`4.430.65l
`4,471,898 10.31984 Cholat~Narny
`
`. . . .
`
`304x300
`
`. . . .. 370/94
`370/92
`
`TO COMPUTER
`NETWORK
`
`
`
`
`
`
`
`TRANSM'T
`"RECEIVE
`
`CIRCUIT
`
`
`
`CONTROLLER
`
`VERSION
`COMPARATOR
`
`
`DATA
`
`BUFFER
`
`l3
`TO HOST
`
`
`
`PMC Exhibit 2120
`
`Apple v. PMC
`|PR2016-01520
`
`Page 1
`
`
`
`
`
`
`
`
`|
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 1
`
`
`
`US. Patent
`
`Nov. 29, 1988
`
`Sheet 1 "of 5
`
`4,788,637
`
`T0 COMPUTER
`NETWORK
`
`2
`
`3
`
`TRANSMIT
`-RECEIVE
`
`I
`
`IN
`0
`VERS
`0MP
`C
`“NOR
`
`
`
`CONTROLLER
`
`26
`
`2?
`CHECK
`FIELD
`
`CIRCUIT
`
`
`
`
`
`DESTINAT TON
`STATION
`ADDRESS
`
`VERSION
`
`NUMBER
`
`LENGTH
`
`22
`SOURCE
`STATION
`ADDRESS
`
`24
`DATA TYPE
`
`F I G. 2
`
`PMC Exhibit 2120
`
`Apple v. PMC
`|PR2016-01520
`
`Page 2
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 2
`
`
`
`PS
`
`et
`
`m.
`
`m
`
`.m
`
`5
`
`7.,4
`
`
`
`
`
`allllIlII.I
`
`
`
`
`
`3.1.8500
`
`
`lmEomEohamsSo:
`.,mmmmooq
`
`20.25m“mmmmooqzofiqzfimuo
`
`
`
`N_boomsBo:
`
`
`
`mo_23qu439m_o_«.9338qu
`
`mmmmooq
`
`tntmm:2:
`2205538
`
`
`
`F5016So:1.imam”E2220%,
`
`
`
`6w,P
`7.cAm3MI
`
`mmmmmv.aP.mm1X0.0E0.2
`moms
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 3
`
`
`
`
`US. Patent
`
`Nov. 29, 1988
`
`I Sheet 3 of 5
`
`4,788,637
`
`
`
`LOCALSTATION
`
` FIG.4 VERSIONNUMBER202
`
`2I4
`
`
`
`HOLDCIRCUIT
`"0“DETECTOR
`
`
`
`
`
`
`
`
`
`
`VERSIONNUMBERHOLDCIRCUIT
`
`
`
`PMC Exhibit 2120
`
`Apple v. PMC
`|PR2016-01520
`
`Page 4
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 4
`
`
`
`
`
`[fiiPmmn
`
`Nov. 29, 1988
`
`Sheet4of5
`
`4,788,637
`
`2055,;$52'
`
`w0_“—Nzofifim_20:45
`
`W..0_m
`
`m20:45_20:45
`
`‘20.3%$202
`
`tomezaE
`
`
`
` mow538mEE~20:qu29.6.5
`
`5.3%$32‘no25%.02454
`
`‘205%;$30
`
`
`
`29mm?mm.ng
`
`29mm?$32Efififi
`
`
`
`206%;$30N295.52955noE82.ozqxoq
`
`m.G_LP
`
`mmmmwv.aP..mb1Xp0Ep2mAm
`moms
`
`
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 5
`
`
`
`
`
`29.3223228noszmEmZQm—h
`
`
`
`
`mwimz“.02059262.th5..awhwmnnumm205mm.)mmimzanEqmwomn—Jew—#200__m205mm).
`_mmm.Dmhmmnommm.amimowm
`
`
`
`mm>
`
`
`
`
`
`205mgzo_._.S_.m4409
`
`zmgmzm_
`
`
`
`
`
`205mm;29.5.5.3004
`
`munjom_
`
`
`
`5mZO_._.4._.mMHOEm—mw.3004mmfiqm205mm;
`
`
`
`
`
`02mm
`
`
`
`
`
`PZMEMOQMJBOzxuq0...10...$603452.
`
`
`
`206mm;mmamz
`
`US. Patent
`
`Nov. 29, 1988
`
`Sheet 5 of5
`
`4,788,637
`
`
`
`205mm)hzmmmmn.
`
`
`
`.31...Eton—E
`
`mun—.5m.
`
`
`
`205mm;mmng
`
`timzqm...
`
`
`
`ozmw
`m.o_m zo_mmm>
`
`205mm.)zwimz“.0
`
`
`
`205952qucog
`
`
`
`.meDOmmDzww
`
`muzfiz
`
`“.010d.
`
`m_m
`
`P
`
` .mvahbm0.3mCPMI
`
`
`
`.fl.OP
`mP1w
`
`0C06
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 6
`
`
`
`
`
`
`
`
`
`
`
`I
`
`4,788,637
`
`COMMUNICATION CONTROL APPARATUS
`
`BACKGROUND OF THE INVENTION
`
`The present invention relates to communication con-
`trol apparatus. especially, used in computer networks.
`Computer networks in which computers are con-
`nected by communication lines to make mutual ex-
`change of information possible are increasing steadily.
`[n this computer network1 computers are connected
`via communication control devices to communication
`lines in order to determine a procedure to perform com-
`munication and to accurately control timing for trans»
`mission and receiving.
`The communication control device is controlled by a
`communication control program. There are various
`versions of a communication control program depend-
`ing upon the performance of the function improvement
`or debugging.
`On the other hand. communication control programs
`are individually updated for the respective communica—
`tion control devices constituting the computer network.
`Thus when trusmission from one station to another
`is to be performed. there exists a situation where com-
`munication may be impossible because of different ver-
`sions of a program. Especially. when a new station is
`added to the computer network, a version of a commu-
`nication control program for the communication con-
`trol device of the newly added station is not consistent
`with those for other stations, resulting in the possibility
`that connection will be difficult.
`In order to improve such a situation, a method has
`been developed in which a function such that communi-
`cation between different versions of a communication
`program is enabled is provided by the communication
`control program itself. There is. however, the problem
`with this method that the process for executing the
`communication control program becomes complicated.
`Another method is that both the communication con-
`trol programs for the communication control devices
`which are intended to communicate therebetween are
`updated simultaneously. According to this method,
`however, simultaneous updating of both the programs
`is required. so that the entire computer network must be
`stopped at that time. giving rise to the problem that
`communication efficiency is lowered.
`SUMMARY OF THE INVENTION
`
`It is an object of the present invention to provide a
`communication control apparatus wherein even when
`versions of a communication control program for
`source and destination stations are different. connection
`free from problems can be made.
`It is another object of the present invention to pro-
`vide a communication control apparatus which permits
`communication between communicatim control pro-
`grams of diiferenct versions without using a oomph—
`cated communication control function.
`It is a further object of the present invention to pro-
`vide a communication control apparatus which pencils
`good communication even when a new station is added.
`In order to attain the above objects. a communication
`control apparatus according to the present invention
`includes a transmit-receive circuit connected to a com-
`puter network so as to communicate betweent he local
`station and other remote stations, 9. rewritable storage
`unit in which a communication program is stored. a
`comparison unit for determining whether or not a ver-
`
`5
`
`IO
`
`15
`
`23
`
`35
`
`45
`
`55
`
`65
`
`2
`sion number of a communication control program in a
`packet accepted by the transmit-receive circuit is newer
`than that of the communication control program stored
`in the storage unit. and a controller for allowing the
`local station and a remote station to communicate there-
`between using a communication control program of the
`latest version compatible therebetween on the basis of
`the output of the comparison unit. This allows Smooth
`communication between stations where different ver-
`sions of the program are used.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`In the accompanying drawings:
`FIG. 1 is a block diagram showing the configuration
`of an embodiment of a communicatiou control appara-
`tus according to the present invention;
`FIG. 2 shows a format of a packet used in the present
`invention;
`FIG. 3 is a block diagram showing the details of a
`transmit-receive circuit and a version comparator in
`FIG. 1;
`FIG. 4 is a diagrammatical view showing a more
`detailed configuration of the version comparator;
`FIGS. 5 to 8 illustrate the operation of the cornmuni-
`cation control apparatus according to the present inven-
`tion; and
`FIG. 9 is a flowchart showing the entire operation of
`the communication control apparatus according to the
`present invention.
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`
`FIG. 1 is a block diagram showing the configuration
`of a communication control apparatus according to the
`present
`invention. As seen from FIG. 1. a transmi-
`treceive circuit 1 is connected via a transmit-receive
`signal
`line 6 to a computer network. The transmi-
`treceive circuit 1 is also connected via an internal data
`bus 10 to a storage unit 4 comprised of a rewritable
`memory in which the communication control program
`is stored. and to a data buffer 5 which is connected via
`an interface bus 13 to a host computer (not shown). The
`transmit-receive circuit 1 and the data buffer 5 are con-
`trolled via a control signal line 12 by a controller 3. The
`communication control program is supplied via a con-
`trol program read bus 9 from the storage unit 6 to the
`control circuit 3. A version comparator 2 is provided
`between transmit-receive circuit 1 and controller 3. The
`version number of a communication control program
`on the transmit side in a packet received is delivered via
`a transmission-side version number data line 7 to the
`version comparator 2. At this version comparator 2, the
`accepted program version number is compared with the
`program version number for the local station supplied
`via a control program version number data line 11 from
`storage unit 4. It is to be noted that the local station is
`defined as station localized Separately from other re-
`mote stations in the area where this communicatiou
`control apparatus is provided. The result is delivered
`via a version comparison result signal line 8 to the con-
`troller 3 which in turn performs a predetermined con-
`trol in accordance with the version comparison result.
`as will be desoribed later in more detail.
`FIG. 2 shows an example of a packet which can
`operate the control apparatus according to the present
`invention. the packet 20 censists of a header field in-
`cluding information indicating a destination station ad-
`
`PMC Exhibit 2120
`
`Apple v. PMC
`|PR2016-01520
`
`Page 7
`
`
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 7
`
`
`
`3
`dress 21, a source station address 22. a version number
`23. a data type 24 and a data length 25; a data field 26
`nest thereto; and a check field 21' including a failure
`detection code etc. to be finally transmitted. The infor-
`mation indicating the version number 23 in the packet
`20 will be read by the transmit-receive circuit 1 and
`compared at the version comparator 2.
`FIG. 3 is a block diagram showing the details of the
`transmit-receive circuit 1 and the version comparator 2.
`The packet 20 input via the transmit-receive signal line
`6 to the transmit-receive circuit 1 is demodulated by a
`demodulator 101, and the received or accepted destina-
`tion station address 21 in the header field is held by a
`destination station address hold circuit 102 Theoutput
`from the hold circuit 103 is compared by an address
`detector 104 with the output from a local station ad-
`dress hold circuit 103 in which the local station address
`is stored in advance. The result of the comparison is
`supplied to the controller 3. The version number 23 in
`the received packet 20 is held by a version number hold
`circuit 105. the output of which is compared with the
`local station version number held by a local station
`version number hold circuit 202 at a version comparing
`unit 201 in the version comparator 2. The result of the
`comparison is delivered to the controller 3 via the ver-
`sion comparison result signal line 8. Each of hold cir-
`cuits 102. 103, 105 and 202 is constituted with a latch,
`for example. The address detector 106 is only required
`to detect coincidence or noncoincidence, so that it can
`be easily implemented by an exclusive OR gate.
`FIG. 4 shows an example of the configuration of thee
`version number comparing unit 201 where the version
`number is shown as being composed of n bits, for exam-
`ple. 8 bits. The comparing unit 201 is basically com-
`pl’iSEd of an n—bit full adder 211 which adds the version
`number of the remote station program held by version
`number hold circuit 105 and the local station program
`version number held by the local station version num-
`ber hold circuit 202 and then inverted by an inverter
`212. and outputs the result in the form of an n-bit signal.
`The carry signal from the least significant or rightmost
`position is input to the adder while carry of the most
`significant or leftmost position is output 011 a line 215. A
`zero detector 213 detects whether or not the output bits
`of the full adder 211 are all “0” and outputs the result on
`a line 214.
`
`the full adder
`In the version comparing unit 201.
`output bits become all “0" by the carry when the local
`station and remote station versions are completely coin-
`cident with each other and the output of the zero detec-
`tor 213 becomes “1". Thus when the signal on a line 214
`is “l”, the version numbers of the local station and the
`remate station are equal whereas when the signal on the
`line 214 is “D”.
`the version numbers are difi‘erent.
`Namely, it is determined whether or not the local sta-
`tioa program version number is newer than the remote
`station version number.
`In the case where the local station version is different
`from the remote station version. when the carry output
`is "0". the local station version is determined to be older
`than the remote station version. In contrast. when the
`carry output is “1". the local station version is deter-
`mined to be newer than the remote station versiOn.
`FIGS. 5 to 3 illustrate aspects of communication
`using the communication control apparatus according
`to the present invention where it is assumed in these
`Figures that time passes downward from the top and
`
`
`
`4,788,637
`
`4
`that data is transferred from the source station (1) to the
`destination station (2).
`FIG. 5 illustrates a case where there is no difference
`in version number between the stations (1) and (2).
`Hanna] transmission TR is performed from the station
`{1) to the station (2). When transmission and receiving
`have been completed. the station (2) sends an acknowl-
`edgement signal ACK back to the station (1). The con-
`tents of this acknowledgement signal ACK may be
`stored in advance in the storage unit 4.
`FIG. 6 shows that the program version of the station
`(1) is newer than that of the station (2}.
`The transmission packet on the station (1} side is
`formed so as to include the version number. as shown in
`FIG. 2. On the station (2) side, the version number in
`the packet accepted by the transmit-receive circuit 1
`and stored once in the data buffer 5 is delivered from
`the transmit-receive circuit 1 to the version comparator
`2. At this comparator 2. the accepted version number is
`compared with the version number of the communica-
`tion control program stored in the storage unit 4. so that
`the version of the station (2] is determined to be older.
`The controller 3 then sends to the station (1) a message
`requesting to transfer the newer version of communica-
`tion control program. Another message sent simulta-
`neously this time may be either to the effect that the
`transmission has once been accepted or to the effect that
`the transmission cannot be accepted due to version
`difference. In response to a request for transfer of the
`newer version by the station (2). the station (1) reads the
`newer version of communication control program out
`of the storage unit 4 and transfers it to the statiOn (2}.
`This causes the contents of storage unit 4- on the station
`(2) side to be rewritten with the newer version of corn-
`municatiort control program. At the same time. an ac-
`knowledgement signal ACK is output to the station (1).
`FIGS. 7 and 8 show that on the contrary the station
`(2) program version is newer than the station (1) ver-
`sion. In FIG. 2. when transmission is performed from
`the station (1} to the station (2). the station (2) Outputs
`an acknowledth signal ACK and concurrently
`informs station (1) that the station (1) version is older.
`Upon reception of this, the station (1) sends a request
`for transfer of the newer version and the station (2)
`transfers the newer version to the station (1). In con-
`trast. in FIG. 8. when the version for the station (1) is
`determined to be older. the station (2) forcedly transfers
`to the station (1) the newer version of communication
`control program.
`FIG. 9 is a flowchart showing the operation of con-
`troller 3 corresponding to that of the communication
`control apparatus of FIGS. 5 to a. First.
`in the case
`where the local station program version is determined
`to be older than the remote station program version on
`the basis of the result of comparison of the version
`numbers. when the communication control program is
`received (step 311). the newer version is selected (step
`312] and a newer-version acknowledgement (ACK)
`signal is sent (step 313). When no communication con-
`trol program is received. a request for transfer of the
`newer version is sent (step 314). On the other hand. in
`the case where the local station side has the newer
`version. when transmission of the newer version is re-
`quested by the rte station (step 331}.
`the newer
`version is transmitted to the remote station (step 332).
`Particularly. when no transmission is requested.
`the
`remote station is informed that the version is older (step
`334). When the versions for the local station and the
`
`10
`
`l5
`
`20
`
`25
`
`35
`
`4s
`
`55
`
`65
`
`
`
`PMC Exhibit 2120
`
`Apple v. PMC
`|PR2016-01520
`
`Page 8
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 8
`
`
`
`4,788,637
`
`“
`
`6
`5
`tion control program of the latest version com-
`remote station are the same. the presence of a request
`patible therehetween on the basis of an output of
`for transmission of a newer version is once checked
`said comparison unit.
`(step 321). When the presence of the request is deter-
`2. A communication control apparatus as set forth in
`minedI a negative acknowledgement signal (NAK) is
`sent (step 322). In contrast. when there is no request for 5 claim 1, wherein said transmit-receive circuit includes a
`transmission of the newer version, a packet acknowl-
`version number hold circuit for holding the version
`edgement signal (ACK) is sent to the remote station
`number of the communication control program in the
`(step 323).
`packet received so as to transmit the version number to
`While in the above embodiment the version compara—
`the comparison unit.
`tor is provided separately. it is not necessarily required to
`3. A communicatiOn control apparatus as set forth in
`that it is so. What is required is only to include the
`claim 1. wherein said version number hold circuit is
`function of the comparator. For example, the controller
`comprised of a latch.
`can perform such function.
`4. A communication control apparatus as set forth in
`It should be noted that the configuration of the re-
`claim 1, wherein said comparison unit is comprised of
`spective blocks of the apparatus should not be limited to 15 an n-bit full adder for adding the version number of a
`those of the embodiment shown. Any elements may be
`communication control program for the remote station
`used if they have functions similar to those of the blocks
`and an inverter for obtaining the inverted number of a
`disclosed.
`communication control program for the local station so
`The packet may take another format different from
`as to output a signal representing coincidence/noncom-
`that shown in the embodiment if it includes version 20 cidence between the version number of the communica-
`information somewhere therein.
`tion control program for the remote station and that of
`As described above, the present invention includes a
`the communication control program for the local sta-
`comparator in which the version number of the commu-
`tion and outputs carry signal representing which ver-
`nication control program for the local station stored in
`sion is newer in the case both the version numbers are
`a storage unit is compared with that for the remote 25 not coincident with each other.
`station accepted by the transmit-receive circuit. and a
`5A communication control apparatus as set forth in
`controller which updates the program on the basis of
`claim 1, wherein said controller is of a type which re-
`the output from the comparator. Thus updating is possi-
`quests the remote station to transfer to the local station
`tile as needed without stopping the computer network.
`the newer version of communication control program
`In addition, no special consideration is required for 30 when the program version for the local station is older
`improving a version of a communication control pro-
`than the program version for the remote station. and
`gram. thereby reducing the labor spent for the develop-
`informs the remote station that the program version for
`meat of programs.
`the remote station is older.
`What is claimed is:
`6. A communication control apparatus as set forth in
`l. A communication control apparatus prOVided in 35 claim 1. wherein said controller is of a type which re-
`each computer system for communication between
`quests the remote Station to transfer to the local station
`computer systems linked by a computer network com-
`the newer version of communication control program
`prising:
`when the program version for the local station is older
`a transmit-receive circuit connected to said computer
`than the program version for the remote station. and
`network so as to communicate between a local 40 forcedly transfers to the remote station the newer ver-
`station and other remote stations;
`sion of communication control program, when the pro-
`a reprogrammable storage unit in which a commu—
`gram version for the remote station is older than that for
`nication program is stored;
`the local station.
`a comparison unit connected to said transmi-
`7. A communication control apparatus as set forth in
`treceive circuit for comparing a version number 45 claim 6, wherein said controller is of a type which sends
`of a communication control program in a packet
`an acknowledgement signal when it receives a packet.
`accepted by said transmit-receive circuit with
`8. A communication control apparatus as set forth in
`that of the communication control program
`claim 7, wherein said storage unit is of a type which
`stored in said storage unit and outputting cont-
`stores an information message that the communication
`parison results as to which program is of the in control program of the local station is ofan old version,
`latest version; and
`a request message for transferring communication con-
`a controller connected to said comparison unit, said
`trol program of a newer version and the acknowledge-
`tranamit-reoeive circuit and said storage unit, for
`meat message for receipt of transferred communicatiori
`performing communication between said local
`control program.
`station and a remote station using a communica- 55
`
`
`
`'
`
`"
`
`"
`
`'
`
`65
`
`PMC Exhibit 2120
`
`Apple v. PMC
`|PR2016-01520
`
`Page 9
`
`PMC Exhibit 2120
`Apple v. PMC
`IPR2016-01520
`Page 9
`
`