throbber
(12) United States Patent
`DeBettencourt et al.
`
`US006279001B1
`(10) Patent N0.:
`US 6,279,001 B1
`(45) Date of Patent:
`Aug. 21, 2001
`
`(54) WEB SERVICE
`
`OTHER PUBLICATIONS
`
`(75) Inventors; Jason DeBettencourt, Framingham;
`Marco Lara, Tops?eld; Stanley
`Yamane, Framingham; Freeland
`Abbott, Arlington, all of MA (US)
`
`(73) Assignee: Webspective Software, Inc., Needham,
`MA (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`21 A 1. No.: 09/086 874
`(
`)
`pp
`’
`
`(22) Filed;
`
`May 29, 1998
`
`(51) Int. Cl.7 .......................... .. G06F 17/30; G06F 15/16;
`G06F 15/177
`
`U-S- Cl- .......................... ..
`
`709/218; 709/221
`
`(58) Field of Search ................... .. 707/10, 103; 709/221,
`709/217, 218; 395/200.33
`
`(56)
`
`References Cited
`Us‘ PATENT DOCUMENTS
`
`5,341,477
`5,459,837
`574757813
`5,613,155
`
`8/1994 Pitkin et al. ....................... .. 395/200
`709/226
`10/1995 CfICCaVale ---- -
`12/1995 Clelak ct a1~ ~~
`395/18202
`3/1997 Baldiga et al. ........................ .. 710/5
`
`Mason, R. “Atreve Announces WebSpective: The First Tool
`for Web Operations Management,” International Data Cor
`Poration, 16 pgs» 1998
`Atreve Software, Inc. “Insuring Your Web Business for
`Online Success,” Aug. 3, 1998, 2 pgs.
`Atreve SoftWare, Inc. “The Case for Web Operations Man
`agement,” Aug. 3, 1998, 2 pgs.
`Atreve SoftWare, Inc. “WEBSPECTIVETM Release 2,” Aug.
`3, 1998, 2 pgs.
`
`List continued on neXt a e.
`(
`p g )
`Primary Examiner—Thomas Black
`Assistant Examiner—FrantZ Coby
`(74) Attorney, Agent, or Firm—Testa, HurWitZ & Thibeault
`LLP
`(57)
`
`ABSTRACT
`
`A system for serving Web pages manages a plurality of Web
`servers. The system provides an operator With features and
`tools to coordinate the operation of the multiple Web servers.
`The System can manage traf?c by directing Web page
`requests to available Web servers and balancing the Web
`page request service load among the multiple servers. The
`System can Collect data on Web page requests and Web Server
`responses to those Web page requests, and provide reporting
`of the data as Well as automatic and manual analysis tools.
`The system can monitor for speci?c events, and can act
`automatically upon the occurrence of such events. The
`events can include predictions or thresholds that indicate
`impending system crises. The system can include crisis
`management capability to provide automatic error recovery,
`and to guide a system operator through the possible actions
`that can be taken to recover from events such as component
`failure or netWork environment problems. The system can
`present current information about the system operation to a
`system operator. The system can manage content replication.
`
`(List continued on next page.)
`
`20 Claims, 11 Drawing Sheets
`
`114
`
`LOGG l NG
`DATABASE
`
`.———> INTERCEPTOR : >
`
`122
`
`115
`
`TNTERCEPTOR
`CONTROL
`PROGRAM
`
`mggp'HoM'NG
`
`, WEB SERVER
`
`DATABASE
`
`1020-2
`
`WEB SERVER
`
`TNTERFAC
`
`1040-2
`
`105C
`
`1093
`
`AGEN
`1026-“
`
`WEB SERVER
`
`A -1
`10 c
`
`WEB SERVER
`
`r‘
`1025
`
`lNTERFAC%/1U4B
`
`HOST
`1095
`
`WATCHER
`
`AGENT
`
`HOST
`109A
`
`DATABASE
`
`WEB SERVER
`
`’_
`102A
`
`116A
`
`115B
`
`116)(
`
`WATCHER
`
`INTERFAC 104A
`
`AGENT
`
`DATABASE
`
`IBM / Softlayer v. ZitoVault
`Ex. 1007 / Page 1 of 27
`
`

`
`US 6,279,001 B1
`Page 2
`
`US. PATENT DOCUMENTS
`
`8/1997 Bonnell et al. .................... .. 395/292
`5,655,081
`2/1998 Stewart ........ ..
`395/615
`5,715,453
`5,742,768 * 4/1998 Gennaro et al.
`395/200.33
`5,761,507
`6/1998 Govett .......... ..
`395/684
`5,774,660
`6/1998 Brendel et al.
`395/200
`5,774,668
`6/1998 Choquier et al. ............. .. 395/200.53
`5,781,449
`7/1998 Rosborough ....................... .. 709/224
`5,848,270
`12/1998 Deluca et al. .
`395/675
`5,867,706
`2/1999 Martin et al. ..
`..... .. 395/675
`5,870,559 * 2/1999 Leshem et al.
`.. 395/200.54
`5,881,238
`5/1999 Aman et al. .................. .. 395/200.56
`5,894,554 * 4/1999 Lowery et al. ............... .. 395/200.33
`5,903,757
`5/1999 GretZ et al.
`395/704
`5,917,491 * 6/1999 Bauersfeld
`345/352
`5,933,490
`8/1999 White et al.
`379/221
`5,933,596
`8/1999 Mayhew
`395/200.33
`5,933,606
`8/1999 Mayhew
`395/20069
`5,940,594
`8/1999 Ali et al.
`.. 395/200.33
`5,951,643 * 9/1999 Shelton et al. .
`..... .. 709/227
`5,954,798 * 9/1999 Shelton et al. .
`709/224
`5,956,716 * 9/1999 Kenner et al.
`707/10
`5,958,008 * 9/1999 Pogrebisky et al.
`709/223
`5,958,016 * 9/1999 Chang et al.
`709/229
`5,964,836 * 10/1999 Rowe et al.
`709/221
`5,974,441
`10/1999 Rogers et al. .
`709/200
`5,974,462
`10/1999 Aman etal.
`.. 709/225
`
`5,974,572 * 10/1999 Weinberg . . . . . . . . . .
`
`. . . . .. 714/47
`
`709/224
`12/1999 Barrick, Jr. et al.
`6,006,260
`709/226
`12/1999 Colby et al. ..... ..
`6,006,264
`379/219
`6,014,437 * 1/2000 Acker etal.
`709/200
`6,016,504 * 1/2000 Arnold etal. .
`709/224
`6,021,439 * 2/2000 Turek etal.
`709/201
`6,023,722
`2/2000 Colyer ...... ..
`707/204
`6,026,414
`2/2000 Anglin ......... ..
`6,035,323
`3/2000 Narayen et al. ................... .. 709/201
`6,035,332
`3/2000 Ingrassia, Jr. et al. ............ .. 709/224
`6,037,935
`3/2000 Bates et al. ......... ..
`345/335
`6,041,041
`3/2000 Ramanathan
`370/241
`6,052,718
`4/2000 Gifford ............ ..
`709/219
`6,070,191
`5/2000 Narendran et al.
`709/226
`6,094,659 * 7/2000 Bhatia ............. ..
`707/104
`6,098,093
`8/2000 Bayeh et al.
`709/203
`6,101,508
`8/2000 Wolf ......... ..
`707/218
`6,122,658
`9/2000 Chaddha
`709/203
`6,128,279
`10/2000 O’Neil et al. ..
`370/229
`6,148,335
`11/2000 Haggard et al. ................... .. 709/224
`
`OTHER PUBLICATIONS
`
`Computerworld, “the buZZ,” pp. 6—9, Jul. 27, 1998, http://
`www.computerworld.com/home/emmerce.nsf/all/
`980727buZZ.
`Atreve Software, Inc. “The WebSpective Content Distribu
`tor,” Jun. 1998, 9 pgs.
`Press Release “Atreve Software Secures $8.6 Million in
`Second Round of Venture Financing,” Jun. 29, 1998, 3 pgs.
`Computerworld, “Atreve Software Has Introduced Web
`Spective Release 2,” Jun. 15, 1998, 1 pg.
`Babcock, C. “Atreve Eases Web App Management,”
`Inter@ctive Week Online, Jun. 15, 1998, 2 pgs.
`Babcock, C. “Atreve Eases Web App Management,”
`Inter@ctive Week, Jun. 15, 1998, 1 pg.
`Internet News.Com Online, “Atreve Delivers WebSpective
`Release 2,” Jun. 10, 1998, 1 pg.
`Internet World Online, “Atreve Upgrades WebSpective Sys
`tem,” Jun. 10, 1998, 1 pg.
`
`New Product News Online, “Atreve Introduces The Only
`Complete Solution For Web Operations Management,” Jun.
`8, 1998, 2 pgs.
`Infoworld Electric Online, “Intranets & I—Commerce,” Jun.
`8, 1998, 1 pg.
`Infoworld, “Shipping,” Jun. 8, 1998, 1 pg.
`Internet World Products and Services, “Atreve Upgrades
`WebSpective System,” Jun. 8, 1998, 1 pg.
`Joachim, D. “Web Mgm’t Tool Keeps Tabs On User Expe
`rience,” Internet Week Online, Jun. 8, 1998, 1 pg.
`Joachim, D. “Web Mgm’t Tool Keeps Tabs On User Expe
`rience,” Internet Week, Jun. 8, 1998, 1 pg.
`Hannon, B. “Atreve Puts New WebSpective On Online Site
`Management,” PC Week, Jun. 8, 1998, 1 pg.
`Press Release “Atreve Introduces the Only Complete Solu
`tion for Web Operations Managernent—Webspective Release
`2,” Jun. 8, 1998, 3 pgs.
`Press Release “Comprehensive Content Replication and
`Distribution Module Added to Atreve’s Webspective Solu
`tion,” Jun. 8, 1998, 3 pgs.
`Joachim, D. “Atreve’s Web Management Tool Keeps Tabs
`on User Experience,” CMP.NET Online, Jun. 5, 1998, 2 pgs.
`Hannon, B. “Atreve Puts New WebSpective On Online Site
`Management,” PC Week Online, Jun. 5, 1998, 1 pg.
`Husum, D. “Building on Experience: Atreve Positions Web
`Management Suite to Interrupt Final Stage of Site Demise,”
`Web Vantage Online, Jun. 5, 1998, 2 pgs.
`Clark, T. “Atreve updates site management,” CNET NEWS
`.COM, Jun. 3, 1998, 1 pg.
`Atreve Software, Inc. “Atreve WebSpective and Cisco Local
`Director,”, May 1998, 10 pgs.
`Desmond, P. “Atreve to beef up Web management tool,”
`Network World.Fusion, May 29, 1998, 2 pgs.
`Atreve Software, Inc. “Managing a Successful Financial—
`Services Web Presence,” Apr. 29, 1998, 2 pgs.
`Press Release “Atreve’s WEBSPECTIVETM 1.5 Increases
`Performance and Availability of Commerce—Critical Web
`Sites,” Apr. 27, 1998, 3 pgs.
`Atreve Software, Inc. “Mission Control for Web Operations:
`AWhite Paper,” Apr. 15, 1998, 18 pgs.
`Press Release “Atreve Software Names Doherty CFO,” Apr.
`13, 1998, 2 pgs.
`Press Release “Atreve Software Incorporates RSA Encryp
`tion for SSL—Secure Web Application Solution,” Mar. 17,
`1998, 2 pgs.
`Atreve Software, Inc. “The Case for Web Application Man
`agement,” Mar. 9, 1998, 2 pgs.
`Freeman, E. “New tools help server farms blossom,” Data
`mation, Feb. 1998, 5 pgs.
`Delmonico, D. “Web—Site Management Tools: Big Market
`With Room For Growth,” Internet Week, Feb. 23, 1998, 4
`PgS~
`Barnes, M. “e—Commerce Ready to Explode,” Boston Soft
`ware Newspaper, Jan. 1998, 2 pgs.
`Network MagaZine, “WebSpective 1.5 Manages Web Server
`Loads,” Network MagaZine, Jan. 12, 1998, 1 pg.
`Press Release “Atreve Software, Inc. Names Joe Debold
`Vice President of Sales,” Jan. 6, 1998, 2 pgs.
`Karpinski, R. “Net Marketing: Web Impact: New Load
`Balancers Can Help Your Site Serve More Customers,”
`Business Marketing, Jan. 1, 1998, 2 pgs.
`Bank Technology News, “Wall Street Highlights Problem
`Of Web Jams,” Faulkner & Gray, Inc., Dec. 1997, 2 pgs.
`
`Ex. 1007 / Page 2 of 27
`
`

`
`US 6,279,001 B1
`Page 3
`
`Bank Technology News, “Wall Street Highlights Problem
`Of Web Jams,” Bank Technology News, Dec. 1997, 2 pgs.
`Computerworld, “New Products,” Computerworld, Dec. 8,
`1997, 1 pg.
`LAN Times, “Inspecting Internet applications,” LAN Times,
`Dec. 8, 1997, 1 pg.
`Wallace et al. “Load balancers aid Web site access,” Com
`puterworld, Dec. 1, 1997, 2 pgs.
`Eddy, A. “Atreve software to lighten Web management
`load,” Network World, Nov. 24, 1997, 2 pgs.
`Wilson, T. “Atreve Sees New Perspective,” Internet Week,
`Nov. 24, 1997, 1 pg.
`Wilson, T. “ScrutiniZing Web Performance,” Internet Week,
`Nov. 17, 1997, 2 pgs.
`Wilson, T. “ScrutiniZing Web Performance Increased Inter
`net—Traf?c Problematic When There’s No Time to Plan,”
`Internet Week Online, Nov. 17, 1997, 2 pgs.
`Wilson, T. “Wall Street Frenzy Leaves Website Managers;
`Taking Stock,” Internet Week Online, Nov. 13, 1997, 2 pgs.
`Degnan, C. “Atreve shakes out the cobwebs,” Mass. High
`Tech, Nov. 7—13, 1997, 1 pg.
`Petersen, S. “WebSpective Tightens The Reins on Web
`Apps,” PC Week, Nov. 10, 1997, 1 pg.
`Petersen, S. “WebSpective Tightens the Reins on Web
`Apps,” PC Week Online, Nov. 10, 1997, 1 pg.
`Press Release “Atreve Delivers WEBSPECTIVETM 1.5, the
`Leading Solution for Managing Business—Critical Web
`Applications,” Nov., 10, 1997, 3 pgs.
`Aldrich, S. “Atreve Delivers Web Application Service Level
`Management,” Internet Tools and Technologies Service—
`e—Bulletin, Nov. 3, 1997, 4 pgs.
`Press Release “Atreve Software, Inc. Names Glenn D.
`House President and CEO,” Sep. 29, 1997, 3 pgs.
`Wilson, T. “Managing Access To E—Commerce Sites,” Inter
`net Week, Sep. 1, 1997, 3 pgs.
`RodrigueZ, K. “Atreve Provides Multiserver Web Manage
`ment,” Inter@ctive Week,Jul. 21, 1997, 1 pg.
`LAN Times, “A certain level of service,” LAN Times
`Online, Jul. 21, 1997, 1 pg.
`
`Atreve Software, Inc. “WebSpective LA Installation and
`User’s Guide,” Jul. 16, 1997, 72 pgs.
`Atreve Software, Inc. “Interceptor 1.0 Installation and
`User’s Guide,” Jul. 16, 1997, 36 pgs.
`Kerstetter et al. “Raising Web Analysis Bar,” PC Week, Jun.
`30, 1997, 2 pgs.
`Kerstetter et al. “Raising Web Analysis Bar,” PCWeek
`Online, Jun. 27, 1997, 2 pgs.
`Atreve Software, Inc. “Web Application Management: Qual
`ity of Service is Job One,” Jun. 24, 1997, 11 pgs.
`Wilder, C. “Atreve Beta Manages Web Apps—WebSpective
`aimed at high—volume sites,” Information Week, Jun. 23,
`1997, 1 pg.
`Wilder, C. “Atreve Beta Manages Web Apps—WebSpective
`aimed at high—volume sites,” Information Week Online, Jun.
`23, 1997, 1 pg.
`CoX, J. “Atreve relieves taXed Web sites,” Network World,
`Jun. 23, 1997, 2 pgs.
`Press Release “Atreve Software, Inc. Formed to Address
`Challenges Associated with Managing Business—Critical
`Web Applications,” Jun. 23, 1997, 3 pgs.
`BMC Software, Inc., http://www.bmc.com/, printed on Jul.
`31, 1998, 43 pages.
`Bright Tiger Technologies, http://www.brighttiger.com/De
`fault.htm, printed on Jul. 30, 1998, 63 pages.
`“Intranet Load—Balancing Solutions,” Infoworla', Mar. 23,
`1998, vol. 20, Issue 12, http://www.infoworld.com/cgi—bin/
`displayArchive.pl?/98/12/intrsola.dat.htm, printed on Aug.
`4, 1998, 28 pages.
`Patrol Architecture—Raising the Application Management
`Standard,
`http://www.bmc.com/products/pat/amo/patw
`p.html, printed on Jul. 27, 1998, 21 pages.
`Resonate, Inc., http://www.resonate.com/, printed on Jul. 30,
`1998, 31 pages.
`
`* cited by examiner
`
`Ex. 1007 / Page 3 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 1 0f 11
`
`US 6,279,001 B1
`
`\ T02: wO/ImmPZ
`
`(82 N: w:
`
`Ex. 1007 / Page 4 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 2 0f 11
`
`US 6,279,001 B1
`
`
`
`www mwkm
`
`mm;
`
`OZ
`
`//
`
`#9. mmtlw
`
`02
`
`
`
`NE, nmhw
`
`02w
`
`N .QE
`
`Ex. 1007 / Page 5 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 3 0f 11
`
`US 6,279,001 B1
`
`\
`wow
`
`m .OE
`
`.60:
`
`
`
`2: E102;
`
`/
`
`4/
`
`my?
`
`Ex. 1007 / Page 6 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 4 of 11
`
`US 6,279,001 B1
`
`04//53,
`9
`09’ O
`0 <9
`0,1, 0’
`0) I
`
`+-
`
`0
`($3 2
`E .9
`o <
`0 Ir
`n: 3
`D. D
`
`Q
`
`f
`047
`‘319
`00
`(619/) 6'0’
`Q9 ‘*0
`6’
`(6%
`‘YO
`.(
`94 5‘)
`
`LIJ
`g
`I-
`Lu
`oO.
`
`2
`
`0
`as
`
`Q: 5
`LU <1:
`$5
`g 5
`_
`
`E
`E
`‘/9
`3
`E
`
`-
`
`«-
`
`I
`I
`
`I
`I
`
`I I
`
`I
`I
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`
`I
`
`I
`I
`
`'
`9
`Ll.
`
`Ex. 1007/ Page 7 of 27
`
`>_
`E
`o
`UJ
`1
`2)
`
`‘<9
`\‘7/)g’I/$8
`
`<.
`w'
`l.
`
`_L
`
`“--’
`I
`Q
`51
`l.IJ
`3
`g
`0
`
`I
`'
`I
`I
`I
`I
`I
`
`9
`
`Q3003
`6'
`
`‘[830
`09¢,
`
`as
`
`,
`
`6'
`
`I
`9~(SI$
`I
`/7036’
`:
`L — — _ _ _ . _ _ _ _
`
`m M
`9,
`
`00
`O V‘
`
`8 no
`1
`
`Ex. 1007 / Page 7 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 5 0f 11
`
`US 6,279,001 B1
`
`vow
`
`com
`
`mom
`
`Ex. 1007 / Page 8 of 27
`
`

`
`U S Patent
`
`Aug. 21, 2001
`
`Sheet 6 0f 11
`
`US 6,279,001 B1
`
`N
`
`Ex. 1007 / Page 9 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 7 0f 11
`
`US 6,279,001 B1
`
`Ex. 1007 / Page 10 of 27
`
`

`
`U.S. Patent
`
`Aug. 21,2001
`
`Sheet 8 of 11
`
`US 6,279,001 B1
`
`
`
`w_HHH._HomHoHHmH.wuHH.unDH....u3u¢5030oHHmHHH§HH.Hbm.mmHn.mHoHno3an.
`
`
`
`
`
`
`
`mEH_.omEHmHuuu.uHHbH_.33HoH3BooBHmHHHH..HH.HHEm“moHmwHoHnoM3.ac..
`
`own
`
`
`
`
`
`HuBumnuHH.__3uuEunD.H§§oEEOoHHmHH_aHHHH.Hbm.BHmmHo.H.BmH&an..
`
`
`
`
`
`
`
`
`
`_3Hu8HH&HH.HH8HHH..HHHHHEH86$.50ofiH.mn_aEHEmmv+mHoHnomi2:.
`
`
`
`
`
`
`
`
`
`mHao0.a.s§.vHu&HaHBm_HunHan.50oH,__HHmHHH§HEm.H.mHv.mHo,H.3M3..5.
`
`
`
`
`
`HHo.umu.HEmHHHHHH.mHHuH5H0306HUPEOQBEHHHEHEmooHH,m5Hnomi2:.
`
`
`
`
`
`mfism$55_HEnHEHHMumnHM.Hm.flHHum¢mum.»H,HmmHoH.no-mo-.&...HH
`
`
`
`
`
`mfismmmHHaHHU__HEmB.H§&aHHHHmm¢v%.H,HHam5H.,_.o-mo-HamHHm.HH%H§Hu
`
`
`
`
`HamvH2&HaHHHHum.H_m,.H.w.vHHamsH.8-8.&,.HH
`
`
`
`
`
`%H8HHuHu...,HHH..,fiH.,..oHHumfifi.€RH2.HH£&aHH=mm¢m%.vHHmmHoH.3-HHo-RH..H
`
`
`
`
`
`
`
`
`
`
`
`mmHm_oH.Hn.Hom.mw._mumommmH.HwH.Ubhmmoammu_mmM_uu.H.Hmm...HHwm_.:HmNHo_H.m.o-woLh_m_,oH
`
`
`
`
`
`
`
`
`
`HHH&¢uH§&aHHHH%.HHH.HH.E§oEBoo£H.mHHEHH«mumHHmmHo.H.3-wo-n3.H
`
`
`
`
`
`
`
`
`
`
`
`.HmnnmauOEfiHam¢umHHSH.UHmfiumoumxuHw.mH.n_mu.HHu.m.aH._mvnHmm.o-w.Q..n...m_m_
`
`
`
`
`
`
`
`
`
`
`
`
`
`ZuomnfiommmwmmmfimmEEUhuuumbumuHH%¢w.vm....mHHMNH:mO.w.o.__m...m3.
`
`
`
`
`
`
`
`
`
`m.0_..._
`
`Ex. 1007 / Page 11 of 27
`
`Ex. 1007 / Page 11 of 27
`
`
`
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 9 0f 11
`
`US 6,279,001 B1
`
`INIT
`COUNTER C=O
`DELAY TIMET
`AMAX
`
`PROGRAM
`OK?
`
`YES
`
`STEP 400
`
`A
`
`ATTEMPT
`To
`/' RESTART
`STEP 402
`
`RESTART
`SUCCESSFUL?
`
`STEP 404
`
`/.
`STEP 406
`
`DELAY FOR
`TIMET
`
`l
`
`INCREMENT
`/' COUNTER 0
`STEP 408
`IF 0 < AMAX,
`INCREASE DELAY
`TIME T
`
`FIG. 10
`
`Ex. 1007 / Page 12 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 10 0f 11
`
`US 6,279,001 B1
`
`OPEN SOCKET 1
`
`A
`
`B
`
`4—%IOPENSOCKETII ‘
`
`COMM
`
`FIG. 11A
`NON-FIREWALLED
`
`FIG. 11B
`IDEAL FIREWALL
`
`A 1
`
`{I
`‘i B
`
`FIG. 11C
`ONE-WAY FIREWALL
`
`OPEN CONNECTION
`
`A
`
`SAVES
`1
`
`CONNECTION
`b
`
`7'
`
`B
`
`FIG. 11D
`
`Ex. 1007 / Page 13 of 27
`
`

`
`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 11 0f 11
`
`US 6,279,001 B1
`
`WEIGHTED
`LOAD
`METRIC
`
`INTERVAL
`WIDTHS
`
`INTERVAL
`START
`END
`
`A
`B
`C
`D
`E
`F
`
`1500
`2250
`3250
`2000
`1000
`1000
`
`0.150
`0.225
`0.325
`0.200
`0.100
`0.100
`
`0.000 - 0.150
`0.151 - 0.375
`0.376 - 0.600
`0.601 - 0.800
`0.801 - 0.900
`0.901 - 1.000
`
`FIG. 12A
`
`Q
`‘o
`Q5
`
`<0
`’\
`Qf-b
`
`I\
`'\
`6:
`Q‘
`
`Q)
`
`Q:
`
`6
`
`FIG. 12B
`
`Ex. 1007 / Page 14 of 27
`
`

`
`US 6,279,001 B1
`
`1
`WEB SERVICE
`
`TECHNICAL FIELD
`This invention relates to managing Web servers and, more
`particularly, to a Web service system that alloWs a system
`operator to manage multiple Web servers.
`BACKGROUND INFORMATION
`Web servers are used to respond to user’s Web page
`requests. A Web server monitors one or more computer
`netWork address/port endpoints for Web page requests and
`responds to the Web page requests sent to an endpoint by
`transmitting Web pages to the requester. Such Web servers
`may be implemented With a softWare program running on a
`general purpose computer. The service capacity of a Web
`server limits the number of Web page requests that may be
`received and responded to.
`For Web applications that generate a signi?cant amount of
`requests, Web page application providers may use tWo or
`more Web servers. Each Web page request may be directed
`toWards one of the Web servers, and that one of the Web
`servers responds to that Web page request. In this Way the
`requests are divided among the Web servers. The Web page
`requester may or may not have knoWledge that there are a
`plurality of Web servers responding to requests for a par
`ticular application.
`In one Web service system, the requester has knoWledge
`that the application is available from more than one Web
`server. The requester selects a Web server, and requests a
`Web page from that server. The Web server responds to that
`Web page request by providing a Web page. This system has
`the disadvantage of requiring that the requester be aWare of
`the various Web servers. It has the additional disadvantage of
`having the Web server selection be out of the control of the
`Web service system.
`In another system With multiple Web servers, the domain
`name system (“DNS”) that is in use in the Internet may be
`used to divide requests among a plurality of Web servers. In
`normal use, a DNS server is used to match a Web server
`name With a netWork address/port endpoint. A DNS request
`provides the DNS server With the name of a Web server, and
`the DNS server responds With the netWork address/port
`endpoint of that Web server. In the Web service system that
`uses a DNS server to distribute requests to multiple Web
`servers, When a Web server name is submitted to the DNS
`server, the DNS server responds With one of the several
`address/port endpoints associated With the multiple Web
`servers. In this Way, DNS requests With the same DNS name
`may be responded to With different Web servers having
`different netWork address/port endpoints. In this Way, the
`DNS server can divide the requests among the servers. This
`has the advantage of not requiring the requester to have
`knoWledge of the Web service system architecture. One
`disadvantage of this system is that the DNS server must do
`more Work than usually required to match names With
`endpoints, and this eXtra Work may decrease the throughput
`of the DNS server. Another disadvantage is that the DNS
`server may not knoW hoW many Web page requests are
`associated With a DNS request. Each response of the DNS
`server may be cached in other DNS servers for some period
`of time, and so one DNS request response may result in an
`unpredictably large number of Web page requests being
`directed to the one Web server, and that server may become
`overloaded.
`
`15
`
`25
`
`35
`
`45
`
`55
`
`SUMMARY OF THE INVENTION
`In one aspect, the invention features a system for man
`aging one or more Web servers. The system includes a traf?c
`
`65
`
`2
`management subsystem for distributing Web page requests
`to the Web servers. The system also includes a monitor for
`collecting and storing information related to the requests for
`Web pages. The system also includes an identi?er for iden
`tifying problems With the Web servers.
`Embodiments of this aspect of the invention can include
`the folloWing features. In one embodiment, the traf?c man
`agement subsystem includes an interceptor receiving Web
`page requests and distributing the Web page requests to the
`Web servers based on the load on the Web servers. In another
`embodiment, the Web servers are capable of redirecting
`requests based on the load on the Web servers. In another
`embodiment, the traf?c management subsystem includes a
`manager for receiving Web server load information and
`communicating the Web server load information to the
`interceptor. In another embodiment, the traf?c management
`subsystem includes an agent for directing the Web servers.
`In another embodiment, the manager directs the agent to
`direct one of the Web servers to redirect requests. In another
`embodiment, the Web servers run on hosts, and each host
`includes an agent that is in communication With at least one
`of the Web servers on the host and each agent is also in
`communication With the manager.
`In another embodiment, the monitor includes a manager
`receiving Web page request information and storing the Web
`page request information in a database. In another
`embodiment, the manager receives Web page request infor
`mation from the one or more of the Web servers. In another
`embodiment, the manager receives Web page request infor
`mation from one or more agents each in communication
`With at least one of the Web servers. In another embodiment,
`the Web page request information is stored in a relational
`database. In another embodiment, the system also includes
`a console for displaying information to a system operator. In
`another embodiment, the includes a console that is capable
`of alerting the system operator to events. In another
`embodiment, the console is capable of retrieving the Web
`page request information from the database and displaying
`the Web page request information to the system operator.
`In another embodiment, the identi?er includes a manager
`that receives Web page request information and stores the
`request information in a database. In another embodiment,
`the manager receives noti?cation of events indicating prob
`lems With one of the Web servers. In another embodiment,
`the events received by the manager are sent by an agent. In
`another embodiment, the manager is capable of taking
`corrective action in response to noti?cation of events indi
`cating problems With one of the Web servers. In another
`embodiment, the manager noti?es a system operator upon
`the occurrence of an event. In another embodiment, the
`manager noti?es a system operator When automatic correc
`tive action taken in response to an event caused by a problem
`does not resolve the problem. In another embodiment, the
`system includes a version controller for updating Web pages
`on the Web servers.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`In the draWings, like reference characters generally refer
`to the same parts throughout the different vieWs. Also, the
`draWings are not necessarily to scale, emphasis instead
`generally being placed upon illustrating the principles of the
`invention.
`FIG. 1 is a block diagram of an embodiment of a Web
`service system according to the present invention.
`FIG. 2 is a ?oWchart describing the processing that occurs
`When an embodiment of the interceptor of FIG. 1 receives a
`request.
`
`Ex. 1007 / Page 15 of 27
`
`

`
`US 6,279,001 B1
`
`3
`FIG. 3 is a more detailed block diagram of an embodiment
`of the host and the manager of FIG. 1.
`FIG. 4 is a block diagram depicting the determination of
`queue length in an embodiment of a Web service system
`according to the present invention.
`FIG. 5 is a graph of the response time of the Web page
`request of FIG. 4.
`FIG. 6 is an embodiment of a console of FIG. 1 displaying
`the components of a Web service system according to the
`present invention in a tree vieW.
`FIG. 7 is an embodiment of a console of FIG. 1 displaying
`the components of a Web service system according to the
`present invention in an icon vieW.
`FIG. 8 is an embodiment of a console of FIG. 1 displaying
`performance information for a component of a Web service
`system according to the present invention.
`FIG. 9 is an embodiment of a console of FIG. 1 displaying
`an events log for a Web service system according to the
`present invention.
`FIG. 10 is a ?oWchart depicting the operation of an
`embodiment of a Watcher of FIG. 1.
`FIG. 11A is a block diagram of communication betWeen
`tWo components of FIG. 1 When no ?reWall is present.
`FIG. 11B is a block diagram of communication betWeen
`tWo components of FIG. 1 across an ideal ?reWall.
`FIG. 11C is a block diagram of communication betWeen
`tWo components of FIG. 1 across a one-Way ?reWall.
`FIG. 11D is a block diagram of communication betWeen
`tWo components of FIG. 1 across a one-Way ?reWall by
`saving a connection.
`FIG. 12A is a table showing the processing of Weighted
`load metrics into line intervals in an embodiment of the
`interceptor of FIG. 1 having six Web servers.
`FIG. 12B is a graph of the line intervals for the Web
`servers of FIG. 12A.
`
`DESCRIPTION
`
`I. OvervieW
`A system for serving Web pages has a plurality of Web
`servers and provides a system operator With features and
`tools to coordinate the operation of the multiple Web servers.
`The system can manage traf?c by directing Web page
`requests to available Web servers and balancing the Web
`page request service load among the multiple servers. The
`system can collect data on Web page requests and Web server
`responses to those Web page requests, and provide reporting
`of the data as Well as automatic and manual analysis tools.
`The system can monitor for speci?c events, and can act
`automatically upon the occurrence of such events. The
`events include predictions or thresholds that indicate
`impending system crises. The system can include crisis
`management capability to provide automatic error recovery,
`and to guide a system operator through the possible actions
`that can be taken to recover from events such as component
`failure or netWork environment problems. The system can
`present current information about the system operation to a
`system operator. The system can manage content replication
`With version control and data updates. Some or all of this
`functionality can be provided in particular embodiments of
`the invention.
`Referring to FIG. 1, a Web service system 90, includes
`various components 100—122. The various components
`100—122 of Web service system 90 can communicate over
`one or more computer netWorks. The physical location of the
`components 100—122 does not impact the capability or the
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`4
`performance of the system, as long as the communications
`links betWeen the various components have suf?cient data
`communication capability. The Web service system 90 can
`function across ?reWalls of various designs, and can be
`con?gured and administered remotely.
`The Web service system 90 manages one or more hosts
`100. Three hosts 100A, 100B, 100C, Which are shoWn as an
`example. An embodiment of the Web service system 90 can
`have any number of hosts 100. Each host 100 can be a
`computer system commercially available and capable of
`using a multi-threaded operating system such as UNIX or
`WindoWs NT. Each host 100 can have at least one netWork
`connection to a computer netWork, for example the Internet
`or an intranet, or any other netWork, that alloWs the host 100
`to provide Web page data in response to Web page data
`requests. Each host 100 includes at least one Web server,
`shoWn in the ?gures as 102A, 102B, 102C-1, 102C-2, .
`.
`. ,
`102C-x, and generally referred to as Web servers 102.
`The Web server 102 can be any Web server that serves Web
`pages in response to Web page requests made over a com
`puter netWork. In this context, a Web page is an electronic
`document that can be made available on a computer netWork
`such as the World Wide Web in response to a Web page
`request. An example of a Web page is a data ?le that includes
`computer executable or interpretable information, graphics,
`sound, text, and/or video, that can be displayed, executed,
`played, processed, and/or stored and that can contain links,
`or pointers, to other Web pages. TWo examples of such Web
`servers are commercially available as the Netscape Enter
`prise ServerTM and the Microsoft Internet Information Ser
`vices ServerTM. The Web server 102 is capable of receiving
`Web page requests from Web clients, also referred to as
`broWsers. A Web page request from a broWser can also be
`referred to as a “hit.” The broWsers can be operated by users,
`making Web page requests. BroWsers can also be operated
`by a computer or computer program, and make requests
`based on the computer’s programming. The Web page
`requests can be made using hypertext transfer protocol
`(“http”) format, and also can be made using other protocols
`that provide request capability. Often the Web page requests
`are part of a series of communications With the Web server
`102 involving several requests and responses, referred to as
`a session. The user interacts With a Web server 102 by
`making an initial request of the Web server 102, Which
`results in the Web server 102 sending a Web page in
`response. The Web page can contain information, and also
`pointers to other requests that the user can make of the Web
`server 102. Sometimes the requests are for information that
`must be retrieved from a database. Sometimes the request
`includes information to be stored in a database. Sometimes
`the request requires processing by the Web server 102, or
`interaction With another computer system. Sophisticated
`Web servers and broWsers can interact in various Ways.
`An aggregation of related Web pages presented to a user
`as a set of Web pages about a related topic, or from a
`particular source, usually, but not alWays from the same Web
`server 102, is referred to as an application. One example of
`an application is a set of pages providing information about
`a company. Another example of an application is a series of
`pages that alloW a user to conduct transactions With her
`savings bank. TWo sets of Web pages can be considered a
`single application, or they can be tWo separate applications.
`For example, a set of Web pages might provide information
`about a bank, and a customer service set of Web pages might
`alloW transaction of business With the bank. Whether a set of
`Web pages is considered to be one application or several
`applications is a decision made by the application designer.
`
`Ex. 1007 / Page 16 of 27
`
`

`
`US 6,279,001 B1
`
`5
`The Web service system 90 is capable of delivering one or
`more applications to users. The Web service system 90 can
`be con?gured so that some subset of the Web servers 102
`exclusively serve a single application. In one embodiment,
`some Web servers 102 serve a subset of the available
`applications, and other Web servers 102 can serve to other
`applications. In another embodiment, all Web servers 102
`serve all available applications.
`The Web pages presented to the user in response to Web
`page requests from the user’s Web broWser can be stored on
`the host 100 or on a ?le system accessible to the Web server
`102, or they can be generated by the Web server 102 by
`processing data available to the Web server 102. For
`example, for Web pages documents about a topic, the Web
`pages can be Written (designed) and stored in the Web server
`102 ?le system. In response to a Web page request, such a
`Web page can be sent to the user just as it is stored in the ?le
`system. In a banking transaction system, hoWever, it is likely
`that information about the user’s bank account Will be stored
`in a database. The Web server 102 can generate a Web page
`containing the user’s account information each time the user
`requests the page. Often, Web pages are stored partially in
`the ?le system, and partly are generated by the Web server
`102 When the request is made.
`Various techniques are used to store status information,
`also referred to as the “state” of a user’s session With the Web
`server 102. The user can develop a state during her inter
`action With the Web server 102 via the requests made to the
`Web server 102 and the Web pages received in response to
`those requests. The user’s state can, as one example, include
`information identifying the user. As another example, the
`state can include

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