throbber
United States Patent [191
`
`Wilson et al.
`
`[11]
`
`[45]
`
`Patent Number:
`
`4,841,526
`
`Date of Patent:
`
`Jun. 20, 1989
`
`[54] DATA COMMUNICATIONS SYSTEM
`[76]
`Inventors:
`Jon C. Wilson, 200 N. Maryland
`Ave, #301,61endale, Calif.
`91206-4236; David A. Shlck, 27366
`Compostela, Mission Viejo, Calif.
`92692; Robert L. Haynie. 16181
`Jasmine Way, Los Gatos, Calif.
`95030; Donald R. Wilder, 525
`Gabilan St. #8, Los Altos, Calif.
`94022; Larry D. Zimmerman, 4504
`Poinsettia. San Jose, Calif. 95136;
`Richard M. LeCoIr, 225 Massol
`Ave, Los Gatos, Calif. 95030; D.
`James Guy. 1340 Arbor Rd, Menlo
`Park, Calif. 94025
`[21] Appl. No.: 932,926
`[22] Filed:
`Nov. 19, 1986
`
`Related 05. Application Data
`
`[63]
`
`Continuation-impart of Ser. No. 614,283, May 25.
`1984, abandoned.
`Int. Cl.“ .............................................. G08C 25/02
`[51]
`[52] US. Cl............
`...
`..... 371/32; 371/5
`
`[58] Field of Search"................................ 371/32, 33, S
`[56]
`References Cited
`U.S. PATENT DOCUMENTS
`
`3,473,150 10/1969 McClelland ...................... 371/32 X
`........................ 371/5
`3,534,264 10/1970 Blasbalg et al.
`
`...
`3,876,970 4/1975 Winn et. al.
`371/32
`3,979,719 9/1976 Tooley etal ..
`371/32
`
`8/1978 Kageyama et a1.
`...... 371/5
`4.110.558
`
`3/1979 Kageyama et a1.
`4,144,522
`371/32
`
`4,149,142 4/1979 Kageyama et a1.
`371/32
`5/1981 DeShon ...................... 375/5
`4,270,205
`
`4,422,171 12/1983 Wortley
`371/32
`
`3/1984 Donnan ................................. 371/32
`4,439,859
`
`OTHER PUBLICATIONS
`
`Computer Networks. Andrew S. Tanenbaum, Pren-
`tice-Hall, lnc., Englewood Cliffs, N.J., 1981, p. 155.
`NH Cross Domain Facilities, NTX Communications
`Corp, Sunnyvale, Calif, 1986.
`“Windows in the Sky—Flow Control in SNA Net-
`works with Satellite Links", G. A. Grover 6: K. Bhara-
`th—Kurnar. IBM Systems Ioumal, vol. 22, No. 4, 1983.
`AFIPS Conference Proceedings 1980 Nat’l Computer
`Conf., Anaheim, Calif, May [9-22, 1980, pp. 105-112,
`
`“ARQ
`
`AFIPS Press. Arlington, Va, M. A. Reed et 311..
`Performance in SNA Networ ".
`IBM Technical Disclosure Bulletin. vol. 24. No. 1113.
`Apr. 1982, pp. 6153, 6154, New York, W. D. Brodd:
`"Selective Acknowledgement and Retransmission in a
`Packet Switched Network".
`Proceeding: of the IEE. vol. 120, No. 8, Aug. 1973, pp.
`846-851, London. GB; 8. Zacharov: ‘Transmission
`Strategy and Optimal Block Size in High-Speed Data
`Communication".
`
`Computer Design, vol. 22, No. 3, Mar. 1983, pp.
`195—206, Winchester. Mass, A. J. Weissberger: "Bit
`Oriented Data Link Controls".
`Compilation of Data Communications Standards. 1978.
`pp. 989-1115, edited by H. C. Folts et al.; McGraw-Hill
`Publish. Col, New York: “Federal Standard 1003 (pro-
`posed); Telecommunications: Synchronous Bit Ori-
`ented Data Link Control Procs”.
`Hewlett-Packard Journal. vol. 29, No. 7. Mar. 1978, pp.
`21-26, Palo Alto, Calif, J. R. Nielsen et al.: "Data
`Entry and Communications Systems Have Network
`Capabilities”.
`
`Primary Examiner—Salvatore Cangialosi
`Attorney, Agent. or Finn—Majestic, Parsons, Siebert &
`Hsue
`
`ABSTRACT
`[57]
`A data communications system employing sliding win-
`dow protocol where the size of the window of the send-
`ing or receiving station can be made selectable by the
`user according to the speed, length or error rate of the
`communication link or the frame size used to maximize
`the utilization of the communication link. The negative
`acknowledgements sent by the receiving station speci-
`fies the upper and lower limit of a range of identification
`numbers of frames unsuccessfully received to increue
`efficiency. Before data is transmitted, the sending and
`receiving stations exchange the preferred sets of link
`parameters and generate a modified set of link parame-
`ters to resolve potential conflicts. Either the sending or
`the receiving station stores a table defining the frame
`sizes for use with different bit error rates of the commu-
`nication link. The station then evaluates the current bit
`error rate to select the optimum frame size from the
`table and adjust the frame size accordingly.
`
`10 Claims, 15 Drawing Sheets
`
`-1.
`
`‘
`
`~
`
`‘I
`
`LWQ1_1
`
`I...
`
`I mun:
`‘
`ll“ surn—m cum-a:
`
`
`
`i
`
`'liiiiiiii§--
`
`ST. IUDE 1013
`
`

`

`
`US. Patent
`
`
`
`Jun. 20, 1989
`
`
`
`
`
`Sheet 1 of 15
`
`
`
`
`
`
`
`4,841,526
`
`
`
`
`
`
`
`
`DATA FUN
`COMM.
`
`PROQ
`PROCESSOR
`
`
`
`
`
`H&_L
`
`
`
`H&_L
`
`2
`
`

