throbber

`
`1111111111111111111111111111I112,1111°1111olll Jp,1111111111111111
`
`(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2002/0019908 Al
`Feb. 14, 2002
`Reuter et al.
`(43) Pub. Date:
`
`(54) SYSTEM AND METHOD FOR MANAGING
`VIRTUAL STORAGE
`
`(76)
`
`Inventors: James M. Reuter, Colorado Springs,
`CO (US); David W. Thiel, Colorado
`Springs, CO (US); Richard F. Wrenn,
`Colorado Springs, CO (US); Andrew
`St. Martin, Woodland Park, CO (US)
`
`Correspondence Address:
`HOGAN & HARTSON LLP
`ONE TABOR CENTER, SUITE 1500
`1200 SEVENTEENTH ST
`DENVER, CO 80202 (US)
`
`(21) Appl. No.:
`
`09/872,583
`
`(22) Filed:
`
`Jun. 1, 2001
`
`Related U.S. Application Data
`
`(63) Non-provisional of provisional application
`60/209,108, filed on Jun. 2, 2000.
`
`No.
`
`Publication Classification
`
`(51) Int. C1.7
`
` GO6F 12/00
`
`(52) U.S. Cl.
`
` 711/112; 711/203; 711/114
`
`(57)
`
`ABSTRACT
`
`Preferred embodiments of the present invention provide a
`system and method for the management of virtual storage.
`The system and method include an object-oriented computer
`hardware/software model
`that can be presented, for
`example, via a management interface (e.g., via graphical
`user interfaces, command line interfaces, application pro-
`gramming interfaces, etc.). In some preferred embodiments,
`the model separates physical storage management from
`virtual disks presented to hosts and management can be
`automated such that the user (e.g., customer, manager and/or
`administrator) specifies goals rather than means-enhancing
`ease of use while maintaining flexible deployment of storage
`resources.
`
`Logical View
`
`Virtual Disk
`
`capacity
`
`Virtual Disk Replica
`
`allocated capacity
`allocated storage
`reserved capacity
`reserved storage
`
`Storage Pool
`Hierarchy
`
`Physical View
`
`Storage Controller
`
`Data Container
`(e.g., LUNs)
`
`capacity
`occupancy
`reserved storage
`
`Adobe - Exhibit 1008, page 1
`
`Adobe - Exhibit 1123, page 1
`
`

`

`Patent Application Publication
`
`O
`O
`
`8Z Jo 1 lamIS
`
`IV 8066100/Z00Z Sfl
`
`z
`
`100
`
`120
`
`130
`
`Controller
`
`C Communication
`
`Channel
`
`150
`
`Virtual
`Disk
`
`110
`
`140
`
`Host
`
`110
`
`160
`
`Storage
`Containers
`
`Storage
`Containers
`
`160
`
`FIG. 1
`
`Virtual
`Disk
`
`140
`
`150
`
`Z efied `8001. l!q!LP(D - eqoPV
`
`Adobe - Exhibit 1123, page 2
`
`

`

`Patent Application Publication
`
`8Z Jo Z lamIS
`
`IV 8066100/Z00Z Sfl
`
`200
`
`Array
`Controller
`
`1
`
`0..n
`
`0..n
`
`Data
`Container
`
`160'
`
`230
`
`220
`
`210
`
`1 .7
`
`----.\
`
`\
`
`\ \Idi
`
`1 i. „....---.......\
`
`Host
`Folder
`0
`
`0..n
`Host
`
`14\0'
`\
`
`Virtual Disk
`Folder
`1
`
`0..1\1 -----1
`
`Pool
`(sub-pool
`
`0..1
`
`0..n
`
`0.. n
`
`150'
`
`Virtual Disk
`
`110'
`
`ti..r1
`0..n
`Host
`Agent
`
`0..n
`
`SCSI
`Presented
`Unit
`
`1..n
`
`/
`240
`
`SCSI
`Derived
`Unit
`7
`250
`
`1..n
`
`0..n
`
`Virtual Disk
`Replica
`
`R
`150R
`
`FIG. 2
`
`c efied Vol, ly:fitixD - eqoPV
`
`Adobe - Exhibit 1123, page 3
`
`

`

`Patent Application Publication
`
`8Z Jo £ lamIS
`
`IV 8066100/Z00Z Sfl
`
`Physical View
`
`Storage Controller
`
`Data Container
`(e.g., LUNs)
`
`capacity
`occupancy
`reserved storage
`
`Storage Pool
`Hierarchy
`
`FIG. 3
`
`Logical View
`
`Virtual Disk
`
`capacity
`
`Virtual Disk Replica
`
`allocated capacity
`allocated storage
`reserved capacity
`reserved storage
`
` efied 'goo I, ly:fitixD - eqoPV
`
`17
`
`Adobe - Exhibit 1123, page 4
`
`

`

`Feb. 14, 2002 Sheet 4 of 28
`
`IV 8066100/ZOOZ Sfl
`
`Virtual Disk X
`I.UN 1, LUN 2, LUN 3
`
`Virtual Disk Y
`LUN 1, LUN 2
`
`Virtual Disk Z
`LUN 3
`
`FIG. 4
`
`Physical Storage
`
`- acioPV
`
`S abed 'goo L i!ci!ipc
`
`Adobe - Exhibit 1123, page 5
`
`

`

`Patent Application Publication Feb. 14, 2002 Sheet 5 of 28
`
`US 2002/0019908 Al
`
`U) a)
`
`—
`
`LC)
`
`d
`
`0
`0
`
`
`
`0C
`
`Cl)
`
`-1-E 1a) ,
`0
`C.)
`-1.E., .......
`a)
`E
`a)
`cm
`co
`c
`co
`2
`
`Adobe - Exhibit 1008, page 6
`
`Adobe - Exhibit 1123, page 6
`
`

