`
`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