`

`MESSAGE
`PM I "MACE FLAG
`N017“!
`MUN
`
`' WORK
`I
`
`
`
`”913:1'STl
`
`
`
`
`
`SIJOZW‘IS6861‘02ml'
`
`X : NOV USED
`PIF I POLUFINAL—WCATES INA? ONE OR
`MORE MESSAGES HAVE BEEN SEN!
`' I. 0 N01’ USED
`
`FIGURE 3.
`
`9ZS‘IVS‘V
`
` I
`
`I
`
`SELEG‘IIVE
`REJECI
`
`MNWOF “MENDOF
`8N5 RANGE WM!
`
`U-TYPE
`[UNNUMBEREDD
`
`to
`
`V
`
`o
`o
`0
`o
`I
`I
`
`o
`o
`o
`I
`o
`I
`
`o
`o
`I
`o
`o
`o
`
`a
`I
`I
`o
`o
`o
`
`5:
`
`o UNNUMIERED mom
`0
`119602494561
`0 VNNUMBEIIEDACK
`O SETAIVNC. DALMDDEEXTEN.
`I mnemmoa
`o DISCONNECIMODE
`
`5 FM) Memos mus)
`
`u
`
`hw‘c—d
`
`“OJ 9 I
`“0."
`OFMJ.
`N FRAME
`BEING SEN? FM“
`
`10X
`... I Insmomummmm
`00X.
`.. X WBROFMTIMFEW
`X END GEO. OFMIIJIPLE mm
`0 I X . . .
`...X ENTIRE"!
`..X WWMTHRFMME
`————-——————_——————
`RECEIVED
`;;:
`
`

`

`
`
`COMMUNI-
`CATIONS
`LINK 16
`
`
`FRAME
`
`STORAGE
`
`
`HOST
`
`
`(DATA
`
`sounce
`COMMUNI-
`
`
`cmous
`oa SINK)
`
`
`
`PROCESSOR
`
`
`
`LINEADAPTER
` DATA
`BUFFER
`
`
`
`
`
`FRAME
`
`
`STORAGE
`
`
`
`OUTBOUND
`
`WRITE PROCESSING
`
`FRAMES
`
`b
`
`FIGURE 4.
`
`
`
`mama'S'rl
`
`
`
`SI10‘2MS6861‘02“‘1‘
`
`
`
`9ZS‘1178‘?
`
`

`

`
`
`US. Patent
`
`
`Jun. 20, 1989
`
`Sheet 4 of 15
`
`
`
`
`
`
`4,841,526
`
`SEO. NO.
`
`
`
`
`
`
`
`
`
`LOWEST-UNACK
`
`
`NEXT-FROM-HOSTwmoow(12).—————>{
`
`NEXT-TO-SEND
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`LOWESTUNACKI
`
`
`
`EO
`
`
`
`
`
`Q EE
`
`NEXT—TO-SEND
`
`NEXT-FHOM-HOST
`
`
`
`LOWEST-UNACK
`
`
`
`N EXT—TO-SEND
`
`
`:5
`
`3O
`
`
`
`
`
`
`O z3
`
`NEXT-FROM-HOST
`
`
`
`TOO-FAR
`
`
`TOO-FAR
`
`
`TOO-FAR
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`171
`
`172
`
`
`174
`
`
`176
`
`177
`
`
`
`
`
`173
`
`175
`
`178
`
`179
`
`180
`
`
`
`
`255
`
`
`FIGURE SA.
`
`
`
`5
`
`

`

`
`
`US. Patent
`
`Jun. 20, 1989
`
`
`Sheet 5 of 15
`
`
`
`
`
`
`4,841,526
`
`
`sea. NO.
`
`
`
`
`to
`
`
`
`21
`
`
`
`:2
`
`NEXT-TO-HOST
`
`
`COMMAND-EXPECTED
`
`
`NEXT-TO-HOST
`
`
`HOLE-RESPONSE- EXPEC.
`
`
`NEXT-TO-HOST
`
`
`HOLE
`
`HOLE
`
`
`HOLE-RESPONSE- EXPEC.
`
`HOLE
`
`
`
`
`|<—————-—-———meow(no)
`
`I
`
`173
`
`174
`
`175
`176
`
`173
`179
`
`
`
`
`
`255.
`
`
`
`
`
`45
`
`46
`
`47
`
`48 HOLE-RESPONSE EXPEC.
`
`
`HOLE
`49
`
`
`50
`
`51
`
`52
`
`53
`
`54
`
`55
`
`
`
`
`171
`
`172
`
`
`
`
`
`177
`
`
`
`180
`
`
`TOO-FAR
`
`
`
`
`
`
`
`
`
`COMMAND-EXPECTED
`
`
`wmoow(:2)
`
`
`
`
`
`
`
`TOO-FAR
`
`
`COMMAND-EXPECTED
`
`
`
`wmnowa,)
`
`
`
`
`
`
`TOO-FAR
`
`
`FIGURE 53.
`
`
`
`
`6
`
`

`

`US. Patent
`
`Jun. 20, 1989
`
`Sheet 6 of 15
`
`4,841,526
`
`A READ BY
`COMMUN. PROC.
`HAS BEEN COMPLETED
`
`THIS READ
`
`SAVE 0P SYS
`DETECTED HARDWARE
`STATUS FOR
`
`EXAMINE STATUS:
`SET FLAG IF
`THERE WAS
`
`AN ERROR
`
`126
`
` DID
`READ OPERAT.
`END WITH
`ERROR
`9
`
`
`
`NO
`
`(FRMARRI)
`
`EXECUTE PROTOCOL
`PROCESSING AND
`
`
`OTHER FUNCTIONS
`
`130
`
`
` THIS READ
`
`PULL US OUT OF
`SLOWDOWN OR
`
`
`FRAMES FOR
`
`
`
`120
`
`122
`
`124
`
`YES
`
`128
`
`NO
`
`132
`
`READ-COMP-END
`
`HEAD-COMP-END
`
`READ-COMP-EXIT
`
`TELL HOST
`WE HAVE DATA
`
`FOR IT 134
`
`READ-COMP- EXIT
`
`138
`
`RETURN
`
`FIGURE 6.
`
`

`

