throbber
United States Patent (19)
`Kiel et al.
`
`(54)
`
`(75)
`
`(73)
`
`21)
`22
`51
`52)
`
`(58)
`
`SYSTEM FOR SELECTIVELY
`COMPRESSING DATA FRAMES BASED
`UPON A CURRENT PROCESSOR WORK
`LOAD IDENTIFYING WHETHER THE
`PROCESSOR IS TOO BUSY TO PERFORM
`THE COMPRESSION
`Inventors: Harvey G. Kiel; Robert J. Manulik,
`both of Rochester, Minn.
`Assignee: International Business Machines
`Corporation, Armonk, N.Y.
`Appl. No.: 558,021
`Filed:
`Jul. 26, 1990
`Int. Cl: .............................................. G06F 13/00
`U.S. C. .................................... 395/800; 358/426;
`364/514; 364/260.6; 364/DIG. 1; 375/122;
`382/56; 395/650
`Field of Search ............... 395/800, 325, 650, 200;
`341/67; 364/514; 375/122; 358/213.25, 426;
`382/56
`
`56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`4,386,416 5/1983 Giltner et al......
`... 395/375
`... 375/27
`4,598,41 7/1986 Berkovich et al. ...
`. 358/425
`4,63,598 12/1986 Burkhardt et al. ....
`4,633,490 12A986 Goertzel et al. .................... 375/122
`4,663,660 5/1987 Fedele et al. ..
`. 358/136
`4,684,923 8/1987 Koga..............
`... 34/63
`4,700,234 10/1987 Nagashima ...
`358/426
`4,823,342 4/1989 Morita et al. ..
`370/109
`4,876,541 10/989 Storer .................................... 341/51
`4,905,171 2/1990 Kiel et al. ..........
`364/551.01
`4,965,754 10/1990 Stansfield et al.
`... 364/526
`5,031,089 7/1991 Liu et al. ............................. 395/725
`FOREIGN PATENT DOCUMENTS
`01.23783 11/1984 European Pat. Off. .
`0316250A3 5/1989 European Pat. Off. .
`
`|||||||||||||||III
`USOO5276898A
`(11
`Patent Number:
`5,276,898
`(45) Date of Patent:
`Jan. 4, 1994
`
`59-189751 10/1984 Japan.
`61-198941 9/1986 Japan.
`63-203057 8/1988 Japan.
`OTHER PUBLICATIONS
`IEEE Transactions on Instrumentation and Measure
`ment vol. IM-28, No. 4, Dec. 1979, New York U.S. pp.
`306-311 H Ikeda et al.: "Microprocessor-controlled
`time-sharing services terminal with interfaces for in
`struments and its application to precision measurement
`of high VSWR'.
`Primary Examiner-Thomas C. Lee
`Assistant Examiner-Paul Harrity
`Attorney, Agent, or Firm-Joan Pennington; Richard E.
`Billion; Bradley A. Forrest
`57
`ABSTRACT
`A method and computer system having a processor are
`provided for selectively compressing a data communi
`cation frame for data transfer between the computer
`system and at least one other system. A processor work
`load is periodically identified for the processor. A pre
`determined stored threshold value is identified and
`compared with the identified processor work load. Re
`sponsive to an identified processor work load greater
`than the identified predetermined threshold value, the
`data communication frame is transmitted without com
`pressing the data communication frame. Otherwise the
`data communication frame is compressed and then
`transmitted responsive to an identified processor work
`load less than or equal to the identified predetermined
`threshold value. A state of a communication line is
`identified for the data transfer. Responsive to an identi
`fied idle state of the communication line, the data con
`munication frame is transmitted without compressing
`the data communication frame.
`
`17 Claims, 3 Drawing Sheets
`
`
`
`
`
`
`
`UN
`come off
`
`sk-UP
`Pale speed
`
`
`
`AUAt
`.NE cofag.
`
`sef NTENA
`cot flag of
`
`SETNTERNA
`coli
`AG ow
`
`
`
`e
`
`IPR2018-01413
`Sony EX1019 Page 1
`
`

