throbber
IllilllllllllllllflllllllllIllllllllllllllllllllllll
`
`USOO6m9469A
`
`[19]
`United States Patent
`[45]
`Mattaway et a1.
`
`[11]
`
`Patent Number:
`Date of Patent:
`
`6,009,469
`
`Dec. 28, 1999
`
`[54]
`
`[75]
`
`GRAPHIC USER INTERFACE FOR
`INTERNET TELEPHONY APPLICATION
`
`inventors: Shane D. Mattaway, Boca Raton;
`Glenn W. Hutton, Miami; Craig B.
`Strickland, Tamarac, all of Fla.
`
`[73]
`
`Assignec: NetSpeak Corporation, Boca Raton,
`Fla.
`
`[21]
`
`[22]
`
`[631
`
`[60]
`
`[51]
`[52]
`[58]
`
`[56]
`
`Appl. No.: 08/721,316
`
`Ftlcd:
`
`Sep. 25, 1996
`
`Related US. Application Data
`
`Continuafiomin-pan of application No. 08/533,115, Sep. 25,
`1995
`Provisional application No. 60/025,415, Sep. 4, 1996, and
`provisional application No. 60/024,251, Aug. 21, 1996.
`Int. Cl.6 ........... G061" 17/00
`US. Cl.
`............ 709/227
`
`Field of Search
`.. 395120057, 200.58;
`
`709/2
`370/352, 355, 357, 389,
`
`395
`
`References Cited
`
`,
`
`U.S. PATENT DOCUMENTS
`Fenner .
`3/1992
`9/1992
`Pcrlmau ct al,
`Riddle .
`11/1992
`Dorfc et at. .
`4/1993
`Woest ct al. .
`6/1993
`Morales .
`3/1994
`Cidon et al. .
`5/1994
`5/1994
`Perlman el al. ,
`6/1994
`McMillan et al_ ,
`Banwarl .
`10/1994
`Yamada .
`3/1995
`6/1995
`Britten et at,
`7/1995
`Galloway .
`7/1995
`Callon ,
`Norio .
`7/1995
`8/1995
`Perkins et a], ,
`9/1995
`Shimizu .
`Dilts et al. .
`10/1995
`Robins .
`10/1995
`10/1995
`Sylvan .
`
`_
`
`5,095,430
`5,150,360
`5,166,931
`5,204,669
`5,224,095
`5,291,554
`5,309,433
`5,309,437
`5,321,813
`5,357,571
`5,400,335
`5,425,028
`5,430,709
`5,430,727
`5,432,846
`5,442,633
`5,452,296
`5,455,854
`5,457,683
`5,457,738
`
`.
`
`.
`.
`
`Yasrebi .
`10/1995
`5,463,625
`Clare ct nl.
`11/1995
`5,465,286
`Satter et al.
`11/1995
`5,469,500
`Davis et a].
`12/1995
`5,475,741
`Klein ,
`12/1995
`5,479,411
`Sestuk ct nl. .
`4/1996
`5,509,058
`5/1990
`Green _
`5,517,494
`Danneels et al. .
`6/1996
`5,524,110
`6/1996
`Braun et al. _
`5,524,141
`6/1996
`Nilnknntnn ct 0L .
`5,526,489
`Pinard ct at. .
`7/1996
`5,533,110
`Maroteaux et al. .
`8/1996
`5,544,303
`Brockmeyer et al. .
`8/1996
`5,546,582
`FOREIGN PATENT DOCUMENTS
`
`European Pat. ()3. .
`A2 0445402 11/1991
`A2 0556012
`8/1993 European Fat 01!. .
`W0 9219054 10/1992 WIPO .
`OTHER PUBLICATIONS
`
`Internetwarlring with TCP/IP, vol. 1, Second Edition, Prin-
`ciples, Protocols, and Architecture, by Douglas E. Comer.
`Vocal’l‘ec Internet Phone (TM) Version 25, www.cox.sm-
`u.cdu/class/mi56386/pcoplc/storl/iphone25exe, Feb. 1995.
`Weinberg, Netscape Conference and Cooltalk Meeting
`Room, www.q5.com, Feb. 22, 1996.
`Gull, Re: Getting 1? address of PPP—oonnected Mac,
`<jgu11—0304951005350001@pm012-11.dialipmichnet),
`Apr. 3, 1995.
`Mac?,
`for
`Phone
`Internet
`Gull.
`Re:
`>jgull—1704950116450001@pm049—28.d1'alip.mioh.net>,
`Apr. 17, 1995,
`
`Primary Examiner—Ellis B. Ramirez
`Attorney, Agent, or Firm—Kudirka & Jobse. LLP
`
`[57]
`
`ABSTRACT
`
`A communication utility for establishing real-time, point-
`to-point communications between processes over a com-
`puter network includes apparatus for querying a server as to
`the network protocol address of another client process, and
`apparatus for directly establishing a communication link
`with the client process upon receipt of the network protocol
`address from the server, In one embodiment, the utility
`includes a sophisticated user interface having features simi-
`lar to typical telephony hardware but implementing greater
`flexibility with software.
`
`18 Claims, 27 Drawing Sheets
`
`.31__________________
`: FRS‘I measure unrr
`'
`DEVlCE
`PRWESSOR H INPUT
`.
`
`1
`
`ru-_-_________
`
`NET
`
`23
`
`'
`
`IIIlII
`NTE
`F0? 3
`
`I
`26
`MI. SERVER
`
`
`
`PROCESSING
`UNIT
`
`
`
`Page 1 of 67
`
`Cisco -- Exhibit 1001
`
`
`
`
`
`
`
`
`
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 1 of 27
`
`6,009,469
`
`,mac;
`
`.mm>mmw4.52
`
`mmhmzmm»z_
`
`
`
`mm>mmw20:.0mzzoo
`
`ozooww
`
`Oz_wmm00mn_
`
`t2:
`
`
`
`N65%
`
`Page 2 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 2 of 27
`
`6,009,469
`
`NN
`
`
`
`>mw>mw._._On_
`
`wozoommmé
`
`\
`
`0200mm
`
`02—mmm00mm
`
`.52:
`
`N65%
`
`_VN_____
`_______KL.
`mm>mmwas).
`
`«neg
`
`lllllllllllll.—
`mmEszz.
`
`.__.______
`
`AkwMDOww—HOMZZOOV
`
`AXOPOMZZOOV
`
`.SnEJO
`
`mo_>wo
`
`3
`
`Page 3 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`
`
`
`
`

`

