throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2003/0093509 A1
`(43) Pub. Date:
`May 15, 2003
`Li et al.
`
`US 20030093509A1
`
`(54) STORAGE AREA NETWORK METHODS
`AND APPARATUS WITH COORDINATED
`UPDATING OF TOPOLOGY
`REPRESENTATION
`(76) Inventors: Raymond M. Li, Oakland, CA (US);
`William Roy Yonker, Rochester, MN
`(US)
`Correspondence Address:
`NUTTER, McCLENNEN & FISH, LLP
`ATTORNEYS AT LAW
`ONE INTERNATIONAL PLACE
`BOSTON, MA 02110-2699 (US)
`(21) Appl. No.:
`09/972,542
`(22) Filed:
`Oct. 5, 2001
`
`Publication Classification
`
`(51) Int. Cl." ............................................. G06F 15/173
`(52) U.S. Cl. .............................................................. 709/223
`
`(57)
`
`ABSTRACT
`
`A digital data processing apparatus of the type that manages
`a SAN includes a first queue with entries representing tasks
`and a Second queue with entries representing data that
`correspond to those tasks. Data in the Second queue is
`grouped in accord with the task to which they correspond. A
`manager Service updates the internal representation of the
`SAN (e.g., the representation of the SAN topology) by
`executing the tasks in the first queue one at a time, for
`example, atomically using a single-threaded process.
`
`O N
`
`
`
`12a
`
`6a
`
`Fabric interconnect
`components
`
`16
`
`
`
`
`
`
`
`Unintelligerit
`Oisks
`-
`
`RADController
`
`
`
`Disk/tape Storage
`Subsystems
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 1 of 96
`
`

`

`Patent Application Publication May 15, 2003. Sheet 1 of 47
`
`US 2003/0093.509 A1
`
`
`
`12a
`
`18
`
`16a
`
`Fabric interconnect
`components
`
`
`
`
`
`16
`
`
`
`Unintelligert
`Disks
`
`RAD Controller
`
`
`
`Disk/tape Storage
`Subsystems
`
`
`
`14b
`
`4C
`
`Figure 1
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 2 of 96
`
`

`

`Patent Application Publication May 15, 2003. Sheet 2 of 47
`
`US 2003/0093.509 A1
`
`TSNM Console
`
`SNMP traa/EC console
`
`s Er
`NN // s
`
`N
`
`20
`
`I
`FE
`Managed Host
`
`
`
`
`
`Switch
`
`C C
`JBOD
`
`
`
`TSNM Manager
`
`W
`
`L
`sEE
`Managed Host
`
`Unmanaged Host
`
`7
`
`Printer
`
`Figure 2
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 3 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 3 of 47
`
`US 2003/0093.509 A1
`
`
`
`quêuoduop 136eue.W
`
`£ ?an61+
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 4 of 96
`
`

`

`Patent Application Publication May 15, 2003. Sheet 4 of 47
`
`US 2003/0093.509 A1
`
`# Bun614
`
`No.kigoaa5eko A
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 5 of 96
`
`

`

`Patent Application Publication May 15, 2003. Sheet 5 of 47
`
`US 2003/0093.509 A1
`
`
`
`G ?un614
`
`X?JONA?Uueu
`
`16WunTNWS
`
`
`
`quæuuæ6eue.W NOT
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 6 of 96
`
`