`

`Patent Application Publication Feb. 14, 2002 Sheet 6 of 28
`
`US 2002/0019908 Al
`
`(
`
`U—
`
`(9
`
`U—
`
`Adobe - Exhibit 1008, page 7
`
`Adobe - Exhibit 1123, page 7
`
`

`

`Patent Application Publication
`
`O
`
`8Z .0 L 13311S
`
`IV 8066100/Z00Z Sfl
`
`FIG. 8
`
`9
`
`fuweba
`
`myvddir
`
`El.._Tx6M1
`
`
`
`
`
`other
`x
`
`g
`
`g
`
`Y
`
`1 temp
`
`yourvddir
`
`n] •A9 fuwebb
`
`:44/irtualDisk Edit
`New
`Discard
`
`10-
`
`Virtual Disk Family
`Folder
`
`dir\examp
`Type
`3)
`
`VD Folder
`
`4000
`
`VD Family
`
`2000
`
`2500
`
`VD Family
`
`VD Family
`
`8 efied `800I, ly:fitixD - eqoPV
`
`Adobe - Exhibit 1123, page 8
`
`

`

`Patent Application Publication
`
`O
`O
`
`8Z Jo 8 13311S
`
`IV 8066100/ZOOZ Sfl
`
`FIG. 9
`
`New Virtual Disk Wizard - Typical Step 1 of 6
`
`Provide a name for the new Virtual Disk.
`
`Virtual Disk Name:
`
`Wuweba\myvddinexamp\sales_data
`
`I
`
`Browse
`
` i
`
`ype
`
`ler
`
`lily
`
`lily
`
`lily
`
`Previous
`
`I
`
`Next
`
`Cancel
`
`6 abed `900I. in4x3 - eqopv
`
`Adobe - Exhibit 1123, page 9
`
`

`

`Patent Application Publication
`
`8Z Jo 6 lamIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 10
`
`New Virtual Disk Wizard - Typical Step 2 of 6
`
`Specify the RAID level and write-caching policy for the new Virtual Disk.
`
`Desired Configuration
`Minimum RAID Level
`
`Mirrored (RAID-0+1)
`(J arity (RAID-3/5)
`Otriped (RAID-0)
`
`RAID 0+1 provides both high performance and protection against single
`disk failures, but consumes the most amount of allocated disk storage.
`
`ype
`
`ier
`
`pity
`
`Desired Configuration
`Write Cache Policy:
`
`E
`
`Olone
`arite-through
`Glnmirrored Write-back
`Mirrored Write-back
`
`Mirrored Write-back caching provides a very safe high-performance
`write operation.
`
`Previous
`
`I
`
`Next
`
`Cancel
`
`01. efied `8001. l!q!LP(D - eqoPV
`
`Adobe - Exhibit 1123, page 10
`
`

`

`Patent Application Publication F
`
`r
`
`8Z Jo OI lamIS
`
`IV 8066100/ZOOZ Sfl
`
`FIG. 11
`
`New Virtual Disk Wizard - Typical Step 3 of 6
`
`oQ
`
`Specify the capacity for the new Virtual Disk.
`
`ype
`
`Capacity:
`
`3500
`
`Storage Allocation Policy:
`
`01
`0
`0
`0
`
`Megabytes
`
`Allocate on Demand
`
`Fully Allocated
`Fully Reserved
`
`Previous
`
`I
`
`Next
`
`Cancel
`
`Adobe - Exhibit 1008, page 11
`
`Adobe - Exhibit 1123, page 11
`
`

`

`Patent Application Publication F
`
`r
`
`8Z Jo II lomIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 12
`
`New Virtual Disk Wizard - Typical Step 4 of 6
`
`oQ
`
`Specify the zone (logical location) for the storage used to realize the
`new Virtual Disk.
`
`Desired Configuration:
`
`Zone Selection
`Auto Man
`- - -
`-
`-
`ON/lain Campus
`
`Q
`
`Zone 1:
`
`Browse 1
`
`Previous
`
`I
`
`Next
`
`Cancel
`
`ype
`
`ier
`
`illy
`
`riiy
`
`I
`
`Adobe - Exhibit 1008, page 12
`
`Adobe - Exhibit 1123, page 12
`
`

`

`Patent Application Publication Feb. 14, 2002 Sheet 12 of 28 US 2002/0019908 Al
`
`LL
`
`New Virtual Disk Wizard - Typical Step 5 of 6
`
`he new virtual d
`
`;1
`
`O
`1:3
`
`CC
`
`O
`
`43 z
`
`LL
`
`fl
`
`Adobe - Exhibit 1008, page 13
`
`Adobe - Exhibit 1123, page 13
`
`

`

`Patent Application Publication
`
`8Z Jo CI lamIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 14
`
`New Virtual Disk Wizard - Typical Step 6 of 6
`
`IEI Q.
`
`Specify the unit access for the new virtual disk.
`
`Host System:
`
`\\Bealles\John
`
`Access:
`
`Read-Write: 0
`Enabled:
`10
`
`I I
`
`Browse
`Read-Only: s',D
`Disabled:
`0
`
`Unit Protocol:
`
`Type
`
`Name
`
`ID
`
`Access
`
`I
`
`SCSI-3
`
`Disk 29
`
`14-79-32-53 Read-Write
`
`ype
`
`ier
`
`lily
`
`lily
`
`lily
`
`To present the new virtual disk to an arbitrary set of hosts, finish the
`creation of the new virtual disk and then use the Unit Access properties
`page.
`
`Previous
`
`I
`
`Finish
`
`Cancel
`
`17 I, efied `9001, mq!qxj - eqopv
`
`Adobe - Exhibit 1123, page 14
`
`

`

`Patent Application Publication
`
`O
`
`8Z Jo 171 1331IS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 15
`
`fie*
`
`I
`
`cr)
`
`fuweba
`
`El _ 111 myvddir
`
`E1-_,_x6M1
`
`other
`
`l temp
`
`yourvddir
`
`Ea
`
`fuwebb
`
`.01,7414T01, 1.5
`
`Adobe - Exhibit 1008, page 15
`
`Virtual Disk Folder examp
`__AVirtualDisk Edit
`Contents of Virtual Disk Folder \\fuwebalmyvddirlexamp
`Capacity (MB)
`Type
`
`Name
`9-DEC-1996 23:00
`_e6 other
`g
`sales_data
`
`x
`
`y
`z
`
`O
`
`g
`
`VD Folder
`
`VD Family
`
`VD Family
`
`3500
`
`4000
`
`2000
`
`VD Family
`
`2500
`
`VD Family
`
`Adobe - Exhibit 1123, page 15
`
`

`