`5I
`
`
`WERE
`
`
`FRAME
`
`
`SEQUENCE NOS.
`
`
`0K
`‘ 7
`
`YES
`
`0
`
`”W
`
`152
`
`
` IS
`(ITSTATE)
`LINK IN
`NO
`
`PROCESS INFORM.
`INIIIALIZAIION
`
`STATE
`TRANSF. STATE FRAME
`
`?
`
`
`(ISSTATE)
`
`
`srATE FRAME
`
`15‘
`
`FRMARRI STEP 128
`
`FRMARRI
`
`W“
`
`138
`
`
`ANY
`
`FRAMES TO
`
`PROCESS
`?
`
`
`YES
`
`CLEAR FEA
`comnm BLOCK
`
`, 40
`
`142
`
`(FRMPIKR)
`DISASSEMBLE
`FRAME AND
`PLACE PORTIONS
`
`PROCESS INITIAL
`
`N0
`
`144
`
`_
`WAS
`
`FRAME
`
`
`
`w RECEIVED WITHOUT
`Eanons
`
`?
`YES
`(RNGCflK)
`CHECK THAT ALL
`SEQUENCE NUMBERS
`ARE IN APPROPRIATE
`
`WINDOW
`
`
`WERE
`'59
`
`
`THERE ANY
`$85153IEND
`
`FRAME,
`
`
`NO
`
`I48
`
`162
`
`Is
`
`
`
`
`THERE
`
`ANOTHER FRAME
`
`T0 Pagcsss
`
`N0
`
`
`
`YES
`
`FRMARRI
`
`coum ERRORS
`
`..
`
`FIGURE 7.
`
`
`
`mama'S‘fl
`
`E
`.
`g
`:—
`a
`x:
`
`(I)
`E
`q
`9'H
`UI
`
`9zs‘1vs‘v
`
`

`

`FRMPIKR STEP 142
`
`I76
`
`THE LOCATION
`
`
`OF THE IFIELD
`IN THE FIO
`
`DETERMINE IF FRAME
`
`
`A COMMAND, RESPONSE,
`
`
`FIND THE FRAME TYPE IN
`FRAME CONTROL TABLE
`
`
`
`
`
`I-FIELD-P
`
`SEQUENCE
`NOS.
`?
`
`
`
`
`0R BROADCAST
`
`
`
`
`
`I-FIELD-P
`
`YES
`
`STORE SEQUENCE
`NOS. IN FEA
`
`
`
`LOCATE THE FSB IN
`
`THE FRAME;
`
`
`STORE IT IN
`THE FEA
`
`
`
`RNGCH K
`
`178
`
`ERRORS
`?
`
`
`
`
`CHECK SEQUENCE
`NUMBER AGAINST
`PROPER RANGE
`
`TABLE I
`
`
`
`
`(ACKWIND)
`
`"a
`
`SLIDE THE WINDOW; SEE
`YES
`
`AN ACKNOWLEDGE
`IF SYS. CAN COME OUT OF
`
`
`AND >LOWEST
`
`SLOW DOWN TO PLACE
`-UNACK
`
`
`MORE FRAMES 0N LINK
`
`
`FRAME
`(HART)
`
`
`AN IFRAME CMD,
`YES oerscr HOLES AND oue
`
`SREJ. on REJ. DEPENDING
`
`HEARTBEAT, REJC
`
`OR REJR
`ON HOLE SIZE
`
`
`
`
`RETURN
`
`
`
`6861‘0:'mrmama'S'fl
`
`SI1"8walls
`
`‘I’
`
`9zs‘I
`
`FIGURE 8.
`
`FIGURE 9.
`
`

`

`
`
`
`
`s1106mus6861‘02mtmama'S'Il
`
`RETURN
`
`
`
`929‘11’8‘17
`
`ACKWIND STEP 184
`
`
`
`
`
`ACKWIND
`
`
`
`SET LOWEST-UNACK
`TO NEW VALUE
`
`190
`
`
`
`
`
`
`192
`HAS
`
`NEW ACIL
`PROVIDED ENOUGH
`
`FRAME SLOTS TO
`
`EXIT SLOW
`DOWN
`
`193
`
`
`
`SET FLAG TO
`
`
`INDICATE TO READ—
`
`
`COMP TO TELL HOST 0K
`
`T0 EXIT SLOW DOWN
`
`RETURN
`
`SET RECEIVE-STATE
`= REJ.
`
`QUE A REJ. COMMAND
`0N EXPRESS QUE
`
`
`
`
`
`HART—EXIT
`
`HART-EXIT
`
`.
`
`
`
`
`
`20
`
`HART STEP 188
`
`RESET TIMER TO
`REFLECT THAT
`HEARTBEAT
`JUST ARRIVED
`
`
`
`
`
`IS
`
`
`THE
`YES
`
`
`RECEIVED-STATE
`
`:: REJ
`
`
`
`198
`
`DOES
`
`
`
`
`
`N s DEFINE
`A HOLE
`
`
`
`206
`
`
`
`2
`
`QUE A SREJ FOR
`IS
`
`
`THE HOLE ON
`HOLE >
`
`EXPRESS QUE
`MAX-HOLE
`
`SPECIFY RANGE
`
`
`
`
`SET TIMER FOR EACH
`SREJ'D FRAME T0 0°
`
`208
`
`FIGURE 10
`
`FIGURE 11
`
`10
`
`