`

`Patent Application Publication May 15, 2003. Sheet 6 of 47
`
`US 2003/0093.509 A1
`
`2O
`
`64
`
`52
`
`E Jaya client
`RS:
`
`NetView Console is
`
`"S.O.
`
`i.
`:
`NetView Serve
`El Jacent 74-se
`Jet
`essewer
`54a
`
`P & s p 283's
`
`.
`
`.
`.
`.
`.
`NetView
`Requester
`8
`
`A B B A
`is sits spy
`endor Provided
`Migmt App
`basis is sees
`
`a sy
`
`Q1
`
`N, NaNs
`N2 N3 ...
`t-2-
`02 ss
`58
`
`56
`n
`Netview Daemony
`.
`.
`.
`.
`.
`in
`.
`.
`.
`.
`is a
`Console Req Handler
`62
`h :: EE",Israel L.1
`Emper sang us
`a esses is
`
`N.
`
`Directory Service
`
`Persistence &
`Activation Service
`Composite
`
`cs
`
`SAN Manager
`Service
`eig compare
`toueues) process
`
`50
`
`Event service
`EventService
`
`Discover Engine
`
`s: b c s vs 1
`
`B vs B say
`
`: Agent Monitor
`
`3 s is k
`
`s p as is ss
`
`sea A.
`
`Centrol
`
`Pine Air
`
`Conreate
`
`40
`
`A8
`
`4Ob
`
`
`
`Event Correlator
`
`etc.
`
`se
`X-Reference
`
`40a
`
`Query Engine
`Agent
`
`48
`
`-------
`i Event i
`Agent
`!------
`
`Figure 6
`
`is: vir's
`SNMP Gateway
`:
`E
`44
`is O.C." Scanner
`SNMP trap,
`is
`SubAgent
`: SNMP Agent?
`-------
`Subagent
`Execute
`
`-------
`
`
`
`assa
`
`is is is
`
`A bass
`
`-------- -
`Scanner
`...Nc42
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 7 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 7 of 47
`
`US 2003/0093.509 A1
`
`
`
`
`
`6u?ss320ad GEGEHOXHTCITOHSHHHITWELSÅSETIH
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 8 of 96
`
`

`

`Patent Application Publication May 15, 2003. Sheet 8 of 47
`
`US 2003/0093.509 A1
`
`J©IpUIBH|× 8
`
`9
`
`uo?ov
`
`8/ Ðunbl
`
`
`
`
`
`Œ> | .uonbuo nv
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 9 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 9 of 47
`
`US 2003/0093.509 A1
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 10 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 10 of 47 US 2003/0093509 A1
`
`Page 83h
`Standard
`
`
`
`
`
`Storage Subsystem. A
`
`
`
`Standard
`
`Page 83h
`Standard
`
`
`
`as
`
`14d E1 P
`
`Storage Subsystem C
`
`i
`
`14c 1.
`Storage Subsystem B
`
`Figure 9
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 11 of 96
`
`

`