`Patent Application Publication Feb. 14, 2002 Sheet 15 of 28 US 2002/0019908 Al
`
`,,R•rt^".
`
`ommm
`
`Adobe - Exhibit 1008, page 16
`
`a)
`C.)
`('3 9
`
`-DEC-1996 23:00
`
`8-DEC-1996 23:00
`
`7-DEC-1996 23:00
`
`Adobe - Exhibit 1123, page 16
`
`

`

`FIG. 17
`
`O
`O
`
`8Z Jo 91 WIN
`
`IV 8066100/ZOOZ Sfl
`
`Controller
`
`Mapping Agents
`
`Type
`
`Version
`
`controller_1
`
`controller_3
`
`Al
`
`A2
`
`XXX
`
`XXX
`
`V1.1
`
`V1.1
`
`Virtual Disk Name
`
`Unit Name
`
`Access
`
`\\•••\mYvddinexamP\x\active
`
`Disk 789
`
`read-wri
`
`\\...\myvddir\examp\y\active
`
`Disk 92
`
`read-wri
`
`.11,14,ww...Mr
`
`41, 4!".41,140. r ..1.1,
`
`"
`
`©tat) III cp
`
`beatles
`
`'ohn
`
`controller_1
`
`controller_3
`
`paul
`
`george
`
`ringo
`
`stones
`
`L I. e6ed 'amt. l!cl!qx - eqopv
`
`Adobe - Exhibit 1123, page 17
`
`

`

`Patent Application Publication Feb. 14, 2002 Sheet 17 of 28 US 2002/0019908 Al
`
`Co
`
`LE
`
`MIN
`
`cts
`
`‘77'
`
`Adobe - Exhibit 1008, page 18
`
`Adobe - Exhibit 1123, page 18
`
`

`

`Patent Application Publication
`
`8Z Jo 81 lamIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 19
`
`___AVirtualDiskFolder Edit
`
`Contents of Virtual Disk Folder \\fuweba\myvddir\examp
`
`Name
`
`Capacity (MB)
`
`Type
`
`other
`
`g
`
`z
`
`VD Folder
`
`4000
`
`VD Family
`
`2000
`
`VD Family
`
`2500
`
`VD Family
`
`* sto I
`
`imD
`
`fuweba
`Ey.„4 myvddir
`
`___Aa other
`
`x
`
`y
`
`g
`
`121.-_,A, temp
`
`yourvddir
`
`fuwebb
`
`61. e6ed 'NM l!q!L(D - eqoPV
`
`Adobe - Exhibit 1123, page 19
`
`

`

