throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2004/0236850 A1
`(43) Pub. Date:
`Nov. 25, 2004
`Krumm et al.
`
`US 20040236850A1
`
`(54) CLIENT PROXIMITY DETECTION METHOD
`AND SYSTEM
`(75) Inventors: John C. Krumm, Redmond, WA (US);
`Susan D. Woolf, Seattle, WA (US);
`Roland Fernandez, Woodinville, WA
`(US); David J. Marsh, Sammamish,
`WA (US); Albert D. Jee, Sammamish,
`WA (US); Wayne G. King, Kirkland,
`WA (US)
`Correspondence Address:
`Law Offices of Albert S. Michalik, PLLC
`Suite 193
`704-228th Avenue NE
`Sammamish, WA 98.074 (US)
`CORPORATION,
`(73) Assignee: MICROSOFT
`REDMOND, WASHINGTON
`(21) Appl. No.:
`10/677,125
`(22) Filed:
`Sep. 30, 2003
`Related U.S. Application Data
`(60) Provisional application No. 60/471,982, filed on May
`19, 2003.
`
`Publication Classification
`
`(51) Int. Cl. ................................................. G06F 15/173
`(52) U.S. Cl. ............................................ 709/224; 370/913
`
`(57)
`
`ABSTRACT
`
`A System and method in a wireleSS network for discovering
`which resources (e.g., other wireless computing devices) are
`proximate a user's wireleSS computing device. WireleSS
`Signal Strengths with respect to various base Stations are
`compared with the Signal Strengths of other network devices
`or resources, to determine which devices are experiencing
`Similar Signal Strengths. Devices with Similar Signal
`Strengths are deemed proximate. Each participating comput
`ing device may send its signal Strength reports to a proximity
`Server, which distributes proximity data to network clients.
`Each client may receive and process the Signal Strength data
`for determining which other clients/resources are proximate,
`or the Server can perform proximity computations and return
`a list of proximate clients. Once computed, the identities of
`the proximate clients can be used to query for additional data
`about the clients, Such as the names and other details of their
`owners, or information about the resource.
`
`Send Averaged
`Signal Strengths
`
`ine to
`Receive
`Data
`
`Query Server for
`Data, receive
`Response
`
`Process Data,
`Update Display
`(as needed)
`
`Notify Server
`(if needed)
`
`
`
`Close
`Program
`
`Obtain Current
`Signal Strengths,
`Average Results
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 1 of 17
`
`SAMSUNG EX-1030
`
`

`

`Patent Application Publication Nov. 25, 2004 Sheet 1 of 6
`
`US 2004/0236850 A1
`
`S6L
`
`Ost
`
`
`
`
`961jessydiiad
`[ssi|"\
`
`YIOMJANBaly[2907]
`bLLaoejapU]
`$8}NOILVOIIdd¥
`
`__SWWe50ud
`YIOMJONBAlyOPINZL}
`
`cbpueoqhey9bou
`Lory
`asnowC9}y001
`
`3LOWSY
`
`LI
`
`WVYSOud
`
`sa1ndow
`
`aoejazU
`
`usal2g
`
`eeu]
`sIeLa}uU]
`
`yndjno
`
`-yonoL
`
`OaPlA
`
`wun
`
`sngwa}sks
`
`YIOMION
`
`43sn
`
`ynduy
`
`aoeyezu|
`
`aIqeAoWway
`3|QeAouay-UON
`
`*JOA-UON
`
`Asowaw
`
`sdeLS}U]
`
`
`
`Soepa}U}
`
`Alowa"|OA-UON
`
`WYeSOud
`
`PerW3LSAS
`
`ONILVESdO
`
`Zeb(Wve)
`
`StrSWVeDONd
`NOILVOMddV
`
`
`
`WYYSO0udYSHLO
`
`TEP(IwOU)
`
`Page 2 of 17
`
`Page 2 of 17
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`Patent Application Publication Nov. 25, 2004 Sheet 2 of 6
`FIG. 2
`
`
`
`US 2004/0236850 A1
`
`
`
`Base
`Station2
`
`f 2022
`
`
`
`
`
`Mobile
`Device - B
`
`C
`
`Base
`Stations
`
`N
`
`208
`
`206
`
`Base
`Station
`
`CD
`s
`
`Page 3 of 17
`
`