`U. S. Patent
`
`Dec. 28, 1999
`
`Sheet 3 of 27
`
`6,009,469
`
`0200mm
`
`Oz.mww00mn_
`
`._._ZD
`
`ozooww
`
`02—wwm00mm
`
`.523
`
`_
`
`.5690
`owwwmmmzoov"
`
`_L
`
`_ AO_QD<
`hwy—E
`
`NF
`
`...w~.=....
`
`02—wwm00m
`
`.EZD
`
`02—www00m
`
`t2:
`
`Page 4 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 4 of 27
`
`6,009,469
`
`C2
`
`0&3
`
`48
`
`
`
`
`ROGER
`
`9t103001027
`
`
`
` HE] flfl
`BEE
`
`SHANE
`195.201.00.137
`L1 MR4
`
`38
`
`42
`
`50
`
`Page 5 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28,1999
`
`Sheet 5 of 27
`
`6,009,469
`
`/ 54
`INTERNET PROTOCOLS
`
`START THE POINT-TO—POINT
`
`
`
`
`
`IS THE CONNECTION SERVER IN A
`RESPONSIVE CONDITION?
`
`
`YES
`
`60
`
`
`
`
`
`
`INITIATE PRIMARY INTERNET
`PROTOCOL
`
`/ 56
`
`/— 58
`
`NO
`
`PERFORM PRIMARY
`INTERNET PROTOCOL
`
`INITIATE SECONDARY
`INTERNT PROTOCOL
`
`
`
`62
`
`
`
`FIG. 7
`
`
`
`STA ' T THE PRIMARY
`POINT-TO-POINT INTERNET
`
`
`PROTOCOL
`
`
`
`64
`
`66
`
`
`
`TIMESTAMP AND STORE E-MAIL
`ADRESSES AND IF ADRESSES OF
`
`
`LOGGED-IN UNITS IN A DATABASE
`
`
`
`'OMIRT
`-'
`.
`"
`* c
`
`WHETHER A SPECIFIED SECOND
`UNIT IS LOGGED—IN
`
`
`‘
`
`
`
`68
`
`
` “1 DR S F' O '
`DATABASE IF THE SECOND UNIT IS
`
`
`
`LOGGED-IN
`
`l,
`
`
`
`'IIEVE IP ADRESS 0
`SEND R' 7
`FIRST UNIT TO ESTABLISH POINT-
`
`
`TO-POINT CONNECTION
`
`
`7O
`
`72
`
`FIG. 8
`
`Page 6 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 6 of 27
`
`6,009,469
`
`START THE SECONDARY
`POINT-TO POINT INTERNET PROTOCOL
`
`74
`
`GENERATE AN E-MAIL SIGNAL.
`INCLUDING A SESSION NUMBER AND A
`FIRST IP ADRESS CORRESPONDING TO A
`FIRST PROCESSING UNIT
`
`/—76
`
`TRANSMIT THE E-MAIL SIGNAL AS A
`<CONNECTREQUEST> SIGNAL
`TO THE INTERNET
`
`DELIVER THE E-MAIL SIGNAL THROUGH
`THE INTERNET USING A MAIL SERVER TO
`A SECOND PROCESSING UNIT
`
`EXTRACT THE SESSION NUMBER AND
`THE FIRST IP ADRESS FROM THE E-MAIL
`SIGNAL
`
`SEND THE SESSION NUMBER AND A
`SECOND IP ADRESS CORRESPONDING
`TO THE SECOND PROCESSING UNIT TO
`
`THE FIRST PROCESSING UNIT THROUGH
`THE INTERNET
`
`VERIFY THE SESSION NUMBER
`RECEIVED FROM THE SECOND
`PROCESSING UNIT
`
`78
`
`80
`
`82
`
`84
`
`86
`
`88
`
`
`
`FIG. 9
`
`ESTABLISH A POINT-TO-POINT INTERNET
`COMMUNICATION LINK BETWEEN THE
`FIRST AND SECOND PROCESSING UNITS
`USING THE FIRST AND SECOND IP
`ADDRESSES
`
`Page 7 Of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`U
`
`ta
`
`t
`
`mD
`
`9mm,
`
`NM
`
`0096
`
`9
`
`m82S/
`
`E:
`
`w32
`
`D.”32mm.320S.xaoamsz
`
`352:.
`
`33.8w
`
`.8235
`
`m,223mm
`
`Page 8 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`

`