`8Z Jo 61 13MIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 20
`
`fuweba
`
`myvddir
`
`11:1-____c& other
`g
`x
`g
`
`Y
`
`temp
`
`a•__E6 yourvddir
`
`fuwebb
`
`Edit
`
`New
`
`Discard
`
`Rename
`
`Properties
`g x
`g Y
`g z
`
`11'• fuweba\myvddirkexamp
`Capacity (MB)
`Type
`
`VD Folder
`
`4000
`
`VD Family
`
`2000
`
`VD Family
`
`2500
`
`VD Family
`
`OZ e6ed VoL l!q!Lix - eqopv
`
`Adobe - Exhibit 1123, page 20
`
`

`

`FIG. 21
`
`8Z Jo OZ looOS
`
`IV 8066100/ZOOZ Sfl
`
`n**liczd
`
`Virtual Disk Folder examp
`__AVirtualDiskFolder
`:dit
`
`fuweba
`
`„I (
`
`Contents of Virtu:
`
`Cut
`
`D
`
`myvddir
`
`Name
`
`Paste
`
`e6 other
`
`g
`
`Y
`
`Ga.._441 other
`
`x
`
`y
`
`[2]-____A4 temp
`
`yourvddir
`
`III-
`
`fuwebb
`
`ddirkexamp
`
`AB)
`
`Type
`
`VD Folder
`
`4000
`
`VD Family
`
`2000
`
`VD Family
`
`2500
`
`VD Family
`
`.prrt.,141217WPrrIMMINSMI,
`
`V111,0 , 1,M1, .
`
`.11Plf
`
`LZ e6ed VoL l!q!Lix - eqopv
`
`Adobe - Exhibit 1123, page 21
`
`

`

`Patent Application Publication
`
`O
`
`8Z Jo IZ lamIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 22
`
`Virtual Disk Family x
`VirtualDisk Edit Configure
`Contents of Virtual Disk Family 1lfuweba1myvddir\examp\x
`Created
`Name
`Type
`
`Active
`
`12-NOV-1996 Active
`
`651 9-DEC-1996 23:00
`
`9-DEC-1996
`
`Stable
`
`8-DEC-1996 23:00
`
`8-DEC-1996
`
`Stable
`
`10i 7-DEC-1996 23:00
`
`7-DEC-1996
`
`Stable
`
`n * 1 6
`
`fuweba
`
`myvddir
`
`examp
`
`x
`
`Y
`
`g
`
`111..._141 temp
`
`yourvddir
`
`53.
`
`fuwebb
`
`,:trnwv,ittim'mvatr -Trim trwmf
`
`Adobe - Exhibit 1008, page 22
`
`Adobe - Exhibit 1123, page 22
`
`

