`
`[19]
`6,028,848
`[11] Patent Number:
`[45] Date of Patent: Feb. 22, 2000
`Bhatia et al.
`
`
`
`USOO6028848A
`
`[54] APPARATUS AND METHODS FOR USE
`THEREIN FOR AN ISDN LAN MODEM
`UTILIZING INTERNAL DNS AND DHCP
`SERVERS FOR TRANSPARENT
`TRANSLATION OF LOCAL HOST NAMES
`TO IP ADDRESSES
`
`[75]
`
`Inventors: Rajiv Bhatia, Marlboro; Tayseer M.
`Elhindi, Ocean, both of N.J.; Siuling
`C. Zhang, Stony Brook, NY.
`
`[73] Assignee: 3Com Corporation, Santa Clara, Calif.
`
`[21] Appl. No.: 08/938,373
`
`[22]
`
`Filed:
`
`Sep. 26, 1997
`
`Int. Cl.7 ..................................................... H04L 12/66
`[51]
`[52] US. Cl.
`........................... 370/257; 370/401; 370/475
`[58] Field of Search ..................................... 370/254, 255,
`370/257, 401, 402, 475
`
`[56]
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`5,790,548
`5,918,016
`
`.................. 370/401
`8/1998 Sistanizadeh et a1.
`6/1999 Brewer et a1.
`....................... 395/2005
`
`OTHER PUBLICATIONS
`
`US. application No. 08/938,573, Bhatia et al., filed Sep. 26,
`11J9.S.7application No. 08/938,370, Bhatia et al., filed Sep. 26,
`11J9.S.7application No. 08/938,369, Bhatia et al., filed Sep. 26,
`11J9.S.7application No. 08/938,852, Bhatia et al., filed Sep. 26,
`11J9.S.7application No. 08/938,851, Bhatia et al., filed Sep. 26,
`11J9.S.7application No. 08/938,568, Bhatia et al., filed Sep. 26,
`1997.
`
`A
`
`US. application No. 08/938,572, Bhatia et al., filed Sep. 26,
`1997.
`
`US. application No. 08/852,659, Best et al., May 7, 1997.
`
`US. application No. 08/852,656, Best et al., May 7, 1997.
`
`K. Egevang et al., “The IP Network Address Translator
`(NAT)”, Internic Network Working Group, Request
`for
`Comments No. 1631, May 1994, pp. 1—9.
`
`Primary Examiner—Melvin Marcelo
`Attorney, Agent, or Firm—Michaelson & Wallace
`
`[57]
`
`ABSTRACT
`
`Apparatus, and accompanying methods for use therein, for
`an ISDN LAN modem (300) (and various aspects thereof)
`that is particularly, though not exclusively, suited for small
`user environments and which contains an internal ISDN
`
`router (305) having a self-contained network hub (340) for
`inter-connecting multiple network devices, such as work-
`stations (10),
`to each other through a local area network
`(LAN) and for permitting each of those devices to each gain
`access through the router to any one of a number of different
`remote networks. Advantageously, to facilitate and simplify
`its configuration,
`the LAN modem automatically adapts
`itself to a current network environment of a workstation
`connected thereto, via the LAN, and then communicates
`with that workstation through a browser executing thereat to
`obtain configuration information from a user situated at the
`workstation. Additionally, the LAN modem, through use of
`a multi-tiered routing hierarchy including both destination-
`and source-based routing, accommodates several modalities
`of network communication not heretofore possible in a
`conventional router. Specifically, several different worksta-
`tions can simultaneously communicate through the LAN
`modem with a common remote network (60) and share a
`single user account at a corresponding network service
`provider.
`
`28 Claims, 41 Drawing Sheets
`
`@
`
`
`
`310\
`
`ISDN INTERFACE
`314
`312
`(
`ISDN
`ANALOG
`TRANSCENER
`FHONTEND
`
`(t::)
`
`
`
`‘—‘
`
`
`
`
`
`
`
`
`
`
`
`
`634°
`CPU
`.
`.
`ETHERNET
`
`—
`:5 330
`HUB
`
`DISPLAV
`1
`
`
`LATCHJ —>LEOs
`SSOW
`335
`[350‘
`(—352
`ANALOG
`
`CODEC
`SLIC
`FRONT
`END
`
`
`L356
`
`”TM
`358
`ANALOG LINE
`RECEIVER
`L354
`INTERFACE
`
`O.
`
`
`
`—
`
`390
`J
`_—
`
`
`
`_ k—aso2
`MEMORY
`370
`
`DRAM
`J
`
`
`— 3721
`376
`
`FLASH
`WATCHDOG TIMER
`:9, SERIALEPHOM&
`V
`
`ANALOG LINE INTERFACE
`
`<—
`
`38°
`
`ISDN ROUTER
`
`40
`K [an
`’UINTEREAcE
`153
`
`15d
`
`251
`
`25
`
`2
`
`305
`J
`
`15b
`ETHERNET
`15
`PORTS
`
`15c
`
`ANALOG
`TELEPHONE
`INTERFACE
`,1
`ANALOG
`DEVICE
`PORTS
`25ANALOG
`TELEPHONE
`INTERFACE
`#2
`
`APPLE 1024
`
`APPLE 1024
`
`1
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 1 0f 41
`
`6,028,848
`
`xmozfimz”ml
`mkozmmmg:a!"
`
`
`
`Ezmmzmmm;C
`
`mm8?
`
`N
`
`$5.3x525228.m82:4/2
`
`mmAVif.”
`E25$9%Iof
`m“I.”
`
`
`
`mzoEmd:819.2528.“MI
`oo._<z<90.328“I?
`
`
`858mzoznmzm:ESQ.szfifimxmo;
`omFmgm?0
`
`8m\Nwe
`
`8
`
`2/.230225zom_/EmzfimurafimE
`
`
`
`xmmmvfiwwzof00$mEOa
`
`“.‘JmEVmm
`
`.2:oo._<z<
`
`3.“.
`
`mom(Eom
`
`8m.
`
`09<z<
`
`mzoznmd:
`
`mmo_>mo
`
`2
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 2 0f 41
`
`6,028,848
`
`\o_._m5n_8
`
`
`mmtmvmhxmmr85:26.aflm20m:
`
`onxwoimzITsmooz
`
`
`mzImmeFz<4
`
`xmozfimzmm08
`mkogmm2020mzzoomzon:z_«\x
`
`
`
`
`
`unix2353:<552me882528mmarmn:
`
`Fzmz<2mma
`
`3.85%EUIV/
`
`\‘
`
`a?m;
`
`Nmmm:
`
`<m.GE
`
`
`
`moo:OZFDOmmam;
`
`Fzmz<2mma
`
`mmmmoo<a_
`
`cow
`
`339593.85%
`
`medmfimmm0I“,“
`
`@w.
`
`mmmm:
`
`3
`
`azammmog225v
`
`¢.v.mm_.mmmmin,@W
`
`vEm:
`
`nor
`
`3
`
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 3 0f 41
`
`6,028,848
`
`mm.9...—
`
`$8253.25oz:
`
`mzoEzpmmoFzmmmta9mzopowzzoo
`
`Eozmm
`
`mmQesmm810:5Ium:28.
`
`x\Osman.$93
`
`25
`
`on
`
`/Edoflemm
`
`/my
`
`
`mum:mmmmm,//25$an9%.me5.832
`£93N...
`
`
`x8252ESEzo_h<._mz<E
`502mmmmmmoeq«33%n:#69a8Hzmzzoaw,‘
`
`
`mmmmoa<
`
`
`\\mmmmDovmmmmDcom
`
`
`
`n:o_s_<z>o.209
`
`xmozpmz
`
`
`
`Eozmmo__2<z>o.28
`
`
`
`Emzzgmmémmmmog
`
`szsEn:which.
`
`mummmmoqq
`
`4
`
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 4 0f 41
`
`6,028,848
`
`
`
`
`
`5:002omm<xm230$:
`
`
`
`mzo_5mzzoo8825525
`
`
`xmozrmz\\Emma0.5225#09,
`
`50.2mmJx2.0.2:Swede«$2.3
`
`Em23/8Em2.852\-IIa25$zom_\.I$mum:
`£953084.twoF.NE
`
`mm:5.me\85:26:32209m.525
`“Em:5:82IWNEm:8Em:mzo02:
`
`scum:omxmozrmzgagsages.$52§//\szInmzm:
`\\03%;“I.I\ex..\Fzmzzgm?,.17MWEm:
`
`
`\Fommrmammonze/.$:2
`III25
`oEfimzstmummmmofin:x.v._MEEEzopfimxmo;\.2
`
`
`895Emmmmoga.“I..Io9.52m.._oz_m9SwedeIfl.Emma
`
`
`“‘Ju
`
`
`
`ONGEmmwmmmonz
`
`...
`mm.3n:MEEEm52N2
`
`5
`
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 5 0f 41
`
`6,028,848
`
`@
`
`
`
`40
`ISBN
`U INTERFACE
`
`
`
`
`
`15a
`
`
`ETHERNET =-
`HUB _-
`
`15b
`
`ETHERNET
`PORTS
`15
`
`150
`
`15d
`
`251
`
`ANALOG
`FRONT
`
`ANALOG LINE
`INTERFACE
`
`ANALOG
`TELEPHONE
`INTERFACE
`#1
`
`ANALOG
`DEVICE
`PORTS
`25
`
`ANALOG
`TELEPHONE
`INTERFACE
`#2
`
`2
`
`
`
`
` ANALOG LINE INTERFACE
`
`25
`MEMORY
`370
`3502
`
`DRAM
`
`372
`
`376
`
`FLASH
`
`H SERIAL EPHOM&
`WATCHDOG TIMER
`
`380
`
`
`
`ISBN ROUTER
`
`FIG' 3
`
`305
`
`6
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 6 0f 41
`
`6,028,848
`
`<¢.OE
`
`
`
`
`
`meHOmtIOm<mm<>>._.u_0m._|_<mm>O
`
`mm<>>_>_m=u_
`
`m02<m3mm<
`
`mm0<z<§
`
`ZO_._.<03n_n_<
`
`OZDOEOMEOm
`
`ZO_._.<O_._n_n_<
`
`DZDOm0¥0<m
`
`>EO_>_m=>_
`
`7
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 7 0f 41
`
`6,028,848
`
`omw."88>.NEV
`
`8m:.8;
`
`$8ng\VJoa._ofifioo
`mowlva2m:..2568:93:80
`
`82%;Nov
`
`Esm3
`
`xE“\89$
`
`%E.@
`
`
`
`
`«mmwIFwwv_\\mm>®_ofiwmwchfiwmm._.<zSEES.
`59:“...xxr..xsoh
`
`
`.25mm.“wmv%{SN.52.»\28%.In:EaESE.mm><._m.0220._.wwmmv328388652$
`
`
`”=255%53m..xogfiam.2220aazaesmseason35.2on
`
`II_.Emu;£.s_9%.”_II"mmmooE\:35828_mmvmmvmin:
`I/\__omwt§§€§m?IIN?_2055a_“EE8333
`III_m?mgg8%Emséfisaa
`£50m
`.\oh"NE“
`
`
`
`
`
`
`
`555604<z<229m?G_H_555.258:95.80.......\#92.J8532.258.2%..unI
`
`
`
`
`g“SEE:;m2emasI”a:84<z<.E8.32wmflmmfin_oE
`mgoammEco;.22592525!
`
`
`8
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 8 0f 41
`
`6,028,848
`
`=8meow550880mmm
`
`
`
`28:958:865Emefizswmé:
`Evsaga
`
`mmm
`
`[If
`
`ONm
`
`8:86582:8:8
`
`8:53
`
`58:8:8
`
`8:855
`
`own
`
`
`
`EmefizsmmE:Emm5%
`
`52%6:8055%202mg889;525
`
`
`wzo=8amucooommnEn__\n_o.—EEEE
`
`FNV5vomv03Vmmvwww
`
`$32.#8;=82
`
`220¢a52E8;
`
`22:21x85
`
`.5032“.58:868:3%;25.8E:a:m_
`
`v.88.8558
`205?.2.52%
`
`=8:9%2Emm
`.Eb/
`
`2.9.82:24b]L2Ema$3$83
`cosmmmmmm05won
`
`.853:
`
`
`_o::Eo.mBan:5:2580mm
`205mm28mvm
`
`22.2%2Emm.Emmx85
`
`
`9555:5:E08
`2%”BEE?
`as22.25
`
`
`
`.525.mccmcoé
`
`
`
`Z<:_ZOO_u_n_<m._.O._.MDDmDme.j<OZDm_
`
`m.GE
`
`9
`
`
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 9 0f 41
`
`6,028,848
`
`mzo
`
`52$
`
`Fm?
`
`
`6:80$52:2055$82;
`=82.2.88.0,“E228
`
`5vom:03‘mmv
`
`.2822
`
`.225
`
`mm:N
`
`9225229.232::a:2=82ma2E2
`as:anew”25:0
`:85626563
`
`225m25.52%22222285
`
`9:33:5:32%
`Bow:232.20m25Q:022:32
`2::o._.222.
`
`22%:98
`
`8822
`
`
`
`8:86580:80:8
`
`0mm
`
`92
`
`{$221
`8280=80.20
`
`$82“.228222m
`
`
`22::6225
`222E23
`
`ombeam”652%AU!
`22.5282Emm28:085%E;
`
`0:382:2m82:2825
`
`
`
`
`
`meDOmmmZD0.:MDQn5._.m_m._._<OZDm_wHIV—H—
`
`0N0
`
`588m=8
`
`
`
`23$:22%=8m5
`
`0:me2:
`
`mz2:962:2
`
`EB882:
`
`22$22:2,“?on
`2288so
`
`=85%205328
`
`mmm
`
`
`28:968:865Emeisamm2::mmm
`\|\UIV283$
`
`03
`
`8:865
`
`25222222225Emm222m
`
`10
`
`10
`
`
`
`
`U.
`
`nw
`
`2
`
`e
`
`6,028,848
`
`
`
`
`
` #65.20mcm822:8umfloEmm2mm0:m9.
`553$28=8ldoVEEIv
`
`t5%=8
`
`{22820_so:EB
`
`2.oEmVF8:855
`
`monV=8
`
`2,“83$:8
`ESEV?“828mmm“
`
`hown538sL\20225stismmx.
`
`
`A1.
`
`
`
`“8&8=8ownM8:86:mEmF—cflfigwmxEn—PmmwQaww
`
`
`
`
`
`.EQEBaEvrow8v9:.mmwP5235:80Esom202mg$085S.mzo=8E203
`
`5:55.;
`
`525
`
`wmv
`
`11
`
`
`
`4.._<OZDw_02__>_OOZ_
`
`
`
`N..OE
`
`11
`
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 11 0f 41
`
`6,028,848
`
`c23555mzo
`
`5%286
`
`5386:.“8:835=8aw28:885=8
`
`mmm
`
`mzo
`
`seam
`
`Pm?
`
`
`
`
`6:50.232”.202m<ommmooi
`=82,85%“EmEE
`
`Se8v0:mmw
`
`$525
`
`$25
`
`mm:N
`
`62885
`
`=mozom_
`
`omw
`
`68:83
`
`“880m
`
`885m
`
`ESE
`
`55:22
`
`meaxm
`
`nowV!8:22:meVE:
`
`50:8”;05
`
`8:85:
`
`EEEZEEm
`
`3286
`
`ma.
`
`12
`
`
`
`
`
`m80%
`
`
`
`
`
`._.DOm_>=._.NIH:OFman.FOwZZOOmE.366209m.MV_H_
`
`12
`
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 12 0f 41
`
`6,028,848
`
`FIG. 9A
`
`>20 ENTER
`RESET
`
`INITIAL
`
`CCR'AQEEBGAPN
`
`905
`
`
`
`999
`\
`
`NO
`
`NORMAL
`OPERATION
`
`v3
`EXIT
`
`9O9
`
`
`
`FACI‘PORY
`
`
`DEFAULT
`STATE?
`
`ES907
`
`
`
`
`914
`UNICAST
`
`
`
`
`
`
`
`
`
`
`PACK
`RECEIVED
`FROM
`ETHEQRNET
`
`910
`
`YES
`
`915
`
`BROADCAST
`
`92o
`
`BROADCAST
`PACKET
`
`
`
`DHCP
`926
`
`
`DHCP DISCOVER
`
`
`
`CHECK
`DATABASE 416;
`SEND
`942
`
`DIDBIEIII
`
`938
`
`940
`
`DHCP REQUEST
`
`13
`
`929
`
`REéfilEST
`(35905“
`DIRECTED
`BROADCAST
`
`IBERIA.
`TIéfifi
`.
`
`=
`
`t
`
`13
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 13 0f 41
`
`6,028,848
`
`OBTAIN AN AVAILABLE
`IP ADDRESS FROM
`DATABASE 416
`
`SEND DHCPACK
`
`PACKET INTO
`ETHERNET
`
`
`
`
`SAVE WORKSTATION'S
`ETHERNET ADDRESS
`
`
`OBTAINED FROM
`
`DH PREQUEST PACKET)
`IN DATABASE 916
`
`945
`
`95°
`
`955
`
`928
`
`'1" EXIT
`
`NORMAL
`OPERATION
`
`973
`
`FIG. QB
`
`SEND ARP REQUEST PACKET
`SENDER IP = DIRECTED
`BROA CAST ADDRESS OF SUBNET;
`
`960
`
`
`
`
`
`ARP
`RESPONSE
`RECE’IVED
`
`YES
`
`966
`
`(ERROR CONDITION)
`
`TARGET IP = IPt); AND START ONE SECOND TIMER
`
`
`
`
`976 E
`
`STOP TIMER
`
`97°
`
`978
`
`YES
`
`14
`
`14
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 14 0f 41
`
`6,028,848
`
`93°
`
`SET LAN MODEM IP ADDRESS = TR IN DATABASE 416;
`SET SENDER IP AND ASSOCIATED ETHERNET
`ADDRESSES IN DATABASE 416;
`CALCULATE A SUBNET MASK THAT PUTS IPS AND TR
`ON THE SAME SUBNET AND CAN ACCOMMODATE
`THE LEAST NUMBER OF HOSTS (BUT NO LESS THAN 4);
`SAVE CALCULATED SUBNET MASK IN DATABASE 416;
`SAVE 3 MORE IP ADDRESSES (IN THE SAME SUBNET)
`IN DATABASE 416 TO ACCOMMODATE UP TO 3
`MORE WORKSTATIONS
`
`LONGER BE IN FACTORY DEFAULT STATE)
`
`INITIATE RESET OF LAN MODEM
`(WHEN IT COMPLETES RESET, IT WILL NO
`
`FIG. QC
`
`
`
`15
`
`15
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 15 0f 41
`
`6,028,848
`
`
`FIG. 10
`LOCAL APPLICATIONS
`ROUTING
`415
`418
`
`ARCHITECTURE ® ® ® ® J
`
`
`
`411
`
`421
`
`
`
`TO/FROM
`ETHERNEr
`LAN
`
`PRIMARY
`ROUTER (PFIIE)
`PROCEDUR
`
`SECONDARY
`ROUTER (SEQ
`PROCEDUR
`
`BR. To/FROM
`WAMS)
`
`40
`
`ISDN ROUTER
`
`1 10°
`
`1200
`
`305
`
`FIG. 11
`
`Rgflhé’RFI‘RR
`PROCEDUR
`1 100
`
`\
`
`
`0:1 ENTER
`
`
`RECEIVE INCOMING PACKET (FROM LAN,
`ONE OF LOCAL APPLICATION 1000 OR
`
`SECONDARY ROUTER PROCEDURE 1200)
`
`
` CHECKDESHNAHON
`IPADDRESSOFPACKET
`
`
`
`DESWNAHON
`IP
`ADDRESS
`?
`
`
`
`
`
`
`
`
`HOSTON
`IPADDRESSOF
`OTHERIP
`LOCALLAN
`LANMODEM
`ADDRESS
`
`
`
`
`
`SEND RECEIVED PACKET
`SEND RECEIVED
`
`
`TO APPROPRIATE
`figNEPFgggEgngDTgfingfir
`PACKET T0
`
`
`
`
`LOCAL APPLICATION
`(WITHIN WORKSTATION 10)
`SECONDARY ROUTER
`
`
`
`
`
`(IN APPLICATIONS 1000)
`PROCEDURE 1200
`
`
`
` 1150
`1160
`
`16
`
`16
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 16 0f 41
`
`6,028,848
`
`FIG. 12A
`
`9'4 ENTER
`‘
`
`SEéIéDLIIITDEPhRY
`PROCEDURE
`1200
`— CHECK DESTINATION lP ADDRESS OF PACKET
`
`RECEIVE INCOMING PACKET (FROM WAN OR
`PRIMARY ROUTER PROCEDURE 1100)
`
`1203
`
`1206
`
`\
`
`SEND
`1210
`1212
`
`
`
`PACKET TO
`
`
`
`
`DESTICgIFATION
`PFgMARY
`FROM WAN
`
`
`R UTER
`
`
`
`PACKET?
`(IP ADDRESS
`PROCEDURE
`
`
`
`1100
`INCOMING FROM
`= LAN MODEM
`
`
`
`PRIMARY ROUTER
`1214 OR LOCAL HOST)
`
`1215
`
`INCOMING
`
`
`
`
`
`IS
`
`ENTRY NOT
`
`
`
`FOUND IN DATABASE
`
`416 AND SOURCE NOT
`LAN MODEM ?
`
`
`
`1235
`
`
`
`SEND PACKET
`VIA THAT CALL
`
`1 236
`
`ENTRY FOUND IN
`DATABASE OR PACKET
`ORIGINATED FROM
`LAN MODEM
`
`1 230
`
`
`
`LOCAL HOST
`SET UP A MANUAL
`
`
`CALL ?
`
`1232
`N0
`
`1234
`
`YES
`
`
`IS
`PACKET FROM
`
`MODEM
`
`
`1237
`
`17
`
`17
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 17 0f 41
`
`6,028,848
`
`ACCESS HOST LIST 1300 TO DETERMINE WHICH
`NETWORK SERVICE PROVIDERS (SPs) ARE
`PERMITTED FOR THE LOCAL HOST
`
`SEARCH THROUGH PRIVATE NETWORK ENTRIES
`IN NETWORK SERVICE PROVIDER LIST 1350 TO
`DETERMINE IF DESTINATION IP ADDRESS OF PACKET
`MATCHES IP ADDRESS IN NETWORK ID OF ANY
`SUCH ENTRY
`
`SEARCH ENTRIES IN NETWORK SERVICE PROVIDER
`LIST 1350 THAT ARE PERMITTED NETWORK SERVICE
`PROVIDERS FOR THE LOCAL HOST FOR SUCH A
`NETWORK SERVICE PROVIDER THAT IS AN ISP
`
`INTERNET ACCESS
`
`SEARCH ENTRIES IN NETWORK SERVICE PROVIDER
`LIST 1350 THAT ARE PERMITTED NETWORK SERVICE
`PROVIDERS FOR THE LOCAL HOST FOR SUCH A
`PROVIDER THAT IS A PRIVATE NETWORK WITH
`
`FIG. 128
`
`18
`
`18
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 18 0f 41
`
`6,028,848
`
`1256
`
`1261
`
`N0
`
`DISCARD
`PACKET
`
` 1 264
`
`
`
`
`ACCESS SOURCE BASED ROUTING TABLE 446 TO
`DETERMINE WHETHER AN ISDN CALL IS CURRENTLY
`
`
`ESTABLISHED TO THE NETWORK SERVICE PROVIDER
`
`
`(PRIVATE NETWORK OR ISP)
`
`
`
`1238
`
`
`IS CALL
`
`ROUTE PACKET
`ESTABLISHED
`TO SP VIA
`
`
`
`TO THIS
`THE EXISTING
`
`
`
`SP ?
`CALL
`
`
`
`
`FIG. 12C
`
`N0
`
`1267
`
`QUEUE PACKET UNTIL AN ISDN CALL
`CAN BE PLACED TO THIS SP
`
`
`
`
`
`
` 1275
`
`PLACE AN ISDN CALL TO THIS SP (CALL SETUP -
`FIG. 5); AND AFTER CALL IS ESTABLISHED,
`ROUTE PACKET OVER THIS CALL
`
`SEARCH THROUGH PRIVATE NETWORK ENTRIES
`IN NETWORK SERVICE PROVIDER LIST 1350
`TO DETERMINE IF DESTINATION IP ADDRESS OF
`PACKET MATCHES NETWORK ID OF ANY SUCH ENTRY
`
`1276
`
`FIG. 12
`
`19
`
`19
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 19 0f 41
`
`6,028,848
`
`1277
`
`YES
`
`
`
`
`SEARCH ENTRIES IN NETWORK SERVICE PROVIDER
`LIST 1350 THAT ARE PERMITTED NETWORK SERVICE
`
`PROVIDERS FOR THE LOCAL HOST FOR SUCH A
`
`NETWORK SERVICE PROVIDER THAT IS AN ISP
`
`
`
`1299
`
`
`
`
`
`
`
`SEARCH ENTRIES IN NETWORK SERVICE PROVIDER
`LIST 1350 THAT ARE PERMITTED NETWORK SERVICE
`
`PROVIDERS FOR THE LOCAL HOST FOR SUCH A
`PROVIDER THAT IS A PRIVATE NETWORK WITH
`INTERNET ACCESS
`
`
`
` ACCESS SOURCE BASED ROUTINE TABLE 446 TO DETERMINE
`
`
`
`
`WHETHER AN ISDN CALL IS CURRENTLY ESTABLISHED TO
`THE NETWORK SERVICE PROVIDER (PRIVATE NETWORK OR ISP)
`
`
`
`
`
`
`IS CALL
`ROUTE PACKET
`ESTABLISHED
`
`TO SP VIA
`
`
`TO THIS
`THE EXISTING
`
`
`
`SP ?
`CALL
`
`
`
`
`FIG. 12D
`
`DISCARD PACKET
`
`20
`
`20
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 20 0f 41
`
`6,028,848
`
`EmmamNamEm
`
`
`mwmmoo<mmmmoo<ms_<z
`
`
`
`mo_>mmwxmoFEmz
`
`
`
`wzoamimmmmmoSomn.
`
`Ezmmrmmz=._o<s_/.50:
`
`.50:
`
`F.Imm;mImm;NImm;FImm;
`
`vam>mImm;«Imm>FImm>
`
` mImmmmoo<$NI0;ziOzxz:HSamoa:'9zHozxz:ITEM:
`
`12
`
`comF
`
`
`
`mImmmmoo<EmI0mzgozxz:
`
`F.mmmmoEn:I:zaozxza
`
`
`
`EImmmmoo<EEIom2>>ozx23
`
`Am5mmfimkhhmmuftgv
`<m.F.GE
`
`21
`
`
`
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet21 0f41
`
`6,028,848
`
`
`
`
`
`>Ezmwmm$5505$5505$0505$0505
`
`
`
`55memo_>mm_wmo_>mmmmo_>mm_w
`>m.p__.zw>E.zm>m._.zm
`
`6mm_
`
`$5505nom_2<z
`
`mzozmmdk292
`
`
`
`mumssz>mo.5mm_o
`
`omQSmmEQmum:
`
`m._.<>_m_n_:0mm_
`
`wxmoEmz
`
`
`w_zmnmwn:
`
`Emfiwmbo“Ezmmhz
`
`
`
`mm:.GE
`
`xmozfimz
`
`mosmmm
`
`$5595
`
`5...
`
`zitzc
`
`2m<_>
`
`28no9x8252zmummn:
`
`aSmw<m<ba
`
`2228Emam.
`mamaEEOE”a.mszz
`
`:25?52V
`
`>EzmF$95865%
`
`22
`
`xmoEmz285029:2:me
`
`
`
`
`
`
`
`
`BEE;mama:E2552Om_.0E
`
`
`25mzmmzm0amammm“o32«2TI
`
`...amwmofi2:mm?omm<m-zo:<z:mmo
`
`
`
`39.?62:3an
`
`
`Eafimo0.3.9E9
`mmdoz_I;z<\IN?
`
`
`
`22
`
`
`
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 22 0f 41
`
`6,028,848
`
`58mo
`Nm.Fe
`
`dzz<:o-m
`
`
`
`E9232Emznz
`
`10n_n_n_monan.
`
`
`
`1231.5221231.512
`
`$1.5$1.5
`
`:68r\llrlj
`meow?E89JJmama8ng
`$27213
`m3m4m<._.GZPDOEQmm<m-w0m30mDMZ..0?”—
`
`
`
`._mzz<zo.m
`
`dzzéoé
`
`mm.éEmssz
`
`10mm;
`
`1231.522
`
`mm.éEmssz
`
`ismmo
`
`10n_n_n_
`
`1231.532
`
`dzqummzzéi
`
`
`
`$22,.$232
`
`mm.5:«m.5:
`
`10an:10an:
`
`
`
`1231.5321231.532
`
`
`
`250:mo“.
`
`N50:m8
`
`F50:mo;
`
`\luj
`$8?J58me
`1|]
`
`$8va:ommFJ
`
`mommr
`
`F82
`
`
`
`$1.5
`
`mama
`
`10“.91103.52
`
`mm
`
`1m15
`
`mo._m=n_
`
`E15E15
`
`modEmama
`
`
`
`0mmr
`
`8196
`
`Nmmw<._.<m_
`
`23
`
`23
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 23 0f 41
`
`6,028,848
`
`1420
`
`
`MIIECN'SECP
`
`
`REQUEST PACKET AND
`No
`
`MACHINE NAME IS
`
`
`NOT EQUALTO
`
`NAME IN HOST
`
`ENTRY
`?
`
`
`
`
`REPLACE MACHINE
`
`NAME IN HOST ENTRY
`
`
`
`
`
`WITH HOST NAME IN
`DHCP REQUEST
`
`PACKET
`
`
`ASSIGN IP ADDRESS
`FROM HOST ENTRY
`TO HOST; SEND IP
`ADDRESS TO HOST,
`
`VIA DHCPACK PACKET
`
`0:0 EXIT
`
`1410
`
`DHCP
`INDUCED
`IP ADDRESS
`Paggggng
`ADDRESS
`
`HOST = ETHERNET
`ADDRESS OF HOST
`
`'N ”103335“
`
`-
`1417
`NO
`
`fl
`
`YES
`
`,
`EXIT v.0
`
`NO
`
`
`1442
`
`
`
`
`1440
`FREE
`
`
`HOST
`ENTRY IN
`
`HOST LIST
`1425
`1445
`1444
`
`
`NAMEFIN
`
`DH
`
`REQUEST
`?
`
`YES
`
`MACHINE
`
`1430
`
`
`
`YES
`
`
`REPLACE MACHINE NAME IN
`FREE ENTRY WITH HOST NAME
`
`IN DHCP REQUEST PACKET
`
`1460
`
`REPLACE ETHERNET ADDRESS IN
`HOST ENTRY WITH ETHERNET
`ADDRESS IN DHCP REQUEST PACKET
`
`1470
`
`ASSIGN IP ADDRESS FROM HOST ENTRY
`TO HOST; SEND IP ADDRESS TO
`HOST VIA DHCPACK PACKET
`
`0:0 EXIT
`
`24
`
`24
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 24 0f 41
`
`6,028,848
`
`'11 ENTER
`
`FIG. 15A
`
`
`1502
`
`
` NO DNS
`QUERY
`
`PACKET?
`
`
`YES
`DNS QUERY
`1 504
`RECEIVED
`
`
`IS
`HOST NAME
`IN QUERY =
`“LAN MODEM"
`?
`
`1503
`
`
`
`
`
`
`
`1 506
`
`
`
`DNS INDUCED
`IP ADDRESS
`REQUEST PROCEDURE
`1500
`
`FORM DNS REPLY PACKET WITH IP
`ADDRESS OF LAN MODEM; AND
`SEND DNS REPLY PACKET TO
`TCP/IP PROCESS 425 FOR
`ROUTING To LOCAL HOST
`
`1510
`
`V
`w EXIT
`
`FORM DNS REPLY PACKET WITH IP
`ADDRESS OF CORRESPONDING
`HOST 0N LAN; AND SEND DNS
`REPLY PACKET T0 TCP/IP PROCESS
`425 FOR ROUTING To LOCAL HOST
`
`
`
`YES
`
`1508
`
`N0
`
`1507
`
`1512
`
` HOST NAME
`IN QUERY = A
`HOST ON THE
`
`1513
`
`YES
`
`
`LAN ?
`
`
`1514
`
`NO
`
`'
`’4 EXIT
`
`1516
`
`OBTAIN SOURCE IP
`ADDRESS OF HOST FROM
`DNS REQUEST PACKET
`
`1520
`
`GIVEN SOURCE IP ADDRESS OF
`HOST, ACCESS CORRESPONDING
`ENTRY OF HOST FROM HOST LIST
`
`1300
`
`1 523
`
`1526
`
`1530
`
`
`HOST KNOWN
`
`(ENTRY7EXISTS)
`
`
`
`
`
`
`N0
`
`1527
`
`DISCARD
`
`v
`
`1528
`
`YES
`
`25
`
`25
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 25 0f 41
`
`6,028,848
`
`1533
`
`
`HAS
`
`
`LOCALHOST
`SET UPA
`
`
`
`1538
`
`YES
`
`1534
`
`CHANGEDESHNAHON
`IP ADDRESS OF THE
`INCOMING PACKET; AND
`SEND RESULTING PACKET
`
`VIA THAT CALL
`
`'3
`EXIT
`
`DETERMINE FROM HOST ENTRY IN
`HOST LIST 1300, SET OF PERMITTED
`NETWORK SERVICE PROVIDERS
`
`FOR HOST
`
`1540
`
` 1503
`
`SEARCH THROUGH ALL PRIVATE NETWORK
`ENTRIES IN NETWORK SERVICE PROVIDER
`
`
`LIST 1350; DETERMINE IF DOMAIN NAME
`
`IN DNS REQUEST MATCHES DOMAIN
`NAME OF ANY NETWORK SERVICE PROVIDER
`
`
`
`
`
`1543
`
`
`
`
`
`
`
`
`SEARCH ENTRIES IN NETWORK SERVICE
`PROVIDER LIST 1350 THAT ARE PERMITTED
`
`NETWORK SERVICE PROVIDERS FOR THE
`
`LOCAL HOST FOR SUCH A NETWORK
`
`SERVICE PROVIDER THAT IS AN ISP
`
`1 550
`
`
`
`1554
`
`1 555
`
`NO
`
`FIG. 158
`
`26
`
`26
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 26 0f 41
`
`6,028,848
`
`1555
`
`FIG. 150
`
`SEARCH ENTRIES IN NETWORK SERVICE
`PROVIDER LIST 1350 THAT ARE PERMITTED
`NETWORK SERVICE PROVIDERS FOR THE
`LOCAL HOST FOR SUCH A PROVIDER THAT
`
`IS A PRIVATE NETWORK WITH INTERNET ACCESS
`
`1558
`
`1 565
`
`1560
`
`1 564
`
`N0
`
`1531
`
`1 562
`
`YES
`
`EXIT
`
`SEND DNS REPLY PACKET
`TO HOST WITH ERROR
`INDICATION
`
`,
`N
`
`ACCESS SBRT 446 IN DATABASE 416 TO
`DETERMINE WHETHER AN ISDN CALL IS
`CURRENTLY ESTABLISHED TO THE NETWORK
`
`1566
`
`SERVICE PROVIDER (PRIVATE NETWORK OR ISP)
`SP ? INTO DNS OUERY PACKET AS
`ROUTING T0 REMOTE DNS SERVER
`1578
`
`1503
`
`157°
`
`
`
`IS CALL
`ESTABLISHED
`
`
`TO THIS
`
`
`1572
`NO
`
`YES
`
`1571
`
`QUEUE DNS REQUEST PACKET
`IN WA'T'NG OUEUE
`1577
`
`PLACE AN IS DN CALL TO THIS
`NETWORK SERVICE PROVIDER
`(CALL SET UP - FIG. 6); ONCE CALL
`IS FULLY SETUP, REMOVE DNS
`QUERY PACKET FROM QUEUE
`
`1 574
`
`ACCESS FROM SP LIST 1350. IP
`ADDRESS OF REMOTE DNS SERVER
`FOR THIS NETWORK SERVICE
`PROVIDER; AND SUBSTITUTE IP
`ADDRESS OF DNS SERVER (DsInIP)
`
`DESTINATION lP ADDRESS
`
`1576
`SEND DNS OUERY PACKET
`TO TCP/IP PROCESS 425 FOR
`
`0'.
`. EXIT
`
`’10 EXIT
`
`27
`
`27
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 27 0f 41
`
`6,028,848
`
`NO
`
`1581
`
`FIG. 15D
`
`1586
`
`1503
`1580
`
`
`
`MESSAGE
`FROM SR
`450?
`
`
`
`1582
`YES
`
`
`
`
`1 587
`ERROR
`WAS
`
`MESSAGE
`vo G
`CALL JUST
`N0
`
`
`
`RECEIVED
`SETUP T0
`‘
`
`NO
`3p 7
`1 584
`?
`(OgBUSYOR
`YES
`1585
`1 592
`YES
`NO FREE
`1 588
`-
`STOP IDLE TIMEOUT
`B CHANNEL)
`TIMER, IF RUNNING
`SEND DNS REPLY
`PACKET TO HOST
`
`ADDRESS OF REMOTE DNS SERVER
`
`
`ACCESS FROM SP LIST 1350, IP
`
`
`
`
`
`
`
`
`SET SHARED
`VARIABLE T0
`REFLECT SPECIFIC
`
`
`ERROR CONDITION
`(FOR ACCESS BY
`
`WEB SERVER 412)
`
`
`
`
`
`
`
`
`
`
`
`159°
`
`1 591
`
` WITH IP ADDRESS
`OF LAN MODEM
`FOR THIS SELECTED NETWORK
`1593
`SERVICE PROVIDER; REMOVE DNS
`QUERY PACKET FROM QUEUE;
`AND SUBSTITUTE IP ADDRESS OF DNS
`SERVER (Dstan) INTO DNS OUERY
`PACKET AS DESTINATION ADDRESS
`
`
`
`
`
`
`
`
`
`SEND DNS QUERY PACKET
`TO TCP/IP PROCESS 425 FOR
`1595
`ROUTING TO REMOTE DNS SERVER
`
`1595
`1594
`
`OF IDLE TIME-OUT
`INTERVAL
`
`
`1 597
`YES
`
`
`
`,
`EXIT v.1
`
`93 EXIT
`
`
`
`02¢
`N0 EXIT
`
`
`
`SEND A DNS REPLY PACKET
`HAVING A SUITABLE ERROR
`INDICATION FOR EVERY
`
`QUEUED PACKET BACK
`
`TO LOCAL HOST
`
`
`’3 EXIT
`
`
`
`
`
`
`1 598
`
`FIG. 1 5
`
`28
`
`
`
`28
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 28 0f 41
`
`6,028,848
`
`ENTER (SYSTEM RESET)
`
`RANDOM ERRORS ATTEMPT TO
`WRITE INTO FLASH 376
`
`r ---------------
`ASSUME INITIAL STATE:
`
`
`FIRMWARE UPGRADE PROCESS IS NOT
`
`RUNNING; KEY IS CLEARED; AND FLASH
`376 SET TO READ-ONLY MODE
`
`1690 : RANDOM ERRORS ATTEMPL
`.TO CHANGE MODE 0F FLAS
`K;
`375 T0 BEAP/WR'TE
`k1680
`
`
`
`
`
`
`
`FIRMWARE
`
`
`UPGRADE PROCESS
`
`
`INVOKED ?
`ASSUME
`
`UPGRADE
`
`YES
`1625
`STATE
`
`DEFINE KEY; AND START
`FIRMWARE UPGRADE TIMER
`
`
`
`
`RECEIVE
`
`FLASH WRITE
`REQUEST ?
`
`
`
` FU PROCESS
`TIMEOUT
`
`‘65
`
`
`
`UPDATE FLASH 376 WITH NEW CODE RECEIVED FROM
`HOST OR REMOTE CLIENT VIA TCP/IP PROCESS 425 '
`
`167°
`
`UPDATE
`COMgLE-I'E
`YES
`
`29
`
`I I
`
`I
`:
`.
`.
`
`: IIIIIIll -
`
`_ _ _ _
`
`GEN ERATE
`SYSTEM
`CHECK
`EXCEPTION
`
`(RESET SYSTEM
`AFTER CHECK
`EXCEPTION IS
`RECOGNIZED
`BY O/S 4010)
`
`FIG. 1 6
`
`FIRMWARE
`UPGRADE
`PROCESS
`402
`
`29
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 29 0f 41
`
`6,028,848
`
`
`v14 ENTER
`
`START PROCESS
`(LOWEST PRIORITY, PRE-EMPTABLE)
`
`
`SET POINTERS:
`
`
`FLASH_PTR <— STARTING ADDRESS
`
`
`(BEGINNING) IN FLASH MEMORY
`
`
`
`
`RAM_PTR <— STARTING ADDRESS
`(BEGINNING) IN DRAM MEMORY
`
`1710
`
` MOVING STORED
`
`DATA/PROGRAM,
`
`e.g. UPGRADE IN
`
`PROEESS
`
` COPY CONTENTS OF
`
`PRESENT LOCATION
`IN FLASH MEMORY
`INTO PRESENT
`
`LOCATION IN DRAM
`
`MEMORY:
`
`DRAM (RAM_PTR)
`
`<— FLASH (FLASH_PTR)
`
`
`
`
`INCREMENT POINTERS:
`
`
`1 750
`FLASH_PTR AND RAM_PTR,
`
`
`
`TO NEXT LOCATION:
`FLASH_PTR <— FLASH_PTR + 1
`
`
`RAM_PTR <- RAM_PTR + 1
`
`
`
`1700 YES
`
`FIG. 1 7
`
`FIRMWARE
`
`ASSURANCE
`MANAGER
`PROCESS
`
`
`H.518IIEFD
`EXECUTABLE IN
`FLASH MEMORY
`7
`
`1760
`
`30
`
`30
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 30 0f 41
`
`6,028,848
`
`$6352
`
`mcwmmmfimm.mag83€38m:V83.a9%:.2anme“333%$38$252
`
`
`2258mm3382;mm.mm?$825mommr
`
`was;ascaBa252385%?”9.285n__\n_8.5w?
`
`
`
`
`Ohm
`
`ommrESE9mm-
`
`ESE,mm;l
`
`9..GE
`
`31
`
`
`
`mama.39m
`
`9V9.mew_.
`
`fl
`
`Snags”.’225:2
`
`0%;25m:.$9352“83$
`
`$82;
`
`mow_.
`
`31
`
`
`
`
`
`
`
`
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 31 0f 41
`
`6,028,848
`
`’24 ENTER
`
`GET Request from
`browser for
`Document Manual.htm
`
`1910
`
`FIG. 19
`
`STATIC PAGE
`PROCESSING
`
`1 830
`
`Check it the document is
`in the Post/Send Table -
`this is a table of
`
`
`
`documents requmng
`additional processing
`
`1930
`
`No entry found -
`Check Repository
`
`
`
`DOCUMENTS Requiring processing TABLE
`Name
`Post_function Send_function
`
`
`LAN_HTM waostLan() wwSendLan()
`WAN_HTM waostWan() wwSendWan()
`
`
`1925 J
`1 820
`
`1920
`
`1922
`
`1925
`
`1 932
`
`MANUAL_HTM 1 936
`
`Repository of documents
`LAN_HTM = (0x67,....
`WAN_HTM =
`CALLCTRL_HTM =
`DCALLPRM_HTM =
`
`1935
`
`MAN UAL_HTM is send to
`the browser
`
`1940
`
`*3 EXIT
`
`1 860
`
`32
`
`32
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 32 0f 41
`
`6,028,848
`
`>3 ENTER
`
`GET R uest from
`browser or
`Document lan.htm
`
`2010
`
`FIG. 20
`
`DYNAMIC PAGE
`FORMATION
`
`1 840
`
`Check if the document is
`in the Post/Send Table -
`this is a table of
`documents requiring
`additional processing
`
`2022
`
`2020
`
`2030
`
`Send function found -
`call wwSendLan()
`
`2026
`
`2040
`
`wwSendLan() creates an HTML
`Egg? based on the template -
`HTM and the relevant
`data in the profiles
`
` 2042
`
`2046
`
`Modified LAN_HTM is send
`to the browser
`
`205°
`
`'20 EXIT
`
`DOCUMENTS Requiring processing TABLE
`
`Name
`
`Post_lunction Send_function
`
`
`
`LAN_HTM waostLan() wwSendLan()
`
`WAN_HTM waostWan() wwSendWan()
`
`
`............
`1820
`
`
`Repository of documents
`LAN_HTM = (0x67,....
`WAN_HTM =
`CALLCTRL_HTM =
`DCALLPRM_HTM =
`
`1860
`List 1350)
`
`PROFILES
`LAN Profile (Host List 1300)
`WAN Profile (Network Service Provider
`
`1 870
`
`33
`
`33
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 33 0f 41
`
`6,028,848
`
`2:0 ENTER
`
`POST Message from
`browser for
`Document wan.htm
`
`21 1 O
`
`FIG. 21
`
`POST
`PROCESSING
`1850
`
`Check if the document is
`in the Post/Send Table -
`this is a table of
`documents re uirin
`
`
`
`additional ”03933539
`
`2120
`
`2122
`
`2130
`
`POST function found -
`call waostWan()
`
`2126
`
`2140
`
`
`
`waostWan() processes
`
`
`received data - places them in
`WAN profile, and creates
`
`
`WAN_HTM document based on
`the received data and existing
`
`
`documents in the repository
`
`2142
`
`2146
`
`Modified WAN_HTM is send
`to the browser
`
`215°
`
`'2.
`
`EXIT
`
`DOCUMENTS Requiring processing TABLE
`Name
`Post_lunction Send_function
`
`
`
`LAN_HTM waostLan() wwSendLan()
`
`WAN_HTM waostWan() wwSendWan()
`
`
`1820
`
`
`
`
`Repository of documents
`LAN_HTM = (0x67,....
`WAN_HTM =
`CALLCTRL_HTM =
`DCALLPRM_HTM =
`
`
`
`
`
`
`
`1860
`“‘—
`
`
`PROFILES
`
`]_8_7_0
`
`lei/AENPISOfifl'? (Host List 1300)
`° 6 ‘Efil‘fifim P'°"'de'
`
`r
`
`r
`
`'
`
`34
`
`34
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 34 0f 41
`
`6,028,848
`
`Wizstat.htm
`<!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML/lEN">
`<html>
`
`F:|(3. £222
`
`<head>
`<meta http-equiv=“Content-Type"
`content="text/html; charset=iso-8859-l">
`<meta name=“GENERATOR" content="Microsoft FrontPage 2.0">
`<tit1e>SPID Wizard<ltitle>
`</head>
`
`2200
`‘//
`
`<body bgcolor="#00FFFF">
`2215
`_REFRESH_ ‘—— 2210
`<p align="center"><font color=“#0000FF" size="6"§:EEEEE:</font><lp>
`
`_PICTUREL_<——2220
`
`2225
`A
`<p a1ign="center"><font size="4"><strong>_TEXT1_<lstrong><lfont></p>
`
`<p align="center"><font size="4"><strong>
`_PICTURE2_<—-22301
`_TEXT2_ <~—__.2235
`
`_PICTURE2_
`</strong></font></p>
`
`22302
`
`<p align="center“> </p>
`_BUT'I‘ON_ <—— 224
`</body>
`O
`</htm1>
`
`FIG. 23
`
`REFRESH_
`
`-*-2210
`
`_PICTURE1_ <—2220
`
`_TITLE_ “2215
`
`2300
`
`_TEXT1_ “2225
`
`_PICTURE2_ _TEXT2__P|CTURE2_
`\ *JW
`22301
`2235
`22302
`
`BUTTON_
`
`<— 2240
`
`35
`
`35
`
`
`
`US. Patent
`
`m
`
`6,028,848
`
`
`
`
`
`m__2__u£_o_;__=a.8.__§nem9%388.3..Neaoa-.3
`
`AXEmEE
`
`oowm
`
`
`
`ucmehmmuéd-82:5965%
`
`vm.6.“—
`
`
`2238
`
`as“.2585
`
`
`
`an;.__2.:._233$
`
`
`
`:22agm?5u:852,was».2%EEm223810«9305.sxfl.Meaganou52?.mmafia-5:90.:
`
`
`.5252M.3:.1828.35%at?3.35..n«as»M52mm
`omvmmom:8_.u«230:
`8%BE.5was9.54.n=on
`
`
`IlIInseam“ou658:
`
`
`
`
`
`5$23ngmovvm.225E8:33«28828as.2955053._E._._53
`
`36
`
`__EmN_>>mm:H2E.
`
`
`
`
`
`Emu;9:323m05@5828.mmfimzm>$920
`
`orvm
`
`52;-$2.9.220£8.389823:5m2
`
`
`68:25.3265as.8:05s8.39%82ea
`
`
`36
`
`
`
`
`
`
`
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 36 0f 41
`
`6,028,848
`
`Wizstat.htm
`<3DOCTYPE HTML PUBLIC “-//IETF//DTD HTML/lEN">
`<html>
`
`FIG. 25
`
`2500
`/
`
`<head>
`<meta http-equiv="Content-Type"
`content="text/html; charset=iso-8859-1">
`<meta name=“GENERATOR” content="Microsoft FrontPage 2.0">
`<title>SPID Wizard<ltitle>
`</head>
`
`<body bgcolor="#00FFFF">
`
`<p align=“center"><font color="#0000FF" size=“6“>ISP Wizard</font></p>
`
`<p a1ign="center“><font size="4"><strong>Logging on to the ISP failed!
`</strong></font></p>
`
`<p align="center"><font size="4"><strong>
`<img src=“ballred.gif" width="13" height="13“>
`Please verify your Telephone NUmber, User ID, Password and try again.
`<img src=“ballred.gif“ width=“13" height="13">
`</strong></font></p>
`
`<p a1ign="center"> </p>
`<form method="POST" > <!-—webbot bot="SaveResu1ts" u-file="_private/fo
`rm_resu1ts.txt" s-format=“TEXT/CSV" s-label-fields="TRUE" --><p align:
`“center“><input type="submit" value=“Try Again" name=“Bl"> <input type
`</body>
`</html>
`
`37
`
`37
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 37 0f 41
`
`6,028,848
`
`FIG. 26
`
`ISP Wizard
`
`Logging on to the ISP failed!
`
`ARRAY1 (PAGE COMPONENT 1,
`e.g. ARRAY 3100)
`
`'Please verify your Telephone Number, User ID, Password and try again!
`MEMORY
`
`REPOSITORY
`
`1 860
`
`FIG. 31
`3100\ (Em memmn =
`0x00, 0x00, 0x0b, 0x01, 0x48, 0x54, 0x54, 0x50, 0x2f, 0x31
`0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x20, 0x4f, 0x4b, 0x0d
`0x0a, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x3a, 0x20, 0x4f
`I...
`O...
`O...
`
`0x3e, 0x0d, 0x0a, 0x3e, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e
`8x8d, 0x0a, 0x3e, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, Ode
`x a
`
`38
`
`38
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 38 0f 41
`
`6,028,848
`
`Dynamic Page Formation
`refresh set to 3 seconds - progress bar implementation
`2710 \
`f- 2720
`
`
`
`
`
`ISP Wizard
`
`Loading...
`
`27101
`
` 27201
`2720 2
`27203
`
`
`
`Globa_| Variables reflecting the state of
`
`the Wizard
`
`
`
`
`Title = "ISP Wizard"
`Text1 = "Loadin
`PictureZ = " DO
`Text2 = 0
`Button = 0
`Refresh = 3
`Picture1 = 0
`
`
`
`
`
`
`
`3 seconds later...
`
`ISP Wizard
`
`_
`Loading...
`. .
`
`27102
`
`Global Variables reflecting the state of
`the Wizard
`Title = "lSP Wizard"
`Text1 = "Loadin
`Picture2 = "DO .DOT"
`Text2 = 0
`Button = 0
`Refresh = 3
`Picture1 = 0
`
`3 seconds later...
`
`ISP Wizard
`
`I
`
`.
`Loading...
`o o o
`
`27103
`
`Global Variables reflecting the state of
`the Wizard
`Title = "ISP Wizard“
`Text1 = "Loadin
`Picture2 = "DO ,DOT,DOT"
`Text2 = 0
`en: 03
`e res =
`Picture1 = 0
`
`FlC5.2?7
`
`39
`
`39
`
`
`
`US. Patent
`
`Feb. 22,2000
`
`Sheet 39 0f 41
`
`6,028,848
`
`FIG. 28
`
`FILE
`CREATION
`PROCESS
`
`2800
`
`\
`
`V0 ENTER
`‘
`
`
`
`SEARCH DIRECTORY FOR HTML FILES AND
`FILES FOR OTHER WEB PAGE COMPONENTS,
`Le. FILES WITH EXTENSIONS HTML, HTM,JPG,
`GIF, AU AND OTHERS
`
`2810
`
`2815
`
`SELECT FIRST FILE
`
`
`
`
`COMPUTE LENGTH OF FILE; AND DETERMINE
`FILE TYPE (BASED ON EXTENSION)
`
`FORM HEADER INCLUDING LENGTH, SERVER
`ID, FILE TYPE, DATE AND OTHER PERTINENT
`INFORMATION AND PREPEND TO EACH FILE
`
`
`
`CREATE SEPERATE DOCUMENT ARRAY
`CONTAINING FILE WITH PREPENDED HEADER
`
`2843
`
`2835
`
`ALL
`
`FILES
`
` PROCESSED ?
` 2836
`2838
`YES
`
`2840
`
`SELECT
`NEXT FILE
`
`
`
`2845
`
`CREATE A SOURCE (.0) FILE CONTAINING
`ALL DOCUMENT ARRAYS
`
`INCLUDE IN SOURCE FILE, A LIST OF
`PAIR ENTRIES FOR EACH ARRAY
`
`2850
`
`2855
`
`
`
`
`
`
`
`CREATE HEADER FILE DECLARING ALL
`DOCUMENT ARRAYS AS EXTERNALS
`(EXTERN CHAR DOCUMENT - HTML])
`
`
`'20 EXIT
`
`40
`
`40
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet 40 0f 41
`
`6,028,848
`
`FIG. 30A
`
`3000
`
`/
`
`struct Data Datat[95] =
`I
`
`BULLET_D_GIF,
`MANUALJITM,
`WSPID_HTM,
`STAT1_HTM:
`BULLET__H_GIF,
`BULLET_P_GIF,
`BULLET:S__GIF,
`BULLET:T_GIF,
`CHANGE_HTM,
`VOICEJITM,
`NORMMODEJITM,
`BRIOFPQ_HTM,
`CREDITSJITM:
`ISPWIZJHM,
`DCALLPRM HTM,
`HSDN HTM,
`HCPARMS HTM,
`HISP HTM,
`HLAN HTM,
`HMAINT HTM,
`HPCEL HIM,
`HPRIVATE Hm,
`HSERVICE HTM,
`HSETPASS HTM,
`STATS HTM,
`MAINTENA HTM,
`MITLINE HTM,
`WAITSPID HTM,
`NRMODE Hm,
`IWABORT HTM,
`CALLJ'OIN HTM,
`WAN HTM,
`1x114 J'PG,
`IX1MC J'PG,
`IXlS J'PG,
`IXlSW JPG,
`IXlIW JPG,
`IXIWW J'PG,
`IXlP JPG,
`CONTROL JPG,
`WIZSTAT HTM,
`SWRBORT HTM,
`LOCKED HTM,
`LOG01 JPG,
`NOTIMPL HTM,
`
`"BULLET_D_GIF" } ,
`"MANUAL:HTM"},
`I'WSPID__HTM"}:
`"STAT1_HTM"} ,
`'BULLET_H_GIF"},
`'BULLET_P_GIF'l } ,
`"BULLET_S_GIF"} ,
`"BULLETfiT_GIF") ,
`"CHANGEJITM" } I
`'VOICE_HTM" } ,
`'NORMMODE_HTM" } I
`'BRIOFFLHTM" } ,
`"CREDITS__HTM" } ,
`'ISPWIZ_HTM" } ,
`'DCALLPRM_HTM" } ,
`'HSDN_HTM"},
`'HCPARMS_HTM"}:
`'HISPJIM"),
`'I‘ILAN_HTM"},
`“MINT_H'I'M"}:
`'HPCEL_HTM"},
`'I'IPRIVATE_HTM" } ,
`'HSERVICE_HTM' } ,
`'HSETPASS_HTM'} ,
`ISTATS__H'1'M"},
`'MAINTENA_HTM"},
`"WAITLINE_H'I'M"},
`"WAITSPIDJIM'},
`'NRMODE_HTM" } ,
`I'IIIHKBORTJI'I‘I’I'l } I
`'CALLJOIN_HTM"}:
`"WAN_HTM"},
`'IX1M_JPG"},
`" IX1MC_J'PG'l } ,
`"IXlS__-J'PG'I } ,
`"IXlSW_I.l'PG'l } 1
`" IXIIVLJPG" } ,
`' IX1WW_JPG' } 1
`" I}{1P_J'PG'I } ,
`I'CONTROL_J'PG"},
`I'WIZSTATJ‘ITM" } ,
`'SWABORTJITM" } ,
`'LOCKEDJITM" } ,
`"LOG01_JPG" } I
`"I‘IOTIMIPLJ-III'IJI'I } ,
`
`ALERT GIF,
`BALLGRE GIF,
`EALLRED GIF,
`FAILED HTM,
`STAT3 HTM,
`IX3S J'PG,
`HPCPARMS HTM,
`STAT4
`STATS HTM,
`PRIVNET HTM,
`CALLCTRL H'I'M,
`ISP HTM,
`PSWDSET HTM,
`WRPSWD HTM,
`SPSELECT HTM,
`PCSELECT HTM,
`PC HTM,
`
`'ALERT_GIF " } ,
`'EALLGRE_GIF " } ,
`'EALLRED_GIF' } ,
`" FAILEDJITM" } ,
`' STA'I'3__1'I'I’M'l } I
`" 1x3 S_JPG'l } ,
`"HPCPARMS_HTM" } ,
`" STAT4__HTM" } ,
`" STAT5_HTM" } ,
`" PRIVNETJITM" } ,
`'CALLCTRLJITM" } ,
`" ISP__H'.I'M" ) ,
`'PSWDSET_HTM" } ,
`'WRPSWD_I-ITM'l } ,
`" SPSELECT_HTM" } ,
`"PCSELECT__HTM" } ,
`" PC_HTM" } ,
`
`41
`
`IIIIIIIIIIIIIIIIII{IIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIII
`
`41
`
`
`
`US. Patent
`
`Feb. 22, 2000
`
`Sheet41 0f41
`
`6,028,848
`
`FIG. 30B
`
`FIG. 30
`
`FIG.
`
`30A
`
`FIG.
`
`SOB
`
`WAITFIRM HTM,
`HMANUAL HTM,
`HVOICE HTM,
`CONGRATU HTM,
`ISDNCON HTM,
`SETPSWD HTM,
`MDDEMNOT HTM,
`ISDNCOK HTM,
`OFFLNOK HTM,
`DEFAULT HTM,
`Ix3CC JPG,
`Ix3I JPG,
`Ix3LC JPG,
`1x339 JPG,
`CONT JPG,
`MAINPAGE HTM.
`ENTER HTM,
`HMPARMS HTM,
`FRBOTTOM HTM,
`HPCSEL HTM,
`FRCONTEN HTM,
`LAN HTM,
`IXMM JPG,
`PSWDOK HTM,
`PARAMOK HTM,
`SPIDOK_HTM,
`ONLINEQ_HTM,
`CALLMADE_HTM.
`CALLDISC_HTM.
`RESETOK_HTM.
`STAT2_HTM,
`FRMAIN_HTM,
`(char *0,
`
`I|l||I|I
`
`"WAITFIRMJITM" 1 .
`'EMANUAL_HTM" 1 ,
`"HVOICE_HTM' 1 ,
`" CONGRATU_HTM" } .
`.. ISDNCON_HTM" 1 ,
`.. SETPSWD_HTM" 1 ,
`"MODEMNOT_HTM" 1 ,
`- ISDNCOK_HTM" 1 ,
`"OFFLNOK_HTM"} .
`- DEFAULT_HTM' 1 ,
`'- Ix3cc_JPG" J .
`"1x31_a1=c- 1 ,
`" 1x3 LC_JPG" 1 ,
`" 1x3 SP_J'PG" 1 ,
`'CONT_JPG' 1 ,
`'MAINPAGE_HTM" 1 ,
`"ENTER_H'IM' 1 ,
`~m4pmns_nm- 1 ,
`Imomn_nm- 1 ,
`"HPCSEL_HTM" 1 ,
`'FRCONTEN_HTM' } .
`'LAN_H'1M" 1 ,
`- IXMM_J'PG' 1 ,
`"PSWDOK_HTM" 1 ,
`"PARAMOKJITW' 1 ,
`" prnommxn 1 ,
`'ONLINEOJITM" 1 ,
`'CALLMADE_HTM" 1 ,
`"CALLDISC_HTM" } .
`'RESETOK_HTM" } .
`- STAT2_H'1'M' 1 ,
`'FRMAIN_HTM' 1 ,
`'NULL" 1
`
`I I II I I I III { { I I I{ I { {{ I I II{ I I II I II