`Miyazaki et al.
`
`I 1111111111111111 11111 IIIII IIIII IIIII IIIII IIIII IIIII IIIII IIIIII Ill lllll llll
`5,517,488
`May 14, 1996
`
`US005517488A
`[11] Patent Number:
`[ 45] Date of Patent:
`
`[54] METHOD OF LOAD DISTRIBUTION FOR
`MESSAGE PROCESSING IN HOST SYSTEM
`IN LOCAL AREA NETWORK
`
`[75]
`
`Inventors: Satoshi Miyazaki, Yamato; Kazuo
`Yagyu, Hiratsuka; Makoto Takahashi,
`Yokohama; Kazuo Orioka, Chigasaki,
`all of Japan
`
`[73] Assignee: Hitachi, Ltd., Tokyo, Japan
`
`[21] Appl. No.: 80,801
`
`[22] Filed:
`
`Jun. 21, 1993
`
`[30]
`
`Foreign Application Priority Data
`
`Jun. 23, 1992
`
`[JP]
`
`Japan .................................... 4-164544
`
`Int. Cl.6
`........................................................ H04J 3/14
`[51]
`[52] U.S. Cl . .......................... 370/16; 370/60.1; 370/85.1;
`370/94.1; 395/180; 395/181
`[58] Field of Search ............................... 370/16, 58.3, 60,
`370/60.1, 94.1, 85.1; 379/2; 371/8.1, 8.2,
`11.1, 11.2
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,016,244
`
`5/1991 Mussey, Jr. et al ...................... 370/16
`
`FOREIGN PATENT DOCUMENTS
`
`1-123545
`4-167841
`
`5/1989
`6/1992
`
`Japan .............................. H04L 11/00
`Japan ............................. H04L 12/40
`
`OTHER PUBLICATIONS
`
`Comer, Douglas E. Intemetworking with TCP/IP, vol. 1,
`Second Edition, Prentice-Hall, 1991, p. 63. (Japanese with
`English translation).
`
`Primary Examiner-Douglas W. Olms
`Assistant Examiner-Russell W. Blum
`Attorney, Agent, or Firm-Fay, Sharpe, Beall, Fagan, Min(cid:173)
`nich & McKee
`
`[57]
`
`ABSTRACT
`
`An LAN system provided with a host system connected to
`an LAN through a plurality of LAN adapters, and a plurality
`of terminal systems for communicating with the host system
`through the LAN. A plurality of logical addresses for the
`host system are set correspondingly to physical addresses of
`the LAN adapters. One of the logical addresses is selected
`arbitrarily as a key (common) logical address. When the host
`system is to send a message to one of the terminal systems,
`the host system sets the key logical address of the host
`system as a source logical address included in the message,
`selects one of the LAN adapters and sends the message to
`the LAN through the selected LAN adapter. When one of the
`terminal systems is to send a message to the host system, the
`terminal system sets the key logical address of the host
`system as a destination logical address included in the
`message, sets the physical address of the LAN adapter
`corresponding to the key logical address as a destination
`physical address included in the message and sends the
`message to the LAN.
`
`11 Claims, 9 Drawing Sheets
`
`HOST SYSTEM
`IOI
`(
`
`---~
`
`MEMORY
`
`PROCESSOR
`
`'
`
`l=_
`
`116
`
`121
`
`111
`
`112
`
`113
`
`TERMINAL SYSTEM
`102
`
`PROC(cid:173)
`ESSOR
`
`122
`
`LAN
`ADAPTER
`
`LAN
`ADAPTER
`
`LAN
`ADAPTER
`
`117
`
`118
`
`119
`
`LAN ADAPTER
`
`104LAN
`
`103
`
`TERMINAL
`124 SYSTEM
`
`130 NAME
`SERVER
`
`Page 1 of 17
`
`
`
`United States Patent [19J
`Miyazaki et al.
`
`I 1111111111111111 11111 IIIII IIIII IIIII IIIII IIIII IIIII IIIII IIIIII Ill lllll llll
`5,517,488
`May 14, 1996
`
`US005517488A
`[11] Patent Number:
`[ 45] Date of Patent:
`
`[54] METHOD OF LOAD DISTRIBUTION FOR
`MESSAGE PROCESSING IN HOST SYSTEM
`IN LOCAL AREA NETWORK
`
`[75]
`
`Inventors: Satoshi Miyazaki, Yamato; Kazuo
`Yagyu, Hiratsuka; Makoto Takahashi,
`Yokohama; Kazuo Orioka, Chigasaki,
`all of Japan
`
`[73] Assignee: Hitachi, Ltd., Tokyo, Japan
`
`[21] Appl. No.: 80,801
`
`[22] Filed:
`
`Jun. 21, 1993
`
`[30]
`
`Foreign Application Priority Data
`
`Jun. 23, 1992
`
`[JP]
`
`Japan .................................... 4-164544
`
`Int. Cl.6
`........................................................ H04J 3/14
`[51]
`[52] U.S. Cl . .......................... 370/16; 370/60.1; 370/85.1;
`370/94.1; 395/180; 395/181
`[58] Field of Search ............................... 370/16, 58.3, 60,
`370/60.1, 94.1, 85.1; 379/2; 371/8.1, 8.2,
`11.1, 11.2
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,016,244
`
`5/1991 Mussey, Jr. et al ...................... 370/16
`
`FOREIGN PATENT DOCUMENTS
`
`1-123545
`4-167841
`
`5/1989
`6/1992
`
`Japan .............................. H04L 11/00
`Japan ............................. H04L 12/40
`
`OTHER PUBLICATIONS
`
`Comer, Douglas E. Intemetworking with TCP/IP, vol. 1,
`Second Edition, Prentice-Hall, 1991, p. 63. (Japanese with
`English translation).
`
`Primary Examiner-Douglas W. Olms
`Assistant Examiner-Russell W. Blum
`Attorney, Agent, or Firm-Fay, Sharpe, Beall, Fagan, Min(cid:173)
`nich & McKee
`
`[57]
`
`ABSTRACT
`
`An LAN system provided with a host system connected to
`an LAN through a plurality of LAN adapters, and a plurality
`of terminal systems for communicating with the host system
`through the LAN. A plurality of logical addresses for the
`host system are set correspondingly to physical addresses of
`the LAN adapters. One of the logical addresses is selected
`arbitrarily as a key (common) logical address. When the host
`system is to send a message to one of the terminal systems,
`the host system sets the key logical address of the host
`system as a source logical address included in the message,
`selects one of the LAN adapters and sends the message to
`the LAN through the selected LAN adapter. When one of the
`terminal systems is to send a message to the host system, the
`terminal system sets the key logical address of the host
`system as a destination logical address included in the
`message, sets the physical address of the LAN adapter
`corresponding to the key logical address as a destination
`physical address included in the message and sends the
`message to the LAN.
`
`11 Claims, 9 Drawing Sheets
`
`HOST SYSTEM
`IOI
`(
`
`---~
`
`MEMORY
`
`PROCESSOR
`
`'
`
`l=_
`
`116
`
`121
`
`111
`
`112
`
`113
`
`TERMINAL SYSTEM
`102
`
`PROC(cid:173)
`ESSOR
`
`122
`
`LAN
`ADAPTER
`
`LAN
`ADAPTER
`
`LAN
`ADAPTER
`
`117
`
`118
`
`119
`
`LAN ADAPTER
`
`104LAN
`
`103
`
`TERMINAL
`124 SYSTEM
`
`130 NAME
`SERVER
`
`Page 1 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 1 of 9
`
`5,517,488
`
`r0 o--
`-
`
`2
`w
`1--
`~
`CJ)
`_J N
`~o---
`~
`a::
`w
`1--
`
`N
`N
`\
`(
`
`r0
`(\J
`I Q: Le
`Uo
`a.. f2
`-
`
`~CJ)
`
`-
`
`1--
`
`~
`0
`~
`w
`-
`N--- 2
`-
`
`_J
`
`<{~ - wW
`Zw -
`21-
`a:: Cl) W>-
`1-- Cl)
`
`a::
`2>
`<{O::
`z~
`l
`0
`~ r0 -
`
`\
`(
`
`a::
`w
`
`I-a.. --
`
`<{
`0
`<{
`z
`<{
`_J
`
`z
`<{
`_J
`f-.""" c:;j"
`0 -
`
`~----
`-
`
`(\J _ _,.
`-
`
`--....,..
`
`I
`
`I
`
`I
`
`(j) --
`t
`
`co --
`?
`
`f'--
`1
`
`a::
`w
`1--
`a..
`~§
`
`a::
`w
`I-
`zO..
`<{<{
`_Jo
`<{
`
`a::
`w
`1--
`za..
`<tc3
`
`_Jc::{
`
`-
`
`-
`
`<-0..,.
`-
`
`a::
`0
`CJ)
`
`Cl) w u
`0 a:: a..
`
`~o ·f-F
`
`w_--
`I(cid:173)
`C/)
`~
`I(cid:173)
`C/)
`0
`I
`
`-
`
`I
`
`N
`,Q
`0
`N
`N
`'-----
`
`I
`
`PROGRAM
`
`>-a::
`0
`2 w
`
`~
`
`~
`
`-
`
`-~
`
`Page 2 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 2 of 9
`
`5,517,488
`
`FIG. 2
`
`APPLICATION PROGRAM
`
`COMMUNICATION MANAGEMENT PROGRAM
`
`216
`)
`
`SCHED-
`ULER
`
`.---
`
`APPLICATION INTERFACE
`CONTROL PROGRAM
`
`TRANSPORT LAYER
`CONTROL PROGRAM
`
`NETWORK LAYER
`CONTROL PROGRAM
`
`,-.
`
`--
`
`......
`
`DATA LINK LAYER
`CONTROL PROGRAM
`
`..__
`
`LAN ADAPTER INTERFACE
`CONTROL PROGRAM
`
`115
`~
`I-----"' ....._ 201
`
`-r-- 202
`
`r-- V
`
`,-- 211
`
`V r--
`
`r--
`
`212
`
`-~
`
`i - - -
`
`213
`
`v .---
`
`214
`
`-
`
`-
`
`t---
`
`215
`
`Page 3 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 3 of 9
`
`5,517,488
`
`F I G. 3 HOST ADDRESS IN HOST SYSTEM
`
`LAN ADAPTER 111
`
`LAN ADAPTER 112
`
`LAN ADAPTER 113
`
`PHYSICAL
`ADDRESS
`a
`
`b
`
`C
`
`LOGICAL
`ADDRESS
`A
`
`8
`
`C
`
`FI G. 5 TERMINAL ADDRESS IN HOST SYSTEM
`
`TERMINAL
`SYSTEM 102
`TERMINAL
`SYSTEM 103
`
`PHYSICAL
`ADDRESS
`
`d
`
`e
`
`LOGICAL
`ADDRESS
`D
`
`E
`
`FI G. 6A TRANSMISSION DATA
`
`DESTINATION SOURCE
`PHYSICAL
`PHYSICA}
`ADORES
`ADDRESS
`d
`
`a
`
`DESTINATION SOURCE
`LOGICAL
`Lqg1cAL
`ADDRESS
`AD RESS
`A
`D
`
`DATA
`
`F I G. 6 B TRANSMISSION DATA
`
`DESTINATION
`PHYSICAL
`ADDRESS
`d
`
`SOURCE
`PHYSICAL
`ADDRESS
`a
`
`DEST! NATION
`LOGICAL
`ADDRESS
`D
`
`SOURCE
`LOGICAL
`ADDRESS
`A
`
`DATA
`
`FIG. 8 TABLE FOR TERMINAL SYSTEM 102
`
`HOST S'l'SlEM
`TERMINAL
`SYSTEM 103
`
`PHYSICAL
`ADDRESS
`a
`
`e
`
`LOGICAL
`ADDRESS
`A
`
`E
`
`Page 4 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 4 of 9
`
`5,517,488
`
`FIG. 4
`DATA TRANSMISSION PROCESSING IN HOST SYSTEM
`
`401
`
`RECEIVE DATA TRANS(cid:173)
`MISSION REQUEST
`FROM THE APPLICA(cid:173)
`TION PROGRAM
`
`OBTAIN THE DESTINATION PHYSICAL 404
`ADDRESS CORRESPONDING 10 THE
`DESTINATION LOGICAL ADDRESS BY
`USING THE ADDRESS RESOLUTION
`PROTOCOL
`
`403
`
`~flONMEDBINATSION 405 DORBT.EASSIN CTORRHE ESPHYptJ.yANGL AD-
`FEGTHISTEER
`10
`O 1,-..
`PHY ICAL
`VI "DI
`8
`ADDRESS AND THE CORRE-
`THE LOGICAL ADDRESS OF
`SPONDING LOGICAL AD-
`THE DESTINATION FROM
`DRESS INTO THE TERMINAL
`THE TERMINAL SYSTEM
`SYSTEM ADDRESS ALLOCA-
`ADDRESS ALLOCATION
`TION TABLE
`
`OR
`
`TABLE ---------
`
`406
`
`SELECT LAN ADAPTER
`(PROCESSING OF FIG. 7)
`
`407
`
`TRANSMIT THE DATA IN
`WHICH THE DESTINATION
`LOGICAL AND PHYSICAL AD(cid:173)
`DRESS AND THE SOURCE
`LOGICAL AND PHYSICAL
`ADDRESSES ARE SET
`
`END
`
`Page 5 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 5 of 9
`
`5,517,488
`
`Fl G. 7
`
`START
`
`300
`
`YES
`
`302
`
`SET THE KEY LOGICAL
`ADDRESS AS THE SOURCE
`LOG I CAL ADDRESS
`
`NO
`
`YES
`
`NO
`
`304
`
`SELECT AN LAN ADAPTER
`CORRESPONDING TO THE
`SOURCE LOGICAL
`ADDRESS
`
`305
`
`SELECT A SMALL LOADED
`LAN ~PTER
`
`306
`
`END
`
`Page 6 of 17
`
`
`
`U.S. Patent
`
`Sheet 6 of 9
`May 14, 1996
`Fl G. 9
`DATA TRANSMISSION PROCESSING IN TERMINAL SYSTEM (T-H)
`
`5,517,488
`
`RECEIVE A 04TA TRANS
`MISSION REQUEST
`FROM THE APPLICA(cid:173)
`TION PROGRAM
`
`901
`
`IS THE
`ANY' LOGICAL ADDR ss~
`<OF lliE DESTINATION REG- >--Y_E_S ___ ____,
`ISTERED IN THE HOST
`SYSTEM ADDRESS ALLO-
`CATI N TABLE ?
`
`904
`
`OBTAIN THE DESTINATION PHYSICAL
`ADDRESS CORRESPONDING TO THE
`DESTINATION LOGICAL ADDRESS,
`BY US ING THE ADDRESS
`RESOLUTION PROTOCOL
`
`903
`
`905 REGISTER A COMBINATION
`OF THE OBTAINED PHYSICAL
`ADDRESS AND THE
`CORRESPONDING LOGICAL
`ADDRESS INTO THE
`TERMINAL SYSTEM
`ADDRESS ALLOCATION TABLE
`
`OBTAIN THE PHYSICAL AD(cid:173)
`DRESS CORRESPONDING 10
`THE LOGICAL AD01ESS OF
`THE DESTINATION FROM lHE
`HOST SYSTEM ADDRESS
`ALLOCATION TABLE
`
`TRANSMIT THE 04TA IN
`WHICH THE DESTINATION
`LOGICAL AND PHYSICAL AD(cid:173)
`DRESSES AND THE SOURCE
`LOGICAL AND PHYSICAL
`ADDRESSES AF£ SET
`
`907
`
`END
`
`Page 7 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 7 of 9
`
`5,517,488
`
`FIG. I 0
`
`MEMORY
`115
`f
`,...._ ~ 1001
`
`-..,,..- 1002
`~- 1011
`--
`
`--
`
`.L - -
`
`1012
`
`APPLICATION PROGRAM
`
`COMMUNICATION MANAGEMENT
`PROGRAM
`
`tf'PLICATION INTERFACE
`- CONTROL PROGRAM
`
`'---
`
`LAN ADAPTER INTERFACE
`CONTROL PROGRAM
`
`1020
`~
`
`a:
`w
`...J
`:) -
`0
`w
`I
`(.)
`Cl)
`
`Page 8 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 8 of 9
`
`5,517,488
`
`FI G. 11
`
`DETECTION OF
`FAILURE OF
`LAN ADAPTER
`
`1101
`
`REMOVE THE ENTRY COR(cid:173)
`RESPONDING TO THE FAILED
`LAN ADAPTER FROM THE
`ADDRESS ALLOCATION
`TABLE (FIG. 3)
`
`1102
`
`AD(cid:173)
`DOES THE LOGIC
`DRESS CORRESPONDING
`<,TO THE FAILURE LAN
`ADAPTER COINCIDE WITH
`THE KEY LOGICAi:-, AD(cid:173)
`D SS ?.r
`
`1103
`
`NO
`
`1104
`
`1105
`
`RELATE THE KEY LOGICAL
`ADDRESS TO THE PHYSICAL
`ADDRESS OF ANITTHER
`LAN ADAPTER
`
`INFORM ALL THE TERMINAL
`SYSTEMS OF THE CHANGE
`IN RELATION OF THE
`PHYSICAL ADDRESS, BY
`USING THE ADDRESS
`RESOLUTION PROTOCOL
`
`END
`
`Page 9 of 17
`
`
`
`U.S. Patent
`
`May 14, 1996
`
`Sheet 9 of 9
`
`5,517,488
`
`FI G. 12
`
`DETECTION OF
`RECOVERY OF
`THE FAILURE
`LAN ADAPTER
`
`1201
`
`REGISTER THE PHYSICAL
`DRESS CORRESPONDING TO
`TI-IE LOGICAL ADDRESS OF
`THE RECOVERED LAN
`AC::\l\PTER INTO THE ADDRESS
`ALLOCATION TABLE (FIG. 3)
`
`1202
`
`1203
`
`DOES THE LOGICAL
`ADDRESS OF THE'---.._
`ECOVERED LAN ADAPr- ~N_O _______
`ER COINCIDE WITH lHE
`KEY LOGICAL AD(cid:173)
`?
`
`YES
`RETURN THE CURRENT
`PHYSICAL ADDRESS CORRE(cid:173)
`SPONDING TO THE KEY LOGI-
`CAL ADDRESS TO THE PHYS-
`ICAL ADDRESS OF THE
`RECOVERED LAN ADAPTER
`
`1204
`
`INFORM ALL THE TERMINAL 1205
`SYSTEMS OFTHE CHANGE
`IN RELATION OF THE
`PHYSICAL ADDRESS, BY
`USING THE ADDRESS
`RESOLUTION PROTOCOL
`
`END
`
`Page 10 of 17
`
`
`
`5,517,488
`
`1
`METHOD OF LOAD DISTRIBUTION FOR
`MESSAGE PROCESSING IN HOST SYSTEM
`IN LOCAL AREA NETWORK
`
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`The present invention relates to a method of load distri(cid:173)
`bution for message processing through a plurality of local
`area network adapters (hereinafter referred to as "LAN
`adapters") in a host system (hereinafter referred to as "server
`system") in a local area network system (hereinafter referred
`to as "LAN system") constituted by the host system (server
`system) and a plurality of terminal systems (hereinafter
`referred to as "client systems") connected to one and the
`same local area network (hereinafter referred to as "LAN")
`through the plurality of LAN adapters.
`2. Description of the Related Art
`With respect to addressing for a host system connected to
`one and the same LAN through a plurality of LAN adapters,
`methods are known heretofore as shown in the following
`three reference papers:
`(1) A method of setting a plurality of logical addresses for
`a host system correspondingly to physical addresses of
`LAN adapters as described in Douglas E. Comer,
`"lntemetworking with TCP/IP", Vol. 1, Second Edi(cid:173)
`tion, Prentice-Hall (1991), page 63 (reference paper
`(1)).
`(2) A method of giving one common logical address to a
`plurality of LAN adapters connected to corresponding
`hosts respectively to thereby use the hosts as main
`systems as described in JP-A 1-123545 (reference
`paper (2)). With respect to the common address C in the
`method, one LAN adapter and a host corresponding to
`the LAN adapter serve as a main system but another
`LAN adapter and a host corresponding to the LAN
`adapter serve as a main system in case of a failure.
`(3) A method used in an LAN system in which a plurality
`of LAN interfaces having peculiar allocated LAN
`addresses respectively are connected between an appa(cid:173)
`ratus and an LAN, the apparatus being provided with
`means for selecting the lightest loaded LAN interface
`as a destination for communication from the plurality
`of LAN interfaces when the plurality of LAN interfaces
`receive a broadcasting frame, as described in JP-A
`4-167841 (reference paper (3)).
`
`SUMMARY OF THE INVENTION
`
`The reference papers (1) and (2) have no consideration of
`load distribution for message handling in a host system.
`In the reference paper (1), terminal systems require select(cid:173)
`ing logical addresses to be used in a host system correspond(cid:173)
`ingly to LAN adapters for the purpose of performing load
`distribution for message handling in the host system. In this
`case, improvement of programs in the terminal systems, or
`the like, is however required so that load conditions of the
`LAN adapters being remote from the terminal systems can
`be known. Accordingly, it is difficult to select logical
`addresses of LAN adapters dynamically appropriately.
`Also in the reference paper (2), terminal systems require
`selecting physical addresses to be used in a host system
`correspondingly to LAN adapters for the purpose of per(cid:173)
`forming load distribution for message handling in the host
`
`5
`
`20
`
`30
`
`2
`system. Accordingly, there arises the same difficulty as that
`of the reference paper (1).
`In the reference paper (3), when one LAN interface is
`once selected as a destination in response to a broadcasting
`frame, communication is thereafter continued through the
`destination. Accordingly, if loads imposed upon LAN inter(cid:173)
`faces change, efficient load distribution cannot be per(cid:173)
`formed. For efficient load distribution, it may be thought of
`that a communication partner sends a broadcasting frame to
`10 LAN interfaces whenever a communication is made. In this
`case, it is however impossible to make communication
`efficient! y.
`Each of the reference papers (1) and (3) has no consid(cid:173)
`eration of measures to counter failures in LAN adapters and
`15 LAN interfaces.
`An object of the present invention is therefore to provide
`a method of load distribution for message processing in a
`host system ( or server system) to thereby overcome the
`defects in the above-mentioned conventional techniques.
`Another object of the present invention is to provide a
`method of load distribution for message processing in a host
`system (or server system), by which not only terminal
`systems (or client systems) can perform message transmis(cid:173)
`sion without consciousness of the existence of a plurality of
`25 LAN adapters for the host system (or server system) but the
`host system can perform message processing efficiently.
`A further object of the present invention is to provide a
`method ofload distribution for message processing in a host
`system (server system) to thereby facilitate management in
`terminal systems (or client systems) and the host system (or
`server system) at the time of occurrence of failure in an LAN
`adapter.
`To achieve the foregoing objects, in accordance with an
`35 aspect of the present invention, in an LAN system provided
`with a host system connected to an LAN through a plurality
`of LAN adapters, and a plurality of terminal systems for
`communicating with the host system through said LAN, a
`method of load distribution for message processing in the
`40 host system in the LAN system comprising the steps of: (a)
`setting a plurality of logical addresses for the host system
`corresponding to physical addresses of the LAN adapters
`and selecting arbitrary one of the logical addresses as a key
`(common) logical address; and (b) setting the key logical
`45 address of the host system as a source logical address
`included in a message, selecting one of the LAN adapters
`and sending the message to the LAN through the selected
`LAN adapter when the host system is to send the message
`to one of the plurality of terminal systems.
`Preferably the method of load distribution for message
`processing in the host system further includes the step of (c)
`setting the key logical address of the host system as a
`destination logical address included in a message, selecting
`a physical address of an LAN adapter corresponding to the
`55 key logical address as a destination physical address
`included in the message and sending the message to the
`LAN when one of the terminal systems is to send the
`message to the host system.
`The key logical address of the host system connected to
`the LAN through the plurality of LAN adapters is regarded
`as a logical address of the host system connected to the LAN
`through a single LAN adapter from each of the terminal
`systems. Because an LAN adapter corresponding to the key
`logical address is determined in one-to-one correspondence,
`the physical address of the host system is regarded as one
`physical address. Accordingly, it is unnecessary that the
`terminal systems perform special processing for load distri-
`
`50
`
`60
`
`65
`
`Page 11 of 17
`
`
`
`5,517,488
`
`4
`adapter corresponding to the key logical address. Accord(cid:173)
`ingly, management at the time of occurrence of failure is
`easy.
`As described above, in the present invention, a key logical
`address is set for a plurality of LAN adapters in a host
`system. Accordingly, terminal systems can transmit mes(cid:173)
`sages to the host system without consciousness of the
`existence of the plurality of LAN adapters. Further, the key
`logical address is used in the host system. Accordingly, load
`10 distribution for message processing is performed efficiently.
`Further, because the key logical address is set, commu(cid:173)
`nication can be continued by using another normal LAN
`adapter at the time of occurrence of failure in an LAN
`adapter. In this case, LAN adapter switching and manage(cid:173)
`ment can be performed easily in the terminal systems and the
`host system.
`
`25
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is a block diagram of an LAN system using a
`method of load distribution for message processing in a host
`system in an LAN system according to an embodiment of
`the present invention;
`FIG. 2 is a block diagram showing the software configu-
`ration of the host system depicted in FIG. 1;
`FIG. 3 is a view showing a table of physical and logical
`addresses of the host system, provided in the host system
`depicted in FIG. 1;
`FIG. 4 is a flow chart for explaining data transmission
`processing in the host system depicted in FIG. 1;
`FIG. 5 is a view showing a table of physical and logical
`addresses of terminal systems, provided in the host system
`depicted in FIG. 1;
`FIGS. 6A and 6B are views showing transmission and
`reception data between the host system and the terminal
`systems;
`FIG. 7 is a flow chart showing LAN adapter selection
`processing in the communication management program in
`the host system, depicted in FIG. 2;
`FIG. 8 is a view showing a table of physical and logical
`addresses of the host system, provided in each of the
`terminal systems depicted in FIG. 1;
`FIG. 9 is a flow chart for explaining data transmission
`processing in each of the terminal systems depicted in FIG.
`1;
`
`3
`bution upon the host system connected to the LAN through
`the plurality of LAN adapters.
`In the host system, reception messages are concentrated
`into an LAN adapter corresponding to the key logical
`address. Load distribution for message processing however 5
`can be achieved by distributing transmission data to a
`plurality of LAN adapters because the host system generally
`has a larger transmission data capacity than its reception data
`capacity.
`In the case where each of the LAN adapters performs
`protocol processing inclusive of a transport layer, the step
`(b) is carried out as follows. When the communication mode
`of the message is connection-oriented, the LAN adapter
`corresponding to the key logical address is selected as the
`selected LAN adapter so that the message is transmitted to 15
`the LAN through the selected LAN adapter. When the
`communication mode of the message is connectionless, the
`smallest loaded LAN adapter is selected as the selected LAN
`adapter from the plurality of LAN adapters so that the
`message is transmitted to the LAN through the selected 20
`LAN adapter.
`As an example of the present invention, in the step (b ), the
`smallest loaded LAN adapter is selected as the selected LAN
`adapter from the plurality of LAN adapters.
`As an example of selection of the smallest loaded LAN
`adapter, the host system examines the wait-before-transmit
`message capacities of the LAN adapters so that an LAN
`adapter having a wait-before-transmit message capacity not
`larger than a predetermined value can be selected as the 30
`selected LAN adapter when the LAN adapter having the
`wait-before-transmit message capacity not larger than the
`predetermined value exists, and an LAN adapter having the
`smallest wait-before-transmit message capacity can be
`selected as the selected LAN adapter when the LAN adapter 35
`having the wait-before-transmit message capacity not larger
`than the predetermined value does not exist.
`As an example of the present invention, in the step (b),
`instead of selection of the smallest loaded LAN adapter, one
`of the LAN adapters is selected as the selected LAN adapter 40
`in predetermined order whenever at least one message is
`transmitted.
`As described above, as an example of the present inven(cid:173)
`tion, the smallest loaded LAN adapter is selected for data
`transmission from the host system under the consideration of 45
`respective loads on the LAN adapters so that data is trans(cid:173)
`mitted through the selected LAN adapter. Accordingly, load
`distribution is performed efficiently.
`Further, as an example of the present invention, one of the
`LAN adapters is selected in predetermined order in accor(cid:173)
`dance with data transmission from the host system so that
`data is transmitted through the selected LAN adapter.
`Accordingly, load distribution is performed efficiently.
`As an example of the present invention, the key logical
`address is related to another normal LAN adapter when any
`failure occurs in the LAN adapter corresponding to the key
`logical address, and the host system does not select a failed
`LAN adapter at the time of transmitting of message when
`any failure occurs in the LAN adapter not corresponding to
`the key logical address.
`In this case, as a further example of the present invention,
`the plurality of terminal systems are informed that the key
`logical address is related to the other normal LAN adapter.
`As described above, the key logical address can be set so 65
`that the key logical address is related to another normal LAN
`adapter even in the case where any failure occurs in an LAN
`
`FIG. 10 is a block diagram showing the software con(cid:173)
`figuration of the host system depicted in FIG. 1, in the case
`50 where each of the LAN adapters performs transport layer
`control;
`FIG. 11 is a flow chart showing processing in the host
`system at the time of detection of failure in an LAN adapter;
`and
`FIG. 12 is a flow chart showing processing in the host
`system at the time of recovery of an LAN adapter from
`failure.
`
`55
`
`60
`
`DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`Embodiments of the present invention will be described
`below with reference to the accompanying drawings.
`FIG. 1 is a block diagram showing an example of the
`configuration of an LAN system according to an embodi(cid:173)
`ment of the present invention. In FIG. 1, the LAN system has
`a host system 101 such as a file server, etc., an LAN 104 in
`
`Page 12 of 17
`
`
`
`5,517,488
`
`15
`
`5
`accordance with IEEE 802.3 or the like, LAN adapters 111
`to 113 for connecting the host system 101 to the LAN 104
`correspondingly to LAN interface lines, terminal systems
`102 and 103 such as workstations, personal computers,
`client systems, etc. connected to the LAN 104, and a name 5
`server 130 connected to the LAN 104. The host system 101
`has a memory 115 for storing programs and data, a processor
`114 for executing a program stored in the memory 115, and
`a bus 116 for connecting the LAN adapters 111 to 113, the
`memory 115 and the processor 114. The terminal system 102
`has a memory 121, a processor 122, an LAN adapter 124, lO
`and a bus 123. The other terminal system 103 has the same
`configuration as that of the terminal system 102. The respec(cid:173)
`tive LAN adapters of the terminal systems may be provided
`in the outside of the terminal systems. The host system 101
`may include the respective LAN adapters 111 to 113.
`Although FIG. 1 shows as an example the case where the
`number of LAN adapters and the number of terminal sys(cid:173)
`tems are three and two respectively, there is no limitation
`upon the numbers from the point of view of the principle of
`the present invention. Further, this embodiment can be 20
`applied to an LAN system having a plurality of host systems.
`This embodiment relates to the selection of the LAN
`adapters 111 to 113 by the host system 101 in the case where
`the host system 101 is to communicate with the terminal 25
`systems 102 and 103 through the LAN adapters 111 to 113
`and the LAN 104. That is, this embodiment relates to a
`method in which an LAN adapter to be selected from the
`LAN adapters 111 to 113 is determined by not the terminal
`systems 102 and 103 but the host system 101 at the time of 30
`transmission of data to the terminal systems to thereby
`facilitate distribution of load to the LAN adapters.
`FIG. 2 is a block diagram showing an example of the
`software configuration stored in the memory 115 of the host
`system 101. The software configuration has an application 35
`program 201 for making the host system provide service to
`the terminal systems, and a communication management
`program 202 for processing a common communication
`protocol necessary for performing communication in the
`LAN system. As shown in FIG. 2, the communication 40
`management program 202 is constituted by an application
`interface control program 211 for controlling interfaces
`between the application program 201 and the communica(cid:173)
`tion management program 202, a transport layer control
`program 212 for processing a transport layer protocol in 45
`communication protocol layers, a network layer control
`program 213 for processing a network layer protocol in the
`communication protocol layers, a data link layer control
`program 214 for processing a data link layer protocol in the
`communication protocol layers, an LAN adapter interface 50
`control program 215 for controlling interfaces between the
`communication management program 202 and the LAN
`adapters 111 to 113, and a task scheduler 216 for managing
`the starting of the programs 211 to 215 and the like. Socket
`interface is known as an example of the application inter- 55
`face. TCP/IP is known as an example of the communication
`protocol. The details of these have been described, for
`example, in Douglas E. Comer, "Internetworking with TCP/
`IP", Vol. 1, Second Edition, Prentice-Hall (1991).
`For example, as shown in FIG. 3, logical addresses for the
`host system 101 are determined correspondingly to physical
`addresses of the LAN adapters 111 to 113. Physical
`addresses for the host system 101 are generally determined
`in accordance with the hardware of the LAN adapters 111 to
`113, so that the physical addresses are determined in accor(cid:173)
`dance with the address convention of the connected LAN. In
`this embodiment, a key ( common) logical address is selected
`
`6
`to be arbitrary one of logical addresses of the LAN adapters
`111 to 113, for example, logical address A corresponding to
`the LAN adapter 111.
`The operation of transmitting/receiving data between the
`host system and the terminal systems in this embodiment
`will be described below.
`The following description will be made upon the assump(cid:173)
`tion of a connectionless protocol.
`Communication protocols are generally classified into a
`connectionless type and a connection-oriented type. In the
`connectionless type protocol, there is no guarantee that a
`plurality of messages are transmitted/received between fixed
`systems. On the contrary, in the connection-oriented type
`protocol, a control message is transmitted/received to
`thereby give guarantee that a plurality of messages are
`transmitted/received between fixed systems. Accordingly, in
`the case where processing is made in accordance with such
`a connection-oriented type protocol, transmission/reception
`messages must be processed by one and the same apparatus.
`That is, in the case where a message is to be transmitted
`in response to a message received by a certain apparatus,
`transmission processing must be performed by the appara(cid:173)
`tus.
`Although this embodiment shows the case where the
`present invention is applied to the connectionless type
`protocol, it is a matter of course that the invention can be
`applied to the connection-oriented type protocol.
`Referring first to FIGS. 4 and 7, the case of transmission
`of data from the host system 101 to another system such as
`for example the terminal system 102 which is a destination
`system will be described on the basis of flow charts of FIGS.
`4 and 7. FIG. 4 is a flow chart for explaining data transmis(cid:173)
`sion processing in the host system depicted in FIG. 1. FIG.
`7 is a flow chart showing LAN adapter selection processing
`in the communication management program in the host
`system, depicted in FIG. 2.
`The operation of FIG. 4 is carried out in the communi(cid:173)
`cation management program 202. In FIG. 4, first, the appli(cid:173)
`cation program 201 of the host system designates the
`physical address D of the terminal system 102 and sends a
`request to the communication management program to
`transmit data from the host system to the terminal system
`102, so that the communication management program
`receives the data transmission request (step 401). Here,
`physical addresses of data destinations can be known by
`predetermination, inquiry to the name server, or the like. The
`term "predetermination" means that respective logical
`addresses of the terminal systems are set, for example, by a
`user through an input device (not shown) before the trans(cid:173)
`mitting operation .. Alternatively, logical addresses corre-
`sponding to names of the terminal systems can be known by
`inquiry to the name server 130. The name server 130 may be
`realized within the host system 101.
`Then, a judgment is made as to whether or not the logical
`address of the destination (terminal system 102) has been
`registered in the address allocation table of the terminal
`system shown in FIG. 5 (step 402).
`The table of FIG. 5 is stored in the memory 115. In the
`6