`

`US. Patent
`
`1
`
`hS
`
`3f0
`
`5,276,898
`
`1328$:55w.'909.5ozum
`
`Nunoza35m
`
`zo~28
`
`4,E.v.O
`.mmQMom;o:_.Luu.>uoMN
`m3E
`
`
`
`_wu<u¢uhz.uu<umuhz_
`
`
`
`mus-E.mzwuuam
`
`uu_>uouo.>momowmuoommhmoz
`
`mo_>mo
`
`2..8N8ax!”
`
`
`
`Nov225
`
`823%.
`
`mmqqomhzoo
`
`uo<umw...z.
`
`mowmwoomn.
`
`Ox
`
`2
`
`Euhm>w
`
`mu!.h
`
`
`
`mmutammm<m_o:5.3_
`
`bx
`
`b~
`
`2\2IF.
`
`I.
`
`w$ka
`
`Ox“.
`
`
`
`J<2¢ukz_hum
`
`
`
`20$44".$200
`
`$500hum
`
`20
`
`
`
`J<zmmkz_hum
`
`“ED044..—£800
`
`E200hum
`
`V3.
`
`«5‘
`
`w5284:3
`
`mzoouo
`
`hwaao<
`
`
`
`:kozu4w2<mk
`
`|PR2018—O1413
`
`Sony EX1019 Page 2
`
`IPR2018-01413
`Sony EX1019 Page 2
`
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Jan. 4, 1994
`
`Sheet 2 of 3
`
`5,276,898
`
`3ftg-2
`
`2O2
`
`BULD BIND
`COMP OFF
`
`
`
`2O4.
`
`
`
`LOOK-UP
`P/LINE SPEED
`
`
`
`
`
`MANUAL
`NE CONFIG.
`COMPON
`2
`
`YES
`
`SET COMP
`ON
`
`SET BIND
`WAIT RESPONSE
`
`
`
`2/4
`
`2/6
`
`SET INTERNAL
`COMP. FLAG OFF
`
`2/9
`
`SET INTERNAL
`COMP. FLAG ON
`
`
`
`M2/47
`
`3ffeg-3
`
`
`
`GET FRAME
`
`3. O2
`
`ADD HEADER
`COMP OFF
`
`3O4
`
`YES
`
`O6
`/
`MANUAL
`NO
`LINE CONFIG.
`COMP ON
`2
`
`COMP
`SUPPORTED
`2
`
`a UP
`T/LINE SPEED
`
`YES
`
`RECEIVING DATA
`OR
`TRANSMT FRAME
`QUEUED
`2
`
`16
`
`Bo t B
`2
`
`
`
`O
`
`
`
`N32O
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`22
`
`QUEUE FRAME
`AND SEND
`
`IPR2018-01413
`Sony EX1019 Page 3
`
`

`

`US. Patent
`
`J
`
`1
`
`4m9,
`
`Go
`
`3f
`
`5,276,898
`
`ka
`
`uuo0<4L
`
`o
`
`Nno20
`VONm
`
`“:3hum
`
`
`
`u>.._.<omz0.:3m
`
`umZOLmuz
`
`”02°Ca”!
`
`NDK
`
`.2200
`$33...
`
`cmhmomaam
`
`.65<Em>Emoa
`
`
`
`to3.:5602093...«so...
`
`
`4,33m$1.155;Swimuzjlotdm3-50..
`anion:
`
`
`
`.3255.hum325.5..55555..V3..35¢Aan.
`
` oa355m4o._.E:358:“.533mm:a”25.50.".newOb.meOn—wmxUmzommmmm2Fm0450mUQOP4.3
`
`
`
`
`.m.warmed.35mu>Emom35m8.52somon
`
`
`
`J<z¢uhz_hum
`
`ZOo<4umZOU
`
`
`
`4<zmuk2_hum
`
`tho04:“;mioo
`
`
`
`m2<¢uwms...
`
`him—‘5”:O...
`
`G<JLhum
`
`.3:«Oh
`
`
`“ECouncOhm£50020omnuOkm£28
`hmm .Esza‘mPO...
`
`
`0<4u4535.5:bum3..“—J<2¢mkz.
`
`
`mi<mumm<¢
`
`|PR2018—O1413
`
`Sony EX1019 Page 4
`
`IPR2018-01413
`Sony EX1019 Page 4
`
`
`
`
`
`
`
`
`
`

`