`

`ITSTATE STEP 154
`
`
`
`210
`
`no
`
`218
`
`NO
`
`
`AN
`
`
`_
`IFRAME
`
`
`
`RECELVEESJTAIE
`COMMAND
`
`
`
`7
`_ 7
`
`YES
`
`"0
`
`
`IS
`
`
`
`
`FRAME AN
`FRAME AN
`
`
`REJ Response
`'FRAME COMMAND
`
`
`7
`-,
`
`
`214
`YES
`YES
`
`216
`
`
`
`
`
`
`'s
`220
`
`
`SLOT IN
`NO
`
`FRAME STORAGE
`
`
`AVAIL.
`
`
`?
`YES
`
`224
`
`Cgfiafimfg'fl
`RECEIVE SWE
`TO ITS
`
`IT-STATE-EXIT
`
`MOVE n FRAME
`FROM Flo BUFFER
`TO FRAME STORAGE
`
`
`
`-
`IT-STATE-EXIT
`
`‘
`
`SLIDE wmoow
`RECEIVE SIDE
`CMD—EXPEC
`
`228
`
`AN
`
`
`IFHAME
`
`
`RESPONSE
`
`230
`
`YES
`
`
`
`
`BEEN SELECTIVELY
`HEJECTED
`
`
`SH‘I’A)
`
`
`YES
`MOVE FROM FIO
`BUFFER T0
`FRAME STORAGE
`
`222
`PLACE ERROR
`INDICATION m FEA
`
`lT-STATE-EXIT
`
`226
`
`236
`
`“5
`_
`_
`‘ "Es: EXPEC
`
`YES
`SLIDE RESP~EXPEC T0
`BOTTOM OF NEXT
`HOLE OR TO NEXT
`
`MISSING FRAME
`
`IT-STATE-EXIT
`
`IT-STATE-EXIT
`
`‘
`
`FIGURE 12A
`
`11
`
`NO
`
`TO FIGURE 128
`
`232
`
`IGNORE n
`
`'T'STATE'EX”
`
`lT-STA‘I’E-EXII’
`
`NO
`
`23‘
`
`~°
`
`238
`
`
`
`SIJO011901156861‘oz'unrmama'ST]
`
`
`
`
`
`
`
`919‘1178‘?
`
`

`

`mm'90
`
`6861‘02"Inf
`
`m Ep
`
`—A
`fl
`
`9..
`l—I
`UI
`
`“A
`
`1'2
`
`NQ
`
`FROM
`FIGURE 12A
`
`240
`A
`
`SREJ
`COMMAND
`?
`
`
`
`NO
`
`YES
`
`242
`
`A
`R“
`COMMAND
`7
`
`244
`
`"o
`
`A
`"'2
`COMMAND
`7
`
`250
`
`"o
`
`A
`254
`
`
`SABM
`
`' N'-
`050.18%IEJISC
`lT-STATE-EXIT
`
`
`
`
`'55
`
`248
`
`YES
`
`252
`
`YES
`
`256
`
`QUE RANGE OF
`IFRAME RESPONSES
`0N EXPRESS QUE
`
`
`
`OUE A HEJ RESPONSE
`(REJR) ON
`EXPRESS cue
`
`on; A on RESPONSE
`ON
`EXPRESS QUE
`
`sum
`TERMINATION
`
`lT-STATE-EXIT
`
`248
`
`RESET
`NEXT—TO—SEND
`
`
`
`T0 NR
`
`IT-STATE-EXIT
`
`lT-STATE-EXIT
`
`.
`
`FIGURE 128
`
`12
`
`

`

`260
`
`YES
`
`TRANSMIT A
`DISCONNECT
`
`NTXWEX— EXIT
`
`wane LOOP-
`END
`
`NO
`
`WRITEEX
`
`258
`
`
`IF
`
`XMlT—STATE
`
`
`= SEND-DISC
`
`?
`
`NO
`
`2G2
`
`
`SE? FLAG TO snow
`
`THAT HEARTBEAT son
`
`N3 + NRHAVE NOT
`
`BEEN SENT
`
`264
`ANY
`
`MORE FIO
`
`SPACE AVAILABLE
`?
`
`
`
`YES
`
`270
`
`(GETFRM)
`ASSEMBLE FRAMES
`
`272
`
`274
`
`
`
`or FRAMES
`
`T0 wane; HEART
`
`
`
`
`IEs
`
`(DOHAHT)
`
`WRITE-LOOP-
`END
`
`W-
`
`276
`
`
`COMPLETE
`
`WRITE FROG. BEEN
`
`
`BUILT 0R OUT
`
`OF FRMS TO
`
`277
`
`268
`
`(DOHART)
`
`GENERATE HEARTBEAT YES
`FRAME, RESET
`
`HEARTBEAT TIMER
`
`266
`LAST
`
`
`FIO BUFFER
`NO
`& NEED TO SEND
`
`
`WRITE-LOOP-
`END
`
`PERFORM THE
`WRITE OPERATION
`
`RETURN
`
`NTXWEX-EXIT
`
`FIGURE 13
`
`13
`
`mama'STI
`
`6861‘01'“M'
`
`
`SIJ0ZImus
`
`929‘178‘7
`
`

`

`278
`
`280
`
`282
`
`DOHART STEP 268
`
`DOHART
`
`
`
`
`
`
`
`LOCATE FCT
`COMMAND
`FOR HEARTBEAT
`
`
`
`
`(BUILD FEA)
`
`BUILD THE FRAME
`
`SET HEARTBEAT
`
`
`NEEDED FLAG TO
`
`
`OFF; RESET
`HEARTREAT TIMER
`
`
`
`MOVEFRM
`
`
`
`344
`
`MOVEFRM STEP 342
`
`MOVE STATION
`
`ADDR FROM FEA T0
`FIO BUFFER
`
`
`
`
`
`
`E
`354
`
`
`YES
`
`MOVE Isl BYTE
`
`
`OF CONTROL FIELD
`
`MOVE IFIELD
`FROM FCT TO
`
`
`FROM FRAME STORAGE
`FIO BUFFER
`
`TO FIO BUFFER
`
`
`
`DOES
`
`FRAME HAVE
`
`
`SEQUENCE
`
`
`RETURN
`NOS.
`
`
`
`
`
`
`
`MOVE SEQUENCE
`
`NOS. FROM FEA
`TO FIO BUFFER
`
`
`
`
`
`TURN PIF BIT OFF IN
`PREVIOUS FRAME
`SO THAT CURRENT
`FRAME WILL CAUSE
`READ TO END
`
`FIGURE 14
`
`FIGURE 17
`
`14
`
`
`
`6861‘0:'mrmama'S'fl
`
`SI10£1was
`
`‘I’
`
`925‘I
`
`

`