`tnetaP
`
`P
`
`May 15, 2003 Sheet 11 0f 47
`
`US 2003/0093.509 A1
`US 2003/0093509 A1
`
`
`
`mo.3..
`
`
`
`aahimEa:
`
`
`
`NfiMu3mm
`
`
`
`ammcms.z<m
`
`.2839.En:a.233.926
`
`
`
`WE(imtmu‘ucu22.29293
`
`
`23%Eao.as:2=5...._23.2.2.2“”23.85.35.223
`
`
`ucmmzv3023n3%
`
`U05-2:202....20mini32335.2?minim
`mm:2323..__u23.25
`
`
`
`
`
`5.8..6mm5a.:3=50.m__.%sm.2waamfimmfilfimuss1353:52in5053522%
`
`p822m;,‘
`
`
`35065c:3llw50225.283
`mmmfim
`.l”2335.35.293E.”San...2.5m"mason.Bn=_u3.uar_a_=g=2u::
`
`R25,523"..9.86220.525>«on3mas—833530:mum:
`
`m25822522.9€32".
`
`
`.l.395).323255..5&9.35t“23823,355....3.22%»;2:0sagesw35%a3%82343235483?..2.523:8so.2322am
`
`.l«(ltrllt.1M50Emmcms.V65conmE23<@9305u‘y‘-131I}‘ill
`
`SN
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`LW>_._Dhwy—ELoom—.55—xwa.5CCm0w£39t3<memcmfiZ<m
`
`
`
`
`
`
`
`mm\
`?????????????
`
`
`nzfij€5.20:EBbmgmzvsfifica.32:».\.553.333Eu2325.8%..
`ON:2923ugna_§§§53.=8=Emo3.nEB.m92...:
`
` we23.:£3a.3
`??????????????????????v^ —
`
`..e23or5:332
`
`
`
`
`
`
`
`
`Baa—E:xnfi.EB.no.234.3E»flaw23:2»95:mm632.3522582.61am333wE8.—9234rap—Ea$20an
`
`
`
`852995some83%826958.6“..coszo_E_.mamn293.531
`
`a:a.23as5EcoEma=52:D.23205..a:«man.5228”2.2%3a.22:83.33322%«=5
`
`<m¢
`
`CISCO SYSTEMS, INC. / Page 12 of 96
`
`EX.1021
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 12 of 96
`
`
`
`
`
`
`

`

`Patent Application Publication May 15, 2003 Sheet 12 of 47 US 2003/0093.509 A1
`
`82 YN
`SANAdminClient
`
`88
`
`78
`
`LU group information
`
`UN assignment
`Request
`
`SANS to Auto
`Policy Engine
`
`N.
`
`N &
`host
`assignment
`foration
`
`Host & LJN.
`informatic
`
`Extend Request
`m -: SANAgent
`84
`FSExtend
`
`
`
`80
`
`Monitoring Policy
`86
`A
`threshold Ewent
`SANAgentScheduler
`SANAgent i
`FSMonitor
`
`72
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SANAgent
`Scanner
`.
`
`- - - - - - - - - - - m as
`
`Attribute Scanner
`
`SANAgent
`HostQuery
`
`Figure 11
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 13 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 13 of 47 US 2003/0093.509 A1
`
`90 N
`
`92
`
`Abstract 1
`int a1
`
`
`
`94
`
`Abstract 2
`int a2
`
`
`
`96
`
`Concrete 1
`int a 3
`
`Figure 12
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 14 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 14 0f 47
`
`US 2003/0093509 A1
`
`mgHBum038mequ
`nosofiomcoogeo\.EE;m
`
`HmpcflHSSE?mm
`
`"98BOwEOBmoB\.maEm
`
`NRoomofififlmbm
`
`mmpcflmBurma?
`
`vm
`
`\“QEsommBoomoESmEom
`080.EQwEOBmBQ
`
`llllllllllllllllllll
`
`mm“CHM822808
`
`fl959”.
`
`CISCO SYSTEMS, INC. / Page 15 of 96
`
`EX.1021
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 15 of 96
`
`
`
`
`

`

`Patent Application Publication May 15, 2003 Sheet 15 of 47 US 2003/0093509 A1
`
`transacto
`ompersist
`
`
`
`
`
`Apparent
`rampersist
`
`
`
`estAStact
`foresterss
`
`Figure 14a
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 16 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 16 of 47 US 2003/0093509 A1
`
`
`
`Associaret
`forapersis
`
`eFeer
`
`entespersis
`
`geS
`
`soc
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 17 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 17 of 47 US 2003/0093.509 A1
`
`
`
`PeerObject
`(fornperss
`
`setPeTimeOfSave)
`
`SetupSchenna
`(ost persst).
`- E.
`
`
`
`
`
`
`
`DScheila
`tempt risk ty
`EE
`aScte a0
`registerClasses0
`
`Figure 14c
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 18 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 18 of 47 US 2003/0093.509 A1
`
`false
`Newter. boclear
`deleted term 'bocean - false
`USE OPJMSICLOCKNG boolean= true
`USE BES OPTIMSTCLOCKING: boolean false
`
`Efosaeo
`d)
`seiPeertimeOfSave)
`EpiSaved
`setUrque
`PeerParent)
`PeerParent
`save)
`deleteO
`retreweby Eg:
`Ef converture 38tectido
`rettewegeneral
`retnevealObjecis0.
`
`
`
`a nerfaces
`RPersistake
`(from rub)
`registerschema)
`
`Peer Assoc
`(from persist
`
`
`
`setUnique
`getPeeTimeOSave()
`setPeemed Saves
`setPeersmeofSave
`
`PersistException
`(Sompensists
`
`
`
`eststExc E8
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 19 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 19 of 47
`
`US 2003/0093.509 A1
`
`
`
`
`
`
`
`
`
`
`
`Je^ues InÐ|
`
`
`
`• 86
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 20 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 20 of 47
`
`US 2003/0093.509 A1
`
`(
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 21 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 21 of 47 US 2003/0093.509 A1
`
`
`
`ZL e Inôl
`
`
`
`„ ........ yzwo48079001 OZEGO?z W8||
`
`
`
`
`
`
`
`Haynoq w <
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 22 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 22 of 47
`
`US 2003/0093509 A1
`
`
`
`9 | eun61-I
`
`
`
`
`
`0 || ||
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 23 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 23 of 47 US 2003/0093.509 A1
`
`
`
`
`
`6), ?Inôl
`
`6 si sselppº di IsoH
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 24 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 24 of 47
`
`US 2003/0093.509 A1
`
`SASIN/m ?
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 25 of 96
`
`

`

`Patent Application Publication
`
`US 2003/0093.509 A1
`
`
`
`?z eun61
`
`-20343404$.
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 26 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 26 of 47
`
`US 2003/0093.509 A1
`
`
`
`
`
`ZZ ?un61
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 27 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 27 of 47 US 2003/0093.509 A1
`
`
`
`Adapter 1
`
`Adapter2
`
`; Switch 1
`
`Figure 23
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 28 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 28 of 47
`
`US 2003/0093.509 A1
`
`315
`
`
`
`delete all
`virtual san
`references for every
`port in that
`Collection
`
`
`
`create collections of
`ports thatform
`potential virtual
`SANS from discover
`info
`
`Yes
`
`Any portin
`collection have a
`reference to a real
`SAN2
`
`311
`
`313
`
`317
`
`39
`
`create new virtual
`SAN for collection
`
`remove virtual SANs
`with no ports
`
`
`
`327
`
`Figure 24
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`current virtual SAN
`assigned to
`collection?
`
`renOWe
`SanPortRelationship
`for every port in the
`SAN not in
`collection
`
`remove all
`SanPortRelationship
`except for those
`that reference
`tempSan
`
`Create a new
`SanPortRelationshipo
`from tempSan to each
`port in collection that
`does not already have
`a relationship
`
`YY fa
`
`323
`
`325
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 29 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 29 of 47
`
`US 2003/0093.509 A1
`
`/
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 30 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 30 of 47
`
`US 2003/0093.509 A1
`
`
`
`109dsnS
`
`AA@N
`
`• • • • • • • • •• • • •* • ***
`
`? ? ? ? ?• • • • • • • • • • ** = &
`
`:T
`
`| |
`
`– – – – – r – – – – †
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 31 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 31 of 47 US 2003/0093.509 A1
`
`152
`
`
`
`54
`
`Request for File System
`Extension
`
`Identify from among accessible
`storage devices those having
`storage capacities in a range
`between a lower bound and an
`upper bound
`
`Was any storage
`device identified?
`
`
`
`
`
`
`
`
`
`56
`
`Assign the storage
`device from among
`the identified
`devices with
`-
`maximum capacity
`to the host
`
`
`
`
`
`
`
`Select a plurality of a accessible
`storage devices having a
`combined storage capacity that
`equals or exceeds the lower
`bound
`
`
`
`
`
`160
`
`Assign the selected
`storage devices to
`the host.
`
`Figure 27
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 32 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 32 of 47 US 2003/0093.509 A1
`
`
`
`S
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 33 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 33 of 47
`
`US 2003/0093.509 A1
`
`
`
`6Z ?un61-I
`
`
`
`Z/ |
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 34 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 34 of 47
`
`US 2003/0093.509 A1
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 35 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 35 of 47
`
`US 2003/0093.509 A1
`
`
`
`ZOZ
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 36 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 36 of 47 US 2003/0093509 A1
`
`
`
`>
`
`s
`
`S.
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 37 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 37 of 47 US 2003/0093.509 A1
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 38 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 38 of 47 US 2003/0093.509 A1
`
`008
`
`
`
`
`
`(gÐ) punoque MOT
`
`NOT – (gÐ)
`~]
`
`
`
`punoq 13.ddn
`
`sedK!
`
`/
`
`dno.16 ) SOH
`
`
`
`
`
`sæpuedoud dno.19 %soH
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 39 of 96
`
`