`U.S. Patent
`
`Dec. 28, 1999
`
`Sheet 8 of 27
`
`6,009,469
`
`of
`
`2:3;o!
`$305200552¢
`
`xmammjoEzoomwjoEzoo3‘555
`
`o:
`
`292923250089><20oz<359%
`
`m2
`
`
`
`N9
`
`5
`
`name19085“.mama20m8
`
`E2:I\)w:)-5r
`
`om.
`
`
`
`
`
`mmE<o<mmjomhzoo5.305200mmnoz
`
`at'22I/5—m3
`.$.30”:on
`zlfi.mmmm
`
`mar
`
`
`
`Etc.:95»:.0.59l
`
`on.
`
`O_OD<
`
`meAOMHZOU
`
`>102m=2
`
`mquomhzoo
`
`mm»
`
`mam
`
`mijmHzOo
`
`we
`
`kmnmmwkz
`
`mijOmkzOO
`
`Duo
`
`mow
`
`Page 9 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 9 of 27
`
`6,009,469
`
`1214
`
`1230
`
`FIGURE 12 (PRIOR ART)
`
`Page 10 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`netaPS.
`
`Nf00
`
`00,
`
`w
`
`6252.53
`
`58535.
`
`52:
`
`M,<223mm
`
`U89
`
`.1...
`
`03.503?WE.35aman
`928.353man:
`
`tH
`
`m:6maouésk
`
`wrap
`
`Page 11 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`

`

`US. Patent
`
`Dcc.28, 1999
`
`Sheet 11 of 27
`
`6,009,469
`
`WAPI
`
`1328
`
`process
`
`comm
`
`state
`
`1334
`
`machine
`
`network
`
`FIGURE 13 B
`
`Page 12 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec.28,1999
`
`Sheetlz on7
`
`6,009,469
`
` X
`
`£1 ? W©b®h©tm©
`
`Figure 14
`
`Page 13 of 67
`
`Cisco -- Exhibit 1001
`
`1402
`
`1402E
`
`1402D
`
`1402G
`1402H
`
`1404
`
`1406
`
`1 408
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`l)cc.28, 1999
`
`Sheet 13 0127
`
`6,009,469
`
`1500
`
`15160
`
`1516E
`
`15168
`
`DATABASE
`SEARCH
`ENGmE
`
`l1516¢
`
`1513::
`
`
` DATABASE
`
`DATABASE
` INFORMAHON
`SERVER
`SERVER
`
`CONNECHON
`
`SERVER
`
`
`
`
`
` _—_
`NETwOFlK INTERFACE CARD
`
`1520
`
`1532
`
`1530
`
`FIREWALL SERVER
`
`‘522
`
`1524
`
`1533 ® 1533
`
`I59
`
`I Q 1534
`
`Figure 15A
`
`Page 14 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 14 0f 27
`
`6,009,469
`
`DATABASE
`
`SEARCH
`
`
`
`-ATABASE_NGINE
`
`SERVER
`
`CONNECTION
`SERVER
`
`'NFSOERRIQEEON
`
`DATABASE
`
`I @ 1534
`
`Figure 158
`
`Page 15 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`on”near
`
`m82
`
`n83
`
`9,0m.23.5
`
`
`
`tnm
`
`9mm,
`
`0u.m
`
`7
`
`6
`
`m,
`
`m
`
`x3382.atom.326.823.320.5wa.305mxmamszx8382
`
`s33$536
`
`
`
`
`
`38852
`
`Page 16 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 16 of 27
`
`6,009,469
`
`<29:9...
`
`are
`
`ozwm
`
`
`
`A¥U<homZZOOV
`
`\woz“mo526..
`
`mm>.
`
`30—.
`
`nmgmmwa
`
`ouN—ZGOUMIZD
`
`<._.<a
`
`N3—
`
`@5—
`
`823mm
`
`_
`
`6mmhomzzoov
`
`
`
`.=<STmPU<§
`
`wwwmoo<
`
`
`
`.=<E.mnun—55:0”.
`
`
`
`ww<n<h<0O...mmmman<
`
`
`
`mOmmm02mm
`
`m0m0<wmm2
`
`
`
`ANZ...“EOV
`
`Num—
`
`Page 17 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 17 of 27
`
`6,009,469
`
`
`
`
`DISGARD
`UNRECOGNIZED
`
`
` <INFO-REQ>
`DATA
`
`
`
`
`1 635
`
`RECEIVED
`?
`
`YES
`
`EXTRACT SEARCH
`CRITERIA
`
`SUPPLY SEARCH
`CRITERIA TO DATABASE
`
`SEND
`<INFO ACK>
`
`1634
`
`1636
`
`1638
`
`YES
`
`
`
`<INFO ABORT
`RECEIVED
`
`
`
`
`
`MORE
`<INFO>
`?
`
`N°
`
`1632
`
`N0
`
`POWER OFF
`?
`
`YES
`
`@ Figure 168
`
`Page 18 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 18 of 27
`
`6,009,469
`
`cmmwmam—K
`
`An..._<ova
`
`
`
`
`
`Apomsmmv<mAcmm9.2.mmwavNmAme
`
`m2_._ZOv_.
`
`
`
`uEM6m:Bmzzoovomu93fiflvonnEmM£32mmwmza‘v8N29.25281ve“
`
`AQOD<Vm'—
`
`AozwvNF
`
`
`
`A¥0<homzzoov<~u
`
`
`
`Amzj“EOVmu
`
`m
`
`A20mm44<0v0:.
`
`
`
`Ago<mm._._<ov9—
`
`«Kn0.5mm
`
`Page 19 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 19 or 27
`
`6,009,469
`
`1536
`
`1500
`
`
`
`OR4<INFOABORT>
`
` 3A<INFO> 3B<INFO>
`1<lNFOREQ> 2<lNFOACK>
`3C<INFO>
`
`
`Bmmmzozm
`
`
`
`Figure173
`
`CJOQ<J mmm>mm
`
`Page 20 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 20 0f 27
`
`6,009,469
`
`Nwww
`
`mJim—«3:23
`
`a::23
`
`n::05
`
`
`
`.oosoaatss32:83:52:
`
`
`
`$202502m:o=o=.u>3022muo:_u>noonfiat;
`
`
`
`
`
`
`
`$332502acoaasfizomSon.a:t_>
`
`
`
`coaaaow93.fists
`
`acezzo
`LSEOEESS
`
`«newn—
`
`2282.85
`
`
`
`222.2252.85
`
`
`
`9:35._o=:oo_:w
`
`
`o:_m>9.0.
`
`9:36._o==oos
`
`meow
`
`vow_.
`
`Noww
`
`<m
`
`F939$
`
`Page 21 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Dcc.28, 1999
`
`Sheet 21 of 27
`
`6,009,469
`
`1804
`
`
`
`
`
`GUIControl" Sibling
`UlCollection" Parent
`
`
`
`1 828
`
`1822
`
`Figure 183
`
`Page 22 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec.28, 1999
`
`Sheet 22 of 27
`
`6,009,469
`
`UlToggle
`
`1842
`
`1844
`
`1846
`
`
`
`
`GUIVirtualObject" Childrenfl
`UlCoIlectlon’ Parent
`
`Figure 180
`
`
`
`1 806
`
`Figure 180
`
`UlPIayHun
` UlPushButton
`
`
`
`
`
`
`vold ShowO
`vold Hideo
`
`1834
`
`1832
`
`Page 23 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 23 of 27
`
`6,009,469
`
`
`
`0.22.13:32:
`
`Emmobuu<ownone...
`558:3a...»oEanuu<
`mzmmnu<352:one.
`
`
`m.__n_um<”mu:oEamgoEom
`.9.8585
`
`
`
`029:9...32
`
`mafia.
`
`9......m223E
`
`968..
`
`\|I|||l\/|||II.||.|J
`
`9.239.3.5350:
`
`<22:9...
`
`26:693>852...
`
`$30m<
`
`
`
`oD.D.0Ecogum.3.3no_0::
`
`E<5Hu<9525m228m
`
`
`
`
`
`
`
`225:2:Agata—”3..8?»...
`
`nOhmIma9.»533m25corms“.
`
`mama:m<85m85:88E3:
`ms...=n_.m<E.«9.8m35»nor
`
`
`
`822.»2.2.38%.“...£350.
`
`InorH5.5...9:30:35
`
`So.axmahcr9.33050:
`
`
`
`
`
`
`
`0.:m<2:5:8.529
`
`
`
`Page 24 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 24 of 27
`
`6,009,469
`
`2°”
`
`MIX MO
`MIXING BUFFER
`
`2°“
`
`K
`
`SPEAKER
`
`LOOP FOR ALL PARTIES
`
`
`WRITE T0
`PAR‘I’Yl1),SOCKET
`
`IS
`PARTVU]
`ONUNE?
`
`Mo
`
`0 Q
`
`2°30
`
`SOCKET
`
`2032
`
`MIC
`
`""3
`EMBLE”
`7
`
`N0
`
`YES
`
`PLACE EMPTY
`BUFFER 0N
`MIC SAMPLING
`GUEUE
`
`
`
`2034
`
`PLACE EMPTY
`BUFFER 0N
`WInSock OUEUE
`
`
`
`PLACE EMPTY
`
`.23:wa
`
`. w
`
`W)
`
`2"“
`
`2°38
`
`Figure 20A
`
`Page 25 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 25 of 27
`
`6,009,469
`
`
`
`xoomEBE0:Loon...E2.—
`
`
`umo.uc>m<was£530
`
`SEN
`
`38«comQo:—2:.
`
`mom—mm
`
`RES...0:
`
`SEN
`
`mm;
`
`
`
`«mowomow
`
`mow«Sat
`
`
`
`2:.EatLoon.EatmEEEmm
`
`
`
`
`
`on».coc>m<mmEEaEO0::032m
`
`Page 26 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Shcct26 on7
`
`6,009,469
`
`Loon...mo...
`
`wmow
`
`goomcts58:33.:mafiaumxoom.650
`
`
`$83cm
`
`
`
`
`
`.m_mE_.08..3.....05.”u...«.3me9,\«wow
`
`.5:mmEwow.umm>:5gta_coonamoon59.3%0.:
`
`39:3
`
`92:Eat“02use
`
`km<hm
`
`
`
`08.93mm
`
`9»):
`
`.93QOmoon
`
`Page 27 of 67
`
`Cisco --
`
`Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`
`
`
`

`

`US. Patent
`
`Dec. 28, 1999
`
`Sheet 27 of 27
`
`6,009,469
`
`data in mix
`
`Discard pending
`
`Figure 200
`
`Page 28 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`6,009,469
`
`1
`GRAPHIC USER INTERFACE FOR
`INTERNET TELEPHONY APPLICATION
`
`RELATED APPLICATIONS
`
`This application is a continuation-in-part of US. patent
`application Ser. No. 08/533,115 (Pending) entitled Point-to.
`Point Internet Protocol, by Glenn W_ Hutton, filed Sep. 25,
`1995, commonly assigned. the subject matter of which is
`incorporated herein by reference.
`To the extent
`that any matter contained herein is not
`already disclosed in the above-identified parent application
`a location claims priority to U.S_ provisional patent appli-
`cation 60/025,415 entitled Internet Telephony Apparatus and
`Method by Mattaway et al., filed Sep. 4, 1996, and US.
`provisional patent application Ser. No. 60/024,251 entitled
`System and Methods for Point-To-Point Communications
`Over a Computer Network, by Mattaway ct al., filed Aug.
`21, 1996.
`In addition, this application is one of a number of related
`applications filed on an even date herewith and commonly
`assigned,
`the subject matters of which are incorporated
`herein by reference, including the following:
`US. patent application Ser. No. 08/719,894, entitled
`Directory Server For Providing Dynamically Assigned
`Network Protocol Addresses, by Mattaway et al.;
`US. patent application Ser. No. 08/719,554, entitled
`Point-to-point Computer Network Communication
`Utility Utilizing Dynamically Assigned Network Pro-
`tocol Addresses. by Mattaway et at;
`US. patent application Ser. No, 08/719,640, entitled
`Method And Apparatus For Dynamically Defining Data
`Communication Utilities, by Mattaway et al.,
`US. patent application Ser. No. 08/719,891, entitled
`Method And Apparatus For Distribution And Presen-
`tation 0f Multimedia Data Over A Computer Network,
`by Mattaway et II.)
`US. patent application Ser. No. 08/719,898, entitled
`Method And Apparatus For Providing Caller Identifi-
`cation Based Out-going Memges In A Computer Tele-
`phony Environrnent, by Mattaway et al.;
`US. patent application Ser. No. 08/718,911, entitled
`Method And Apparatus For Providing Caller Identifi-
`cation Based Call Blocking In A Computer Telephony
`Environment, by Mattaway et al.; and
`US. patent application Ser. No. 08/719,639, entitled
`Method And Apparatus For Providing Caller Identifi-
`cation Responses In A Computer Telephony
`Environment, by Mattaway et al.
`FIELD OF THE INVENTION
`
`The present invention relates, in general, to data proces.
`ing systems, and more specifically, to a method and appa-
`ratus for facilitating audio communications over computer
`networks.
`
`BACKGROUND OF THE INVENTION
`
`Ihe increased popularity of on-line services such as
`AMERICA ONLINETM, COMPUSERVE®, and other ser-
`vices such as Internet gateways have spurred applications to
`provide multimedia,
`including video and voice clips, to
`online users. An example of an online voice clip application
`is VOICE E-MAIL FOR WINCIM and VOICE E-MAII.
`FOR AMERICA ONLINE”, available from Bonzi
`Software, as described in “Simple Utilities Send Voice
`
`5
`
`10
`
`15
`
`20
`
`30
`
`35
`
`4o
`
`45
`
`50
`
`55
`
`65
`
`2
`E-Mail Online", MULTIMEDIA WORLD, VOL. 2, N0. 9,
`Aug. 1995, p. 52. Using such Voice E-Mail software, a user
`may create an audio message to be sent to a predetermined
`E-mail address specified by the user.
`Generally, devices interfacing to the Internet and other
`online services may communicate with each other upon
`establishing respective device addresses. One type of device
`address '5 the Internet Protocol (IP) address, which acts as
`a pointer to the device associated with the IP address. A
`typical device may have a Serial Linc Internet Protocol or
`Point-to-Point Protocol (SLIP/PPP) account with a penna-
`nent IP address for receiving Email, voicemail, and the like
`over the Internet. E-mail and voieemail is generally intended
`to convey text, audio, etc, with any routing information
`such as an IP address and routing headers generally being
`considered an artifact of the communication, or even gib-
`berish to the recipient.
`Devices such as a host computer or server of a company
`may include multiple modems for connection of users to the
`Internet, with a temporary IP address allocated to each user.
`For example,
`the host computer may have a general IP
`address “XXX.XXX.XXX," and each user may be allocated
`a successive IP address of XXX.XXX.XXX.10,
`XXXXXXXXXJI, XXX.XXX.XXX.12, etc, Such tem-
`porary IP addresses may be reassigned or recycled to the
`users, for example, as each user is successively connected to
`an outside party. For example, a host computer of a company
`may support a maximum of 254 IP addresses which are
`pooled and shared between devices connected to the host
`computer.
`Permanent IP addresses of users and devices accessing the
`Internet readily support point-to-point communications of
`voice and video signals over the Internet. For example,
`real-time video teleconferencing has been implemented
`using dedicated IP addresses and mechanisms known as
`reflectors. Due to the dynamic nature of temporary IP
`addresses of some devices accessing the Internet, point-to-
`point communications in reaLtime of voice and video have
`been generally difficult to attain.
`The ability to locate users having temporary or dynami-
`cally assigned Internet Protocol address has been difficult
`without the user manually initiating the communication.
`Accordingly, spontaneous, real-time communications with
`such users over computer networks have been impractical.
`Further, it is desirable to have a communication utility which
`contains familiar features and functions to current commu-
`nication utility such as telephones and cellular telephones. It
`is even further desirable to utilize the current graphic user
`interface technology associated with computer software in a
`manner to achieve a more flexible interface to a such a
`communication utility, without the limitations associated
`with hardware.
`Accordingly, a need exists for a way to determine whether
`computer users are actively connected to a computer not-
`work.
`A further need exists for a way to obtain the dynamically
`assigned Internet Protocol address of a user having on-line
`status with respect to a computer network, particularly the
`Internet.
`An even further need exists for a method and apparatus by
`which to establish real-time, point-to-point communications
`over a computer network using a communication utility
`having an interface which combines the familiar aspects of
`current hardware communication utilities but which allows
`for the flexibility associated with graphic user interfaces,
`SUMMARY OF THE INVENTION
`
`The above deficiencies in the prior art and previously
`described needs are fulfilled by the present invention which
`
`Page 29 of 67
`
`Cisco -- Exhibit 1001
`
`Cisco -- Exhibit 1001
`
`

`

`6,009,469
`
`3
`provides a vtrtual communications utility displayable on
`computer system interfaces which enables real-time, point-
`to-point communications over computer networks. Accord-
`ing to one embodiment of the present invention, a computer
`program product for use with a computer system having a
`display and an audio transducer comprises a computer
`usable medium having computer readable code means
`embodied therein comprising program code means for gen-
`erating a user interface, program code meam responsive to
`user input commands for establishing a point-to-point com-
`munication link with another computer over a network and
`program code means responsive to audio data from the audio
`transducer for transmitting the audio data over the commu-
`nication link.
`
`According to another embodiment of the present
`invention, a computer program product
`for use with a
`computer system comprises a computer usable medium
`having computer readable program code means embodied
`thereon comprising code means for transmitting from a
`client process to a server a query as to whether a second
`client process is connected to the computer network, pro-
`gram code means for receiving the network protocol adiress
`of the second process from the server, and program code
`means responsive to the network protocol address of the
`second client process [or establishing a point-to-point com-
`munication link between the first client process and the
`second client process.
`BRIEF DESCRIPTION OF THE DRAWINGS
`The features of the invention wtll become more readily
`apparent and may be better understood by referring to the
`following detailed description of an illustrative embodiment
`of the present
`invention,
`taken in conjunction with the
`accompanying drawings, in which:
`FIG. 1 illustrates, in block diagram format. a system for
`the disclosed point-to-point lntemet protocol;
`FIG. 2 illustrates,
`in block diagram format, the system
`using a secondary point-to-point Internet protocol;
`FIG. 3 illustrates, in block diagram format, the system of
`FIGS. 1-2 with the point-to-point Internet protocol estab-
`lished;
`FIG. 4 is another block diagram of the system of FIGS.
`1—2 with audio communications being conducted;
`FIG. 5 illustrates a display screen [or a processing unit;
`FIG. 6 illustrates another display screen for a processing
`unit;
`FIG. 7 illustrates a flowchart of the inttialion of the
`point-to-point lntemet protocols;
`FIG. 8 illustrates a flowchart of the performance of the
`primary point-to-point Internet protocols;
`FIG. 9 illustrates a flowchart of the performance of the
`secondary point-to-point lntemet protocol;
`FIG. 10 illustrates schematically a computer network over
`which the present invention may be utilized;
`FIG. 11 is a block diagram of a computer system suitable
`for use with the present invention;
`FIG. 12 is a block diagram of an audio processing card
`suitable for use with the computer system of FIG. 10;
`FIGS. 13 A—B are schematic block diagrams of the
`elements comprising the inventive computer network tele.
`phony mechanism of the present invention;
`FIG. 14 is a screen capture illustrating an exemplary user
`interface of the present invention;
`FIG. 15 is a schematic diagram illustrating the architec-
`ture of the connection server apparatus suitable for use with
`the present invention;
`
`4
`illustrating the process steps
`FIG. 16A is a flowchart
`performed by the connection server in accordance with the
`present invention;
`illustrating the process steps
`FIG. 16B is a flowchart
`performed in accordance with the information server of the
`present invention;
`FIGS. l7A—B are schematic block diagrams illustrating of
`the packet transfer sequence in accordance with the com-
`munication protocol of the present invention;
`FIGS. l8A—D are conceptual block diagrams illustrating
`user interface and graphic user interface objects utilimd by
`the communication utility of the present invention;
`FIGS. 19A—C are conceptual block diagrams illustrating
`the event manager and media engine objects utilized by the
`communication utility of the present invention. and
`FIGS. 20A—D illustrate process steps performed by the
`media engine function of the communication utility in
`accordance with the present invention.
`
`10
`
`15
`
`DETAILED DESCRIPTION
`
`Refemng now in spectfrc detail to the drawings, with like
`reference numerals identifying similar or identical elements,
`as shown in FIG. 1,
`the present disclosure describes a
`point-to-point network protocol and system 10 for using
`such a protocol.
`In an exemplary embodiment, the system 10 includes a
`first processing unit 12 for sending at least a voice signal
`from a first user to a second user. The first processing unit
`12 includes a processor 14, a memory 16, an input device 18,
`and an output device 20. The output device 20 includes at
`least one modem capable of, for example. 14.4 Kilobit-per—
`second communications and operatively connected via
`wired and/or wireless communication connections to the
`Internet or other computer networks such as an Intranet, Le,
`a private computer network. One skilled in the art would
`understand that the input device 18 may be implemented at
`least in part by the modem of the output device 20 to allow
`input signals from the communication connections to be
`received. The second processing unit 22 may have a
`processor, memory, and input and output devices, including
`at
`least one modem and associated communication
`connections, as described above for the first processing unit
`12. In an exemplary embodiment, each of the processing
`units 12, 22 may execute the WEBPHONE® Internet telc.
`phony application available from NetSpeak Corporation,
`Boca Raton, Fla, which is capable of performing the dis-
`closed point-to-point Internet protocol and system 10, as
`described herein.
`
`The first processing unit 12 and the second processing
`unit 22 are operatively connected to the Internet 24 by
`communication devices and software known in the art, such
`as an lntemet Service Provider (ISP) or an lntemet gateway.
`The processing units 12, 22 may be operatively intercon—
`nected through the lntemet 24 to a connection sewer 26, and
`may also be operatively connected to a mail server 28
`associated with the Internet 24.
`The connection server 26 includes a processor 30, a timer
`32 for generating time stamps, and a memory such as a
`database 34 for storing, for example, E-mail and lntemet
`Protocol (IP) addresses of logged-in units. In an exemplary
`embodiment, the connection server 26 may be a SPARC 5
`server or a SPARC 20 server, available from SUN
`MICROSYSTEMS, INC, Mountain View, Caltf.. having a
`central processing unit (CPU) as processor 30, an operating
`system (OS) such as UNIX, for providing timing operations
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Page 30 of 67
`
`Cisco -- Exhibit 1001
`
`
`
`
`
`
`
`
`
`
`
`Cisco -- Exhibit 1001
`
`

`

`6,009,469
`
`5
`such as maintaining the ttmer 32, a hard drive or fixed drive,
`as well as dynamic random access memory (DRAM) for
`storing the database 34, and a keyboard and display and/or
`other input and output devices (not shown in FIG. 1). The
`database 34 may be an SOL database available from
`ORACLE or INFORMIX,
`In an exemplary embodiment, the mail server 28 may be
`implemented with a Post Oflice Protocol (POP) Version 3
`mail server and the Simple Mail Transfer Protocol (SMTP),
`including a processor, memory, and stored programs oper-
`ating in a UNIX environment, or, alternatively, another OS,
`to process E-mail capabilities between processing units and
`devices over the Internet 24,
`In the illustrative cmbodtment, the POP protocol is uti.
`lized to retrieve E—mail messages from mail server 28 while
`the SMTP protocol is used to submit E-mail message to
`Internet 24.
`The first processing unit 12 may operate the disclosed
`poinLto-point Internet protocol by a computer program
`described hereinbelow in conjunction with FIG. 6, which
`may be implemented from compiled and /or interpreted
`source code in the C++ programming language and which
`may be downloaded to the first processing unit 12 from an
`external computer. The operating computer program may be
`stored in the memory 16, which may include about 8 MB
`RAM and/or a hard or fixed drive having about 8 MB of
`available memory. Alternatively, the source code may be
`implemented in the first processing unit 12 as firmware, as
`an erasable read only memory (EPROM), etc. It is under.
`stood that one skilled in the art would be able to use
`programming languages other than OH to implement the
`disclosed point-to-point network protocol and system 10.
`The processor 14 receives input commands and data from
`a first user associated with the first processtng unit 12 though
`the input device 18, which may be an input port connected
`by a wired, optical, or a wireless connection for electromag-
`netic transmisions, or alternatively may he transferable
`storage media, such as floppy disks, magnetic tapes, com.
`pact disks, or other storage media including the input data
`from the first user.
`The input device 18 may include a user interface (not
`shown) having, for example, at least one button actuated by
`the user to input commands to select from a plurality of
`operating modes to operate the first processing unit 12. In
`alternative embodiments, the input device 18 may include a
`keyboard, a mouse, a touch screen, and/or a data reading
`device such as a disk drive for receiving the input data from
`input data files stored in storage media such as a floppy disk
`or, for example, an 8 mm storage tape. The input device 18
`may alternatively include connections to other computer
`systems to receive the input commands and data therefrom.
`The first processing unit 12 may include a visual interface
`for use in conjunction with the input device 18 and output
`device 20 similar to those screens illustrated in FIGS. 5—6,
`discussed below.
`It
`is also understood that alternative
`devices may be used to receive commands and data from the
`user, such as keyboards, mouse devices, and graphical user
`interfaces (GUI) such as WINDOWS‘m 3.1 available form
`MICROSOFT Corporation, Redmond, Wash, and other
`operating systems and GUIs, such as 08/2 and 08/2 WARP,
`available from IBM CORPORATION, Boca Raton, Fla.
`Processing unit 12 may also include microphones and/or
`telephone handsets for receiving audio voice data and
`commands, speech or voice recognition devices, dual tone
`multi-frcquency (DTMF) based devices, and/or sofiwarc
`known in the art to accept voice data and commands and to
`operate the first processing unit 12.
`
`10
`
`15
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`In addition, either of the first processing unit 12 and the
`second processing unit 22 may be implemented in a personal
`digital assistant (PDA) providing modem and E-mail capa-
`bilities and Internet access, with the PDA providing the
`input/output screens for mouse interactions or for touch-
`screen activation as shown, for example, in FIGS. 5—6, as a
`combination of the input device 18 and output device 20.
`For clarity of explanation, the illustrative embodiment of
`the disclosed potnt-to-point Internet protocol and system 10
`is presented as having individual functional blocks, which
`may trrclude functional blocks labeled as “processor" and
`“processing unit”. The functions represented by these blocks
`may be provided through the use of either shared or dedi-
`cated hardware,
`including, but not
`limited to, hardware
`capable of executing software. For example, the functions of
`each of the processors and processing untts presented herein
`may be provided by a shared processor or by a plurality of
`individual processors. Moreover, the use of the functional
`blocks with accompanying labels herein is not to be con-
`strued to refer exclusively to hardware capable of executing
`software. Illustrative embodiments may include digital sig-
`nal processor (DSP) hardware, such as the AT&T DSPIG or
`DSP32 C, read-only memory (ROM) for storing software
`performing the operations discussed below, and random
`access memory (RAM) for storing DSP results. Very large
`scale integration (VLSI) hardware embodiments, as well as
`custom VLSI circuitry in combination with a general pur-
`pose DSP circuit, may also be provided. Any and all of these
`embodiments may be deemed to fall within the meaning of
`the labels for the functional blocks as used herein.
`The processing units 12, 22 are capable of placing calls
`and connecting to other processing units connected to the
`Internet 24, for example, via dialup SLIP/PPP lines. In an
`exemplary embodiment, each processing unit assigns an
`unsigned long session number, for example, a 32bit long
`sequence in a “.ini file for each call. Each call may be
`assigned a successive session number in sequence, which
`may be used by the respective processing unit to associate
`the call with one of the SLIP/PPP lines,
`to associate a
`<ConnectOK> response signal with a <Connect Request>
`signal, and to allow for multiplexing and demultiplexing of
`inbound and outbound conversations on conference lines, as
`explained hereinafter.
`For callee (or called) processing units with fixed IP
`addresses, the caller (or calling) processing unit may open a
`“socket”, i.e. a tile handle or address indicating where data
`is to be sent, and transmit a <Call> command to establish
`communication with the caller: utilizing, for example, data-
`gram services such as Internet Standard network layering as
`well as transport layering, which may include a Transport
`Control Protocol (1‘CP) or a User Datagram Protocol (UDP)
`on top of the IP. Typically, a processing unit having a fixed
`IP address may maintain at least one open socket and a
`called proces

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