`FE
`
`284
`
`296
`
`GETFRM STEP 270
`
` S
`0 YES
`
`NO
`
`301
`
`ALL OTHERS
`
`230
`IS
`
`
`COMMAND
`
`
`TIMED
`
`?
`
`‘0
`
`SET COMMAND
`TIMER
`
`GF-BUILD
`
`294
`
`GFEXO
`
`FIGURE 15
`
`GF-BUILD
`
`
`
`
`
`SI10VI”WIS6861‘02“Ifmama'S'fl
`
`
`
`9ZS‘178‘?
`
`P0? HIGHEST PRIORITY
`ENTRY OFF OF
`EXPRESS QUE
`
`GET-FRM-EXIT
`
`YES
`
`
`306
`286
`
`NEXT-
`ANY-
`
`
`N0
`TO-SEND :
`THING ON
`
`
`
`
`NEXT-FROM-
`EXPRESS QUE
`HOST
`?
`7
`
`
`
`
`
`GF-BUILD
`
`N0
`
`308
`
`(BILDFEA)
`
`BUILD FEA so THAT
`
`
`YOU CAN THEHEAFTER
`
`
`MOVE TO Flo
`
`
` SENDING IFRC
`
`
`
`?
`
`
`
`BUMP NEXT-TO-SEND
`BY ONE
`
`GET-FRM-EXIT
`
`288
`
`N0
`
`Y ES
`
`YES
`
`
`
`
`
`YES
`CALCUIATE TIME-OUT
`TIME FOR EACH FRAME
`IN THE RANGE & STORE
`
`
`IN PROPER SRTA SLOT
`
`
`292
`
`
`
`RETURN
`
`GF-BUILD
`
`15
`
`