`

`May 15, 2003 Sheet 39 of 47
`
`US 2003/0093.509 A1
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 40 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 40 of 47 US 2003/0093509 A1
`
`Application Program
`
`File System
`
`A
`
`s
`
`
`
`:
`; :-----------------
`350
`
`Y ; :
`; :
`; :
`i: ;--
`;
`:
`:
`:
`; : :
`; ; ;
`; : :
`t
`
`386
`
`Manager ---...----...--- y
`(Win 2000)
`
`------------
`
`Port Driver
`
`:
`;
`
`--------------------- )
`
`Adapter
`
`356
`
`SCSI Class Driver
`
`352
`
`354
`
`Host
`
`LUND 1 Data
`LUN D2 Data
`LUND 3Data
`
`LUNDs
`
`Manager
`
`76
`
`Disk
`Manager
`
`:
`
`:
`
`:
`:
`
`Storage Devices
`
`1.
`
`FIGURE 36
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 41 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 41 of 47
`
`US 2003/0093.509 A1
`
`
`
`
`
`
`
`
`
`Zº ?un614
`
`[]
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 42 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 42 of 47
`
`US 2003/0093.509 A1
`
`[×
`
`
`
`Asanbeg M??A}êNCINS
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 43 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 43 of 47
`
`US 2003/0093.509 A1
`
`6€ ?an513
`
`
`
`
`
`
`
`#798
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 44 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 44 of 47 US 2003/0093.509 A1
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 45 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 45 of 47 US 2003/0093509 A1
`
`N
`
`
`
`
`
`
`
`S
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 46 of 96
`
`

`