`1.
`
`SYSTEM FOR SELECTIVELY COMPRESSING
`DATA FRAMES BASED UPON A CURRENT
`PROCESSOR WORK LOAD IDENTIFYING
`WHETHER THE PROCESSOR IS TOO BUSY TO
`PERFORM THE COMPRESSION
`
`5
`
`5,276,898
`2
`hardware is idle, the time spent compressing data causes
`an overall delay for the start of data transmission.
`U.S. Pat. No. 4,905,171 issued Feb. 27, 1990 to Har
`vey G. Kiel et al. and assigned to the present assignee,
`discloses a workstation controller (WSC) performance
`monitor for locating performance bottlenecks. Perfor
`mance measurements are taken and processor utilization
`and communications line utilization are calculated. Pro
`cessor utilization is calculated using an idle loop for
`generating an idle loop count and using the following
`equation:
`
`BACKGROUND OF THE INVENTION
`1. Field of the Invention
`10
`The present invention relates generally to data com
`munications using data compression, and more particu
`larly to a method and a computer system for dynamic
`management of data compression.
`2. Description of the Prior Art
`Data compression has been increasingly used because
`15
`it provides improved communications performance by
`reducing the amount of transmitted data and/or reduces
`the cost of data communications. Data compression is
`used on various known communications controllers.
`Various compression algorithms have been employed
`20
`for data compression. Examples of data compression
`algorithms are disclosed in U.S. Pat. Nos. 4,386,416,
`4,663,490, 4,663,660 and 4,684,923.
`U.S. Pat. No. 4,631,598 discloses an image processing
`system including a video converter board that transmits
`data to a spatial compressor board which compresses
`data electronically in the x-direction or the direction of
`the linear array. Data compression in the y-direction is
`accomplished by motor speed control movement of the
`document. A scanner controller provides data compres
`30
`sion for the end user to match the data handling capabil
`ities of the end user system. The image processing sys
`tem uses automatic thresholding techniques with re
`spect to grey scale and edge detection threshold param
`35
`eters.
`U.S. Pat. No. 4,598,411 discloses a data compression
`system for compressing data transmitted between a data
`Source and an ultimate utilization device. Data is com
`pressed "on-the-fly" in that the data is compressed as it
`is transmitted, instead of compressing and storing the
`40
`compressed data in memory before it is transmitted.
`Japanese patent No. 59189751 issued Oct. 27, 1984 to
`Nakayama et al., discloses a data transmission control
`system including a central processing unit (CPU) and a
`communication controller (CCU). Image data is sent to
`45
`the CCU by the control of the CPU. The CCU transfers
`received data to an attachment corresponding to a line
`through which data should be transmitted. In the at
`tachment, a start part of the image data is read to deter
`mine whether or not the data is compressed. If the data
`from the CPU is not compressed, the CCU compresses
`the data before it is transmitted. Otherwise, if the data
`from the CPU is compressed, the CCU will bypass the
`compression step and transmit the data in its existing
`compressed form.
`55
`One significant disadvantage of the above and many
`of the known data compression methods is that de
`graded performance can result. Data compression adds
`to the processing overhead and can result in inefficiency
`in the processor system. When the processor utilization
`60
`is high, data compression further increases the proces
`sor utilization resulting in degraded performance. An
`other problem is that data compression may not result in
`any actual data transmission savings. The time spent
`either attempting to or providing the data compression
`65
`can cause a delay in the actual transmission of the data
`and degraded performance. For example, when using a
`high speed communication line and the communications
`
`50
`
`25
`
`(elapsed time of test/idle loop time) -
`id
`t
`processor utilization =
`elapsed time of test/idle loop time
`
`where the idle loop count equals the number of times an
`idle loop was executed, the elapsed time of the test
`equals a predetermined time period for retrieving mea
`surements, and the idle loop time is a constant equal to
`the time required to execute the idle loop once.
`SUMMARY OF THE INVENTION
`Important objects of the present invention are to
`provide an improved method and computer system for
`dynamically controlling the use of data compression for
`data communications; to provide such a data compres
`sion control method and computer system for compar
`ing an identified processor utilization value to a prede
`termined threshold value and for compressing a data
`communication frame when the processor utilization
`value is less than or equal to the predetermined thresh
`old value; to provide such a data compression control
`method and computer system for comparing an identi
`fied processor utilization value to a predetermined
`threshold value and for compressing the data communi
`cation frame using a first compression algorithm re
`sponsive to an identified processor utilization value
`greater than the threshold value; and for compressing
`the data communication frame using a second compres
`sion algorithm responsive to an identified processor
`utilization value less than or equal to the threshold
`value; to provide such a data compression control
`method and computer system for providing a compres
`sion selection flag representative of data compression
`being selected or not selected and for transmitting the
`compression selection flag to a receiving other system,
`the compression selection flag being used by the other
`system for either selecting or not selecting data com
`pression; and to provide such a data compression con
`trol method and system for identifying a state of com
`munication hardware and for compressing a data com
`munication frame when the communication hardware is
`busy and for transmitting a data communication frame
`not compressed when the communication hardware is
`idle.
`In brief, the objects and advantages of the present
`invention are achieved by a method and a computer
`system having a processor for selectively compressing a
`data communication frame for data transfer between the
`computer system and at least one other system. A pro
`cessor utilization value is periodically identified for the
`processor. A predetermined stored threshold value is
`identified and compared with the identified processor
`utilization value. Responsive to an identified processor
`utilization value greater than the identified predeter
`mined threshold value, the data communication frame is
`
`IPR2018-01413
`Sony EX1019 Page 5
`
`

`