`

`Patent Application Publication
`
`O
`O
`
`8Z Jo ZZ lamIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 23
`
`g y
`g z
`
`temp
`
`yourvddir
`
`[
`
`f uwebb
`
`Virtual Disk Family x
`irtualDisk Edit Configure
`
`Delete
`Undelete
`
`Discard
`Rename
`
`Snapshot
`
`Clone
`Clear Sei ious Condition
`
`Properties
`
`weba1myyddir\examp1x
`Created
`
`Type
`
`NOV-1996 Active
`
`DEC-1996 Stable
`
`DEC-1996 Stable
`
`DEC-1996 Stable
`
`CZ efied `8001. l!q!LP(D - eqoPV
`
`Adobe - Exhibit 1123, page 23
`
`

`

`Patent Application Publication
`
`8Z Jo £Z 13MIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 24
`
`151 VirtualDisk
`Contents o
`
`Virtual Disk Family x
`dit Configure
`Cut
`
`Ni
`
`Active
`
`Paste
`Make Alias
`
`9-DEC-1996 23:00
`
`9-DEC-1996 Stable
`
`8-DEC-1996 23:00
`
`8-DEC-1996 Stable
`
`101 7-DEC-1996 23:00
`
`7-DEC-1996 Stable
`
`g
`
`Y
`
`temp
`
`yourvddir
`
`fuwebb
`
`Adobe - Exhibit 1008, page 24
`
`Adobe - Exhibit 1123, page 24
`
`

`

`Patent Application Publication
`
`O
`O
`
`8Z Jo 17Z lomIS
`
`IV 8066100/Z00Z Sfl
`
`VirtualDisk Edit
`
`Virtual Disk Family x
`onfigure
`
`Contents of Virtual
`
`Write Protect
`
`Name
`
`Write Enable
`
`Active
`
`Enable Presentations
`
`Disable Presentations
`
`9-DEC-1996 2
`Increase Capacity...
`8-DEC-1996 2 Reduce Capacity...
`Set RAID Guarantees...
`
`7-DEC-1996 2
`
`Set Caching Policy...
`
`Add to Consistency Set...
`
`Remove from Consistency Set...
`
`FIG. 25
`
`b iy) fuweba
`Ei _441 myvddir
`
`examp
`
`x
`
`g
`Y
`g z
`e6 temp
`yourvddir
`
`fuwebb
`
`Adobe - Exhibit 1008, page 25
`
`Adobe - Exhibit 1123, page 25
`
`

`

`Patent Application Publication
`
`8Z Jo SZ lomIS
`
`IV 8066100/ZOOZ Sfl
`
`FIG. 26
`
`Virtual Disk Properties -- [Sales_datatActive]
`
`I Replication I
`Caching
`Unit Access I Unit Protocol I Performance
`
`Snapshot
`
`RAID
`
`General
`Configuration
`Capacity:
`
`3500 M erg abYtes
`
`01 locate on Demand
`Oully Allocated
`Oully Reserved
`
`*Read-Write
`(yead-Only
`
`C)resentations Enabled
`Oresentations Disabled
`0Aarked for Delete
`
`671 Megabytes
`1342 Megabytes
`Normal
`
`27-Jun-1997 10:37:49
`25-Aug-1997 8:03:45
`29-Sep-1997 20:13:12
`N/A
`
`OK
`
`I
`
`Cancel
`
`Storage Allocation Policy:
`
`Access:
`
`State:
`
`Information
`Allocated Capacity:
`Disk Storage Allocated:
`Condition
`
`Creation Date:
`Modification Date:
`Last Access Date:
`Marked For Delete Date:
`
`Adobe - Exhibit 1008, page 26
`
`Adobe - Exhibit 1123, page 26
`
`

`

`Patent Application Publication
`
`O
`O
`
`8Z Jo 9Z lamIS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 27
`
`Virtual Disk Properties -- [Sales_datalActive]
`
`EM
`
`General
`
`RAID
`
`Caching
`Unit Access I Unit Protocol I Performance
`
`Replication
`
`Snapshot
`
`Add New Access to Unit:
`
`Host System:
`
`Access:
`
`Browse
`
` if
`
`Read-Write: 0
`Enabled:
`
`0
`
`Read-Only: 0
`
`Disabled:
`
`0
`
`Unit Protocol:
`
`Type
`
`Name
`
`ID
`
`Access
`
`I
`
`Disk 29
`SCSI-3
`iBlockMux DASD 15
`
`14-79-32-53 Read-Write
`14-58-AB-4 Read-Only
`
`Add
`
`Existing Access:
`
`Host System
`
`Access
`
`Unit Name
`
`Unit Type Unit ID
`
`1113eatles\John Read-Write Disk 29
`Meatles\Paul Read-Write Disk 29
`\\Beatles\Georg Read-Write Disk 29
`\\Beatles\Ringo Read-Write Disk 29
`\\Stones\Mick Read-Only DASD 15
`
`SCSI-3
`SCSI-3
`SCSI-3
`SCSI-3
`BlockMux
`
`14-79-32
`14-79-32
`14-79-32
`14-79-32
`14-58-AB
`
`Modify
`
`
`
`I
`
`Delete
`
`I
`
`OK
`
`I
`
`Cancel
`
`Adobe - Exhibit 1008, page 27
`
`Adobe - Exhibit 1123, page 27
`
`

`

`Patent Application Publication
`
`O
`O
`
`8Z Jo LZ 133qS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 28
`
`Virtual Disk Properties
`
`[Sales_datalActiye]
`
`oQ
`
`General
`
`RAID
`
`I Caching
`I Unit Access
`
`1 Replication I
`Unit Protocol I Performance I Snapshot
`
`Create New Unit Protocol:
`
`Access:
`
`Read-Write:
`
`0
`
`Read-Only: 0
`
`Unit Type:
`
`1 SCSI-3
`
`Unit Name:
`
`New
`
`Existing Unit Protocols:
`
`Type
`
`Name
`
`ID
`
`Access
`
`Ref. Cnt. I
`
`Disk 29
`SCSI-3
`BlockMux DASD 15
`
`14-79-32-53-7B- Read-Write
`14-58-AB-49-C7 Read-Only
`
`4
`1
`
`Modify
`
`I
`
`Delete
`
`1
`
`OK
`
`Cancel
`
`Adobe - Exhibit 1008, page 28
`
`Adobe - Exhibit 1123, page 28
`
`

`

`Patent Application Publication
`
`O
`O
`
`8Z Jo 8Z 133qS
`
`IV 8066100/Z00Z Sfl
`
`FIG. 29
`
`Virtual Disk Properties -- [Sales_datalActive]
`
`1E1
`
`General
`RAID
`
`Caching
`Unit Access
`
`Unit Protocol
`Location
`
`I Performance
`
`Snapshot
`
`Current Configuration
`Zone 1:
`
`Main Campus
`
`Desired Configuration;
`
`Zone Selection
`Auto Man
`CMain Campus
`Q
`
`Zone 1:
`
`OK
`
`Cancel
`
`Adobe - Exhibit 1008, page 29
`
`Adobe - Exhibit 1123, page 29
`
`

`

`US 2002/0019908 Al
`
`Feb. 14, 2002
`
`1
`
`SYSTEM AND METHOD FOR MANAGING
`VIRTUAL STORAGE
`
`ments, such as Word documents, PDF files, web pages, etc.,
`or physical documents), or via other means.
`
`RELATED APPLICATIONS
`
`[0001] This application claims priority to U.S. Provisional
`Application No. 60/209,108, filed on Jun. 2, 2000, entitled
`Structure For Managing The Virtualization Of Block Stor-
`age, the disclosure of which is hereby incorporated by
`reference in its entirety. Additionally, the entire disclosures
`of the present assignee's following utility patent applications
`filed on the same date as the present application are both
`incorporated herein by reference in their entireties: Ser. No.:
`XX/XXX,XXX, Attorney Docket No. P01-3737 to James
`Reuter, et al., entitled Structure And Process For Distribut-
`ing SCSI LUN Semantics Across Parallel Distributed Com-
`ponent; and Ser. No.: XX/XXX,XXX, Attorney Docket No.
`P01-3665 to James Reuter, et al., entitled Data Migration
`Using Parallel, Distributed Table Driven I/O Mapping.
`
`FIELD OF THE INVENTION
`
`[0002] The present invention relates to systems and meth-
`ods for managing virtual disk storage provided to host
`computer systems.
`
`BACKGROUND OF THE INVENTION
`
`[0003] Virtual disk storage is relatively new. Typically,
`virtual disks are created, presented to host computer systems
`and their capacity is obtained from physical storage
`resources in, for example, a storage area network.
`
`In storage area network management, for example,
`[0004]
`there are a number of challenges facing the industry. For
`example, in complex multi-vendor, multi-platform environ-
`ments, storage network management is limited by the meth-
`ods and capabilities of individual device managers. Without
`common application languages, customers are greatly lim-
`ited in their ability to manage a variety of products from a
`common interface. For instance, a single enterprise may
`have NT, SOLARIS, AIX, HP-UX and/or other operating
`systems spread across a network. To that end, the Storage
`Networking Industry Association (SNIA) has created work
`groups to address storage management integration. There
`remains a significant need for improved management sys-
`tems that can, among other things, facilitate storage area
`network management.
`
`[0005] While various systems and methods for managing
`array controllers and other isolated storage subsystems are
`known, there remains a need for effective systems and
`methods for representing and managing virtual disks in
`various systems, such as for example, in storage area net-
`works.
`
`SUMMARY OF THE INVENTION
`
`In response to these and other needs, the preferred
`[0006]
`embodiments of the present invention provide a system and
`method for the management of virtual storage. The system
`and method include an object-oriented computer hardware/
`software model that can be presented via a management
`interface (e.g., via graphical user interfaces, GUIs, com-
`mand line interfaces, CLIs, application programming inter-
`faces, APIs, etc.), via documents (e.g., customer documents,
`training documents or the like, including electronic docu-
`
`In preferred embodiments, the model advanta-
`[0007]
`geously provides the separation of physical storage man-
`agement from virtual disks presented to the hosts. This is
`preferably done using virtual disks in conjunction with a
`storage pool hierarchy. The virtual disk can be a logical
`"disk" that is visible to one or more host system(s). It is
`independent of physical storage and is preferably managed
`by setting attributes. On the other hand, the storage pool
`hierarchy provides a boundary between the virtual and
`physical parts of the model via "encapsulation" of physical
`storage such that physical components may change without
`affecting the virtual parts of the model.
`
`[0008] Preferably, management can be automated such
`that the user (e.g., customer, manager and/or administrator)
`specifies goals rather than means—enhancing ease of use
`while maintaining flexible deployment of storage resources.
`The preferred embodiments of the invention may advanta-
`geously reduce the cost and/or complexity of managing
`storage—by simplifying the management of change. In
`preferred embodiments, one or more of the following and
`other advantages can be realized with the present invention.
`
`[0009] Erased Boundaries
`
`[0010] Typically, storage controller or subsystem bound-
`aries can cause inefficient use of capacity, capacity to be in
`the wrong place, manual rebalancing to be required and/or
`problems with host access to capacity. The preferred
`embodiments of the present invention can enable, for
`example, a host-independent, controller-independent, stor-
`age area network (SAN)-wide pool of storage for virtual
`disks, effectively erasing these boundaries and the problems
`caused by these boundaries. Among other things, this can
`also simplify the acquisition and deployment of new storage
`because new storage can simply be more capacity in the
`pool.
`
`[0011] Centralized Management
`
`[0012] Typically, each storage subsystem in a SAN is
`managed separately, causing boundaries in the management
`model with resulting complexities and inefficiencies of
`management. The preferred embodiments of the present
`invention enable, among other things, a single, central
`management view of an entire SAN.
`
`[0013] Uniform Capabilities
`
`[0014] Typically, when a SAN has multiple storage sub-
`systems, the subsystems may have different capabilities,
`adding complexity and confusion to the management of the
`storage and the hosts using the storage. The preferred
`embodiments of the present invention can provide, e.g., a
`virtual disk that has uniform management capabilities and
`that is independent of the capabilities offered by the sub-
`systems providing the capacity. Among other things, this can
`reduce management complexity. With the preferred embodi-
`ments of the present invention, virtual disks can be managed
`with attributes that are independent of the physical storage,
`separating the virtual parts of the model from the physical
`parts of the model.
`
`[0015] The preferred embodiments of the present inven-
`tion can enable features such as: a) substantially no disrup-
`tion of service to host systems and applications during
`
`Adobe - Exhibit 1008, page 30
`
`Adobe - Exhibit 1123, page 30
`
`

`

`US 2002/0019908 Al
`
`Feb. 14, 2002
`
`2
`
`management operations; b) easy to add/remove storage
`subsystems; c) more efficient use of space; d) less wasted
`space overhead; e) volume expansion; f snapshot copies; g)
`selective presentation of virtual disks only to desired hosts;
`h) attribute-based management of virtual disks; i) host
`systems de-coupled from storage management; and/or j)
`future extensions easily added without disruption to hosts or
`to storage subsystems.
`
`[0016] The above and other embodiments, features and
`advantages will be further appreciated upon review of the
`following description of the preferred embodiments in con-
`junction with the accompanying drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0017] Preferred embodiments of the invention are shown
`by way of example and not limitation in the accompanying
`drawings in which like reference numbers represent like
`parts throughout and in which:
`
`[0018] FIG. 1 is a schematic illustration of a distributed
`virtual storage network;
`
`[0019] FIG. 2 is a schematic illustration of a preferred
`object-oriented model of the present invention;
`
`[0020] FIG. 3 is a schematic illustration of a storage pool
`hierarchy bridging the virtual and physical realms in pre-
`ferred embodiments of the present invention;
`
`[0021] FIG. 4 is a schematic illustration of an illustrative
`storage pool hierarchy;
`
`[0022] FIG. 5 is a schematic illustration of a management
`agent and corresponding management consoles that can be
`used in some preferred embodiments of the invention;
`
`[0023] FIGS. 6 and 7 schematically illustrate manage-
`ment operations that can be employed in some preferred
`embodiments of the present invention;
`
`[0024] FIGS. 8 to 15 illustrate graphical user interfaces
`that can be provided to facilitate management of virtual
`storage in relation to the creation of a virtual disk in some
`illustrative embodiments of the invention;
`
`[0025] FIGS. 16 to 18 illustrate some exemplary naviga-
`tional views that can be presented to a user to facilitate
`management of the storage system in some illustrative
`embodiments of the invention; and
`
`[0026] FIGS. 19 to 29 illustrate some exemplary disk
`management and properties views that can be presented to a
`user to facilitate management and selection of disk proper-
`ties in some illustrative embodiments of the invention.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`[0027]
`works)
`
`I. Preferred Environments (e.g., Storage Area Net-
`
`[0028] The present invention can be applied in a wide
`range of systems, e.g., in storage area network (SAN)
`systems and in other environments. In some embodiments,
`the present invention can be applied in, e.g., heterogeneous
`SAN environments (e.g., at the storage level). In some other
`embodiments, the present invention can be applied in, e.g.,
`open SAN environments (e.g., at the fabric level). In some
`other embodiments, the present invention can be applied in,
`
`e.g., non-SAN environments (e.g., at the server level). The
`present invention can also be applied in various systems
`shown in the above-identified patent applications incorpo-
`rated herein-by-reference and in other systems as would be
`apparent to those in the art based on this disclosure.
`
`In some non-limiting preferred embodiments, the
`[0029]
`present invention can be applied in a virtualized storage area
`network (SAN) system 100 using one or more distributed
`mapping tables, as needed to form one or more virtual disks
`for input/output (I/O) operations between hosts and storage
`containers 160, as illustrated in FIG. 1. In particular, the
`table contains a mapping that relates a position in a virtual
`disk 150 with an actual location on the storage containers
`160.
`
`[0030] The system 100 principles of distributed, virtual
`table mapping can be applied to any known SAN. It should
`therefore be appreciated that the storage devices are known
`technologies and may refer to any type of present or future
`known programmable digital storage medium, including but
`not limited to disk and tape drives, writeable optical drives,
`etc. Similarly, the hosts 140 may be any devices, such as a
`computer, printer, etc., that connect to a network to access
`data from a storage device.
`
`[0031] Likewise, the storage network is also intended to
`include any communication technology, either currently
`known or developed in the future, such as the various
`implementations of Small Computer Systems Interface
`(SCSI) or Fibre Channel. This distributed virtualization is
`most useful in environments where a large amount of storage
`is available and connected using some sort of "storage
`network" infrastructure. One preferred implementation uses
`Switched Fibre-Channel connected storage. However, noth-
`ing in the design of the system 100 precludes its use on other
`types of storage networks, including storage networks that
`are not yet invented.
`
`[0032] The hosts access the table through multiple map-
`ping agents 110. The system 100 uses multiple agents 110
`that are associated with the hosts 140. Preferably, each host
`has a separate agent 110, but the system 100 could be easily
`configured so that more than one host 140 connects to an
`agent 110. If multiple hosts 140 connect to the same agent
`110, the hosts 140 may share that agent's mapping table
`(alternately, there may be independent tables per host). The
`agent 110 stores the mapping table in volatile memory such
`as DRAM. As a result, if one of the agents 110 loses power,
`that agent 110 loses its copy of the table. Such an event could
`take place if the mapping agent 110 is embedded in the host
`140, for example, a backplane card serving as the mapping
`agent 110, and the host 140 system loses power.
`
`[0033] By storing the mapping table in volatile memory,
`the table can be easily and rapidly accessed and modified on
`the agents 110. Storing the mapping table in volatile memory
`has the further advantage of substantially reducing the cost
`and complexity of implementing the agents 110 as mapping
`agents. Overall, the agents 110 allow the performance-
`sensitive mapping process to be parallelized and distributed
`optimally for performance. The mapping agents 110 reside
`on a host 140 and are in communication with a virtual disk
`drive 150.
`
`[0034] The system 100 further comprises a controller 120
`that is separate from the mapping agents 110. The controller
`
`Adobe - Exhibit 1008, page 31
`
`Adobe - Exhibit 1123, page 31
`
`

`