`

`BILDFEA STEP 308
`
`BILDFEA
`
`3H
`
`
`
`BASED on rcr move
`PROPER ADDR TO
`M (REMOTE. LOCAL
`on snowmsn
`
`
`
`
`
`
`
`MOVE NEXT—
`”IO-SEND TO FEA
`
`SPECIAL
`
`
`VALUE OF
`N s
`
`7
`
`YES
`
`322
`
`move SPECIAL
`NS VALUE TO FEA
`
`
`
`326
` SPECIAL
`VALUE FOR
`
`NR
`?
`
`YES
`
`330
`
`MOVE SPECIAL
`N a T0 FEA
`
`MOVE NEXT-
`TO-HOST TO FEA
`
`
`WE SENDING
`
`
`HEARTBEAT VALUE
`
`N0
`
`
`
`SET FLAGS AND
`
`
`DETERMINE IF CAN
`
`
`TURN HEARTDEAT
`
`
`NEEDED OFF
`
`
`
`336
`
` DOES
`
`YES
`. FRAME
`
`
`REQUIRE IFIELD
`?
`
`'
`
`NO
`
`MOVE-IT
`
`FIGURE 18
`
`16
`
`338
`
`FIND LOCATION
`AND LENGTH OF
`IFIELD AND STORE
`
` mama‘S'n- IN FEA
`
`
`6861‘0Z'unf
`
`340
`
`MOVE-l'l'
`
`342
`
`(MOVEFRM)
`
`'RETURN
`
`SIJ0SIwas
`
`929‘178‘7
`
`

`

`4,841,526
`
`
`
`
`DATA COMMUNICATIONS SYSTEM
`
`
`
`1
`
`
`
`
`
`
`2
`be transmitted by the sending host. As each frame is
`
`
`
`
`
`
`
`
`
`
`sent, the sending host increments the N5 that it sends by
`
`
`
`
`
`
`
`
`
`
`
`1. N3 is used to acknowledge which frames have been
`
`
`
`
`
`
`
`
`
`
`successfully received, and to indicate to the sending
`
`
`
`
`
`
`
`
`host which information frame the receiving host exc
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`pects to receive next. In SDLC and HDLC, NR always
`acknowledges that all frames up to NR have been suc-
`
`
`
`
`
`
`
`
`
`cessfully received.
`
`
`SDLC uses 3-bit sequence numbers that may contain
`
`
`
`
`
`
`
`
`the digits 0 through 7. SDLC thereby allows for up to
`
`
`
`
`
`
`
`
`
`
`
`7 frames to be outstanding (frame transmitted but not
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`acknowledged). HDLC allows for 3-bit and,
`in ex—
`tended mode, 7-bit sequence numbers which may con-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tain the sequence numbers 0 through 7 and 0 through
`127, respectively. HDLC would allow for up to 127
`
`
`
`
`
`
`
`
`
`frames to be outstanding. The two protocols use similar
`
`
`
`
`
`
`
`
`
`error detection algorithms and error recovery tech—
`
`
`
`
`
`
`niques to verify the successful receipt of a transmitted
`
`
`
`
`
`
`
`
`frame.
`
`
`
`
`
`
`
`
`
`
`Upon detection of a missing frame, or a frame in
`error, SDLC uses a technique that is called “Go-back-
`
`
`
`
`
`
`
`
`n". Use of this technique requires the receiving host to
`
`
`
`
`
`
`
`
`
`
`reject all frames that have been received after the frame
`
`
`
`
`
`
`
`
`
`
`in error, whether or not these frames are correctly re-
`
`
`
`
`
`
`
`
`
`ceived.
`
`
`
`
`
`
`
`
`
`As an example, suppose the sending host has sent
`frames numbered 1, 2, 3, 4 and 5 and that frame number
`
`
`
`
`
`
`
`
`
`
`
`2 was destroyed in transit. The receiving host using the
`
`
`
`
`
`
`
`
`
`SDLC technique, will reject frame number 2 and dis-
`
`
`
`
`
`
`
`
`card frames numbered 3, 4, and 5. The sending host then
`
`
`
`
`
`
`
`
`
`
`
`must retransmit the frames numbered 2—5. In this exam-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ple it is easy to see that retransmission of frames 3, 4,
`and 5 is redundant and that link utilization would be
`
`
`
`
`
`
`
`
`
`
`more efficient if such redundant transmission were not
`
`
`
`
`
`
`
`
`required.
`
`
`
`
`
`
`
`
`Another general strategy for handling data frames
`received in error, known as selective repeat or selective
`
`
`
`
`
`
`
`
`
`reject, is described in Computer Networks, by Andrew S.
`
`
`
`
`
`
`
`
`
`Tanenbaum, Prentice-Hall,
`Inc., Englewood Cliffs,
`
`
`
`
`
`N.J., 1981, p. 155. In this alternative strategy, all the
`
`
`
`
`
`
`
`
`
`
`correct frames following the bad one received by the
`
`
`
`
`
`
`
`
`
`receiving host are stored in its buffer. The receiving
`
`
`
`
`
`
`
`
`
`host again sends a negative acknowledgement to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`sending host. When the sending host finally becomes
`
`aware that something is wrong, it simply identifies and
`
`
`
`
`
`
`
`
`retransmits the one bad frame from its buffer, but not all
`
`
`
`
`
`
`
`
`
`
`
`its successfully transmitted successors. Thus, by provid—
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ing a buffer for storing the correct frames following the
`bad one, only the one bad frame needs to be re-transmit-
`
`
`
`
`
`
`
`
`
`
`ted.
`
`
`
`
`
`
`Data communications systems employing the above-
`described concepts are described for example in US.
`
`
`
`
`
`
`
`
`Pat. No. 3,979,719 to Tooley et al. and in US. Pat. No.
`
`
`
`
`
`
`
`
`
`
`
`
`4,422,171 to Wortley et a1. None of the above-described
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`systems are entirely satisfactory. It is therefore deSirable
`
`
`
`
`
`
`to provide data communication systems having im—
`
`
`proved qualities.
`SUMMARY OF THE INVENTION
`
`
`
`
`The data frames transmitted from a first station to a
`
`
`
`
`
`
`
`
`
`second station typically includes data and an identifica-
`
`
`
`
`
`
`
`tion number, where the identification numbers of the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`frames are typically assigned in the sequential order of
`transmission to facilitate frame identification. To con-
`
`
`
`
`
`
`firm that the data frames received by the second station
`
`
`
`
`
`
`
`
`
`
`are correct and in the correct sequence, it is necessary
`
`
`
`
`
`
`
`
`
`
`for the receiving station to utilize verification tech-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`CROSS REFERENCE TO RELATED
`
`
`
`APPLICATION
`
`This application is a continuation-in-part application
`
`
`
`
`
`
`of “Method And Apparatus For High Speed Satellite
`
`
`
`
`
`
`
`
`Communication”, Ser. No. 06/614,283, filed May 25,
`
`
`
`
`
`
`
`1984, now abandoned. cl BACKGROUND OF THE
`
`
`
`
`
`
`
`INVENTION
`
`This invention relates in general to data communica-
`
`
`
`
`
`
`
`tion and particularly to a data communication system
`
`
`
`
`
`
`
`
`which efficiently communicates data over a variety of
`
`
`
`
`
`
`
`
`communication links.
`
`
`
`
`
`
`
`Information gathering, processing and distribution
`has become an increasing important aspect of modern
`
`
`
`
`
`
`
`
`day life. Together with the unprecedented growth of
`
`
`
`
`
`
`
`
`the amount of information gathered and processed,
`
`
`
`
`
`
`
`there is increasing need for the capability to transfer
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`data at a variety of speeds between separated locations.
`Different types of communication links have been used
`
`
`
`
`
`
`
`
`for transfer of data. One type of common carrier com-
`
`
`
`
`
`
`
`
`
`munication link is terrestrial such as a cable or a leased
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`phone line. Other common carriers may include high
`
`
`
`
`
`
`
`
`speed satellite links. These links may have different
`
`
`
`
`
`
`
`
`
`lengths, operate at different error rates and transfer data
`at very different speeds. Since a variety of communica-
`
`
`
`
`
`
`
`tion links with different characteristics may be available
`
`
`
`
`
`
`
`
`between two locations, it is advantageous to choose the
`
`
`
`
`
`
`
`
`
`communication link which is the most economical and
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`efficient for the particular type of data transfer desired.
`It is therefore desirable to provide a communication
`
`
`
`
`
`
`
`
`system which is flexible and dynamically adjustable and
`
`
`
`
`
`
`
`
`which is efficiently used for data transfer over commu—
`
`
`
`
`
`
`
`
`nication links having different characteristics.
`
`
`
`
`
`
`
`
`
`
`
`Communications protocols based on a layered net-
`work architecture have been developed for the transfer
`
`
`
`
`
`
`
`
`of data between remote host computers. Because of the
`
`
`
`
`
`
`
`
`
`value and precision of the data transferred, it is abso-
`
`
`
`
`
`
`
`
`
`lutely essential that all the data be correctly transferred
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`particularly in the face of predictable errors caused by
`the communications links used for the data transfer.
`
`
`
`
`
`
`
`
`Communication protocols have therefore been devel-
`
`
`
`
`
`oped for transmitting data in discrete blocks known as
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`frames, for evaluating whether the data are correctly
`
`
`
`
`
`
`
`received, for communicating to the sending station
`
`
`
`
`
`
`
`
`
`which data frames are in error and for retransmitting
`such data frames. The Synchronous Data Link Control
`
`
`
`
`
`
`
`
`(SDLC) developed by International Business Machines
`
`
`
`
`
`
`Corporation (IBM) and the High Level Data Link Con-
`
`
`
`
`
`
`
`
`trol (HDLC) published by the International Standards
`
`
`
`
`
`
`
`
`
`
`
`Organization are examples of communications proto-
`cols which are currently used.
`
`
`
`
`
`
`
`
`
`
`
`Where a sending station is transmitting data through
`
`
`
`
`
`
`
`
`a communication link to a receiving station, both sta-
`
`
`
`
`
`
`
`
`tions must define their link parameters for the data
`transfer. Where the resources available to the two sta-
`
`
`
`
`
`
`
`
`tions are different, there may be conflicts between the
`
`
`
`
`
`
`
`
`
`link parameters designated by the two stations. It is
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`therefore desirable to provide a data communications
`system where such conflicts can be resolved in a simple
`
`
`
`
`
`
`
`
`
`manner.
`
`
`
`
`
`
`
`
`The interchange of information between stations on
`an SDLC or HDLC link is controlled by sequence
`
`
`
`
`
`
`
`
`
`numbers within the frame. The two types of sequence
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`numbers are: Send Sequence Number, N5, and Receive
`Sequence Number, NR. The N5 indicates to the receiv-
`
`
`
`
`
`
`
`ing host the sequence number of the next frame that will
`
`
`
`
`
`
`
`
`
`
`
`
`
`10
`
`
`
`15
`
`
`20
`
`
`25
`
`
`30
`
`
`35
`
`
`
`
`45
`
`
`50
`
`
`55
`
`
`
`
`65
`
`
`
`
`
`
`
`
`
`
`17
`
`17
`
`

`