`

`Patent Application Publication Nov. 25, 2004 Sheet 3 of 6
`
`US 2004/0236850 A1
`
`
`
`
`
`&#09
`
`909809
`
`Page 4 of 17
`
`

`

`Patent Application Publication Nov. 25, 2004 Sheet 4 of 6
`
`US 2004/0236850 A1
`
`F.G. 4
`
`400
`
`\
`
`4021
`
`\
`\
`V
`
`
`
`/
`/
`
`420
`
`\
`
`v
`
`Fixed
`Resource
`(pre-calibrated)
`
`
`
`422
`
`Fixed
`Resource
`(pre-calibrated)
`
`/ O
`Base
`Station2
`
`4022
`
`410
`
`Fixed
`Device - X
`
`NO
`
`Base
`Station3
`
`V 412
`
`4023
`Fixed
`\ Device - Y
`N
`\
`C
`
`4024
`
`Base
`Station
`
`406
`
`402
`
`Base
`Station
`
`Page 5 of 17
`
`

`

`Patent Application Publication Nov. 25, 2004 Sheet 5 of 6
`
`US 2004/0236850 A1
`
`500
`
`
`
`SUMMAGENOA
`
`Ameritade , Harrisdirect
`Trade of Saeet
`TD Waterhouse
`ke
`last
`MSFT
`. ii. . ; Update
`.
`.
`.
`. . .
`.
`.
`Market Report News Top 10
`
`SNECelts
`& Algeria quake toll grows
`U.N. lifts sanctions against
`rac
`NBC's Today doney for
`We
`
`s
`
`Recreates
`3 Thursday. Light Rain (65.52)
`s Friday. Fostly Cloudy (7454)
`
`& Saturday. Showers (65.50)
`
`"The Agile Business: Balancing Strategy and Execution"
`
`DAY ONE: Wednesday, May 21st, 2003
`
`8:00a
`
`Talet PC Session
`
`SOa
`
`Welcome Keynote
`Microsoft Corporation
`
`10:30am
`
`introduction
`Business strategist and author
`
`11:00a
`
`Break
`
`11:30a
`
`Real Business Value of Technology
`Panel moderator
`Chairman ad CEO
`
`
`
`12:30pm
`
`inch
`
`7
`Rsssf.gfins
`Microsoft Corp.
`
`Garfish
`Microsoft Corp.
`Tech Specialist.
`
`Crstate Mesage
`
`Ysultige GPC
`
`es
`
`KAAinslows
`
`rtrustPosy
`Cedits
`
`Page 6 of 17
`
`

`

`Patent Application Publication Nov. 25, 2004 Sheet 6 of 6
`
`US 2004/0236850 A1
`
`Obegin 9
`
`FIG. 6
`
`6OO
`
`Participation
`
`No
`
`
`
`ime to
`Receive
`Data
`
`Send Averaged
`Signal Strengths
`
`608
`
`Query Server for
`Data, Receive
`Response
`
`Process Data,
`Update Display
`(as needed)
`
`to Scan
`p
`
`Yes
`
`614
`
`Obtain Current
`Signal Strengths,
`Average Results
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`616
`
`618
`
`Notify Server
`(if needed)
`
`Close
`Program
`
`Page 7 of 17
`
`