`10
`
`40
`
`5,276,898
`3
`4.
`transmitted without compressing the data communica
`being performed by the processor 22 of the WSC 20 for
`tion frame. Otherwise the data communication frame is
`communications with the attached devices 40, it should
`compressed and then transmitted responsive to an iden
`be understood that the invention is not limited to this
`tified processor utilization value less than or equal to the
`application and can be used with various communica
`identified predetermined threshold value. A state of a 5
`tions controllers and computer systems.
`communication line is identified for the data transfer.
`Briefly in accordance with features of the present
`Responsive to an identified idle state of the communica
`invention, data compression is done on a frame by frame
`tion line, the data communication frame is transmitted
`basis, one frame may be compressed and a next frame
`without compressing the data communication frame.
`may not be compressed. As illustrated and described
`with respect to FIGS. 2-7, an identified processor utili
`BRIEF DESCRIPTION OF THE DRAWINGS
`zation value is analyzed and the state of the WSC com
`The present invention together with the above and
`munication hardware is analyzed before data compres
`other objects and advantages may best be understood
`sion is performed. An identified processor utilization
`from the following detailed description of the embodi
`value is compared with a stored processor utilization
`ment of the invention illustrated in the drawings,
`15
`threshold value for the particular line speed. When the
`wherein:
`processor utilization value is greater than the threshold
`FIG. 1 is a block diagram of a communications sys
`value, then data compression is bypassed. A flag repre
`tem which may be employed in carrying out the data
`sentative of a data compression selection based upon the
`compression control method of the invention;
`processor utilization value is passed to a receiving de
`FIG. 2 is a flow chart illustrating logical steps per- 20
`vice 40 to indicate if the device 40 is to compress trans
`formed by a processor of the communications system of
`mitted data frames so that the processor 22 will selec
`FIG. 1 for defining a PC bring-up routine;
`tively receive compressed or not compressed data.
`FIG. 3 is a flow chart illustrating logical steps per
`When the WSC communication hardware is not trans
`formed by a processor of the communications system of
`mitting or receiving data, then the data frame is not
`FIG. 1 for transmitting a data communication frame;
`25
`compressed. When the WSC communication hardware
`FIG. 4 is a flow chart illustrating logical steps per
`is busy, then a current data queue for the WSC commu
`formed by a processor of the communications system of
`nication hardware is compared with a stored threshold
`FIG. 1 for receiving a data communication frame;
`data queue value for the particular line speed. When the
`FIG. 5 is a flow chart illustrating logical steps per
`current queue value is greater than or equal to the
`formed by a processor of the communications system of 30
`threshold value, then the data frame is compressed.
`FIG. 1 for defining an alternative PC bring-up routine;
`Referring now to FIG. 2, there is shown a flow chart
`FIG. 6 is a flow chart illustrating logical steps per
`illustrating sequential steps performed by the processor
`formed by a processor of the communications system of
`22 defining a PC bring-up routine. The sequential steps
`FIG. 1 for defining a timer based module to periodically
`begin with building a bind or request to activate a ses
`turn compression on and off during run time; and
`35
`sion that includes a default setting for no compression as
`FIG, 7 is a flow chart illustrating logical steps per
`indicated by a block 202. Next the processor 22 identi
`formed by a processor of the communications system of
`fies a processor utilization threshold value PT for the
`FIG. 1 for defining an unnumbered information pro
`particular line speed for data transmission. The proces
`cessing routing.
`sor utilization threshold value PT is obtained from a
`DETALED DESCRIPTION OF THE
`stored look-up table including multiple processor utili
`PREFERRED EMBODIMENT
`zation threshold values PT each with a particular line
`speed, for example, such as set forth in TABLE I as
`Referring now to the drawings, in FIG. 1 there is
`follows.
`illustrated a block diagram representation of an exem
`plary data communications system for performing a 45
`data transfer compression control method of the inven
`tion. As illustrated, the exemplary data communications
`system includes a host generally designated by the ref.
`erence numeral 10 and a workstation controller (WSC)
`20 attached to a plurality of devices or work stations 40,
`50
`such as personal computers (PCs), displays or printers.
`Host 10 has a processor 11 connected to a controller
`interface 12, a memory or storage 13 including a data
`base area 14 and input/output (I/O) buffers 16, and a
`system timer 18. Controller interface 12 communicates
`55
`with the WSC 20 via line 17. Line 17 can be a system
`bus, communications line, part of a local area network
`or other communications arrangement. WSC 20 in
`cludes a processor 22 connected to a host interface 21,
`a device interface 23, a memory or storage 24 including 60
`I/O buffers 26 and a counter save area 27, and a WSC
`timer 28. Host interface 21 communicates with the host
`10 over the communications line 17. Device interface 23
`communicates with the devices 40 over a communica
`tions line 29. Processor 22 is a typical processor known
`65
`to those in the art, suitably programmed to operated as
`described with respect to FIGS. 2-7. While the data
`compression control method is described below as
`
`Next an optional step can be performed to identify a
`manually entered line configuration compression selec
`tion of compression on, compression off or dynamically
`determining whether data compression is performed on
`a per communication frame basis, as represented at a
`block 206. When the dynamic compression selection is
`identified at block 206, then a last calculated processor
`utilization value PU is compared with the processor
`utilization threshold value PTidentified at block 204 as
`represented by a decision block 208. One method for
`calculating processor utilization is disclosed by the
`above described U.S. Pat. No. 4,905,171 or alterna
`tively, sampling techniques can be used to obtain the
`last calculated processor utilization value PU. The dis
`
`LINE SPEED
`(bps)
`200
`2400
`4800
`96.00
`19200
`38.400
`
`TABLE I
`PROCESSOR. UTILIZATION
`THRESHOLD PT 7%
`60
`60
`50
`40
`30
`30
`
`IPR2018-01413
`Sony EX1019 Page 6
`
`

`