`
`
`
`
`
`
`
`
`4
`3
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`has been unsuccessfully received. A second aspect of
`niques for each frame received and communicate to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`the invention is directed to a communication system
`sending station that the frames were indeed correctly
`
`
`
`
`
`
`
`
`
`
`
`where a single negative acknowledgement message sent
`received by sending a properly formatted acknowledge-
`
`
`
`
`
`
`
`
`
`by the receiving station specifies both the upper and
`ment for each of these data frames including their iden—
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`lower limits of a range of identification numbers of
`tification numbers. Since it is necessary for the sending 5
`
`
`
`
`
`
`
`
`
`frames unsuccessfully received, In other words,
`the
`station to receive confirmation of the correct receipt of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`receiving station need send only a message containing
`data frames from the receiving station before it con—
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`two identification numbers to identify a range of data
`siders the transmission complete,
`the sending station
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`frames incorrectly received. This feature enables the
`typically is equipped With the capability 0f storing
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`transmitted-but-not-yet acknowledged data frames. The 10 communication system to avoid the necessity of sending
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`sending station evaluates the acknowledgement infor-
`the identification number of each and every data frame
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`mation received from the receiving station and uses it to
`incorrectly received, thereby improving the efficiency
`
`
`
`
`
`
`
`
`discard from Its buffer those data frames acknowledged
`of the system. This feature is particularly advantageous
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`as correctly received, in order to make room for adei-
`where, for example, a burst error in the communication
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tional data frames to be transmitted. Thus the sending l5 link causes a large number of consecutive data frames to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`station assigns and monitors a variable range of identifi-
`be lost or damaged in the transmission.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`cation numbers for data frames stored in its buffer,
`The sending and receiving stations each maintains a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`thing?“ gestrifcting :he totald numhe; 0f 8:311 133“?”
`preferred set of link parameters related to the resources
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Wltlln t 6:61“:
`“itdwm 0:", f e 5e: mg “3?”: 20 available to it. Athird aspect of the invention is directed
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`eva uates t 6 ac now e gemen “1 orma ion receive
`to a communication system comprising a first and a
`
`
`
`
`
`
`
`
`
`
`
`from the receivmg station in order to shift the upper and
`second station where, before data is transmitted, the
`
`
`
`
`
`
`
`
`
`
`
`
`lower hrmts 0f the Window.
`two stations exchange the preferred sets of link parame-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`The receivmg station establishes a second wrndow
`ters and generate a modified set of link parameters rep-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`havmg an upper and lower limit for a variable range of
`.
`.
`.
`.
`resenting a satisfactory compromise between the two
`.
`.
`.
`
`
`
`
`
`
`identification numbers of posstble data frames from the 25
`.
`.
`
`
`
`
`
`
`
`
`
`sets of preferred parameters. This allows potential con-
`
`
`
`
`
`
`
`r
`eivin station. The
`t
`.
`.
`i
`ti
`t
`
`
`
`
`
`
`
`
`send ng sta on acceptable 0 he ec
`flicts between the parameters of the two stations to be
`g
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`th
`.
`d
`receiving station evaluates the data frames received
`resolv d
`i
`f
`h
`'2
`d
`.
`t
`
`
`
`
`
`
`
`
`from the sending station to shift the upper and lower
`'e an min ml es
`e a verse impac o
`sue
`
`
`
`
`
`
`
`
`
`
`conflicts on data transfer.
`
`
`
`
`limits of the second window. The difference between
`.
`.
`.
`.
`.
`
`
`
`
`
`
`
`
`Predictably the error conditions of a communication
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`.
`the upper and lower limits of each of the first and sec- 30
`.
`.
`.
`.
`.
`
`
`
`
`
`
`
`
`ond windows defines its size. Up to this point, a previ-
`link vary With time. Differential error rates have differ-
`
`
`
`
`
`
`
`
`
`
`ent impacts on data transfer, particularly as a function
`
`
`
`
`
`
`
`
`
`ously known system using a protocol known as the
`,
`.
`,
`,
`.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`sliding window protocol is described, wherein the win-
`of frame Size. When the error rate IS low, it is deSirable
`
`
`
`
`
`
`
`to use large frames containing data bit streams with
`
`
`
`
`
`
`
`
`
`dow consists of that subset of data to be transmitted
`_
`,
`_
`.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`which has been initiated into the transmission process 35 many b‘ts' G'Ye“ a low error rate, the 13“ errors intro-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`but not yet successfully terminated out of that process
`duced by the hnk cause relatively few data frames ‘0 l?e
`
`
`
`
`
`
`
`
`
`transmitted incorrectly, even where the frames contain
`
`
`
`
`
`
`
`by the two stations involved.
`.
`.
`
`
`
`
`
`a large number of bits. Large frames, mostly transmitted
`
`
`
`
`
`
`
`
`
`One aspect of the invention is based on the observa-
`,
`.
`_
`.
`_
`.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`error free, manimize bandw1dth utilization. When the
`tion that the size of the first or the second window or
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`both can be made selectable by the user according to 40 error rate is high, however, the probability increases
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`that large frames Wlll be transmitted in error, thereby
`the speed, length or error rate of the communication
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`requiring retransmission. In such event it is desirable to
`fink or the frame size used in connection therewith.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`reduce the frame size. A fourth aspect 0f the invention
`Thus, for lengthy communication links such as satellite
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`15 leeCted ‘0 3 communication system comprlsmg 3
`links with long delay times (thousands or millions of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`frames in transit) between the sending and receipt of 45 sending and {1 receivmg Ste-‘10“ where the §efldmg Sta-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`'00“ automatically evaluates error conditions 0f 'th
`data frames, it is desirable to select large window sizes.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`09311113711051th link ‘0 vary dynamically the frame Slle;
`The selection of large window sizes requires a larger
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`this increases the overall effictency of communication
`storage buffer but allows a sending station to continu-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`link utilization. In.the preferred embodiment, at least
`ously transmit frames without having to interrupt trans-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`mission while awaiting acknowledgements from the 50 one Of the two stations 5‘01'35 a table defining the frame
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`sizes for use with different bit error rates of the commu-
`receiving station. A large window Size allow5 a receiv-
`
`
`
`
`
`
`
`
`
`
`
`
`
`nication link for substantially optimizing the efficiency
`ing station to continuously receive data frames without
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`of link utilization. Such station evaluates the current bit
`having to reject data frames because of the fact that the
`error rate 0f the link measured by percentage of re-
`identification numbers of these frames falls outside its
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`windoW.
`55 jected frames, selects the optimum frame size from the
`
`
`
`
`
`
`
`
`
`
`The above described feature of the extensible Win-
`table, and adjusts the transmission frame accordingly.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`dow size is advantageous since it allows the user to
`
`
`
`
`
`
`
`
`
`
`
`
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`select a window size that is the most efficient and eco-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. 1 is a block diagram Of a COmmunlcation system
`nomical for the particular communication link used.
`
`
`
`
`
`
`
`
`
`
`
`This greatly increases the flexibility in selecting com- 60 illustrating the invention.
`
`
`
`
`
`
`munication links and reduces the cost of data transfer by
`FIG. 2 illustrates data communication across asym—
`
`
`
`
`
`
`
`
`
`
`efficient utilization of the link bandwidth. The tradeoff
`metrical communication links to illustrate the invention.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`between link utilization and required buffer size has
`FIG. 3 illustrates the frame format
`in accordance
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`benefitted in recent year because the cost of storage has
`with the preferred embodiment of the present inven-
`
`
`
`
`
`
`
`
`
`
`decreased at a faster rate than the cost of transmission. 65 tion.
`
`
`
`
`
`
`
`
`
`
`
`
`In many communication systems, the receiving sta-
`FIG. 4 is a conceptual block diagram of the func-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tion also sends negative acknowledging information to
`tional elements of the data flow processor in accordance
`
`
`
`
`
`
`
`
`
`
`
`
`
`the sending station to indicate every data frame which
`with the present invention.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`4,841,526
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`18
`
`18
`
`

`

`
`
`5
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`20
`
`
`
`
`25
`
`
`30
`
`
`
`
`15
`
`
`5
`. FIG. 5A and SB illustrate the send/receive frame
`
`
`
`
`
`
`
`
`table maintained in accordance with the present inven-
`
`
`
`
`
`
`
`tion.
`
`
`
`
`
`
`
`
`FIG. 6 provides a generalized flow diagram of read
`
`
`processing function.
`a detailed flow diagram of
`7 provides
`FIG.
`
`
`
`
`
`
`
`
`
`
`
`
`
`FRMARRI step 128 of FIG. 6.
`8 provides
`a detailed flow diagram of
`FIG.
`
`
`
`
`
`
`
`FRMPIKR step 142 of FIG. 7.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. 9 provides
`a detailed flow diagram of 10
`
`
`
`
`
`
`RNGCI—IK step 148 of FIG. 7.
`
`
`
`
`
`
`
`
`FIG. 10 provides a detailed flow diagram of ACK-
`WIND step 184 of FIG. 9.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. 11 provides a detailed flow diagram of HART
`
`
`
`
`
`step 188 of FIG. 9.
`
`
`
`
`
`
`
`
`FIG. 12A and 12B provide a detailed flow diagram of
`
`
`
`
`
`
`
`ITSTATE step 154 of FIG. 7.
`
`
`
`
`
`
`
`
`FIG. 13 provides a generalized flow diagram of the
`
`
`
`
`
`
`
`write processing function in accordance with the pres-
`ent invention.
`
`
`
`
`
`
`
`
`
`
`FIG. 14 provides a detailed flow diagram if DO-
`HART step 268 of FIG. 13.
`
`
`
`
`
`
`
`
`
`
`
`
`
`15 provides a detailed flow 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