`Daly et al.
`
`111111111111111111111111111
`
`US005748896A
`[111 Patent Number:
`[451 Date of Patent:
`
`5,748,896
`May S, 1998
`
`[54] REMOTE NETWORK ADMINISTRATION
`METHODS AND APPARATUS
`
`[75]
`
`Inventors: Una T. Daly, Saratoga; Ymg-Kuei Ann
`Huang, Cupertino; Robert D. Parker,
`San Jose; Mary E. Firenze, Los Altos,
`all of Calif.
`
`[73] Assignee: Apple Computer, Inc., Cupertino,
`Calif.
`
`[21] Appl. No.: 605,325
`Dec. 27, 1995
`[22] Filed:
`Int. Cl.6
`...................................................... G06F 15/00
`[51]
`[52] U.S. Cl . ...................... 395/200.53; 395/683; 395n12
`[58] Field of Search .............................. 395/200.1, 200.2,
`395/200.09. 200.11, 200.12, 683. 284
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,949,248
`5,276,789
`5,287,343
`5,287,461
`5,341,477
`5,426,421
`5,491,791
`5,515,508
`
`8/1990 Caro ........................................ 3641200
`1/1994 Besaw et al ............................ 395/140
`2/1994 Nakamura et al ..................... 370/13.1
`2/1994 Moore ..................................... 395!275
`8/1994 Pitkin et al ........................ 395/200.01
`6/1995 G.ray ................................... 395/182.03
`2/1996 Glowny et al ..................... 395/183.13
`5/1996 Pettus et al ........................ 395/200.01
`
`5,586,255 12/1996 Tanaka et al .•.•••••.••.••.•••..•...••. 395/800
`5,600,797
`2/1997 Marshall ............................ 395/200.11
`5,619,656
`4/1997 Graf ................................... 395/200.11
`
`Primary Examiner-William M. Treat
`Assistant Examiner-Saleh Najjar
`Attome)I Agent, or Firm-Hickman Beyer & Weaver
`
`[57]
`
`ABSTRACT
`
`A method for managing network services on the plurality of
`network servers in a computer network. The method
`includes the step of providing at least one service component
`in a component repository. The service component corre(cid:173)
`sponds to one of the network services. There is also included
`the step of providing a server manager component, which
`communicates with the component repository to ascertain
`the presence of the service component Additionally, the
`method includes the step of executing a service object
`associated with the service component. When executed, the
`service object communicates with the plurality of network
`servers to obtain network service instantiation data relating
`to instantiations of the one of the network services on the
`plurality of network servers. The method also includes the
`step of passing the network service instantiation data to a
`server manager window component for displaying a status
`of the instantiations responsive to the network service
`instantiation data.
`
`20 Claims, 17 Dnwing Sheets
`
`104
`
`IOS
`SERVICIJ MANAGER WINDOW
`r-;:::?ll 2~~
`!DEANZA!r;;::::::?I
`ZONES ~ ~ ~
`ADMIN1SlcR ADD TO
`USER
`PREFERRED LIST
`SERVERS
`LIST
`
`SERVERNAME
`
`STATUS
`RUNNING
`
`TYPE
`FILE SERVICE
`
`NOT RUNNING PRINT SERVICE
`
`RUNNING
`
`FILE SERVICE
`
`RUNNING
`
`XYZ SERVICE
`
`. . .
`• .
`§ § § §
`
`NEW
`USER
`
`NEW
`GROUP
`
`OPEN
`
`DUPLICATE
`USER
`
`120
`
`NAME
`JOHN LEWIS
`
`MARKETING
`
`RICH BURNS
`
`.
`.
`.
`
`TYPE
`USER
`
`GROUP
`
`USER
`•
`•
`•
`
`UG COMPONENT
`•USER CONTAINER COMPONENT
`USER A 1TRIDUTn COMPONENT
`XYZ USER A TIRJBUTE COMPONENT
`•GROUP CONTAINIJR COMPONENT
`GROUP ATTRIBUTE COMPONENT
`XYZ GROUP ATTRIBUTE COMPONE
`
`FILE SERVICE ADMJNISTRA TION COMP01'ENT
`ACCESS CONTROL COMPONENT
`ACTIVITY MONJTOR COMPONENT
`LOG FILE COMPONENT
`
`140
`
`{
`
`OTHERS COMPONENT
`
`• • •
`• • •
`. • .
`
`XYZ SERVICE ADMINISTRATION COMPONENT
`XYZ SERVICE SUBCOMPONENT
`
`I'.11..E SERVICE GET INFO COMPONENT
`
`XYZ SERVICE GET INFO COMPONENT
`
`Ex.1026
`APPLE INC. / Page 1 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 1 of 17
`
`5,748,896
`
`s
`
`16
`10
`
`• • •
`
`14
`
`C
`
`s
`
`14
`
`C
`
`12
`
`C
`
`14
`
`FIG. 1
`
`Ex.1026
`APPLE INC. / Page 2 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 2 of 17
`
`5,748,896
`
`10
`,.I
`
`s
`
`• • •
`
`AC
`
`1
`8
`u
`8
`
`rx J
`
`10
`,.I
`
`s
`
`14
`,.I
`
`C
`
`__,,,
`12
`
`14
`,J
`
`C
`
`FIG. 2
`
`Ex.1026
`APPLE INC. / Page 3 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 3 of 17
`
`5,748,896
`
`38
`
`0
`
`REMOTE
`SERVICE
`AGEMENT
`APPLICATION
`
`SERVER
`
`SERVICE
`
`STATUS
`
`AB
`
`AB
`
`CD
`
`EF
`
`• • •
`
`
`RUNNING
`
`FILE SERVICE
`
`IDLE
`
`
`IDLE
`
`
`RUNNING
`
`• • •
`
`• • •
`
`FIG. 3
`
`#OF USERS
`ONLINE
`
`24
`
`DISKSPACE
`(ALLOTED/USED) 4M12-6M
`
`Ex.1026
`APPLE INC. / Page 4 of 31
`
`
`
`~
`\C
`QC
`~ QC
`01
`
`~
`
`~
`
`-..1
`i,.(cid:173)
`~
`
`r .s:a.
`
`i,.-i
`
`,,.'-"
`~
`~
`
`~ = I
`
`•
`~ • r:J'j
`
`62
`
`f\..
`
`DISPLAY SCREEN
`
`'64
`
`PUT DEVICE
`
`'60
`
`STORAGE
`
`r----t MASS
`68 .l_
`
`1/0
`
`52
`
`PROCESSOR
`
`MICRO-
`
`FIG. 4
`
`60
`
`CLOCK
`
`r
`
`54
`
`\ 58
`
`RAM
`
`EXPANSION
`
`56
`~
`
`RAM
`
`I
`
`I
`
`i.---66
`
`EXP ANSI ON BUS
`
`\ 72
`Data Bus
`76
`Address Bus 7 4
`\
`Control Bus
`
`\
`
`5\
`
`Ex.1026
`APPLE INC. / Page 5 of 31
`
`
`
`0'\
`\C
`00
`,...
`00
`~
`.......
`,...
`01
`
`"""'
`-.:a
`~
`
`r UI
`
`"""' !
`f
`
`"'
`UI
`
`~ a
`~ • rJ'J. • ;p
`
`NOT RUNNING PRINT SERVICE
`
`FILE SERVICE
`
`TYPE
`
`RUNNING
`STATUS
`
`SERVER NAME I
`
`GH
`
`AB
`
`ZONES ~ ~ ~
`IDEANZAI~ ~•2~~
`
`LIST
`SERVERS
`PREFERRED LIST
`USER
`
`ADMINISTER ADD TO
`
`SERVICE MANAGER WINDOW
`
`108
`
`104
`
`•
`•
`•
`USER
`
`GROUP
`
`USER
`TYPE
`
`I
`
`RICH BURNS
`
`•
`•
`•
`
`MARKETING
`
`JOHNLEWIS
`
`NAME
`
`\
`
`§§§§
`
`USER
`
`OPEN DUPLICATE
`
`GROUP
`
`NEW
`
`USER
`NEW
`
`XYZSERVICE
`
`•
`•
`•
`
`RUNNING
`
`•
`•
`•
`
`•
`•
`•
`EF
`
`FILE SERVICE
`
`RUNNING
`
`110{ CD
`
`FIG. SA
`
`120
`
`COMPONENT
`
`UG
`
`OTHERS COMPONENT
`
`LOG FILE COMPONENT
`ACTIVITY MONITOR COMPONENT
`ACCESS CONTROL COMPONENT
`
`FILE SERVICE ADMINISTRATION COMPONENT
`
`XYZ GROUP ATTRIBUTE COMPONEN'
`GROUPATIRIBUIECOMPONENT
`
`•GROUP CONTAINER COMPONENT
`
`XYZ USER ATTRIBUTE COMPONENT
`USER ATTRIBUTE COMPONENT
`
`• USER CONTAINER COMPONENT
`
`UG COMPONENT
`
`• • •
`• • •
`
`XYZ SERVICE GET INFO COMPONENT
`
`FILE SERVICE GET INFO COMPONENT
`
`• • •
`
`XYZ SERVICE SUBCOMPONENT
`
`XYZ SERVICE ADMINISTRATION COMPONENT
`
`I. \ J
`
`SERVERS
`
`•
`
`102
`
`TO NETWORK
`
`E-MAIL SERVICE COMPONENT
`PRINT SERVICE COMPONENT
`FILE SERVICE COMPONENT
`
`XYZ= SERVICE COMPONENT
`
`• • •
`
`140
`
`122
`
`103
`
`Ex.1026
`APPLE INC. / Page 6 of 31
`
`
`
`~
`'!.,I
`tll
`
`"' Qe "'
`
`~ ...:a
`~
`
`r 0'\
`
`~ !
`i
`
`_.U'I
`
`~
`
`~ a
`• ;p
`0 • 00.
`
`FIG. 58-J
`
`c:>l'cJ
`0
`
`2000K/1,064K
`No Quota
`No Quota
`2000K/ 1,064K
`2000K/1,040K
`No Quota
`1000 MB
`
`Total/Avail
`
`List
`User
`
`~ Change A II
`
`Enclosed
`
`~ Same as
`
`SimpleText text do ... No Quota
`application program No Quota
`Fo Ider
`No Quota
`SimpleText text do ... No Quota
`application program No Quota
`Folder
`F o Ider
`Folder
`Volume
`Volume
`Volume
`Disk
`Kind
`Enclosing
`
`od"
`· ..
`
`~:
`
`~After Dark 3.0 Master
`GzJ for Group Administrators
`[j Double-CI ick Me To Ins to..
`i ~Double-Click Me To Install
`
`Cl Net Install Pointers
`
`V
`
`L ..... 9IAfter Dork 3.0 I
`~ ....... c:J 4-D Runtime 3.2 (US Only)
`!·········l::J 4-D Runtime 3.2 (Intl)
`
`v
`t>
`t>
`v ~ Moc Site-Licensed SW
`[> ~ Moc SW (N-2)
`Q Moc ~ (A-L)
`t>
`v c:, The Ouija Board
`
`Privileges
`Privileges:
`Set Access
`
`233----§
`
`Name
`
`View As:1 Matt Breedan v I
`
`·208
`
`Others
`
`~Activity Monito~(~ Log File
`
`~ Access Contra I
`
`200
`
`206
`
`App leShare Fi le Service: ABS Times
`-204
`
`~□
`
`202
`
`Ex.1026
`APPLE INC. / Page 7 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 7 of 17
`
`5,748,896
`
`0
`
`~
`~
`.
`~ l(
`
`I
`fr □
`::E 1-
`0 z ow
`~z
`en
`
`I
`~(..)
`
`~I-oz
`(DW
`:::> z:
`en
`
`d,
`a.. (D
`:::i:
`01-uz
`(D w
`:::> z
`(/)
`
`I
`0 a..<
`::E
`Q i (cid:173)u z:
`(DW
`:::> z:
`en
`
`~ ('\j
`
`z
`0
`H
`I-< c::::
`I-en
`H z
`H
`:::i:
`Cl <
`w
`u
`
`H > c:::: w
`en
`~ N v
`C\j X
`
`□ 111111
`
`B:l C\j
`
`Ex.1026
`APPLE INC. / Page 8 of 31
`
`
`
`~
`00
`'Ji ....... t 'Ji
`
`01
`
`""""
`--.I
`s,
`a.
`ga
`
`QC
`
`"""" !
`i
`
`,.tit
`
`I
`~
`0 • 00. •
`
`App leShare 11 =□ User List: The Magic 8 Ball · 0§:
`,sq
`
`{i._~v
`
`Name
`467 members, 37 groups
`Open
`
`New User New Group
`
`[Q] ~ [i] .
`
`Owner Read &: Write Read Only DropBox
`
`Access Pr iv i leg es:
`~ Make this folder a shared volume
`
`The Magic 8 Ball: After Dark 3.0
`
`I
`
`[b bml Interface Gr°" Group
`6,
`~ ~ FutureShare Team Group
`8' All Registered users Group
`d' John Mee lusky Administrato
`6:J Victor Kuriokis Administrato
`~ ~ ~ ~ 0, Mike Ga I lagher Administrato ---
`d' Ross Eltherington Adm in is trato -
`Adm in istrato TI
`-® Set access for the following users and groups as 6' Greg Burns
`O Same as currently enclosing fo Ider
`Kind
`O None
`
`lo 'rJ
`0
`
`..__
`
`FIG. 58-3
`
`I
`
`fo
`
`D Make all currently enclosed folders like this one
`D Can• t move, rename, de le te
`
`Guest Users
`
`~6 ~ Guest
`
`~ Liz Sanders User
`~ Scott Potter User
`CJ Peggy Meredith User
`6, Cl I Fide I io K jong I User
`6, ~ Matt Breoden User
`
`d' Greg Burnhart 1.ct i ••••••••.••••••....•.••... i
`q, G igont ic group
`! .... ! r-························i
`CJ Barry Smithe rs
`Cl John McClusky
`Cl Vicki Lewis
`~ Guest
`Users/Groups
`
`Ex.1026
`APPLE INC. / Page 9 of 31
`
`
`
`~
`\C
`QC
`tt
`._.
`'!..I
`Ol
`
`~ a
`
`-.;a
`I-',
`~
`\0
`
`I-', J
`i
`
`"'UI
`
`~ • rJ'J. • I
`
`FIG. 5C
`
`···············------
`
`············...
`
`-----.... · .. ······················-·····-··············-·························..............
`
`Password: ( **********
`
`------·-····· .. ·············--------
`
`1202
`
`v I
`
`User: Matthew Ho I loway
`
`Name: John Lewis
`
`~ I User Attributes
`
`□
`
`. .......................... .
`
`~ Save ~
`
`)
`
`( Revert
`
`______ .............................................................................................
`
`.. ........................................................................... .
`
`-----·-----·········· .. ·······-···········..
`
`D Program linking
`D Require new password on next login
`D Disable login after I 3/22/96 I (gJ
`~ A I low user to change password
`IZ] A I low user to log in
`D A I low user to Administer the server
`-----·····················-···············-····-------
`
`Ex.1026
`APPLE INC. / Page 10 of 31
`
`
`
`'I.
`~ .....:a t ~ 00
`
`01
`
`a, ,_.
`~ a ,_.
`
`Q
`
`...:a
`
`!
`,_.
`JI'
`~
`~
`
`..... a
`• 00 • ;p
`
`Cj
`
`
` ~
`
`-0
`
`{} -
`
`i
`
`FIG. 5D
`
`le:> 'cJ
`0
`
`User
`User
`
`.. ............... :
`····:
`
`Lti L. .......
`
`Cl Liz Sanders
`Cl !Scott Potter I
`Cl Peggy .,
`~ John Mc
`Cl Vicki Le
`~ Fidelio ~
`~ Human l
`~ Mike G<J
`~ Future~ ~ Mike Ga I lagher
`~ Ross Elt
`Cl V i ck i Lew is
`~ Greg Bu ~ Greg Burns
`~ Guest
`Group Member: 3
`8] All Reg
`Group Name:I untitled-1
`
`~I
`
`Group: untitled-1
`
`467i ····.······· ...... ····.··
`
`;;□
`
`Name =
`
`Duplicate User
`
`Open
`
`New User New Group
`
`=
`==o=
`
`-
`
`User List: The Magic 8 Ball
`
`e e
`~o;;
`
`~ ™ [j] . ~
`
`Ex.1026
`APPLE INC. / Page 11 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 11 of 17
`
`5,748,896
`
`500
`
`502
`
`503
`
`504
`
`506
`
`START
`
`OBTAIN
`ADDITIONAL
`NETWORK
`SERVICE
`COMPONENTS
`ANDBACKEND
`SERVICE
`MODULES
`
`INSTALL
`BACKEND
`SERVICE
`MODULE ON
`SELECTED
`SERVERS IN
`NETWORK
`
`INSTALL
`SERVICE
`COMPONENTS IN
`CENTRAL
`SERVICE FILE
`
`END
`
`FIG. 6A
`
`Ex.1026
`APPLE INC. / Page 12 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 12 of 17
`
`5,748,896
`
`600
`
`602
`
`604
`
`606
`
`608
`
`START
`
`ASCERTAIN
`AGENT ON
`NETWORK
`SERVER
`
`EXECUTE AGENT
`ON SERVER
`
`INSTALL
`BACKEND
`SERVICE ON
`SERVER
`
`END
`
`FIG. 6B
`
`Ex.1026
`APPLE INC. / Page 13 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 13 of 17
`
`5,748,896
`
`700
`
`702
`
`START
`
`ASCERTAIN
`SERVICE
`COMPONENTS IN
`CENTRAL
`COMPONENT
`REPOSITORY
`
`INVOKE SERVICE
`OBJECT
`COMPONENT
`
`RECEIVE DATA
`REGARDING
`INSTANTIATIONS
`OF THE SERVICE
`ASSOCIATED
`WITH THIS
`SERVICE OBJECT
`COMPONENT ON
`SERVERS IN
`NETWORK
`
`DISPLAY
`RECEIVED DATA
`IN SERVER
`MANAGER
`WINDOW
`
`706
`
`708
`
`710
`
`IDLE
`
`FIG. 7
`
`Ex.1026
`APPLE INC. / Page 14 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 14 of 17
`
`5,748,896
`
`START
`
`ASCERTAIN AGENTS
`FROM ALL SERVERS IN
`ZONFJNETWORK
`
`FOR EACH AGENT:
`ASCERTAIN WHETHER
`SERVICE ENTITY
`ASSOCIATED WITH THE
`SERVICE OBJECT IS
`INST AI .I ,I ,ED ON THE
`SERVER ASSOCIATED
`WITH THAT AGENT
`
`BUILD LIST OF SERVICE
`INSTANTIATIONS ON
`SERVERS IN
`ZONFJN~TWORKALONG
`WITH STATUSES
`
`PASS LIST TO SERVER
`MANAGER COMPONENT
`
`800
`
`802
`
`804
`
`806
`
`808
`
`810
`
`END
`
`FIG. 8
`
`Ex.1026
`APPLE INC. / Page 15 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 15 of 17
`
`5,748,896
`
`START
`
`ASCERTAIN SERVICE
`INSTANTIATIONS
`AS SOCIA TED WITH THIS
`SERVICE OBJECT ON ALL
`SERVERS IN
`ZONFJNETWORK
`
`ASCERTAIN STATUSES OF
`THE SERVICE
`INSTANTIATIONS
`ASCERTAINED IN BLOCK
`902
`
`BUILD LIST OF SERVICE
`INSTANTIATIONS ON
`SERVERS IN.
`ZONFJNETWORK ALONG
`WITH STATUSES
`
`PASS LIST TO SERVER
`MANAGER COMPONENT
`
`900
`
`902
`
`904
`
`906
`
`908
`
`910
`
`END
`
`FIG. 9
`
`Ex.1026
`APPLE INC. / Page 16 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 16 of 17
`
`5,748,896
`
`1000
`
`1002
`
`1004
`
`1006
`
`1008
`
`START
`
`SELECT SERVICE
`TOBE
`ADMINISTERED
`
`INDICATE DESIRE
`TO ADMINISTER
`THE SELECTED
`SERVICE
`
`INVOKE
`ASSOCIATED
`SERVICE
`ADMINISTRATION
`COMPONENT
`
`END
`
`FIG. 10
`
`Ex.1026
`APPLE INC. / Page 17 of 31
`
`
`
`U.S. Patent
`
`May 5, 1998
`
`Sheet 17 of 17
`
`5,748,896
`
`START
`
`RECEIVE DATA FROM
`SERVER MANAGER
`EXTENSION INCLUDING
`SERVER ADDRESS
`
`ESTABLISH A LOGICAL
`CONNECTION WITH
`SERVER THAT IS
`ASSOCIATED WITH
`RECEIVEDSERVER
`ADDRESS USING SERVICE
`ADMINISTRATION
`COMPONENT
`
`OOWNLOADDATA
`REGARDING FILE SYSTEM
`HIERARCHY FROM
`SERVER TO SERVICE
`ADMINISTRATION
`COMPONENT
`
`DISPLAY DATA IN
`APPROPRIATE
`SUBCOMPONENT OF THE
`SERVICE
`ADMINISTRATION
`COMPONENT WINDOW
`
`END
`
`1100
`
`1102
`
`1104
`
`1106
`
`1108
`
`1110
`
`FIG. 11
`
`Ex.1026
`APPLE INC. / Page 18 of 31
`
`
`
`5,748,896
`
`1
`REMOTE NETWORK ADMINISTRATION
`MEfflODS AND APPARATUS
`
`BACKGROUND OF THE INVENTION
`The present invention relates to methods and apparatus
`for managing network services in a computer network More
`specially, the invention relates to improved methods and
`apparatus for computer network management that are highly
`flexible and easily extensible.
`There are many types of computer networks in· existence.
`They are known by various names, including Local Area
`Network (LAN). Wide Area Network (WAN). Internet, and
`the like, and may be implemented in accordance with a
`variety of known architectures. FIG. 1 illustrates an example
`of a computer network architecture commonly known as a
`client-server architecture. In the client-server network of
`FIG. 1, there are a plurality of servers 10 coupled to a
`network bus 12. A server 10 is typically implemented by a
`computer or a workstation that is special purposed, e.g.,
`large disk space, high speed CPU, multiple LAN
`connections, etc.. while network bus 12 may be imple(cid:173)
`mented by any of the known network routing media such as
`coaxial cables, multi-strand cables. fiber optic cables, or
`even a wireless medium. A plurality of client tenninal 14,
`representing known computers or computing tenninals, are
`coupled to the same network bus 12, each of which is
`capable of communicating with any one of servers 10 or
`other terminals 14 using one of the known network protocols
`such as AppleTalkTM, TCP/IP, and the like.
`On servers 10, there are installed instantiations of network
`service applications, which are typically software
`implemented, for performing programmed tasks. Examples
`of such network service applications include print service,
`e-mail service, file service, and the like. A print service
`application manages the printer or print queue associated
`with a server, thereby enabling client terminals 14 to utilize
`that printer for their printing needs. An e-mail service
`application performs e-mail management and routing tasks,
`permitting client tenninals 14 to communicate among one
`another.
`A server 10 may be coupled to one of the network's
`central file storage facilities, e.g., one of the known persis(cid:173)
`tent memory devices (omitted in FIG. 1 for clarity) such as
`a hard disk, a RAID (redundant arrays of inexpensive disks)
`system, an optical storage device, and the like. A file service
`instantiation installed on that server 10 performs tasks
`related to file management for the benefit of users on client
`terminals 14. Such file service tasks include access privilege
`management, storage space management. and the like. The
`number and types of network services available to a network
`are practically limitless.
`As mentioned earlier, instantiations of these network
`services are installed on the network servers. A network
`service application, e.g., one of the aforementioned print
`service, file service, or e-mail service applications, may have
`many instantiations, either on the same server or on different
`servers. For example, most or all servers 10 in FIG. 1 may
`each have a print service instantiation installed to manage a
`network printer. Further, a given service instantiation on a
`server may service multiple client terminals simultaneously.
`Likewise, a client terminal may establish a logical session
`with multiple services simultaneously, either a single server
`or on multiple servers.
`The network service instantiations on servers 10 are
`managed by a network administrator, who is responsible for
`setting attributes and parameters for the services, maintain-
`
`10
`
`20
`
`2
`ing and upgrading the services, and the like. Typically. these
`administration tasks are performed via a network service
`management application. In a local administration model
`such as that shown in FIG. l, each server 10 has its own local
`5 network service management application 16. Through a
`local network service management application 16, the net(cid:173)
`work administrator may administer the network services
`installed on the server where the network service manage(cid:173)
`ment application is executing.
`By way of example, the network administrator may
`employ local network service management application 16 at
`one of servers 10 to interact with the file service instantia(cid:173)
`tions installed on that server in order to set individual users'
`access privileges for that server sharepoints, i.e., the
`15 volumes, folders, or files designated for sharing by the
`network users. The users' access privileges may then be
`saved to a database, to be consulted in the future by the file
`service to determine whether a particular user has sufficient
`access privileges to one of the server sharepoints.
`FIG. 2 illustrates the remote administration model for a
`computer network In FIG. 2. the same servers 10 and client
`terminals 14 are coupled to network bus 12 in a client-server
`architecture. However, the remote network service manage(cid:173)
`ment application 38 now resides at an administrative console
`25 (AC) 18. Administrative console 18 represents the computer
`terminal or workstation through which the network admin(cid:173)
`istrator may remotely manage the network service instan(cid:173)
`tiations installed on the servers 10 of FIG. 2. An adminis(cid:173)
`trative console 18 may have simultaneous logical sessions
`30 with more than one server 10 or more than one service
`instantiation. Through these logical sessions, the remote
`network service management application . may view the
`configuration data related to the service instantiations on the
`network servers and, if appropriate, administer the network
`35 services installed thereon. The ability to remotely manage
`network services on servers that may be geographically
`dispersed from a centrally located administrative console is
`particularly advantageous for large networks and therefore
`represents an improvement over the local administration
`40 model of FIG. 1.
`FIG. 3 illustrates an example of a prior art remote network
`service management application 38, such as that installed on
`administrative console 18 of FIG. 2, including a server
`manager window 40. Within server manager window 40, the
`45 network service instantiations, along with the corresponding
`network servers on which they execute and their statuses, are
`shown. In the example of FIG. 3, three e-mail service
`instantiations on servers AB, CD, and EF, as well as a file
`service instantiation, also on server AB, are shown.
`In the prior art. remote network service management
`application 38 is programmed to specifically communicate
`with and administer the network service instantiations on a
`specific network When the prior art remote network service
`management application 38 is executed at administrative
`ss console 18, it communicates with selected servers in the
`network to ascertain the statuses of the service instantiations
`installed thereon and report that data in window 40. To
`administer one of the services, the network administrator
`then selects one of the listed entries in window 40 for
`60 administration. If the e-mail service on server AB entry is
`selected for administration, for example, another window 42
`may be launched. Window 42 would contain information
`regarding the e-mail service on server AB such as the
`number of users on line, the amount of disk space being used
`65 by this e-mail service, number of mail messages stored per
`user, and the like. Through window 42. the network admin(cid:173)
`istrator may then administer the e-mail service by changing
`
`50
`
`Ex.1026
`APPLE INC. / Page 19 of 31
`
`
`
`5,748,896
`
`4
`servers. The first one of the network services represents a
`network service that corresponds to the first one of the
`service components.
`The apparatus further includes a server manager compo(cid:173)
`nent for receiving the network service instantiation data
`from the service object. Additionally, there is included a
`server manager window, representing the user interface
`component for the server manager component. The server
`manager window functions to display a status of the instan-
`tiations responsive to the network service instantiation data.
`In another embodiment, the invention relates to a method
`for managing network services on the plurality of network
`servers in a computer network. The method includes the step
`of providing at least one service component in a component
`repository. The service component corresponds to one of the
`network services. There is also included the step of provid-
`ing a server manager component, which communicates with
`the component repository to ascertain the presence of the
`service component.
`Additionally, the method includes the step of executing a
`service object associated with the service component. When
`executed. the service object communicates with the plurality
`of network servers to obtain network service instantiation
`data relating to instantiations of the one of the network
`25 services on the plurality of network servers. The method also
`includes the step of passing the network service instantiation
`data to a server manager window component for displaying
`a status of the instantiations responsive to the network
`service instantiation data.
`These and other advantages of the present invention will
`become apparent upon reading the following detailed
`descriptions and studying the various figures of the draw(cid:173)
`ings.
`
`5
`
`20
`
`3
`the attributes or parameters as desired. Other services may
`also be administered in a similar manner.
`Although the prior art approach to remote network admin(cid:173)
`istration represents an improvement over the local network
`administration model of FIG. 1, there are several disadvan-
`tages. By way of example, the prior art remote network
`service management application requires knowledge before(cid:173)
`hand of the network services on the network servers. In
`order to recognize and administer the services in a network.
`the prior art remote network service management applica- 10
`tion is programmed upon installation for specific types of
`services. and a specific network protocol and configuration,
`and other network-specific as well as service-specific
`details. Knowledge of these network-specific and service(cid:173)
`specific details is required by the prior art remote network 15
`service management application to allow it to communicate
`with a particular service instantiation on a particular network
`server.
`If it is desired. subsequent to the installation of the prior
`art remote network service management application, to
`extend the types of network services available by, for
`example, installing a new network service on one of the
`network servers, it is typically necessary to reprogram the
`prior art remote network service management application to
`allow it to recognize and support the newly installed service.
`The reprogramming is necessary because when the prior art
`remote network service management application was
`created, it is programmed only for the types of network
`services available to the network at the time of its creation.
`The prior art remote network service management applica- 30
`ti.on would not know how to obtain status data and admin(cid:173)
`ister some novel network services that may be developed
`subsequent to the creation and installation of the prior art
`remote network service management application. Without
`this specific knowledge, the prior art remote network service 35
`management application cannot communicate with the
`newly installed network service instantiations to obtain
`status data and to administer them.
`As can be appreciated, the need to reprogram the prior art 40
`remote network service management application to integrate
`new network services represents a burden for network
`administrators as well as for developers of the various
`network services.
`In view of the foregoing, what is desired is an improved
`remote network administration apparatus and methods that
`can flexibly facilitate the extension of the types of network
`services available on a computer network. The inventive
`methods and apparatus preferably permit the improved
`remote network administration apparatus and methods to
`recognize and support the addition, deletion and/or update of
`network services on the network server without requiring its
`re-implementation.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`Additional advantages of the invention will become
`apparent upon reading the following detailed description and
`drawings.
`FIG. 1 illustrates an example of a computer network
`architecture commonly known as a client-server
`architecture, including prior art local administration facili(cid:173)
`ties.
`FIG. 2 illustrates the prior art remote administration
`45 model for a computer network.
`FIG. 3 illustrates a prior art remote network service
`management application.
`FIG. 4 shows a general purpose computer system for
`implementing the servers, client terminals, and administra(cid:173)
`so tive console of the present invention.
`FIGS. SA and SB show, in accordance with one aspect of
`the present invention, the architecture of the improved
`remote network administration apparatus.
`FIG. SC illustrates an example of a user container com-
`ponent window.
`FIG. SD illustrates an example of a group container
`component window.
`FIG. 6A illustrates, in accordance with one embodiment
`60 of the present invention, the steps involved in installing a
`new service in a computer network that already has the core
`improved remote network administration apparatus
`installed.
`FIG. 6B illustrates, in one embodiment, the additional
`65 steps involved in handling the agents to accomplish the
`installation of the backend service entities on the network
`servers.
`
`55
`
`SUMMARY OF THE INVENTION
`The present invention relates, in one embodiment, to a
`remote network administration apparatus for managing net(cid:173)
`work services on a plurality of network servers in a com(cid:173)
`puter network. The apparatus includes a component
`repository, which contains service components. Each of the
`service components corresponds to one of the network
`services. The apparatus further includes at least one service
`object that is associated with a first one of the service
`components. The service object, when executed. communi(cid:173)
`cates with the plurality of network servers to obtain network
`service instantiation data relating to instantiations of a first
`one of the network services on the plurality of network
`
`Ex.1026
`APPLE INC. / Page 20 of 31
`
`
`
`5,748,896
`
`5
`FIG. 7 shows, in one embodiment, the steps involved in
`receiving data regarding instantiations of a service on the
`servers of the network.
`FIG. 8 shows, in accordance with one embodiment, the
`steps taken by the service object in interacting with the 5
`agents on the servers of the network to obtain the network
`service instantiation data.
`FIG. 9 describes the steps taken, in one embodiment, by
`the service object in obtaining the network service instan(cid:173)
`tiation data without agent's involvement.
`FIG. 10 shows from the server manager component
`perspective the steps involved, in one embodiment of the
`invention, in administering a network service from the
`server manager window.
`FIG. 11 illustrates, in one embodiment of the present
`invention, the steps involved when a service administration
`component is invoked through the server manager window
`component.
`
`6
`CPU 52 and such peripheral devices as display assembly 62,
`input device 64, and mass storage 268. Display assembly 62
`of computer system 50 is an output device for displaying
`objects and other visual representations of data.
`The screen for display assembly 62 can be a device that
`uses a cathode-ray tube (CRT), liquid crystal display (LCD),
`or the like, of the types commercially available from a
`variety of manufacturers. Input device 64 can be a keyboard,
`a mouse, a stylus working in cooperation with a position-
`IO sensing display, or the like. Alternatively. input device can
`be an embedded RF digitizer activated by an "active" RF
`stylus. Therefore, as used herein, the term input device will
`refer to any mechanism or device for entering data and/or
`pointing to a particular location on a screen of a computer
`15 display. The aforementioned input devices are available
`from a variety of vendors and are well known in the art.
`Some type of mass storage 268 is generally considered
`desirable. However, mass storage 268 can be eliminated by
`providing a sufficient amount of RAM 56 and expansion
`20 RAM 58 to store user application programs and data. In that
`DETAILED DESCRlPTION OF THE
`case, RAMs 56 and 58 can optionally be provided with a
`INVENITON
`As described above, FIG. 1 illustrates an example of a
`backup battery to prevent the loss of data even when
`computer system 50 is turned oJI. However, it is generally
`computer network architecture commonly known as a client-
`desirable to have some type of long term mass storage 268
`server architecture. FIG. 2 illustrates the prior art remote
`administration model for a computer network. FIG. 3 illus- 25 such as a commercially available hard disk drive, nonvola-
`tile memory such as flash memory, battery backed RAM,
`trates a prior art network service management application.
`PC-data cards, or the like.
`FIG. 4 shows a general purpose computer system for
`In operation, information is inputted into the computer
`implementing the servers, client terminals, and administra-
`tive console of the present invention. Typically, servers in a 30 system 50 by typing on a keyboard, manipulating a mouse
`or trackball, or "writing" on a tablet or on a position-sensing
`given network are provided with more computing, network
`screen (not shown) associated with display assembly 62.
`connectivity, and storage resources than either client termi-
`CPU 52 then processes the data under control of an oper-
`nals or administrative consoles although they may all be
`ating system and an application program stored in ROM 54
`implemented using similar computer systems as hardware
`costs decrease. Referring now to Pig. 4, a computer system 35 and/or RAM 56. CPU 52 then typically produces data which
`is outputted to the display assembly 62 to produce appro-
`50 in accordance with the present invention includes a
`priate images on its screen.
`central processing unit (CPU) 52, read only memory (ROM)
`Expansion bus 66 is coupled to data bus 72, control bus
`54, random access memory (RAM) 56, expansion RAM 58,
`74, and address bus 76. Expansion bus 66 provides extra
`input/output (J/0) circuitry 60, display assembly 62, input
`device 64, and expansion bus 66. Computer system 50 may 40 ports to couple devices such as network interface circuits,
`also optionally include a mass storage unit 268 such as a disk
`modems, display switches, microphones, speakers, etc. to
`CPU 52. On some computers, the network interface circuit
`drive unit or nonvolatile memory such as flash memory and
`may be built in instead of being provided through expansion
`a real-time clock 6