`5
`
`O
`
`15
`
`30
`
`35
`
`LENE SPEED
`(bps)
`1200
`2400
`4800
`96.00
`19200
`38.400
`
`BYTE COUNT THRESHOLD BT
`O
`O
`O
`O
`20
`40
`
`5,276,898
`5
`6
`closure of U.S. Pat. No. 4,905,171 is incorporated herein
`Next a number of queued tasks To for the processor
`by reference.
`22 is compared with the identified task threshold value
`When the last calculated processor utilization value
`TT as indicated by a decision block 314. When it is
`determined that the number of queued tasks To is less
`PUis less than the identified threshold value PTat block
`208, then the compression preferred flag in the bind is
`than or equal to the identified task threshold value Trat
`set for compression on as indicated by a block 210. Then
`block 314, then the communication line hardware is
`checked to determine if the communication line hard
`the bind is sent and the processor 22 waits for a bind
`ware is receiving data or if an additional complete trans
`response from the PC or other device 40 as indicated by
`mit frame is queued waiting to be transmitted as repre
`a block 212. Next a compression preferred flag is
`sented by a decision block 316. When it is determined
`checked in the bind response as represented by a block
`that the communication line hardware is receiving data
`214. When the compression on flag is not set or is off,
`or that an additional transmit frame is queued at block
`then data compression is not used and an internal com
`316, then the data communication frame is compressed
`pression flag is set to off as represented by a block 216.
`at the block 308. Otherwise when it is determined that
`Otherwise when the compression on flag is set in the
`the communication line hardware is not receiving data
`bind response, then data compression is used and an
`or that an additional transmit frame is not queued at
`internal compression flag is set to on represented by a
`block 316, then a send byte count threshold value Brfor
`block 218.
`the particular line speed is identified from a stored look
`Alternatively, when the last calculated processor
`up table of byte count threshold values BT. TABLE III
`utilization value PUis greater than the identified thresh
`sets forth examples of byte count threshold values BT
`20
`old value PT at block 208, then the compression pre
`with line speeds as follows.
`ferred flag in the bind is set for compressing the data
`communication frame using a first compression algo
`TABLE III
`rithm. Further when the last calculated processor utili
`zation value PU is less than or equal to the identified
`25
`threshold value PT at block 208, then the compression
`preferred flag in the bind is set for compressing the data
`communication frame using a second compression algo
`rithm. In this alternative method, the first compression
`algorithm requires less processor time than is required
`for the second compression algorithm.
`Referring now to FIG. 3, there is shown a flow chart
`illustrating the sequential steps for transmitting a data
`communication frame. First a frame to be transmitted
`typically including 256 bytes of data is processed as
`represented by a block 302. A transmission header is
`added to the data communication frame that includes a
`default setting for no compression as represented by a
`block 304. Next an optional step can be performed to
`identify a manually entered line configuration compres
`40
`sion selection for compression on, compression off or
`dynamically determining whether data compression is
`performed on a per communication frame basis, as rep
`resented at a block 306. When the line is manually con
`figured as compression on at block 306, then the data
`45
`communication frame is compressed, the frame length
`adjusted and the compression flag set to on in the trans
`mission header as indicated at the block 308. When the
`dynamic compression selection is identified at block
`306, then it is determined whether or not the particular
`50
`device 40 supports compression as represented by a
`decision block 310. When it is determined that the de
`vice 40 supports compression at block 310, then a task
`threshold value TT for the particular line speed is ob
`tained from a stored look up table of task threshold
`55
`values TT with line speeds as represented by a block
`312. TABLE II sets forth examples of task threshold
`values TT with line speeds as follows.
`TABLE II
`PROCESSORTASK
`THRESHOLD TT
`
`Next a byte count Bo for the communication line
`hardware is checked and compared with the byte count
`threshold value BTobtained at block 318 as represented
`by a decision block 320. When the communication line
`hardware byte count Bois greater than or equal to the
`byte count threshold value BT, then data compression is
`performed at block 308. Otherwise when the communi
`cation line hardware byte count Bois less than or equal
`to the byte count threshold value BT, then data com
`pression is not performed. Then the data communica
`tion frame is queued for the communication line hard
`ware and sent as represented by a block 322. Also the
`data communication frame is queued for the communi
`cation line hardware without compressing the frame
`and sent at block 322 after a compression off selection is
`identified at block 306, or after it is determined that
`device 40 does not support compression at block 310, or
`after it is determined that more tasks To are queued for
`the processor than the identified task threshold value
`Trat block 314.
`Referring now to FIG. 4, there is shown a flow chart
`illustrating the sequential steps for receiving a data
`communication frame. First a frame is processed as
`represented by a block 402. Next a data compression
`flag is checked to determine whether or not the re
`ceived frame is compressed as represented by a decision
`block 404. When it is determined at block 404 that the
`received frame is compressed, then the data communi
`cation frame is decompressed and the frame length
`adjusted as represented by a block 406. Otherwise, the
`received frame is processed without being decom
`pressed.
`FIGS. 5-7 provide alternative flow charts of sequen
`tial steps performed by the processor 22 for periodic
`adjustment of compression/no compression or bind
`compression negotiation during run time. Referring
`now to FIG. 5, there is shown a flow chart illustrating
`
`LINE SPEED
`(bps)
`1200
`2400
`4800
`96.00
`92.00
`38.400
`
`65
`
`IPR2018-01413
`Sony EX1019 Page 7
`
`