`Patent Application Publication
`
`May 15, 2003 Sheet 46 of 47
`
`US 2003/0093.509 A1
`
`| | | | | | | | |
`
`------
`
`|
`
`|ºk-------- | | | | | | | |
`| | || | |
`
`
`DOETIFIE-FIEFJEI] DE] DOET EFF| No.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 47 of 96
`
`

`

`Patent Application Publication May 15, 2003 Sheet 47 of 47
`
`US 2003/0093.509 A1
`
`JeuueOS
`
`0,9
`
`
`
`
`
`
`
`
`
`
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 48 of 96
`
`

`

`US 2003/0093.509 A1
`
`May 15, 2003
`
`STORAGE AREANETWORK METHODS AND
`APPARATUS WITH COORDINATED UPDATING
`OF TOPOLOGY REPRESENTATION
`BACKGROUND OF THE INVENTION
`0001. The invention pertains to digital data processing
`and, more particularly, to Storage area networks and methods
`of operation thereof. The invention has application, for
`example, in managing access by a plurality of digital data
`processors (e.g., web or file servers, graphical workstations
`and So forth) to a plurality of disk drives, disk arrays and
`other Storage devices.
`0002.
`In early computer Systems, long-term data storage
`was typically provided by dedicated Storage devices, Such as
`tape and disk drives, connected to a data central computer.
`Requests to read and write data generated by applications
`programs were processed by Special-purpose input/output
`routines resident in the computer operating System. With the
`advent of “time sharing” and other early multiprocessing
`techniques, multiple users could simultaneously store and
`access data-albeit only through the central Storage devices.
`0003 With the rise of the personal computer (and work
`station) in the 1980's, demand by business users led to
`development of interconnection mechanisms that permitted
`otherwise independent computers to acceSS data on one
`another's Storage devices. Though computer networks had
`been known prior to this, they typically permitted only
`communications, not storage sharing.
`0004. The prevalent business network that has emerged is
`the local area network, typically comprising "client' com
`puters (e.g., individual PCs or workStations) connected by a
`network to a "server” computer. Unlike the early computing
`Systems in which all processing and Storage occurred on a
`central computer, client computers usually have adequate
`processor and Storage capacity to execute many user appli
`cations. However, they often rely on the Server computer
`and its associated battery of disk drives and Storage
`devices-for other than Short-term file Storage and for
`access to shared application and data files.
`0005. An information explosion, partially wrought by the
`rise of the corporate computing and, partially, by the Inter
`net, is spurring further change. LeSS common are individual
`Servers that reside as independent hubs of Storage activity.
`Often many Storage devices are placed on a network or
`Switching fabric that can be accessed by Several Servers
`(Such as file servers and web servers) which, in turn, Service
`respective groups of clients. Sometimes even individual PCS
`or WorkStations are enabled for direct access of the Storage
`devices (though, in most corporate environments Such is
`province of Server-class computers) on these So-called “Stor
`age area networks.’
`0006 A drawback in prior art storage area networks
`arises in managing the proliferation of hosts and Storage
`devices. Current Solutions focus on Setting Switches or
`Switch-like interfaces on the network or interconnect fabric
`between the hosts and Storage device, electrically “block
`ing” certain hosts certain Storage devices and So forth. A
`problem with these Solutions is that they permit only Zoning
`or Switch-like control. Another problem is that, by their very
`nature, these Solutions tend to be provider Specific.
`0007 An object of this invention is to provide improved
`Storage area networks and methods of operation thereof.
`
`0008 Further objects of the invention provide such meth
`ods and apparatus as facilitate access to multiple Storage
`devices, e.g., of varied types, from a plurality of Servers or
`other host digital data processors, e.g., running a variety of
`platforms.
`0009 Still further objects of the invention are to provide
`Such methods and apparatus for managing administrator
`defined and other policies for Storage networks, e.g., to
`facilitate acceSS by multiple hosts to multiple Storage
`devices in a manner consistent with network administrators
`wishes and without risk of unwanted access conflicts.
`0010 Yet still further objects of the invention are to
`provide Such methods and apparatus as facilitate the persis
`tence of Status and other data pertaining to Storage area
`networks regardless of the metaphors under which that data
`is used and/or stored (e.g., object-oriented, relational, and So
`forth).
`0011) Another object of the invention is to provide such
`methods and apparatus as facilitate automated handling of
`events that occur with respect to Storage area networks and
`their componentry.
`0012 Yet other objects of the invention are to provide
`Such methods and apparatus as facilitate Visual representa
`tion of the Storage area network topology, componentry and
`Status.
`0013 Still yet another object of the invention is to
`provide Such methods and apparatus as facilitate adminis
`trator (or other operator) definition of storage area network
`policy (e.g., vis-a-vis assignment of Storage devices to hosts)
`and as facilitate notification of events occurring with respect
`thereto.
`0014. These and other objects of the invention are evident
`in the drawings and in the description that follow.
`
`SUMMARY OF THE INVENTION
`0.015 LUN Management
`0016. The foregoing are among the objects attained by
`the invention which provides, in one aspect, novel Storage
`area networks (SANs) and methods of operation thereof. For
`example, in one aspect, the invention provides improve
`ments on a SAN of the type having a plurality of hosts
`coupled via a network or other interconnect with one or
`more Storage units. The improvement, according to this
`aspect of the invention, comprises a manager process, device
`or other functionality in communication with a plurality of
`agent processes, devices or other functionality, each of
`which is associated with a host. The agents identify
`attributes of (i) their associated hosts, (ii) the interconnect
`(or portion thereof) to which that host is coupled, and/or (iii)
`Storage units to which that host is coupled via the intercon
`nect. The manager responds to these attributes identified by
`the agents to manage the SAN.
`0017. The manager according to related aspects of the
`invention can be implemented on a first digital data proces
`Sor, while the hosts are implemented on further digital data
`processors. These digital data processors can be coupled Via
`a first network, e.g., an IP or other network, to Support
`communications between the manager and the agents. Such
`communications can be further effected, according to one
`aspect of the invention, utilizing an object request broker
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 49 of 96
`
`

`

