`4,788,637
`[11] Patent Number:
`Tainan:
`[45] Date of Patent:
`Nov. 29, 1933
`
`36-V200
`4.484.263 ll./I934 Olson et al.
`
`. 36-4./300
`4.558.413 12./I985 Schmidt et al.
`-I$.T42.5l6 5/I983 Yamaguchi ......................... .. 3'l"{L-"94
`OTHER. PUBLICATIONS
`
`Mano. M. M.. Computer System Architecture. NJ. Pren-
`tice—Hall, 1982. pp. 18-20. 328-333 and 462-473.
`Primmy E.'xarm'ner—Gsreth D. Shaw
`Asnirtanr Exami'ner—Joseph T. Fitzgerald
`Attorney, Agent, or Ft‘:-m—Foley & Lardner, Schwartz.
`Jefiery. Schwaab. Mack, Blumenthai BL Evans
`
`[51]
`
`msmncr
`
`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 communication control program
`from the remote station and stores it
`in a rewritable
`memory.
`thereby allowing communication using the
`latest version.
`
`8 Claims, 5 Drawing Sheets
`
`[S4] COMMUNICATION CONTROL APPARATUS
`
`[75]
`
`Inventor: Kilcltiro Tanuru, Tokyo. Japan
`
`[73] Assignee: Kabushiki Kaisiuu Toshiba, Kawasaki,
`Japan
`
`[211 Appl. No.: 912,515
`
`[22] Filed:
`
`Sep. 29. I986
`
`Foreign Application Priority Data
`[30]
`Sep. 30. I935 [JP]
`Japan .............................. .. 69216840
`
`Int. Cl.‘ .......................... G06!‘-' 13/on; H04-J 3/24
`[51]
`[52] U5. Cl. .............................. .. 364/330: 370/94
`[53] Field of Search
`.... .. 370/90, 91, 92, 93,
`370/94. 95; 364/2C0 MS File. 91]} MS File
`
`
`
`References Cited
`'u.s. PATENT DOCUMENTS
`4-.O60,E49 112’ 1917 Bierwerlu et el.
`................. .. 364/2l'.‘D
`4.309356
`1/ I931 Heckler .......... ..
`.. 364/303
`4,320,520 3/I982 Graham
`370/92
`4,420,839 ID/I933 Bryant et al.
`STD/94
`4.425.615
`I/I934 Bishop et al.
`36-U3C0
`4.4-30.65!
`221984 Bryant et al.
`. . . .. JTD/94
`4,477,898 10.31984 Ch0la't~Na.rt1y
`370/92
`
`
`
`. . . .
`
`[56]
`
`TO COMPUTER
`NETWORK
`
`2 O
`
`VERSI
`OMPA
`
`
`DATA
`
`BUFFER
`
`I3
`TO HOST
`
`PMC Exhibit 2072
`
`
`
`Apple v. PMC
`|PR2016-00755
`
`Page 1
`
`N
`
`
`
`
`TRANSMIT
`
`-RECEIVE
`
`I C
`
`“TOR 'coN'rRoi_L.£n
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 1
`
`
`
`US. Patent
`
`Nov. 29, 1933
`
`Sheet 1 bf 5
`
`4,788,637
`
`T0 COMPUTER
`NETWORK
`
`2
`
`3
`
`I
`
`TRANSMIT
`
`-RECEIVE I ‘3
`
`VERS
`OMP
`
`0
`' N
`
`“RATOR I CONTROLLER
`
`DATA FIELD
`
`26
`
`27
`C H ECK
`FIELD
`
`
`
`2
`El
`DESTINAT TON
`STATION
`ADDRESS
`
`23
`VERSION
`NUMBER
`
`
`
`
`DATA
`LENGTH
`
`PMC Exhibit 2072
`
`Apple v. PMC
`|PR2016-00755
`
`Page 2
`
`
`
`22
`SOURCE
`STATION
`ADDRESS
`
`24
`DATA TYPE
`
`F I G. 2
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 2
`
`
`
`%:22.:8m_oSo:
`
`
`
`
`
`I._wzrmwnmmmmmmmsszzo_mE>
`
`
`
`N.baomaBo:
`
`E._._oEz8
`
`9t8m_oBoxA,
`
`zofifimmu.zofiqzfimua
`
`mmmmmmmmmmmzoeq
`
`
`
`..mno_.9mohjaoozwo
`
`zgkqmfifi
`
`
`
`.m..zo_mmm>z82n_\m
`
`7.W.Amum3P
`
`..mBWBW2
`megs
`mmmp
`mmmm
`
`iP
`
`
`
`..m;;;;-.r
`
`S
`
`e
`
`m
`
`&
`
`ta
`
`5
`
`7w4
`
`&.,
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 3
`
`
`
`
`U.S. Patent
`
`Nov. 29, 1988
`
`Sheet 3 of 5
`
`4,788,637
`
`
`
`NONmmmsszzo_mzm>
`
`
`
`.::um_on_._O_._
`
`
`
`zo_.:¢m4400..
`
`
`
`mmmsszzo_mmm>
`
`
`
`tangoD:_O_._
`
`¢.o_n_
`
`mamohm:.mo,o_.
`
`PMC Exhibit 2072
`
`Apple v. PMC
`|PR2016-00755
`
`Page 4
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 4
`
`
`
`
`
`
`2
`
`5
`
`I}4
`
`m,
`7..
`
`
`
`Wzo_mmu>$3.2
`
`mzofifim_zoéflmmm.0_mon' w0_n_
`
`
`
`
`_zoFEmnozmEz_ozqxoq.mzo_m$>$524EmmfiwxfiMzoammpmmfio%Nzofifim
`
`
`$9-VIno.%m_mm,z%,w
`
`zo_mmm>E32
`
`7.W.Amum3.P6m0_u._
`
`H.V.nw%mmmX0.0Ep2
`megs
`mmmw
`
`N ‘
`
`zo_m$>$52
`
`.mmomEmaommE
`
`nomflmzqm»
`
`S
`
`e
`
`
`
`MEmzoifim_zo_.E.BPNzofifim_zofifim
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 5
`
`
`
`
`U.S. Patent
`
`Nov. 29, 1933
`
`Sheet 5 of 5
`
`4,788,637
`
`.._ozo_mm_:mzqE
`
`
`
`
`
`
`
`
`_mmM.nmfimmacmm4..om.>m_omm
`
`
`
`
`mmamzn_Ozo_mm__2mz<Ezo_.Eo_z2,_28.,..ampmunommzo_mE>mmzmzanzqmoomm40....:.zOU__mzo_mmm>
`
`mm;
`
`
`zo_._.§mEozmmG._<oo._
`_.._.mzqmzo_mmm_>_O.m
`
`
`
`
`
`
`zo_mmm>zO_._.S_.m1.400..
`
`zmamzm_
`
`
`
`
`
`zo_mmm>20_._.....__._.m13.00..
`
`E30m_
`
`
`
`zo_mmm_>hzmmmmn.
`
`
`
`._.d.I._._2moh_z_
`
`E30m.
`
`
`
`zo_mmm_>mmzmz
`
`tzmzqmp
`
`m.o_.._
`
`
`
`
`
`:,n._2m_o8._>..ozO...IQ._._3mxuq
`
`
`
`zo_mE>Sam:
`
`zo_mm_zmzqEmom
`
`
`
`._.mm:ommnzmm
`
`
`
`
`
`zo_m~m_>5.32.._O
`
`
`
`zo_mmm>muzmz
`
`n_Oxoqozmm
`
`m_m
`
`PMC Exhibit 2072
`
`Apple v. PMC
`|PR2016-00755
`
`Page 6
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 6
`
`
`
`
`
`
`
`
`
`
`
`1
`
`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.
`In this computer network, 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 communes-
`tion control devices constituting the computer network.
`Thus when transmission 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 commurti-
`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 communication control pro-
`grams of differenct versions without using a compli-
`cated communication controi function.
`It is a further object of the present invention to pro-
`vide a communication control apparatus which permits
`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 communication 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 diagramrnatical view showing a more
`detailed configuration of the version comparator;
`FIGS. 5 to 8 illustrate the operation of the communi-
`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 Ii
`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 rewi-itnbie
`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 ti. 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 communication
`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 described 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 consists of a header field in-
`cluding information indicating a destination station ad-
`
`PMC Exhibit 2072
`
`Apple v. PMC
`
`|PR2016-00755
` Page 7
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 7
`
`
`
`4,788,637
`
`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
`2|) 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 Ir bits, for exam-
`ple, 8 bits. The comparing unit 201 is basically com-
`prised 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 on 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 “O" 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 "I", the version numbers of the local station and the
`remote station are equal whereas when the signal on the
`line 214 is “D”.
`the version numbers are difierent.
`Namely, it is determined whether or not the local sta-
`tion 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 “l". the local station version is deter-
`mined to he newer than the remote station version.
`FIGS. 5 to 6 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
`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).
`Normal 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 -I-. 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 com-
`munication 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 acknowledgement 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. 3 to 8. 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). Wlten 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
`
`20
`
`25
`
`35
`
`45
`
`55
`
`65
`
`PMC Exhibit 2072
`
`Apple v. PMC
`|PR2016-00755
`
`
`
`Page 8
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`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 therebetween 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
`mined. 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 I0
`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/noncoirb
`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
`5.A 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
`ble 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-
`inforrns the remote station that the program version for
`ment of programs.
`the remote station is older.
`What is claimed is:
`6. A communication control apparatus as set forth in
`1. 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 foroedly 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 ofa 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 con't-
`stores an information message that the communication
`parison results as to which program is of the :0 control program of the local station isofanold version,
`latest version; and
`a request nmsage for transferring communication con-
`a controller connected to said comparison unit, said
`trol program of a newer version and the acknowledge-
`tranamit-receive circuit and said storage unit, for
`rnent message for receipt of transferred communication
`performing communication between said local
`control program.
`station and a remote station using a communica- 55
`
`"
`
`PMC Exhibit 2072
`
`Apple v. PMC
`|PR2016-00755
`
`Page 9
`
`
`
`65
`
`PMC Exhibit 2072
`Apple v. PMC
`IPR2016-00755
`Page 9