`

`O
`
`LINE
`SPEED
`(bps)
`1200
`2400
`4800
`9600
`19200
`38.400
`
`5,276,898
`7
`8
`alternative sequential steps performed by the processor
`equal to the threshold starting value PSTART and it is
`22 for the device bring-up routine. The sequential steps
`determined that data compression was previously
`begin with building a bind that includes a default setting
`stopped at block 610, then a start compression message
`for compression on as indicated by a block 502. Next the
`is built in an unnumbered information frame UIF as
`processor 22 sends the bind and waits for a bind re
`indicated by a block 620. Then an internal flag is set
`sponse from the device 40 as indicated by a block 504.
`indicative of an outstanding UIF at block 612 and the
`Next a compression preferred flag is checked in the bind
`frame is passed to be transmitted at block 614. Other
`response as represented by a block 506. When the com
`wise when it is determined that the last calculated pro
`pression preferred flag is set on in the bind response
`cessor utilization value PU is greater than the threshold
`identified at block 506, then data compression is used
`starting value PSTART or it is determined that data com
`and the internal compression flag is set to on as repre
`pression was not previously stopped at block 610, then
`sented by a block 508 and the compression preferred
`no further processing is performed within the module.
`flag is set to on as represented by a block 510. Otherwise
`TABLE IV includes examples of processor utiliza
`when the compression preferred flag is not set or is off,
`tion threshold starting and stopping values PSTART,
`then data compression is not used and the internal com
`15
`PSTOP for multiple line speeds as follows.
`pression flag is set to off as represented by a block 512
`and the compression preferred flag is set to off as repre
`TABLE IV
`sented by a block 514.
`PROCESSOR. UTILIZITATION THRESHOLD
`Referring to FIG. 6, there is shown a flow chart
`START
`STOP
`illustrating the sequential steps performed by the pro
`%
`%
`cessor 22 defining a timer based module to periodically
`50
`65
`turn compression on and off during run time. First it is
`50
`6S
`determined if the device 40 supports compression and
`40
`55
`30
`45
`that the communications line can be dynamically con
`25
`40
`figured as indicated by a decision block 602. When it is
`25
`25
`40
`determined that the device 40 does not support com
`pression or the communications line can not be dynami
`cally configured at block 602, then no further process
`ing is performed within the module. Otherwise when it
`is determined that the device 40 does support compres
`30
`sion and the communications line can be dynamically
`configured at block 602, then it is determined if com
`pression is currently being done as indicated at a block
`604.
`When it is determined that compression is currently
`being done at block 604, then a processor utilization
`stopping threshold value PSTOP is identified for the
`particular line speed as indicated by a block 606. A
`stored look-up table can include multiple processor
`utilization threshold stopping and starting values
`40
`PSTART, PSTOP each with a particular line speed. Next
`the identified stopping threshold value PSTOP is com
`pared with a last calculated processor utilization value
`PU as indicated by a decision block 608. When it is
`determined that the last calculated processor utilization
`45
`value PU is less than or equal to the threshold stopping
`value PSTOP, then compression is left on and the routine
`is exitted. When it is determined that the last calculated
`processor utilization value PU is greater than the thresh
`old stopping value PSTOPat block 608, then a stop com
`SO
`pression message is built in an unnumbered information
`frame (UIF) as indicated by a block 610. Then an inter
`nal flag is set indicative of an outstanding UIF as indi
`cated at a block 612 and the frame is passed to be trans
`mitted as indicated at a block 614. An unnumbered
`information processing routine for handling a response
`to the transmitted UIF at block 614 is illustrated and
`described with respect to FIG. 7.
`Otherwise when it is determined that compression is
`not currently being done at block 604, then a processor
`utilization starting threshold value PSTART is identified
`for the particular line speed in the stored look up table
`as indicated by a block 616. Next the identified starting
`threshold value PSTART is compared with a last calcu
`lated processor utilization value PU and it is determined
`65
`if data compression was stopped as represented by a
`decision block 618. When it is determined that the last
`calculated processor utilization value PU is less than or
`
`The sequential steps performed by the processor 22
`defining the timer based module to periodically turn
`compression on and off during run time illustrated and
`described with respect to FIG. 6 are performed at dif
`ferent points in time for different communications lines
`to avoid an oscillation effect that otherwise could result
`from starting or stopping data compression on all com
`munications lines at the same time.
`Referring now to FIG, 7, there is shown a flow chart
`illustrating the sequential steps for handling a response
`to the transmitted UIF frame at block 614 of FIG. 6
`defining the unnumbered information processing rou
`tine. First a request from the device 40 or a response
`from the device 40 to a transmitted request by the pro
`cessor 22 is identified as indicated by a decision block
`702. When a response from the device is identified at
`block 702, then it is determined if there is an outstanding
`UIF by checking if the UIF flag is set as indicated at a
`decision block 704. When it is determined that there is
`no outstanding UIF at block 704, then a flush is per
`formed as indicated at a block 706. Otherwise when an
`outstanding UIF is identified at block 704, then the UIF
`flag is set to off as represented at a block 708. Next it is
`determined if this is a positive response to a stop as
`represented at a decision block 710. When a positive
`response to a stop is identified at block 710, then the
`internal compression flag is turned off to indicate that
`compression is not being done as represented at a block
`712 and the internal compression stopped flag is set on
`to indicate that compression has been stopped by this
`system as represented at a block 714.
`When a positive response to a stop compression is not
`identified at block 710, then it is determined if there is a
`positive response to a start compression as represented
`at a decision block 716. When a positive response to a
`start compression is identified at block 716, then the
`internal compression flag is turned on to indicate that
`compression is being done as represented at a block 718.
`Then the internal compression stopped by this system
`flag is set off to indicate that compression has not been
`stopped as represented at a block 720.
`
`35
`
`55
`
`60
`
`IPR2018-01413
`Sony EX1019 Page 8
`
`

`

`O
`
`15
`
`5,276,898
`9
`10
`defining a compression selection flag representative
`When a request from the device 40 is identified at
`of data compression selected responsive to said
`block 702, then the outstanding UIF flag is checked as
`compared processor utilization value being less
`indicated at a decision block 722. When an outstanding
`than said second predetermined threshold value or
`UIF is identified at block 722, next a negative response
`representative of d

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