`US 2003/0093.509 A1
`
`May 15, 2003
`
`(ORB). The interconnect, according to further related
`aspects of the invention, comprises a Second network, e.g.,
`SCSI and/or fiber channel based fabric, separate from the
`first network.
`0.018. According to still further aspects of the invention,
`the manager provides one or more management functions
`including, by way of non-limiting example, interfacing with
`a SAN administrator, resolving SAN topology, managing
`Storage device logical unit number assignment, and manag
`ing extension of host file Systems. The agents can Serve as
`proxies (or agents) for the manager, effecting functionality
`on its behalf at the host level. This functionality can include
`SAN component attribute collection, LUN masking control,
`host file System monitoring, and file System extension imple
`mentation.
`0.019
`Further aspects of the invention provide systems as
`describe above in which one or more agents utilize their
`asSociated hosts to query and otherwise gather information
`regarding Storage devices to them (the hosts) via the inter
`connect. This information can include the number of logical
`units present on each physical Storage device, the identifi
`cation of the physical Storage device and its respective
`logical units, and/or the Storage capacity of each logical unit.
`Queries from the hosts to the devices can be effected via
`using the protocol of the interconnect, e.g., a SCSI protocol
`for a fiber channel interconnect.
`0020. In related aspects of the invention, the manager
`correlates information collected by the agents from their
`respective hosts, e.g., disambiguating identifies of logical
`units in the Storage devices and, more typically, on the SAN,
`from potentially only partial (or incomplete) information
`Supplied by each agent. In accord with policies established
`by the SAN administrator (and entered into the manager,
`e.g., via its graphical interface), the manager assigns logical
`units to the hosts. According to related aspects of the
`invention, the manager communicates those assignments to,
`and effects them via, the agents.
`0021
`Further related aspects of the invention provide
`SAN systems as described above in which each agent
`imposes logical unit number (LUN) assignments on their
`respective agents, e.g., via filters at the adapter layer. This
`facilitates communication between the host and its assigned
`Storage devices by obviating the need for it (the host) to
`consult the manager for each read/write operation to those or
`other (e.g., unassigned) Storage devices.
`0022. In still further aspects, the invention provides
`SANs as described above in which the manager includes a
`graphical user interface (GUI) for display of SAN topology
`and/or for input of administrator-defined SAN “policy,” by
`way of non-limiting example, LUN assignment, un-assign
`ment, and file extension policy. The GUI can provide a
`plurality of views, each for example with icons or text
`representations (collectively, "icons” or “graphical objects”)
`representing hosts, storage devices (or logical units), asso
`ciations therebetween (e.g., assignment or accessibility),
`and/or properties thereof.
`0023 Assignment of a LUN to a host is permitted
`through administrator/operator-Selection of a host icon and
`a LUN icon on the GUI display. This is beneficially facili
`tated, according to one aspect of the invention, by Selec
`tively activating the icons representing the LUNs only after
`
`the icon for a Specific host has been Selected and, then, only
`activating icons for those LUN that are accessible to the
`Selected host and otherwise Suitable for assignment.
`0024.
`In related aspects of the invention, the GUI pro
`vides icons representing SAN operations, Such as assign
`ment, unassignment, and So forth. These icons are benefi
`cially activated, for example, only when icons for
`corresponding hosts, Storage units and/or other SAN com
`ponents have been Selected. For example, an icon for
`executing a LUN-to-host assignment operation is activated
`only after both a host and a LUN are selected. This can
`likewise be true of a LUN-to-host unassignment operation.
`A GUI with Such features advantageously facilitates admin
`istrator action, minimizing the number input decisions on
`the part of an administrator as well as the number of key
`Strokes, “mouse’ clicks, or other operator input device
`operations.
`0025. In further related aspects of the invention, a topo
`logical, hierarchical or enumerated (i.e., listing) display of
`SAN components can be accompanied by a display of
`component properties (e.g., identity of LUNs in a physical
`Storage device, and So forth). The latter display, too, is
`beneficially generated only upon Selection of a specific
`component in the former display. In a related aspect, data
`necessary for generating the latter (i.e., a component prop
`erty) display is retrieved, for example, from a local or remote
`database, only upon Selection of a specific component in the
`former display.
`0026 Further related aspects of the invention provide a
`system as described above in which the GUI provides for
`Selective display of Storage devices, or logical units, depend
`ing upon their Storage capacity or other quantitative
`attributes. In this regard, the GUI permits operator/admin
`istrator Specification of a numerical range for use by the
`manager in filtering Storage device display. This aspect of
`the invention can be used to display, for example, logical
`units having a storage capacity, Say, of between four and Six
`gigabytes or, for example, greater than ten gigabytes.
`0027 According to further aspects of the invention, the
`manager of a SAN as described above notifies the operator/
`administrator of SAN events such as, by way of non-limiting
`example, failure or disconnection of a storage device from
`the SAN. The manager permits specification (e.g., by the
`administrator) of a delay interval (or “alert interval”)
`between a first and Subsequent notifications of an event.
`Upon receipt of an event notification from an agent, for
`example, the manager can implement this mechanism by
`determining, e.g., from a database or otherwise, whether a
`previous notification of was made to the administrator. If So,
`further notification is made only if the current time follows
`that of the previous notification by the specified alert inter
`val.
`0028. In further aspects, the invention provides a SAN as
`described above in which the manager maintains policies for
`handling events pertaining to (i) attributes of at least Selected
`hosts and/or (ii) establishment of relationships of at least
`Selected hosts with one or more Storage units. A policy
`engine included within the manager responds to notification
`of at least a Selected event by effecting execution of an
`action according to the policy maintained therefor.
`0029. In a related aspect, the policy engine includes a
`module, herein referred to as an automation module, that
`
`Ex.1021
`CISCO SYSTEMS, INC. / Page 50 of 96
`
`

`

`US 2003/0093.509 A1
`
`May 15, 2003
`
`receives events from the agents and associates each event
`with a policy applicable to that event to form an event,
`policy pair. For example, as discussed in more detail below,
`when an agent file System monitor detects that the utilized
`portion of a file System associated with a managed host has
`exceeded a pre-defined threshold, it transmits an event
`notification to the policy engine. The policy engine deter
`mines, based on a pre-defined policy, whether the file System
`of this managed host should be extended. If the pre-defined
`policy calls for the extension of the file System, the policy
`engine identifies which LUN should be utilized and requests
`that a LUN manager assign the identified LUN to that host.
`0030) Further aspects of the invention provide systems as
`described above in which the manager maintains in a
`relational database a topological or other representation of
`the Storage area network, or aspect thereof. In response, for
`example, to notification from an agent of addition of a
`component to the SAN, the manager instantiates an object
`oriented programming (OOP) object reflecting attributes of
`the component. This object, referred to below as a “man
`ager object can also include, for example, method members
`for collecting those attributes (e.g., from other databases or
`Stores in the manager, or elsewhere). The manager instan
`tiates one or more further objects, referred to as "peer’
`objects, that Store persistable data from a corresponding
`manager object. These peer object are mapped into the
`relational database and, thereby, facilitate transfer of the
`persistable data to and from it.
`0031) Event Processing
`0.032 The invention provides in other aspects improve
`ments on a digital data processing apparatus of the type that
`manages a SAN and maintains an internal representation
`thereof, e.g. of the topology of the SAN. The improvements
`include providing a first queue with entries representing
`tasks and a Second queue with entries representing data for
`processing in connection with those tasks, where the data in
`the Second queue is grouped in accord with the task to which
`it corresponds. A manager Service updates the internal
`representation of the SAN (e.g., the representation of the
`SAN topology) by executing the tasks in the first queue one
`at a time, for example, atomically using a Single-threaded
`proceSS.
`0033. Further aspects of the invention provide improved
`apparatus as described above in which the data contained in
`the Second queue constitute event notifications, e.g., gener
`ated by a detection Service in response to changes in the
`SAN. That Service can receive, for example, from agents
`asSociated with host digital data processors on the SAN,
`information regarding the hosts and Storage devices to which
`they are connected via an interconnect. In related aspects of
`the invention, the detection Service discerns changes in the
`SAN and generates notifications by comparing information
`or “Scans' from the agents with previously Stored Scans. One
`or more notifications can be generated corresponding to each
`change and transmitted to the manager for placement on the
`queues. The notifications can reflect, for example, that a new
`host or storage device has been added to the SAN, that the
`attributes of Such a device have been modified, that a device
`is missing, and/or that a relationship between a Storage
`device and host has changed.
`0034) Further aspects of the invention provide improved
`apparatus as described above in which the manger Service
`
`Selectively adds notifications received from the detection
`Service to the Second queue until receipt of a Selected
`notification, e.g., indicating that the underlying Scan is
`complete. The Service manger can, upon Such receipt, gen
`erate for addition to the Second queue a

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket