`
`United States Patent
`Kelly
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,594,254 B1
`*Jul. 15, 2003
`
`US006594254B1
`
`(54) DOMAIN NAME SERVER ARCHITECTURE
`
`
`
`6,122,255 2 i 6,154,445
`
`
`
`
`
`FBartholomlew et a1. arris et a . .............. ..
`
`ggllfqi??j?gg?fg?é?wglfgmBER
`
`
`
`131* 6,300,863 B1 * 10/2001 Cotichini et a1. .......... .. 340/58 e. ........ ..
`
`
`
`
`
`PROTOCOL ADDRESSES
`
`6,347,085 B2 * 2/2002 Kelly ....................... .. 370/352
`
`(75) Inventor: Keith C. Kelly, Deer?eld Beach, FL
`(Us)
`(73) Assignee: Netspeak Corporation, Newark, NJ
`(Us)
`
`OTHER PUBLICATIONS
`0 Y g “INETPh
`T 1 ph
`s
`'
`d s
`.
`an ,
`one: e e one erv1ces an
`ervers on
`lAngmlegtg’s {:Ietwork Workmg Group RFC: 1789’ pp' 1_6’
`“ The History of TPCJNT, ” http://www.qocint/faq/histo
`
`( * ) Nonce'
`
`.
`
`_
`
`.
`
`.
`
`.
`
`Th1s_ patent {SSHSJd on a Con?rmed pros‘
`ecutlon aPPhFanOI} ?led under 37 CFR
`1~53(d), and 1S sublect t0 the tWent)’ year
`patent term provisions of 35 U.S.C.
`154(a)(2).
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U_S_C_ 154(k)) by 0 days_
`
`(21) Appl NO _ 08/911 519
`'
`"
`’
`Aug. 14,
`
`Related US. Application Data
`(60) Provisional application No. 60/023,891, ?led on Aug. 16,
`1996-
`.......................... .. H04L 12/66
`(51) Int. Cl.7
`370/352; 370/389; 370/401
`(52) US. Cl. ............... ..
`(58) Field of Search ............................... .. 370/352, 354,
`370/356, 389, 392, 475, 237, 401, 230;
`379/8817 201 210 219 220 224. 709/200
`201 203’ 218’ 219’ 227’ 202’ 230? 455/415’
`’
`’
`’
`’
`’
`’
`46’1_ 340/5 8’
`’
`'
`
`(56)
`
`.
`References Clted
`U_S_ PATENT DOCUMENTS
`
`5,608,786 A * 3/1997 Gordon -------------------- -- 370/352
`5,742,668 A i
`4/ 1998 Pepe ct a1~
`455/415
`5,742,762 2 * j/
`lsjcholl etlaL ~~
`“379/82 17
`A * 8x998 Kigreleet a '
`370/389
`6:014:379 A * 1/2000 White dell"...
`370/352
`6,021,126 A * 2/2000 White et al.
`6,069,890 A * 5/2000 White et al. .............. .. 370/352
`
`ry.html.
`
`C. Malamud & M. Rose, “ Principles of Operation for the
`TPCJNT Subdomain: Remote Printing —Technical Proce
`dares,” Network Working Group, Request for Comments:
`1528 (Oct, 1993),
`C. Malamud & M. Rose, “ Principles of Operation for the
`TPCJNT Subdomain: Remote Printing —Administrative
`Policies,” NetWork Working Group, Request for Comments:
`1529 (Oct. 1993).
`C. Malamud & M. Rose, “ Principles of Operation for the
`TPCJNT Subdomain: General Principles and Policy,” Net
`Work Working Group, Request for Comments: 1530 (Oct.
`1993).
`* Cited
`
`examiner
`
`Primary Examiner—Hassan Kizou
`Assistant Examiner—]ohn PeZZ1o
`(74) Attorney, Agent, or Firm—Kenyon & Kenyon
`(57)
`ABSTRACT
`
`A method and apparatus for tranSlating a domain name
`representing a telephone number mto a netWork protocol
`address mcludes a domam name server architecture contam
`ing logic responsive to a telephone number domain name,
`the telephone number domain name representing the country
`code, area code, exchange, or subscriber number of a
`subscriber apparatus telephone number. The logic resolves
`the telephone number domain name into a netWork protocol
`address usable in ultimately initiating a communication With
`the subscriber apparatus on a circuit-switched netWork. In
`one embodiment, a hierarchical tree of domain names and
`subdomain names representing the country codes, area
`codes and exchange codes of telephone numbers is con
`structed to assist in the process of resolving domain names
`to network Pmmc"1 addresses
`
`23 Claims, 7 Drawing Sheets
`
`NETWORK PROVIDERS
`COUNTRY CODES
`1 - UNITED STATES
`45 - DENMARK
`49 - GERMANY
`972 - ISRAEL
`
`COM
`
`MlL
`
`CARRIER
`
`NETSPEAK
`
`PROVIDER 2
`
`1
`
`45 49
`
`1
`
`45
`
`972
`
`AREA CODES
`
`305
`
`954.
`
`561
`
`407
`
`904
`
`561
`
`407
`
`904
`
`4
`
`CITY CODES
`
`241
`
`368
`
`392
`
`394
`
`395
`
`750
`
`997
`
`998
`
`395
`
`750
`
`997
`
`998
`
`977
`
`AT&T, Exh. 1006, p. 1
`
`
`
`H196
`
`‘97
`
`CONTROLLER
`
`120
`
`r 199
`
`142
`152
`f 147
`"" -n @ __.
`
`141
`146
`151
`
`DISKETTE DRIVE
`
`CD ROM DRIVE
`
`FIXED DISK DRIVE
`
`110
`
`-
`
`
`
`mama'S'n
`
`L1
`:3
`5‘1
`g
`
`u
`
`?CD
`
`140
`
`145
`
`CONTROLLER
`
`150
`CONTROLLER
`
`DISK
`
`BUS
`CONTROLLER
`130
`135 —_ a
`H
`c:
`INTERRUPT _
`_
`3
`VIDEO
`CONTROLLER
`CONTROLLER
`
`MEMORY
`CONTROLLER
`125
`
`-
`
`v
`
`115-
`SYSTEM
`RAM m C NTROLLER
`
`o
`
`-
`
`NETWORK
`INTERFACE
`
`V
`
`160
`
`165
`
`DMA
`CONTROLLER
`
`
`
`KEYBOARD AND
`MOUSE
`CONTROLLER
`
`CPU
`
`155
`
`191
`
`190
`
`‘ 170
`
`CCI)
`
`AT&T, Exh. 1006, p. 2
`
`
`
`U.S. Patent
`
`Jul. 15,2003
`
`Sheet 2 0f 7
`
`US 6,594,254 B1
`
`Oahu
`
`New
`
`m
`
`m U
`
`Ull
`
`new \
`
`S (ma
`
`menu
`
`a2
`
`AT&T, Exh. 1006, p. 3
`
`
`
`U.S. Patent
`
`Jul. 15,2003
`
`Sheet 3 0f 7
`
`US 6,594,254 B1
`
`Xmm
`
`E.
`
`E6 |
`
`men
`
`m 95mm
`
`VEOEMZ
`EEUP
`
`can
`
`AT&T, Exh. 1006, p. 4
`
`
`
`U.S. Patent
`
`Jul. 15,2003
`
`Sheet 4 0f 7
`
`US 6,594,254 B1
`
`w 339m
`
`hum
`wmm “mm
`mmm
`om»
`mmm
`wmm mmm wwm SN mmOOU
`>._._O
`
`cam
`woke Em 6mm. mom
`mun-O0
`<mm<
`
`wmmQ>OEm
`vEOEmZ
`
`AT&T, Exh. 1006, p. 5
`
`
`
`U.S. Patent
`
`Jul. 15,2003
`
`Sheet 5 0f 7
`
`US 6,594,254 B1
`
`SUBDOMAIN NETWORK ADDRESS I
`
`XXX. XXX. XXX. XXX
`
`1
`
`45 49
`
`Figure 5A
`
`SUBDOMAIN NETWORK ADDRESS
`
`xxx. xxx. xxx. xxx
`
`_
`
`Figure 5B
`
`s05
`
`954 516
`407
`904
`
`SUBDOMAIN NETWORKADDRESS
`
`xxx. xxx. xxx. xxx
`
`.
`
`Flgur e 5 C
`
`241
`368
`392
`394
`395
`750
`995
`991
`99a
`
`AT&T, Exh. 1006, p. 6
`
`
`
`U.S. Patent
`
`Jul. 15,2003
`
`Sheet 6 0f 7
`
`US 6,594,254 B1
`
`— ow. — me.
`
`m 059m
`
`_ mmEmEO.
`
`NF
`
`AT&T, Exh. 1006, p. 7
`
`
`
`U.S. Patent
`
`Jul. 15,2003
`
`Sheet 7 0f 7
`
`US 6,594,254 B1
`
`INPUT
`RECEIVED
`?
`
`PARSE INPUT DATA /702
`
`704
`
`ADDRESS
`PRESENT
`?
`
`/710
`,
`RESOLVE
`GATEWAY
`ADDRESS
`
`FORMAT INPUT DATA /705
`+
`
`FORWARD DOMAIN /708
`NAME TO SERVER
`
`712
`
`|p
`ADDRESS
`RECEIVED
`?
`
`N
`
`r
`
`V
`714 \ FORWARD DOMAIN
`NAME TO GATEWAY
`
`716 \
`
`OFFER CALL
`
`718
`
`CALL
`ESTABLISHED
`?
`
`Figure 7
`
`AT&T, Exh. 1006, p. 8
`
`
`
`US 6,594,254 B1
`
`1
`DOMAIN NAME SERVER ARCHITECTURE
`FOR TRANSLATING TELEPHONE NUMBER
`DOMAIN NAMES INTO NETWORK
`PROTOCOL ADDRESSES
`
`RELATED APPLICATIONS
`This application claims priority to US. Provisional Patent
`Application No. 60/023,891 entitled Apparatus For Placing
`Internet/Intranet Calls by Keith C. Kelly, ?led Aug. 16,
`1996.
`This application is the one of two US. patent applications
`?led on an even date hereWith and commonly assigned,
`including Ser. No. 08/911,133, by Keith C. Kelly, entitled
`Method and Apparatus for Establishing Communications
`BetWeen Packet-SWitched and Circuit-SWitched NetWorks,
`the subject matter of Which, by this reference, is incorpo
`rated herein.
`In addition, the subject matters of the folloWing related
`applications are incorporated herein by reference:
`US. patent application Ser. No. 08/533,115 entitled Point
`to-Point Internet Protocol, by Glenn W. Hutton, ?led Sep.
`25, 1995;
`US. patent application Ser. No. 08/719,894, entitled
`Directory Server For Providing Dynamically Assigned Net
`Work Protocol Addresses, by MattaWay ?led Sep. 25, 1996;
`US. patent application Ser. No. 08/721,316, entitled
`Graphic User Interface For Internet Telephony Application,
`by MattaWay et al., ?led Sep. 25, 1996;
`US. patent application Ser. No. 08/719,891, entitled
`Method And Apparatus For Distribution And Presentation
`Of Multimedia Data Over A Computer Network, by Matt
`aWay et al., ?led Sep. 25, 1996;
`US. patent application Ser. No. 08/719,554, entitled
`Point-to-point Computer NetWork Communication Utility
`UtiliZing Dynamically Assigned NetWork Protocol
`Addresses, by MattaWay et al., ?led Sep. 25, 1996;
`US. patent application Ser. No. 08/719,640, entitled
`Method And Apparatus For Dynamically De?ning Data
`Communication Utilities, by MattaWay et al., ?led Sep. 25,
`1996;
`US. patent application Ser. No. 08/719,898, entitled
`Method And Apparatus For Providing Caller Identi?cation
`Based Out-going Messages In A Computer Telephony
`Environment, by MattaWay et al., ?led Sep. 25, 1996;
`US. patent application Ser. No. 08/718,911, entitled
`Method And Apparatus For Providing Caller Identi?cation
`Based Call Blocking In A Computer Telephony
`Environment, by MattaWay et al., ?led Sep. 25, 1996;
`US. patent application Ser. No. 08/719,639, entitled
`Method And Apparatus For Providing Caller Identi?cation
`Responses In A Computer Telephony Environment, by Mat
`taWay et al., ?led Sep. 25, 1996; and
`US. patent application Ser. No. 08/832,746, entitled
`Virtual Circuit SWitching Architecture, by MattaWay et al.,
`?led Apr. 4, 1997;
`FIELD OF THE INVENTION
`The invention relates, generally, to data processing sys
`tems and telecommunication systems, and, more
`speci?cally, to a technique for enabling communication
`connections betWeen circuit-sWitched communication net
`Works and packet-sWitched data processing netWorks.
`BACKGROUND OF THE INVENTION
`TWo fundamentally different sWitching technologies eXist
`that enable digital communications. The ?rst type, circuit
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`sWitched netWorks, operate by establishing a dedicated
`connection or circuit betWeen tWo points, similar to public
`sWitched telephone netWorks( PSTN). A telephone call
`causes a circuit to be established from the originating phone
`through the local sWitching of?ce across trunk lines, to a
`remote sWitching of?ce and ?nally to the intended destina
`tion telephone. While such circuit is in place, the call is
`guaranteed a data path for digitiZed or analog voice signals
`regardless of other netWork activity. The second type packet
`sWitched netWorks, typically connect computers and estab
`lish an asynchronous “virtual” channel betWeen tWo points.
`In a packet-sWitched netWork, data, such as a voice signal,
`is divided into small pieces called packets Which are then
`multiplexed onto high capacity connections for transmis
`sion. NetWork hardWare delivers packets to speci?c desti
`nations Where the packets are reassembled into the original
`data set. With packet-sWitched netWorks, multiple commu
`nications among different computers can proceed concur
`rently With the netWork connections shared by different pairs
`of computers concurrently communicating. Packet-sWitched
`netWorks are, hoWever, sensitive to netWork capacity. If the
`netWork becomes overloaded, there is no guarantee that data
`Will be timely delivered. Despite this draWback, packet
`sWitched netWorks have become quite popular, particularly
`as part of the Internet and Intranets, due to their cost
`effectiveness and performance.
`In a packet-sWitched data netWork one or more common
`netWork protocols hide the technological differences
`betWeen individual portions of the netWork, making inter
`connection betWeen portions of the netWork independent of
`the underlying hardWare and/or softWare. Apopular netWork
`protocol, the Transmission Control Protocol/Internet Proto
`col (TCP/IP) is utiliZed by the Internet and
`lntranets>lntranets are private netWorks such as Local Area
`NetWorks (LANs) and Wide Area NetWorks
`The
`TCP/IP protocol utiliZes universal addressing as Well as a
`softWare protocol to map the universal addresses into loW
`level machine addresses. For purposes of this discussion,
`netWorks Which adhere to the TCP/IP protocol Will be
`referred to hereinafter “IP-based” or as utiliZing “IP
`addresses” or “Internet Protocol address”.
`It is desirable for communications originating from an
`IP-based netWork to terminate at equipment in a PSTN
`netWork, and vice versa, or for calls Which originate and
`terminate on a PSTN netWork to utiliZe a packet-sWitched
`data netWork as an interim communication medium. Prob
`lems arise, hoWever, When a user on an IP-based or other
`packet sWitched data netWork tries to establish a communi
`cation link beyond the perimeter of the netWork, due to the
`disparity in addressing techniques among other differences
`used by the tWo types of netWorks.
`The exchange/subscriber addressing scheme utiliZed by
`public sWitched telephone netWorks is closely related to the
`actual physical architecture of the netWork and therefore to
`the geographic location of terminating apparatus, i.e. tele
`phone Withthin the netWork. For eXample, in the United
`States, a telephone number may be partitioned into a three
`digit area code, a three-digit exchange, and a four-digit
`subscriber number Within the eXchange. PSTN carriers cur
`rently have large, Well-established netWorks With multitudes
`of subscribers utiliZing such naming systems and are set up
`to interact With other PSTN carrier netWorks and to account
`for the variances in local geographic dialing patterns.
`Conversely, packet-sWitched data netWorks adhere to a
`netWork protocol such as the TCP/IP protocol utiliZes a
`hierarchical naming system Which is neither based on the
`underlying hardWare of the netWork nor the geographic
`
`AT&T, Exh. 1006, p. 9
`
`
`
`US 6,594,254 B1
`
`3
`locus of the various hardware components. Instead, the
`TCP/IP protocol partitions computers along lines of author
`ity irrespective of physical location. In TCP/IP, hierarchical
`machine names are assigned according to structures of
`organiZation for parts of name space, not necessarily accord
`ing to the structure of a physical netWork interconnection.
`The TCP/IP protocol implements a naming hierarchy called
`the Domain Name System (DNS). The Domain Name
`System utiliZes a hierarchical naming scheme referred to as
`domain names. Domain names consist of a sequence of
`subdomain names, separated by a delimiter character, i.e. “.”
`The subdomain names of a domain name are sometimes
`referred to as labels. For example, the domain name “WWW.
`netspeak.com” contains three labels: “WWW”, “netspeak”,
`and “com”. Any suffix of a label in a domain name is called
`a domain. In the above example, the top-level domain is
`“com.” The domain name system is Well documented in
`various public speci?cations and Will not be described
`hereinafter for the sake of brevity.
`The reader Will appreciate that due to the naming schemes
`utiliZed by PSTN netWorks and TCP/IP based netWorks,
`such as the Internet establishment of direct connections from
`the Internet to public sWitched telephone netWork subscrib
`ers and vice versa, is impractical.
`In light of the above, a need currently exists for a
`mechanism Which enables translation of a conventional
`telephone number from a client task on an IP-based netWork
`into a netWork protocol address representing a gateWay
`capable of contacting the subscriber apparatus associated
`With the telephone number.
`A need further exists for a mechanism Which accounts for
`the dilemma of geographic dialing patterns and the nongeo
`graphic nature of IP-based netWorks such as the Internet,
`versus the hardWired, geographic nature of public sWitched
`telephone netWorks.
`A need further exists for a mechanism Which facilitates
`communication betWeen packet-sWitched netWorks and
`circuit-sWitched netWorks and Which accommodate the
`existing infrastructure of circuit-sWitched netWorks, includ
`ing inoperability among carriers, subscriber volumes and
`billing logistics.
`
`SUMMARY OF THE INVENTION
`
`The invention describes a method and apparatus Which
`enables traditional telephone numbers formatted as domain
`names to be resolved into netWork protocol addresses, either
`by a single domain name server apparatus or multiple
`domain name server apparatus.
`According to a ?rst aspect of the present invention, a
`method for resolving data representing a telephone number
`comprises the steps of receiving a telephone number domain
`name identifying a telephone from a source, resolving the
`telephone number domain name into a netWork protocol
`address, and supplying a netWork protocol address to the
`source. In one embodiment, a portion of the telephone
`number domain name represents the country code, area
`code, exchange, or data segments of a telephone number. In
`an alternative embodiment, the method entails resolving
`country code, area code or exchange subdomain names into
`the netWork protocol addresses of their respective domain
`name servers.
`In accordance With a second aspect of the present
`invention, a domain name server apparatus comprises a
`processor for manipulating data, a memory couple to the
`process for storing data, connection logic con?gured to
`couple the name server to the computer netWork, at least one
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`4
`domain name stored in the memory, the domain name
`having associated thereWith a netWork protocol address and
`having a portion thereof representing the country code, area
`code, exchange, subscriber number or carrier of a telephone
`number and logic for generating the netWork protocol
`address associated With the domain name. In one
`embodiment, a plurality of domain name labels are stored in
`memory, each label having associated thereWith a netWork
`protocol address, each domain name label representing at
`least one of the carrier, country code, area code, exchange or
`subscriber number of a telephone number.
`In accordance With a third aspect of the invention, a
`computer program product for use With a computer system
`comprises a computer usable medium having program code
`embodied in the medium for enabling translation of data
`representing a telephone number of subscriber apparatus
`into a netWork protocol address. The program code com
`prises code for receiving a telephone number domain name
`from a source, program code responsive to a portion of the
`telephone number domain name for generating a netWork
`protocol address, and program code for forWarding the
`netWork protocol address to the source. In one embodiment,
`the program code further comprises code for storing in the
`computer system at least one domain name having associ
`ated thereWith a netWork protocol address, the domain name
`representing at least one of the country code, area code and
`exchange data of a telephone number. In an alternative
`embodiment, the program code comprises code for storing
`in the computer system a plurality of domain names, each
`having associated thereWith a netWork protocol address,
`each of the domain names representing the carrier, country
`code, area code, exchange, or subscriber number data of a
`telephone number.
`In accordance With a fourth aspect of the invention, a
`system for facilitating communication betWeen client tasks
`executing on a packet-sWitched data netWork and subscriber
`apparatus on a circuit-sWitched communication netWork
`comprises a domain name server operatively coupled to the
`packet-sWitched netWork. The domain name server com
`prises resolution logic responsive to a telephone number
`domain name for generating a netWork protocol address
`associated With the domain name. The system further com
`prises a gateWay server addressable by a netWork protocol
`address. The gateWay comprises logic con?gured to initiate
`a communication link With subscriber apparatus on a circuit
`sWitched communication netWork in response to receipt of a
`telephone number domain name.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The above and other features, objects, and advantages of
`the invention Will be better understood by referring to the
`folloWing description in conjunction With the accompanying
`draWing in Which:
`FIG. 1 is a block diagram of a computer systems suitable
`for use With the present invention;
`FIG. 2 is a conceptual illustration of a communications
`netWork environment in Which the present invention may be
`utiliZed;
`FIG. 3 is a block diagram of a gateWay system in
`accordance With the present invention;
`FIG. 4 illustrates conceptually a hierarchical domain
`naming structure utiliZed With the server of the present
`invention;
`FIGS. 5A—C illustrate conceptually the data structures
`used to implement the present invention;
`FIG. 6 illustrates conceptually the inventive steps utiliZed
`to resolve a telephone number to a netWork address of a
`gateWay in accordance With the present invention, and
`
`AT&T, Exh. 1006, p. 10
`
`
`
`US 6,594,254 B1
`
`5
`FIG. 7 is a How chart illustrating the process steps of the
`method in accordance With the present invention.
`
`DETAILED DESCRIPTION
`
`6
`trated in FIG. 2 or described herein is necessary for the
`implementation or the operation of the invention.
`A pair of PSTN central offices 210A—B serve to opera
`tively couple various terminating apparatus through either a
`circuit sWitched netWork or a packet sWitched netWork.
`Speci?cally, central of?ces 210A—B are interconnected by a
`toll netWork 260. Toll netWork 260 may be implemented as
`a traditional PSTN netWork including all of the physical
`elements including routers, trunk lines, ?ber optic cables,
`etc. Connected to central of?ce 210A is a traditional tele
`phone terminating apparatus 214 and an Internet telephone
`232A. Terminating apparatus 214 may be implemented With
`either a digital or analog telephone or any other apparatus
`capable of receiving a call such as modems, facsimile
`machines, etc., such apparatus being referred to collectively
`hereinafter as a terminating apparatus, Whether the netWork
`actually terminates. Further, the PSTN netWork may be
`implemented as either an integrated services digital netWork
`(ISDN) or a plain old telephone service (POTS) netWork.
`The Internet telephony is conceptually illustrated as a tele
`phone icon symboliZing the Internet telephone client appli
`cation executing on a personal computer and interconnected
`to central of?ce 210A via a modem 270A. Similarly, tele
`phone 214C is connected to central of?ce 210D and Web
`Phone 232C is connected to central of?ce 210B via modem
`270C. Central of?ces 210A—B are, in turn, operatively
`coupled to Internet 220 by ISP 250B and 250C, respectively.
`In addition, central of?ce 210A is coupled to ISP250B by
`gateWay 218B. Similarly, central of?ce 210B is connected to
`ISP 250C by gateWay 218C. In addition, a telephone 214B
`and Internet telephone 232B, similar to telephone 214A and
`Internet telephone 232A, respectively, are interconnected to
`Internet 220 via PBX 212, gateWay 218A and ISP 258A. In
`addition, global server 252 is coupled to the Internet 220 are
`a domain name system server 254 and 255. Global server
`252 may be implemented as described in US. patent appli
`cation Ser. No. 08/719,894, entitled Directory Server for
`Providing Dynamically Assigned NetWork Protocol
`Addresses, previously referenced and incorporated herein. A
`global server suitable for use as Global Server 252 is
`commercially available from NetSpeak Corporation in the
`form of a collection of intelligent softWare modules includ
`ing connection server Part No. CSR1, information server,
`Model ISR1, and database server, Model DBSR1. Name
`servers 254 and 255 are described as set forth hereinafter.
`Finally, Internet Service Providers (ISPs) 250A—D may
`comprise any number of currently commercially available
`Internet service providers such as America On Line, the IBM
`Global NetWork, etc. An Intranet implemented as LAN 275
`is coupled to Internet 220 via ISP 250D and server 256.
`Server 256 may have the architecture as illustrated in FIG.
`1 and functions as a proxy server for LAN 275 to Which
`WebPhone 232E is connected via a LAN -based TCP/IP
`netWork connector 280. A plurality of Internet telephone
`232F and 232E are coupled to LAN 275 via LAN connectors
`280. The gateWays and Internet telephony client applications
`may be implemented as set forth in greater detail hereinafter.
`WebPhone Client
`Internet telephone 232 may be implemented as described
`in the previously referenced US. patent applications incor
`porated herein by reference. An Internet telephony applica
`tion suitable for use With the present invention is the
`WebPhone 1.0, 2.0 or 3.0, client softWare application com
`mercially available from NetSpeak Corporation, Boca
`Raton, Fla., referred to hereafter as the WebPhone client. For
`the remainder of this description, the Internet telephone Will
`be referred to as the WebPhone client. It Will be obvious to
`
`FIG. 1 illustrates the system architecture for a computer
`system 100, such as an IBM PS/2® computer on Which the
`invention can be implemented. The exemplary computer
`system of FIG. 1 is for descriptive purposes only. Although
`the description beloW may refer to terms commonly used in
`describing particular computer systems, such as an IBM
`PS/2 computer, the description and concepts equally apply
`to other systems, including systems having architectures
`dissimilar to FIG. 1.
`The computer system 100 includes a central processing
`unit (CPU) 105, Which may include a conventional
`microprocessor, a random access memory (RAM) 110 for
`temporary storage of information, and a read only memory
`(ROM) 115 for permanent storage of information. A
`memory controller 120 is provided for controlling system
`RAM 110. Abus controller 125 is provided for controlling
`bus 130, and an interrupt controller 135 is used for receiving
`and processing various interrupt signals from the other
`system components. Mass storage may be provided by
`diskette 142, CD ROM 147 or hard drive 152. Data and
`softWare may be exchanged With computer system 100 via
`removable media such as diskette 142 and CD ROM 147.
`Diskette 142 is insertable into diskette drive 141 Which is, in
`turn, connected to bus 130 by a controller 140. Similarly, CD
`ROM 147 is insertable into CD ROM drive 146 Which is
`connected to bus 130 by controller 145. Hard disk 152 is part
`of a ?xed disk drive 151 Which is connected to bus 130 by
`controller 150.
`User input to computer system 100 may be provided by a
`number of devices. For example, a keyboard 156 and mouse
`157 are connected to bus 130 by controller 155. An audio
`transducer 196, Which may act as both a microphone and a
`speaker, is connected to bus 130 by audio controller 197, as
`illustrated. It Will be obvious to those reasonably skilled in
`the art that other input devices such as a pen and/or tablet
`and a microphone for voice input may be connected to
`computer system 100 through bus 130 and an appropriate
`controller/softWare. DMA controller 160 is provided for
`performing direct memory access to system RAM 110. A
`visual display is generated by video controller 165 Which
`controls video display 170. Computer system 100 also
`includes a communications adaptor 190 Which alloWs the
`system to be interconnected to a local area netWork (LAN)
`or a Wide area netWork (WAN), schematically illustrated by
`bus 191 and netWork 195.
`Computer system 100 is generally controlled and coordi
`nated by operating system softWare, such the OS/2® oper
`ating system, available from International Business
`Machines Corporation, Armonk, NY. The operating system
`controls allocation of system resources and performs tasks
`such as process scheduling, memory management, and net
`Working and I/O services, among other things.
`Telecommunication Environment
`FIG. 2 illustrates a telecommunications environment in
`Which the invention may be practiced such environment
`being for exemplary purposes only and not to be considered
`limiting. NetWork 200 of FIG. 2 illustrates a hybrid tele
`communication environment including both a traditional
`public sWitched telephone netWork as Well as Internet and
`Intranet netWorks and apparatus bridging betWeen the tWo.
`The elements illustrated in FIG. 2 are to facilitate an
`understanding of the invention. Not every element illus
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`AT&T, Exh. 1006, p. 11
`
`
`
`US 6,594,254 B1
`
`7
`those reasonably skilled in the arts that other Internet
`telephone applications implementing similar functionality
`may be substituted for the WebPhone Without affecting the
`inventive concepts contained herein. The WebPhone com
`prises a collection of intelligent softWare modules Which
`perform a broad range of Internet telephony functions. For
`the purpose of this disclosure, a “Virtual” WebPhone client
`refers to the same functionality embodied in the WebPhone
`client application Without a graphic user interface. Such
`virtual WebPhone client can be embedded into a gateWay,
`automatic call distribution, server, or other apparatus Which
`do not require extensive visual input/output from a user and
`may interact With any other WebPhone clients or servers
`adhering to the WebPhone protocol. For the purpose of this
`disclosure, WebPhone 232 or any of the virtual WebPhones
`implemented in other apparatus, may be considered Web
`Phone client applications, “WebPhone Clients”, as opposed
`to other apparatus such as the connection/information server,
`Which adheres to the WebPhone Protocol.
`The WebPhone softWare applications may run on the
`computer system described With reference to FIG. 1, or a
`similar architecture Whether implemented as a personal
`computer or dedicated server. In such an environment, the
`sound card 197 accompanying the computer system 100 of
`FIG. 1, may be an MCI compliant sound card While com
`munication controller 190 may be implemented through
`either an analog modem 270 or a LAN-based TCP/IP
`netWork connector 280 to enable Internet/intranet connec
`tivity.
`The WebPhones, as Well as any other apparatus having a
`virtual WebPhone embodied therein, each have their oWn
`unique E-mail address and adhere to the WebPhone Protocol
`and packet de?nitions, as extensively described in the pre
`viously referenced US. patent applications. For the reader’s
`bene?t, short summary of a portion of the WebPhone Pro
`tocol is set forth to illustrate the interaction of WebPhone
`clients With each other and the connection/information
`server When establishing a communication connection.
`Each WebPhone client, may serve either as a calling party
`or a caller party, i.e. the party being called. The calling party
`transmits an on-line request packet to a connection/
`information server upon connection to an IP-based netWork,
`eg the Internet or an Intranet. The on-line request packet
`contains con?guration and settings information, a unique
`E-mail address and a ?xed or dynamically assigned IP
`address for the WebPhone client. The callee party, also a
`utiliZing a WebPhone client, transmits a similar on-line
`request packet containing its respective con?guration and
`setting information, E-mail address and IP address to the
`same or a different connection server upon connection to an
`IP-based netWork. The calling party originates a call by
`locating the callee party in a directory associated With either
`its oWn WebPhone client or the connection/information
`server to Which it is connected. The callee party may be
`identi?ed by alias, E-mail address or key Word search
`criteria. Once the E-mail address of the calling party is
`identi?ed, the calling party’s WebPhone forWards a request
`packet to the connection/information server, the request
`packet containing the callee party’s E-mail address. The
`connection/information server uses the E-mail address in the
`received request packet to locate the last knoWn IP address
`assigned to the callee party. The connection/information
`server then transmits to the calling party an information
`packet containing the IP address of the callee party. Upon
`receipt of the located IP address from the connection server,
`the calling party’s WebPhone initiates a direct point-to-point
`communication link With the callee party by sending a call
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`8
`packet directly to the IP address of the callee party. The
`callee party either accepts or rejects the call With appropriate
`response packets. If the call is accepted, a communication
`session is established directly betWeen the caller and the
`callee, Without intervention of the connection/information
`server. The above scenario describes establishment of a
`communication link Which originates and terminates With
`clients on an IP-based netWork.
`GateWay Architecture
`To facilitate interaction With WebPhone clients, a virtual
`WebPhone is implemented in the gateWay 218, either
`executable in RAM memory or embedded in ROM memory
`associated With such apparatus. The gateWay 218 comprises
`a virtual WebPhone Which acts as a proxy device and voice
`processing hardWare that bridges from an IP-based netWork
`to a PSTN netWork. The gateWay 218 may be implemented
`With either a microprocessor based architecture or With
`dedicated digital signal processing logic and embedded
`softWare. A gateWay suitable for use as gateWay 218 With the
`present invention is either NetSpeak Model Nos. WGX-MD/
`24, a 24-port digital T-1 IP telephony gateWay, or WGX-M/
`16, a 16-port analog IP telephony gateWay, both commer
`cially available from NetSpeak Corporation, Boca Raton,
`Fla. GateWay 218 is described in greater detail With refer
`ence to FIG. 3 hereinafter.
`FIG. 3 illustrates the syste