`

`US 2004/0236850 A1
`
`Nov. 25, 2004
`
`CLIENT PROXMITY DETECTION METHOD AND
`SYSTEM
`
`CROSS-REFERENCE TO RELATED
`APPLICATION
`0001. The present invention claims priority to U.S. pro
`visional patent application Ser. No. 60/471,982, filed May
`19, 2003 and herein incorporated by reference.
`
`FIELD OF THE INVENTION
`0002 The invention relates generally to computer sys
`tems and networks, and more particularly to computer
`Systems employing wireleSS communications.
`
`BACKGROUND OF THE INVENTION
`0003) When in unfamiliar settings, it would be very
`useful for a person to be able to automatically discover who
`else was nearby, and also what other resources were near that
`perSon. For example, at conferences, meetings and other
`Social engagements, people interact with one another fairly
`regularly, and often see the Same people at many Such
`events. One of the most awkward and difficult things that
`occurs for an individual is to See Someone that he or she
`should know fairly well from a previous encounter, yet be
`unable to remember the name and other details of that
`perSon. Some people may go So far as to attempt to avoid
`Such a perSon until they can recall at least the name, or
`otherwise find out who that person is.
`0004.
`In addition to discovering other people, many
`individuals would benefit from being able to discover other
`resources that are nearby. For example, a user of a mobile
`computing device may need to print a document, Such as
`when out of the office, and would thus benefit from being
`able to detect the nearest available printer. AS another
`example, a user may misplace a mobile computing device,
`Such as by leaving a pocket-sized digital assistant in Some
`one else's office or under a pile of papers, and would benefit
`from being able to discover the location of the misplaced
`device. AS other examples, a perSon may want to find the
`nearest elevator, bathroom, or vending machine, even
`though these devices are not part of any computer network.
`0005 What is needed is a way for a user of a computing
`device to be able to detect or otherwise discover people and
`other resources that are nearby the user's computing device.
`The method and system should be reliable, flexible, and
`extensible, as well as easy to use and understand for even
`non-Sophisticated computer users.
`
`SUMMARY OF THE INVENTION
`0006 Briefly, the present invention provides a system
`and method in a wireleSS network for discovering via a
`network-capable device (Such as a computing device) which
`other wireleSS network devices and other transmitters of
`network information are proximate the network device. With
`this information, information about another resource (e.g.,
`biographical data about a computing device's owner, or its
`device capabilities and/or location) may be looked up or
`otherwise provided to a network device for presentation to
`a user of that device.
`0007 To discover which other resources such as wireless
`network devices are proximate, the System and method
`
`gather wireless signal strengths (with respect to various base
`Stations, or access points or the like) from participating
`resources Such as network devices, and then compare those
`Signal Strengths to determine which devices are experiencing
`Similar Signal Strengths. Those with Similar signal Strengths
`are determined to be in proximity to one another.
`0008. In one implementation, each participating comput
`ing device (proximity client) is responsible for Sending
`Signal Strength reports for the various base Stations that it can
`See to a proximity Server. A client can also optionally register
`with the Server, Supplying data Such as a name String and an
`expiration time. In an alternative implementation, clients can
`provide Signal Strengths to one another in a peer-to-peer data
`eXchange model. In a client-Server model, the Server can
`distribute (e.g., when queried or periodically) the signal
`Strength information to the clients, or the Server can perform
`computations to determine which participating clients are
`proximate any given client, as determined based on Similar
`Signal Strength reports. A list of Such other clients may be
`provided to each client, possibly including other informa
`tion. For example, if the client does not compute proximity
`on its own, then the list can include information about the
`other clients Such as biographical data of its associated user,
`or the client can otherwise obtain the information, Such as by
`querying a database.
`0009 If the client does its own proximity computations,
`then the client queries the server (or other clients) for signal
`Strength reports, or receives them in Some other manner Such
`as periodically, usually going back in time Some limited
`amount. Once computed, the client list can be used as a basis
`for querying a database as needed to obtain additional data
`about the other clients, Such as the names and other details
`of their owners, or information about the resource (e.g., a
`printer and its intended location, Such as at an information
`booth).
`0010. A client can be set up to report its signal strengths
`and present lists of nearby clients on demand. The on
`demand (manual) mode is useful for obtaining a one-time
`list of nearby users, for example at the beginning of a
`meeting. Alternatively, the client can be set up to perform the
`reporting function periodically (or on Some occasional
`basis). Such a periodic mode is useful if users are frequently
`moving from place to place, when their Signal Strengths and
`proximity relations will also change frequently. The report
`ing can be Some combination of these mechanisms, e.g.,
`Switch from an on-demand reporting mode to a periodic
`reporting mode when a client's own average Signal Strengths
`with respect to base Stations Start varying beyond Some
`threshold, which would be indicative of the client moving.
`0011. In a client-server model, the proximity server col
`lects signal Strength data from each mobile client and
`distributes the Signal strengths and/or proximity data (Such
`as a list of clients) back to those mobile clients. The
`proximity Server is a central computer that Stores signal
`Strength data reports contributed by the participating mobile
`proximity clients. In one implementation, each report com
`prises a Set of ordered pairs, with each ordered pair giving
`a base Station identifier and the Signal Strength from that base
`Station as measured on the client. The proximity Server
`tracks the data in association with the identity of the report
`ing mobile device, and adds a time Stamp that indicates
`when the report was received.
`
`Page 8 of 17
`
`

`

`US 2004/0236850 A1
`
`Nov. 25, 2004
`
`0012 Proximity clients may query data from the prox
`imity Server. For example, if a client performs its own
`proximity computations, then that client will request signal
`Strength reports from the Server, usually going back in time
`by an amount specified by the client. This “look back' time
`acts as a filter on the data So only recent Signal Strength data
`may be considered, as older data may have come from
`locations that the clients are no longer near. Other Smoothing
`and filtering operations are feasible. Other clients, Such as
`those that do not perform their own proximity computations,
`may request that the Server Send back a list of other nearby
`clients.
`0013 The proximity information, whether calculated
`from obtained signal Strength data or obtained from the
`Server, can be used to access one or more databases (e.g., a
`database of biographical data built during conference reg
`istration Such as including a picture, name and facts),
`whereby information about a nearby individual or device is
`readily available to a participating client computer.
`0.014
`Proximity to non-networked or non-electronic
`resources Such as Stairways or bathrooms can be computed
`by representing each Such device as a Set of Signal Strengths
`in the database. These signal Strengths are measured in a
`calibration Step in which a user visits the resource's actual
`location while carrying a wireleSS device. The resources
`Signal Strengths are measured with the WireleSS devices and
`reported to the database. In this way, any resource can be
`tagged with Signal Strengths and then participate in proxim
`ity queries.
`0.015. Other advantages will become apparent from the
`following detailed description when taken in conjunction
`with the drawings, in which:
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`0016 FIG. 1 is a block diagram generally representing a
`computer System into which the present invention may be
`incorporated;
`0017 FIG. 2 is a block diagram generally representing a
`network, including a plurality of base Stations having wire
`leSS connections to a plurality of network devices, config
`ured to use Signal Strength data in accordance with an aspect
`of the present invention;
`0.018
`FIG. 3 is a block diagram generally representing
`another network, including a plurality of base Stations hav
`ing wireleSS connections to a plurality of network devices,
`configured to use signal Strength data in accordance with an
`0.019
`FIG. 4 is a block diagram generally representing a
`network including fixed and wireleSS devices, configured to
`use Signal Strength data in accordance with an aspect of the
`present invention;
`0020 FIG. 5 is a representation of a program display
`showing one example of how Signal Strength data may be
`used to present a computer user with information based on
`proximity data of other network devices, in accordance with
`an aspect of the present invention; and
`0021
`FIG. 6 is flow diagram generally representing
`operation of a client program to use Signal Strength data to
`present a computer user with information based on proxim
`ity data of other network devices, in accordance with an
`aspect of the present invention.
`
`DETAILED DESCRIPTION
`0022 Exemplary Operating Environment
`0023 FIG. 1 illustrates an example of a suitable com
`puting system environment 100 on which the invention may
`be implemented. The computing system environment 100 is
`only one example of a Suitable computing environment and
`is not intended to Suggest any limitation as to the Scope of
`use or functionality of the invention. Neither should the
`computing environment 100 be interpreted as having any
`dependency or requirement relating to any one or combina
`tion of components illustrated in the exemplary operating
`environment 100.
`0024. The invention is operational with numerous other
`general purpose or Special purpose computing System envi
`ronments or configurations. Examples of well known com
`puting Systems, environments, and/or configurations that
`may be suitable for use with the invention include, but are
`not limited to, personal computers, Server computers, hand
`held or laptop devices, tablet devices, multiprocessor Sys
`tems, microprocessor-based Systems, Set top boxes, pro
`grammable
`consumer
`electronics,
`network
`PCs,
`minicomputers, mainframe computers, distributed comput
`ing environments that include any of the above Systems or
`devices, and the like.
`0025 The invention may be described in the general
`context of computer-executable instructions, Such as pro
`gram modules, being eXecuted by a computer. Generally,
`program modules include routines, programs, objects, com
`ponents, data Structures, and So forth, that perform particular
`tasks or implement particular abstract data types. The inven
`tion may also be practiced in distributed computing envi
`ronments where tasks are performed by remote processing
`devices that are linked through a communications network.
`In a distributed local and remote computer Storage media
`including memory Storage devices.
`0026. With reference to FIG. 1, an exemplary system for
`implementing the invention includes a general purpose
`computing device in the form of a computer 110. Compo
`nents of the computer 110 may include, but are not limited
`to, a processing unit 120, a System memory 130, and a
`System buS 121 that couples various System components
`including the System memory to the processing unit 120.
`The system bus 121 may be any of several types of bus
`Structures including a memory bus or memory controller, a
`peripheral bus, and a local bus using any of a variety of bus
`architectures. By way of example, and not limitation, Such
`architectures include Industry Standard Architecture (ISA)
`bus, Micro Channel Architecture (MCA) bus, Enhanced ISA
`(EISA) bus, Video Electronics Standards Association
`(VESA) local bus, and Peripheral Component Interconnect
`(PCI) bus also known as Mezzanine bus.
`0027. The computer 110 typically includes a variety of
`computer-readable media. Computer-readable media can be
`any available media that can be accessed by the computer
`110 and includes both volatile and nonvolatile media, and
`removable and non-removable media. By way of example,
`and not limitation, computer-readable media may comprise
`computer Storage media and communication media. Com
`puter Storage media includes both volatile and nonvolatile,
`removable and non-removable media implemented in any
`method or technology for Storage of information Such as
`
`Page 9 of 17
`
`

`

`US 2004/0236850 A1
`
`Nov. 25, 2004
`
`computer-readable instructions, data structures, program
`modules or other data. Computer Storage media includes, but
`is not limited to, RAM, ROM, EEPROM, flash memory or
`other memory technology, CD-ROM, digital versatile disks
`(DVD) or other optical disk storage, magnetic cassettes,
`magnetic tape, magnetic disk Storage or other magnetic
`Storage devices, or any other medium which can be used to
`Store the desired information and which can accessed by the
`computer 110. Communication media typically embodies
`computer-readable instructions, data structures, program
`modules or other data in a modulated data Signal Such as a
`carrier wave or other transport mechanism and includes any
`information delivery media. The term "modulated data Sig
`nal” means a signal that has one or more of its characteristics
`Set or changed in Such a manner as to encode information in
`the Signal. By way of example, and not limitation, commu
`nication media includes wired media Such as a wired net
`work or direct-wired connection, and wireleSS media Such as
`acoustic, RF, infrared and other wireleSS media. Combina
`tions of the any of the above should also be included within
`the Scope of computer-readable media.
`0028. The system memory 130 includes computer stor
`age media in the form of Volatile and/or nonvolatile memory
`such as read only memory (ROM) 131 and random access
`memory (RAM) 132. A basic input/output system 133
`(BIOS), containing the basic routines that help to transfer
`information between elements within computer 110, such as
`during start-up, is typically stored in ROM 131. RAM 132
`typically contains data and/or program modules that are
`immediately accessible to and/or presently being operated
`on by processing unit 120. By way of example, and not
`limitation, FIG. 1 illustrates operating System 134, applica
`tion programs 135, other program modules 136 and program
`data 137.
`0029. The computer 110 may also include other remov
`able/non-removable, Volatile/nonvolatile computer Storage
`media. By way of example only, FIG. 1 illustrates a hard
`disk drive 141 that reads from or writes to non-removable,
`nonvolatile magnetic media, a magnetic disk drive 151 that
`reads from or writes to a removable, nonvolatile magnetic
`disk 152, and an optical disk drive 155 that reads from or
`writes to a removable, nonvolatile optical disk 156 Such as
`a CD ROM or other optical media. Other removable/non
`removable, Volatile/nonvolatile computer Storage media that
`can be used in the exemplary operating environment
`include, but are not limited to, magnetic tape cassettes, flash
`memory cards, digital versatile disks, digital Video tape,
`Solid state RAM, Solid state ROM, and the like. The hard
`disk drive 141 is typically connected to the system bus 121
`through a non-removable memory interface Such as interface
`140, and magnetic disk drive 151 and optical disk drive 155
`are typically connected to the System buS 121 by a remov
`able memory interface, such as interface 150.
`0030 The drives and their associated computer storage
`media, discussed above and illustrated in FIG. 1, provide
`Storage of computer-readable instructions, data Structures,
`program modules and other data for the computer 110. In
`FIG. 1, for example, hard disk drive 141 is illustrated as
`Storing operating System 144, application programs 145,
`other program modules 146 and program data 147. Note that
`these components can either be the same as or different from
`operating System 134, application programs 135, other pro
`gram modules 136, and program data 137. Operating System
`
`144, application programs 145, other program modules 146,
`and program data 147 are given different numbers herein to
`illustrate that, at a minimum, they are different copies. A user
`may enter commands and information into the computer 110
`through input devices Such as a tablet (electronic digitizer)
`164, a microphone 163, a keyboard 162 and pointing device
`161, commonly referred to as mouse, trackball or touchpad.
`Other input devices (not shown) may include a joystick,
`game pad, Satellite dish, Scanner, or the like. These and other
`input devices are often connected to the processing unit 120
`through a user input interface 160 that is coupled to the
`System bus, but may be connected by other interface and bus
`Structures, Such as a parallel port, game port or a universal
`serial bus (USB). A monitor 191 or other type of display
`device is also connected to the System buS 121 via an
`interface, Such as a video interface 190. The monitor 191
`may also be integrated with a touch-screen panel 193 or the
`like that can input digitized input Such as handwriting into
`the computer System 110 via an interface, Such as a touch
`Screen interface 192. Note that the monitor and/or touch
`Screen panel can be physically coupled to a housing in which
`the computing device 110 is incorporated, Such as in a
`tablet-type personal computer, wherein the touch Screen
`panel 193 essentially serves as the tablet 164. In addition,
`computerS Such as the computing device 110 may also
`include other peripheral output devices such as speakers 195
`and printer 196, which may be connected through an output
`peripheral interface 194 or the like.
`0031. The computer 110 may operate in a networked
`environment using logical connections to one or more
`remote computers, Such as a remote computer 180. The
`remote computer 180 may be a personal computer, a Server,
`a router, a network PC, a peer device or other common
`network node, and typically includes many or all of the
`elements described above relative to the computer 110,
`although only a memory Storage device 181 has been
`illustrated in FIG. 1. The logical connections depicted in
`FIG. 1 include a local area network (LAN) 171 and a wide
`area network (WAN) 173, but may also include other
`networkS. Such networking environments are commonplace
`in offices, enterprise-wide computer networks, intranets and
`the Internet.
`0032. When used in a LAN networking environment, the
`computer 110 is connected to the LAN 171 through a
`network interface or adapter 170, and particularly may
`include one configured for wireleSS networking. When used
`in a WAN networking environment, the computer 110 may
`also include a modem 172 or other means for establishing
`communications over the WAN 173, Such as the Internet.
`The modem 172, which may be internal or external, may be
`connected to the System buS 121 via the user input interface
`160 or other appropriate mechanism. In a networked envi
`ronment, program modules depicted relative to the computer
`110, or portions thereof, may be stored in the remote
`memory Storage device. By way of example, and not limi
`tation, FIG. 1 illustrates remote application programs 185 as
`residing on memory device 181. It will be appreciated that
`the network connections shown are exemplary and other
`means of establishing a communications link between the
`computerS may be used.
`0033 Client Proximity Detection
`0034. The present invention, in part, directed towards a
`method and System that use radio signal Strengths from a
`
`Page 10 of 17
`
`

`

`US 2004/0236850 A1
`
`Nov. 25, 2004
`
`wireleSS computer network to estimate which other mobile,
`wireless devices (and possibly their owners) are in physical
`proximity. While the examples herein generally refer to
`mobile network devices in the form of portable computer
`Systems. Such as tablet personal computers, it should be
`understood that Virtually any device capable of transmitting
`information to a wireleSS network can participate in the
`proximity detection Schemes described herein. Moreover,
`Sources other than radio waves can be used to detect
`proximity of devices having Suitable Sensors, Such as Sound
`waves and light patterns. In general, anything that can be
`Sensed by Some mechanism that has characteristics local to
`Some area may be used to compute (or help compute)
`proximity. Thus, although radio is primarily described
`herein, proximity detection based on the principles of the
`present invention may apply to many other concepts, and
`thus the term "network” need not be an actual computer
`network, the terms "signal” and “signal Strength' are
`intended to encompass any Sensed information that varies
`based on location, and “base station' or “base stations”
`represent any signal Source or Sources from which data can
`be sensed.
`0.035 Moreover, participation need not be symmetrical,
`in that, for example, a device can transmit its signal Strength
`data for proximity detection purposes without receiving
`Similar data from other devices, in essence describing its
`location but not concerning itself with the location of other
`devices. Thus, for example, an individual can wear a Small
`transmitting device that essentially announces the individu
`als location but does not process data related to detecting
`other devices in proximity. Conversely, a device can receive
`proximity-related data of other network devices without
`transmitting its signal Strength data, however participation is
`generally desirable, as will be readily apparent. Also, for
`non-networked or non-electronic resources, the resource
`may be represented by a Set of Signal Strengths that were
`measured only once in a calibration Step. Note that as used
`herein, although much of the description exemplifies the use
`of wireleSS computing devices, the term “resource” includes
`the concept of Such a wireleSS device and/or any other type
`of computing device, as well as Some non-networked or
`even non-electronic devices. In general, a resource thus can
`be anything that has associated Signal Strength data, Such as
`actual, current Signal Strength data of a mobile computing
`device, or pre-measured data Stored for a fixed resource or
`the like.
`0.036 AS generally represented in FIG. 2, a wireless
`network 200 is normally composed of multiple, statically
`mounted, wireless base stations (five are shown in FIG. 2,
`labeled 202-202s, although it is understood that any prac
`tical number may be present) that simultaneously commu
`nicate over radio frequencies to wireless devices (four are
`shown, 204A-204, which can again be any practical num
`ber) and over network cables with a wired network. When in
`range, each mobile device can “see' (receive signals from)
`one or more of these base Stations, and measure the Strength
`of the radio signal it is receiving from these base Stations.
`This measurement is often referred to as “RSSI,’ for
`“Received Signal Strength Indicator.” Note that the mea
`sured RSSI of a base station varies from place to place due
`to the natural attenuation of radio Signals with distance as
`well as the reflection, refraction, diffraction, and attenuation
`caused by the physical environment, like walls, floors,
`
`ceilings, and furniture. Thus, the RSSI that a mobile device
`measures is Sensitive to that device's location.
`0037. In one implementation, the present invention
`detects the proximity of two or more devices connected to a
`wireleSS network by examining the Signal Strengths that
`802.11 clients measure from statically mounted 802.11
`access points, (wherein 802.11 specifies well-known wire
`less communications standards based on IEEE 802.11 speci
`fications). In general, when the Signal strengths are similar
`enough, the clients are declared to be in proximity. Note that
`802.11 coverage and the number of 802.11-enabled devices
`are becoming prevalent, and in Such an environment the
`present invention enables 802.11 clients to see which other
`802.11 clients are nearby, using the existing infrastructure.
`As will be understood, this detection enables a wide variety
`of applications, including automatically showing a list of
`nearby friends, displaying information about unknown
`people Standing nearby in a Social Setting, advertising the
`proximity of nearby 802.11-connected devices, Such as
`wireleSS printers, finding nearby resources, and So forth.
`Notwithstanding, the present invention is not limited to any
`particular applications, communications Standards, frequen
`cies, protocols or the like.
`0038. In general, an implementation of the present inven
`tion operates by comparing a pair of wireless network (e.g.,
`Wi-Fi) client devices, (or simply clients). Each network
`device Scans internally for a list of “visible” access points,
`and obtains the signal Strengths from each of those access
`points. For example, in FIG.2, the mobile device 204 scans
`for and obtains the Signal Strengths for three access points,
`namely the base station 202, the base station 202 and the
`base station 202. Each of the devices then transmits this
`data to a central server 206 (or set of servers) which
`compares the Signal Strengths and returns an inference on
`whether or not any two devices are in proximity. When there
`are more than two clients, the Server compares each possible
`pair of clients to produce a proximity inference for each pair.
`After the Server has made proximity inferences, it transmits
`a list of proximal clients to each client. Alternatively, the
`central Server can provide Signal Strength data to the clients,
`which can then perform their own proximity calculations. AS
`can be readily appreciated, other alternatives, Such as a
`peer-to-peer model which needs no base Stations and no
`Server by considering peers with the Strongest Signals to be
`the closest, are also capable of enabling proximity detection
`in accordance with the present invention.
`0039) To determine the signal strengths, the clients (e.g.,
`204-204) each assemble an array of MAC addresses, one
`unique address for each access point Seen. Each client also
`assembles a corresponding array of Signal Strengths from
`each of the visible access points. In the client-Server model,
`these arrays are transmitted by each of the clients to the
`server 206. For any two clients, the server 206 may compare
`the arrays, to extract which access points the two clients can
`See in common, as described below. The list of access points
`Seen in common is often a Subset of each client's visible list,
`because often the two clients cannot see the exact same Set
`of access points. The server 206 may then construct a
`numerical proximity Score based on

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