`US 2002/0019908 Al
`
`Feb. 14, 2002
`
`3
`
`120 administers and distributes the mapping table to the
`agents 110. Control of the mapping table is centralized in the
`controller 120 for optimal cost, management, and other
`implementation practicalities. The controller 120 further
`stores the mapping table in a semi-permanent memory, such
`as a magnetic disk or an EPROM, so that the controller 120
`retains the table even after a power loss. In this way, the
`responsibility for persistent storage of mapping tables lies in
`the controller 120 so that costs and complexity may be
`consolidated. Any controller 120 known in the art of digital
`information storage may be employed as needed to imple-
`ment the present invention. Within this framework, each of
`the mapping agents 110 preferably interacts only with the
`controller 120 and not with the other agents 110. Further-
`more, the architecture allows for a controller 120 comprised
`of redundant, cooperating physical elements that are able to
`achieve very high availability. As a result, the system 100 is
`highly scaleable and tolerant of component failures.
`
`[0035] The interactions of the controller 120 and the
`agents 110 are defined in terms of functions and return
`values. In a distributed system, this communication is imple-
`mented with messages on some sort of network transport
`such as a communication channel 130. The communication
`channel 130 may employ any type of known data transfer
`protocol, such as TCP/IP. In one implementation, the com-
`munication channel 130 is the storage network itself. The
`communication channel 130 has access to non-virtual stor-
`age containers 160. Any suitable technique may be used to
`translate commands, faults, and responses to network mes-
`sages.
`
`[0036]
`
`II. Preferred Management Model
`
`illustrates an object-oriented model
`[0037] FIG. 2
`employed in some preferred embodiments of the invention.
`The objects in the illustrated model are described in detail
`below. The objects include operations that either humans or
`automated policy can invoke—e.g., based on the model, a
`user (e.g., a system administrator) can assign storage
`resources via a system management interface.
`
`[0038] As shown, the host folder, the virtual disk folder,
`and the storage pool objects can reference themselves. That
`is, multiple instances of these objects can be referenced
`under the same object type. This captures the notion of a
`tree-structured hierarchy. For example, the folder object
`representing the root of the tree always exists and sub-
`folders can be created as needed. This is generally analogous
`to a WINDOWS folder hierarchy, which is also a tree
`structure. A WINDOWS EXPLORER folder browser inter-
`face, for example, would be an illustrative graphical user
`interface representation of this kind of structure. Similarly,
`command line interfaces may support this concept with a
`notion such as "current directory."
`
`[0039] Host
`
`[0040] The host object 140' represents a host system (e.g.,
`a computer, etc.) that consumes a virtual disk and supports
`one or more applications.
`
`[0041] Host Agent
`
`[0042] The host agent object 110' is a component that
`provides virtualizing capability to the hosts (e.g., a "map-
`ping agent" ). A host has zero or more host agents through
`which virtual disks can be presented to that host. If a host has
`
`zero associated agents, presentation is not possible. The
`model preferably allows this because there may be tempo-
`rary situations where a i; host does not have an agent (e.g.,
`one has not been added or repaired). A host agent may serve
`multiple hosts or, alternatively, a host agent may attach to
`only a single host.
`
`[0043] The presented unit, described below, references all
`host agents through which a host may be reached for a given
`virtual disk. A host agent may be used by zero or more
`presented units to present zero or more virtual disks to a
`host.
`
`[0044] Virtual Disk
`
`[0045] The virtual disk object 150' represents a block-
`store disk as seen by a host system. It is independent of
`physical storage and is a logical object that contains the data
`that the system stores on behalf of host systems.
`
`[0046] Virtual disk service operations are preferably simi-
`lar to those of a locally attached physical disk. A virtual disk
`can include, for example, a compact (non-sparse) linear
`array of fixed-size data blocks indexed by nonnegative
`integers, which may be read or written. A read operation
`transfers the data from a set of consecutively indexed data
`blocks to the host system. A write operation transfers data
`from the host system to a set of consecutively indexed data
`blocks.
`
`[0047] While a virtual disk can be seen by host systems

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