EP2292025A2 - Application composite et service pour des dispositifs sans fil - Google Patents
Application composite et service pour des dispositifs sans filInfo
- Publication number
- EP2292025A2 EP2292025A2 EP09794944A EP09794944A EP2292025A2 EP 2292025 A2 EP2292025 A2 EP 2292025A2 EP 09794944 A EP09794944 A EP 09794944A EP 09794944 A EP09794944 A EP 09794944A EP 2292025 A2 EP2292025 A2 EP 2292025A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- squad
- data
- service
- client
- location
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 claims description 33
- 238000000034 method Methods 0.000 claims description 29
- 230000008859 change Effects 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 4
- 230000006855 networking Effects 0.000 abstract description 12
- 230000001419 dependent effect Effects 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000007726 management method Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000010295 mobile communication Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000002776 aggregation Effects 0.000 description 5
- 238000004220 aggregation Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 102100038359 Xaa-Pro aminopeptidase 3 Human genes 0.000 description 3
- 101710081949 Xaa-Pro aminopeptidase 3 Proteins 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000010247 heart contraction Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005360 mashing Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
- H04W4/08—User group management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/18—Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
- H04W4/185—Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals by embedding added-value information into content, e.g. geo-tagging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/20—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/20—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
- H04W4/21—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Definitions
- a client device joins a squad of client devices that are each capable of communicating with one another over a wireless local area network (WLAN) connection.
- WLAN wireless local area network
- the client can obtain data for use as mashup (for combining data from different sources) information from at least one other client device in the squad over the WLAN connection, including data that was obtained from a service based on information that the server received from another squad, e.g., over a WWAN connection.
- mashup for combining data from different sources
- the server e.g., over a WWAN connection.
- tracking and data sharing such as in a social network is efficiently performed by squads that exchange data over a WLAN connection (intra-squad) , yet may include data received from another squad (inter-squad) for mashup purposes .
- FIGURE 1 is a representation of various squads of users on a map, such as produced by using a mashup of users' GPS data and map service data.
- FIG. 2 is a block diagram representation of example components of a mobile client device, particularly hardware components that support a mashup application, communicating with intra-squad client devices and a service,
- FIG. 3 is a block diagram representation of an example software component architecture of a mobile client device .
- FIGS. 4 and 5 comprise a flow diagram showing example steps a client device may take when communicating with inter-squad devices and a service.
- FIG. 6 is a flow diagram showing example steps a client device may take when detecting a mobility event (exemplified as a sudden speed change) .
- FIG. 7 is a flow diagram showing example steps a service / server may take when communicating with a client device .
- FIG. 8 is a flow diagram showing example steps a client device may take while in operation.
- a “mashup" application is an application that combines data from more than one source; the technology described herein provides a data mashup service using various data types, including location- dependent and mobility-aware data such as GPS location and surrounding maps, in a timely and cost-effective fashion.
- the application exploits a social-networking guided, GPS-assisted sharing scheme to collaboratively share data in a cost-effective manner.
- the application also manages data consistency for roaming users through a mobility-adaptive and location- aware update policy.
- FIG. 1 As generally represented in FIG. 1, there is shown a group of connected mobile users, referred to as a social network 100 (even though the relationships may not be "social") , including one or more users who wish to track their roaming friends or the like and/or to exchange various types of information with them in a timely fashion. Examples of real-life application scenarios that may benefit from such data exchange include daily activities, group outings (e.g., sightseeing, shopping, sporting events), and team missions (e.g., police, field work) . Each user has a mobile device capable of operating with the application software described herein. The devices have location capabilities, whereby the users / devices may be considered as being within a map 102, e.g., by a mashup of user location data with data from a mapping service.
- a map 102 e.g., by a mashup of user location data with data from a mapping service.
- squads may be as little as one user / device / member, or any practical number of users / devices.
- client the terms “user,” “client,” “device” and “member” are generally interchangeable .
- squads may be communicating, and different groups of squads (e.g., associated with different groups of users) may be present in the same general area; it is feasible for one user to be in the squads of different social networks at the same time, such as by using group identities to distinguish between two sets of friends. However for purposes of simplicity, only the squads of one group are described herein.
- each participating user carries a mobile communication device 220 as an interface to a digital (e.g., social) networking environment, as described herein.
- the device 220 is capable of running certain mobile telephone software, and has a wide-area / coverage cellular data service such as GPRS/EDGE, CDMAIx, or 3G.
- WWAN wireless wide-area networking capacity
- WWAN wireless wide-area networking capacity
- the device has short-range wireless networking capability such as through Bluetooth ® or Wi-Fi, which is high bandwidth (relative to WWAN) and usually free
- WLAN short-range networking
- WLAN wireless local area network
- WWAN mechanism 222 and WLAN mechanism 224 are each coupled to a communications mechanism 226 representing additional communications software and/or hardware.
- the WWAN connection is to a service 228, which may comprise a user data server that includes a front-end server 230 and a back-end database 232
- the WLAN connection is to one or more other client devices 234 in the same squad (inter- squad) as the device 220.
- the exemplified device has such wireless networking capabilities, it should be noted that not every device needs to have the same capabilities.
- a mobile device such as a PDA or laptop computer need only have a WLAN connection to another device in its squad, as it can leverage that other device's GPS coordinates and / or its WWAN capabilities by exchanging appropriate data over the WLAN connection.
- each described device will include (at least) the capabilities described in FIG. 2.
- the exemplified device 220 includes location detection, capability, such as built- in or external GPS, or cellular-based service. This capability is represented in FIG. 1 by the location sensing mechanism 240.
- the device runs an application 242 that provides a mashup mechanism and functionality for different data types coming from different sources. For example, user location coordinates are obtained from the mobile devices' GPS readings, or cell towers. Surrounding maps (e.g., aerial, road, traffic) are obtained from third-party online services (such as Microsoft ® Virtual Earth) . Note that some of the mashup functionality may be performed on a server, e.g., a server may provide fully or partially combined data to the application .
- a server may provide fully or partially combined data to the application .
- each user via the device 220 may be a source of text, photos, graphics and/or video clips which may be shared with friends and may be uploaded from the mobile device 220; (note that because wireless communications are often intermittent in nature, some of these data may be cached and stored in some online social networking data servers or the like, e.g., of the service 228) .
- file content refers to any such data, including text, images, graphics, audio and/or video, and so forth.
- one service 228 includes the user data server comprising a front-end web server 230, along with a back-end database 232 for storage and query handling.
- the web server 230 serves as the interface for communication with clients, e.g., through a stateless HTTP protocol.
- the back-end database 232 stores user data for replying to user queries.
- example functions performed by the service 228 include squad update frequency monitoring, squad/user location prediction and social graph computing.
- the server may compute the current location of the user/squad under query based on a linear prediction model, e.g., current position equals the previous reported position plus the elapsed time times the reported velocity.
- a linear prediction model e.g., current position equals the previous reported position plus the elapsed time times the reported velocity.
- set intersection may be used to find common friends of users, with common neighbor based prediction offered to users who wish to establish new friends within a certain number of hops in their social graphs.
- FIG. 3 shows an example high-level modular software architecture of the client device 220 in one implementation.
- the interaction between modules may be based on asynchronous request and callback-based reply model. Note that an exception is the recording of GPS time and location data, which may be periodically pulled, e.g., every two seconds .
- the client device 220 includes a UI module 344 and a mashup engine 342 (e.g., as part of the mashup application 242 of FIG. 2) .
- the client device 220 also includes a user communications module 360, a sensor manager 362, a location manager 340, a communication manager 326 and a log module 364.
- the UI module 344 implements the application interface and provides an entry point for user interaction.
- the mashup engine 342 is responsible for various mashup tasks such as blending various available data streams according to the current user view, and rendering the mashed up results to the user output mechanism 248, e.g., to a display screen.
- the mashup engine 342 initiates new requests and sends them to the communication manager 326 for any data that is desired but not available in the local cache 350.
- the user communication module 360 is provided so that users can make phone calls or send SMS/MMS messages while inside the application.
- the database / local cache 350 records the user data (e.g., corresponding to the data store 250) including the current location and the readings of various sensors from the location manager 340 and/or sensor manager 362.
- the local cache 350 also stores indexes of cached map tiles (both downloaded and pre-fetched) , e.g., represented by a range constrained bit vector data structure, as described below.
- the sensor manager 362 manages various device sensors such as a camera and microphone. Sensor readings may be tagged with instantaneous GPS time and location information when placed into the local cache 350.
- the location manager 340 retrieves the readings of the GPS device, manages the location and the historical trajectory of itself and those of other social neighbors.
- the communication manager 326 handles the WWAN communications with various data servers (e.g, the map servers and other service data servers using GPRS/EDGE) , and the WLAN communications with other intra-squad members, e.g., through Bluetooth ® /WiFi interface.
- various data servers e.g, the map servers and other service data servers using GPRS/EDGE
- WLAN communications e.g., through Bluetooth ® /WiFi interface.
- the communication manager 326 operates two outgoing queues OQl and OQ2, namely one for remote server update using HTTP, such as status updates and text/image tags/blogs, and the other for local sharing using UDP for broadcast messages (e.g., heart-beating) and TCP for data retrieval (e.g., map tile transmission) .
- the communication manager also operates two incoming queues IQl and IQ2; one is a ToHave queue that holds the indexes of map tiles to be fetched, and the other is a short queue for active ongoing WWAN and WLAN downloads.
- the communication manager 326 may use an SMS/MMS channel as an alternative WWAN communication means, such as when the GPRS channel is not available.
- FIG. 4 illustrates an example system architecture for the application and service.
- Each mobile communication device (client) of a social network 442 interacts with multiple servers 444-446 via its WWAN link.
- Each server may provide current data, for example, map tiles, photos, text tags, and blogs which may be mashed together.
- local clients within each sharing group may also perform local sharing with one another via the local WLAN link.
- a general flow of data between a client and the data servers includes the user data server 445 serving as a communication and storage bridge between different clients, e.g., the server hosts current and historical data for each mobile user.
- a mobile client may periodically or otherwise upload its current GPS measurement results, e.g., two- or three-dimensional GPS coordinates and a GPS timestamp, and other location-dependent data such as geotags at random instants to the server, which subsequently stores such data,
- the application attempts to facilitate efficient sharing of data among mobile users, using a sharing solution described herein based on a social networking-guided and GPS-assisted collaborative sharing aspects that leverages features of location dependency and social networking connections among mobile users. For example, users within a geographic proximity to one another (through the server guidance and GPS-assistance) form a sharing squad to collaboratively download the local map data, aggregate runtime data from each client and upload such data to the user data server. Moreover, if users are interested in mashing up data from common other users, e.g., resulting from similar social ties, they may collectively download their data, which effectively reduces the transmission of redundant copies of same data between the (relatively low bandwidth) user data server and geographically co-located clients.
- a user may also "loan" the WWAN link to other squad members when the link is idle and others have a downloading demand.
- the social networking-guided and GPS assisted sharing scheme can be accomplished via communication and computation aspects, e.g., one device may perform computations (as well as communications) on behalf of one or more other devices.
- the application described herein enables both communication and computational sharing, thereby reducing the overall resources consumed at each mobile communication device.
- the application and service may perform data consistency management to handle the rapid data changes (e.g., in both GPS coordinates and maps) associated with mobile users.
- One exemplified consistency management scheme is location-dependent as well as mobility-adaptive, e.g., as the mobility speed of a user or a squad changes, the data update frequency also changes accordingly so that the data refreshing process is adaptive to the user mobility.
- the application seeks to keep the spatial, logical relations between users intact at a reasonably low cost.
- the application may exploit the inherent semantics of each data type and between types.
- the built- in tree structure of map tiles has been used to enable efficient sharing of the map data among local users.
- the matching relation between a GPS location and the relevant map is also exploited to enable predictive downloading of target map data among local users.
- the application and service thus collaboratively transmits and downloads different data streams and preserves data consistency among mobile users over resource-constrained mobile communication devices.
- Such tasks are accomplished by exploiting the social networking connections, location dependence, and mobility awareness among roaming users.
- the application and service allows mobile users to collaboratively share data of common interest.
- the user data server 445 coordinates data transmission and sharing among different squads via the WWAN links. More particularly, each squad transmits data records to the data server 445 via WWAN, such as periodically every Tl seconds, which consequently logs the latest data records.
- the data records stored at the server 445 are also shared among members within a squad.
- members within a squad generally use their local WLAN links to share data with one another.
- This local ad hoc sharing may occur whenever a single data copy of interest is downloaded to a squad member.
- the local sharing may be synchronized to increase power saving at each device, e.g., each member wakes up its WLAN interface for a time slice within a suitable time interval to conduct data sharing. That is, the periodic
- the low-level ad-hoc sharing via WLAN is used whenever possible. Compared with sharing via GPRS, the local sharing via WLAN is more efficient in terms of consumed energy per bit and transmission time used. In addition, WLAN is (typically) free while transmission over GPRS can be costly.
- the application and service use squad-based sharing that offers a social-spatial-temporal sharing scheme for mobile users.
- Mobile users form a sharing squad when satisfying certain conditions, e.g., they are socially connected, they are within geographic proximity and connected via WLAN links and each user has sufficient resources .
- a client may accept or decline collaboration requests within the squad.
- Resource availability may consider various factors, including wireless connection quality, e.g., whether the wireless transmission is of high quality or not, memory, e.g., the storage load of data in the client device, and energy, e.g., whether the client mobile communication device has enough remaining battery power.
- each squad in the application and service is formed using social connections among members.
- the social relations among members may be managed at startup, e.g., when a new user starts the application, the user specifies social connections via a "friends list" or the like. Such a list may be recorded at the user data server when the user registers with the server, e.g., during a boot-up phase. Because the data server has the social friends lists for any registered user, the server can readily derive a social graph or the like for registered users, e.g., in which a node denotes a user and an edge indicates a direct friendship or contact.
- a client is socially connected if it is a direct neighbor with another client, or possibly an indirect relationship up to some level of edges, e.g., shares a common client in the social graph with other members.
- the concept of socially connected members provides for collaboration among members, and tends to reduce potential security or privacy concerns for sharing; a user may configure a custom membership, e.g., by including or excluding certain others users, setting a number of levels of indirect neighbors allowed, and so forth.
- synchronized wakeup and sharing via WLAN may be based on GPS because GPS provides an effective method to synchronize client devices in a squad. More particularly, the GPS timestamp may be used as time data to synchronize all clients in a squad, whereby clients wake up their WLAN interfaces simultaneously to share .
- geographic proximity can be readily determined with GPS assistance, that is, to establish how geographically spread out each squad is.
- the server may compute the distance between any pair of users. This distance may be compare with a given and pre-specified threshold value
- GPS information may provide a rapid way for WLAN connectivity testing without actually turning on a wireless interface, which saves battery power. For example, this may be accomplished by comparing the separation distance versus the maximum communication range; note that two nodes that are within the WLAN communication range may not have connectivity due to interference or poor reception and so forth, however, GPS data may still help to filter out clearly ineligible devices.
- the application and service also exploit temporal sharing techniques to improve sharing efficiency, including caching and help from idle devices.
- the caching technique allows a client to help others with contents that have already been downloaded and cached in the device.
- Client status aggregation also belongs in this category, that is, the location and state information of each client is aggregated over each period and sent to the data server.
- an idle device may be able and willing to help others to download certain data content (e.g., some map tiles from the online map server) although it does not need the content itself. This may be particularly helpful when other clients encounter WWAN disconnection problems, and/or when some clients need to pay for WWAN connectivity and another client does not.
- certain data content e.g., some map tiles from the online map server
- a mobile client registers its social friends list with the user data service via WWAN
- step 502 of FIG. 5 e.g., during a bootup phase.
- the data server updates its social graph and replies with a list of other active social neighbors,
- step 802 and 804 of FIG. 8 together with their squad IDs (SquadID) and locations.
- the mobile client selects a proper SquadID to join, such as after checking current conditions, including social connections, proximity and/or available resources, which may be automatic.
- a client is considered active when the client refreshes with the server via regular heartbeats or the like (FIG. 5, step 512; FIG. 8, step 810); a client is inactive when the server misses such updates for some number of (e.g., five) consecutive periods, whereby the client may be removed from the squad (step 814) .
- a client may also be removed from the squad if it is determined to be too distant from the squad (step 812) .
- a SquadID is a service- unique identifier for each sharing squad, which may also serve as the SSID of the local ad hoc network.
- the application first checks whether another member in the client's squad already has the same data or a cached copy, as represented by steps 602 and 604 of FIG. 6.
- the data may be mashed up from different copies, e.g., an application may be seeking a mashup of data XYZ, and one or more other devices may have X, Y and Z (or XY, XZ or YZ) as separate data rather than mashed up; the application or another device can mash up X, Y and/or Z as appropriate to avoid needing to downloading all these sets of data.
- an application may be seeking a mashup of data XYZ
- one or more other devices may have X, Y and Z (or XY, XZ or YZ) as separate data rather than mashed up; the application or another device can mash up X, Y and/or Z as appropriate to avoid needing to downloading all these sets of data.
- a member in the local squad is selected (step 608) to retrieve the data from the servers (step 610; note that multiple members may be selected to retrieve component parts of the data; for purposes of simplicity, one member is selected in this example) .
- Selection may be performed via a distributed backoff-based solution, e.g., where the backoff value at each client is set as a function of resource availability and recent download frequencies. Cost may also be a factor in determining the backoff value, e.g., free download has a smaller backoff score than paid download.
- the member device with smallest backoff value is selected to download the data, (which may be the client that wants the data in the first place) .
- Other members abort transmissions, because each squad is limited to a one-hop communication range.
- the data transmissions in each squad are synchronized among clients via GPS timestamps during regular wakeup periods.
- the requesting member or members may copy it to their own storage (step 612), process it, and so forth.
- each squad is done via a periodic heart-beating mechanism which handles dynamic membership as members enter and leave a squad. More particularly, management is performed among local squad members and with the user data server, via a local heartbeat and a remote heartbeat, respectively.
- each client periodically turns on its WLAN interface and broadcasts a local heartbeat message.
- the period is set as TO (e.g., every ten seconds in one implementation) .
- Each squad also regularly communicates a remote heartbeat message with the user data server, e.g., with the period Tl for remote heartbeat (to the data server) set as a multiple of TO in general, such as one minute, as represented via steps 510 and 512.
- the updating period also may be made adaptive based on data consistency management policies described below.
- the application enables sharing of different data types, such as text, image, and photos, and so forth, while attempting to improve sharing efficiency of location- dependent data types, including the GPS location data and the corresponding maps.
- location- dependent data types including the GPS location data and the corresponding maps.
- data aggregation is used, along with exploiting the inherent structure/semantics of a given data type.
- map semantics With respect to map semantics, most maps from online map servers correspond to structures that can be exploited in design.
- Microsoft® Virtual Earth supports three types of maps, namely a road map, an aerial map and a hybrid map, along with other special purpose "informative" maps such as traffic maps, weather maps and so forth.
- the map tiles are of the same size, 256x256 (or 128x128) in pixels.
- tiles are organized into different levels (or layers) with the top level having four tiles; there are up to nineteen levels. Tiles at different levels are calibrated such that each parent tile at a lower level covers the same area of the four children tiles at the next higher level.
- Virtual Earth adopts a highly-regular naming convention call Quadkey, in which the name of any tile is the catenation of the quadkey values of itself and its parent tiles until the top level is reached.
- Quadkey naming convention
- Such naming semantics allows a tile to be uniquely calculated given the position and the level parameters. This is a basis to relate the position data and the map data.
- the naming semantics also allow tiles to be organized in any specific level into a prefix quadtree, where the prefix is the name of the parent title and is also the longest common part of the four sibling tiles under the same parent tile.
- a range constrained bit vector may be used to efficiently index map tiles at any given level.
- ⁇ range' refers to the naming of tiles but not the geographical coverage, even though the two can map to one another through simple position-to-tile translation.
- P 1 should have in full 4* ⁇ J successor tiles, which is usually not the case.
- the bit-to- tile mapping is achieved using a breadth-first traversal of the subtree rooted at P 1 . Note that the same prefix will cover different range (i.e., the number of tiles) for different levels and therefore is meaningful only if accompanied by the level; therefore, the overall RCBV structure is a (level k, prefix P 1 , V B ) tuple and map tiles are represented using a list of RCBV structures.
- the level k is not redundant since it may be more economical to represent a set of tiles using more than one bit vector with more refined ranges, particularly when a user is interested in locations that are geographically far away.
- the RCBV tile representation enables efficient querying. String matching and tile enumerations are almost completely removed. The only string matching used is to identify a certain prefix exist or not, which is further avoided by using a hash table or the like.
- Data aggregation is used on both data types of map and GPS location.
- the RCBV tile representation enables very effective aggregation, e.g., using a bitwise OR operation.
- a response to a collaborative query can be fulfilled with a simple bitwise AND operation.
- Ke ⁇ ⁇ k [1101011111010111] is the aggregation of desired tiles.
- the GPS location coordinates of each user will also be aggregated before sending to the user data server. This is done by aggregating the data at a chosen coordinator of the squad, with the coordinator transmitting the aggregate GPS report to the server.
- the coordinator may be chosen in a fully distributed way via the backoff mechanism.
- Another issue is user mobility, including micro- mobility within a squad (e.g., users join/leave the squad over time), and macro-mobility among squads (e.g., roaming squads merge/split) .
- the high-tier, server-based aspect of the technology helps to decouple the management of these situations.
- macro-mobility For example, the impact of macro-mobility is mostly absorbed at the server, which performs event-driven reexamination of local clients' common social neighbors and informs affected clients. As users do not change their interested social friends frequently, macro-mobility mainly leads to the change of map levels if local clients intend to display a remote squad completely on the screen.
- the GPS receiver and the WLAN interface consume energy.
- a client saves power by sleeping, however a client enters into the sleeping mode only when it does not have pending tasks and believes that its trajectory and status are highly predictable.
- a client registers with the user data server (steps 514 and 516 of FIG. 5), which subsequently notifies relevant social friends and other squad members of this mode change. Any status information during the sleeping period is marked as "predicted.”
- the client may randomly wake up (step 518, which also represents synchronized wakeup) and update the server and/or other squad members during the power-saving operation .
- Computational sharing is another aspect, generally described in U.S. Published Patent Application no, 2006/0269147.
- computational sharing may be done using social networking guidance and GPS assistance, similar to the communication sharing scheme described above, Computation sharing may be achieved by sharing of meta-info generated by clients instead of directly sharing of the decoded images; as describe herein, such meta-information is generated once, for multiple clients.
- meta-information is generated once, for multiple clients.
- the exemplified application may instead decode based on auxiliary "indexing" data within meta-information .
- meta-information includes a block length map (BL-map) and a DC map (DCmap) that capture the start positions (in bits) and DC values of the MCUs
- MOP meta-info aided on-demand partial
- a fast bit stream filtering process that performs only semi-bitstream parsing is provided, that is, only the length (in bits) of code symbols (i.e., (run, value) tuples in JPEG) is extracted instead of their concrete values.
- Customized Huffman tables handle multiple tuples with a single table lookup.
- the fast filtering process is further pipelined to the map tile downloading process, i.e., instead of waiting for the whole tile being downloaded, meta-information generation is started as data packets, which may be parts of an image, flow in.
- a simple fixed-length differential coding method is used to reduce the size of the BL-map and the DC-map.
- the application and service preserves spatial ordering among squads and between squad members. While the physical distance between two parties may not be refreshed on time to lower the update cost, their ahead/behind ordering relationship in space may be correctly retained.
- Various data consistency management scenarios include inter-squad ordering, which is when a squad suddenly changes its roaming speed and leads to changes of relative distance and positioning among squads; intra-squad spatial ordering, including when the spatial ordering (e.g., front-rear relationship) of any two users within a squad changes due to mobility and/or the relative positioning of the given roaming members is not changed, but their spatial ordering is violated in the data records due to asynchronous updates of their current positions.
- Another scenario relates to asynchrony between update and query, that is, when users are mobile, the location records stored at the server will not reflect the actual position of a user when a new query comes in.
- intra-squad and inter-squad level approaches are used, in the form of techniques that are mobility adaptive and location aware.
- the device notifies the user server. This is generally represented by steps 702-704 of FIG. 7, (which also exemplifies any other such event / server notification handling) .
- the user server (via steps 816 and 818) then re-computes the desired update frequency based on a consistency policy, and specifies the new update period to the relevant squad. The squad then refreshes the server according to this update period.
- a local coordinated update within a squad handles when spatial ordering is violated due to asynchronous updates; to this end during each update period, the squad is required to notify the data server of the latest status vector that contains time, position and velocity.
- the squad is only allowed to upload once with a single update message. The message aggregates the status vector of each squad member. This effectively eliminates any inconsistency issue caused by multiple individual updates by several members within each period.
- each roaming squad regularly computes the position and velocity of its centroid.
- a vector i.e., location and roaming speed
- the squad coordinator uses this vector to record the recent history of squad mobility.
- any squad member suddenly changes its roaming speed beyond a pre-specified threshold, the device notifies of its mobility speed change.
- the coordinator subsequently uses a projection method to assess the relative spatial ordering of different squad members, e.g., the two-dimensional position of each member is projected onto the squad vector. The projected values of members are used to assess their relative ordering.
- the coordinator sends an update message to the user server to retain the spatial ordering of members within a squad.
- Inter-squad consistency is handled via a mobility-adaptive and location-aware update policy, that is, to handle consistency among multiple roaming squads.
- a squad suddenly changes its mobility speed (again defined with respect to its centroid) beyond a tolerable threshold, the squad immediately updates the user data server with a status report.
- the server computes a new update frequency
- the squad starts to send updates at a period of one times this frequency.
- the update frequency is set to be in proportion to the squad mobility speed when the squad is at least beyond a given distance from any other roaming squad.
- the squad starts to send updates at the maximum frequency for an interval.
- the data is refreshed at the highest frequency.
- the update frequency is reset to again be in proportion to the squad mobility. This accounts for a situation case in which two squads merge, and will not lead to any changes in spatial ordering afterwards .
- the location data copy stored at the server may not reflect the current position of the interested parties that are roaming over time.
- This type of inconsistency is resolved using a server prediction-based technique. More particularly, the user uses the snapshot data of the interested party plus the estimated roaming speed to predict the current location of the interested party.
- the snapshot data reflects the location of the party at the update time; the predicted value takes into account the roaming effect between the query and the snapshot.
- the estimated roaming speed is taken as the value of the squad rather than an individual user' s speed in one implementation, because the squad speed tends to be more stable over time.
- a client in addition to a client's own status information (STAT), a client also maintains a local neighbor list, a social neighbor list, and the Having queue and the ToHave queue for map tile representation and management.
- the local neighbor list comprises a list of other squad members that are in the reach of the local communication interface. The list may be sorted according to the collaboration history, e.g., with the preference of recentness and frequency.
- the social neighbor list is a list of remote social neighbors (either individuals or squads) in which the user is interested; this list also may be sorted, such as according to the commonness among the local neighbors after local information exchanges.
- the Having queue and the ToHave queue are two concrete embodiments of the RCBV data structure.
- the Having queue maintains the indexes of already downloaded and local cached map tiles.
- the ToHave queue holds the indexes of those to be downloaded.
- a ⁇ l'-bit in the bit vector indicates that the corresponding tile is available and desired.
- hash table lookup for prefix matching is used, which, together with the range constrained bit vector, avoids string matching and ensures decision speed.
- the elements of the BL-map are differentially coded using fixed length coding for space efficiency and simplicity.
- a Jc-bit unsigned integer is used (due to the monotony of the start positions of consecutive MCUs) for better space efficiency where k is determined using the following empirical formula.
- file size is the tile file size in bits and grid size and area are expressed in pixels.
- the value k is signaled using one byte preceding block length map segment.
- An escape coding technique handles exceptional MCUs that are more than 2k bits long.
- the DC values are handled similarly but using a fixed 6-bit signed integer.
- the meta-info is stored in the reserved application data segment (APP) field of JPEG format. While any APP segments can be used, APP3 is chosen in one implementation.
- the ASCII codes for ⁇ DCMD' and ⁇ BLMD' for DC-map data and BL-map data, respectively, are used for the applications to identify the map and also to make this design immunized from other applications that may coincidentally use the APP3 marker segment for other purposes.
- the length of fixed code k is carried in the "Bits per BL symbol" field in the APP3 marker segment for BL-map.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19183890.3A EP3567882B1 (fr) | 2008-06-16 | 2009-06-16 | Application et service composites pour dispositifs sans fil |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/140,251 US8072954B2 (en) | 2008-06-16 | 2008-06-16 | Mashup application and service for wireless devices |
PCT/US2009/047575 WO2010005752A2 (fr) | 2008-06-16 | 2009-06-16 | Application composite et service pour des dispositifs sans fil |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19183890.3A Division EP3567882B1 (fr) | 2008-06-16 | 2009-06-16 | Application et service composites pour dispositifs sans fil |
Publications (3)
Publication Number | Publication Date |
---|---|
EP2292025A2 true EP2292025A2 (fr) | 2011-03-09 |
EP2292025A4 EP2292025A4 (fr) | 2017-05-03 |
EP2292025B1 EP2292025B1 (fr) | 2019-07-24 |
Family
ID=41415270
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP09794944.0A Active EP2292025B1 (fr) | 2008-06-16 | 2009-06-16 | Application composite et service pour des dispositifs sans fil |
EP19183890.3A Active EP3567882B1 (fr) | 2008-06-16 | 2009-06-16 | Application et service composites pour dispositifs sans fil |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19183890.3A Active EP3567882B1 (fr) | 2008-06-16 | 2009-06-16 | Application et service composites pour dispositifs sans fil |
Country Status (4)
Country | Link |
---|---|
US (1) | US8072954B2 (fr) |
EP (2) | EP2292025B1 (fr) |
CN (2) | CN102124762A (fr) |
WO (1) | WO2010005752A2 (fr) |
Families Citing this family (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009155293A1 (fr) * | 2008-06-17 | 2009-12-23 | Mobile Tribe Llc | Technique distribuée pour une agrégation de données en cascade de façon en parallèle |
US8190605B2 (en) * | 2008-07-30 | 2012-05-29 | Cisco Technology, Inc. | Presenting addressable media stream with geographic context based on obtaining geographic metadata |
US20120047087A1 (en) | 2009-03-25 | 2012-02-23 | Waldeck Technology Llc | Smart encounters |
US8918517B2 (en) * | 2009-06-16 | 2014-12-23 | Microsoft Corporation | Publish/subscribe mashups for social networks |
US8979538B2 (en) * | 2009-06-26 | 2015-03-17 | Microsoft Technology Licensing, Llc | Using game play elements to motivate learning |
US20100331075A1 (en) * | 2009-06-26 | 2010-12-30 | Microsoft Corporation | Using game elements to motivate learning |
US8447769B1 (en) * | 2009-10-02 | 2013-05-21 | Adobe Systems Incorporated | System and method for real-time image collection and sharing |
US8490075B2 (en) * | 2009-11-23 | 2013-07-16 | Nokia Corporation | Method and apparatus for optimizing an exchange of service updates |
US8458600B2 (en) * | 2009-12-31 | 2013-06-04 | International Business Machines Corporation | Distributed multi-user mashup session |
US9253306B2 (en) | 2010-02-23 | 2016-02-02 | Avaya Inc. | Device skins for user role, context, and function and supporting system mashups |
US20120066303A1 (en) * | 2010-03-03 | 2012-03-15 | Waldeck Technology, Llc | Synchronized group location updates |
US9697500B2 (en) | 2010-05-04 | 2017-07-04 | Microsoft Technology Licensing, Llc | Presentation of information describing user activities with regard to resources |
US8930440B2 (en) * | 2010-06-29 | 2015-01-06 | International Business Machines Corporation | Systems and methods for enabling mobile mashups |
KR101631618B1 (ko) | 2010-07-06 | 2016-06-27 | 삼성전자주식회사 | 가상 개인화 그룹 생성 방법 및 가상 개인화 그룹을 이용하는 통신 기기와 허브를 포함하는 네트워크 |
US10169017B2 (en) * | 2010-10-21 | 2019-01-01 | International Business Machines Corporation | Crowdsourcing location based applications and structured data for location based applications |
US9324112B2 (en) | 2010-11-09 | 2016-04-26 | Microsoft Technology Licensing, Llc | Ranking authors in social media systems |
US9286619B2 (en) * | 2010-12-27 | 2016-03-15 | Microsoft Technology Licensing, Llc | System and method for generating social summaries |
US8457653B2 (en) * | 2011-02-25 | 2013-06-04 | Nokia Corporation | Method and apparatus for pre-fetching location-based data while maintaining user privacy |
US9053184B2 (en) * | 2011-04-14 | 2015-06-09 | International Business Machines Corporation | On-demand generation of correlated collections of mashable data from distributed, non-homogeneous data sources |
US9037700B2 (en) * | 2011-04-29 | 2015-05-19 | International Business Machines Corporation | Predictive placement of content through network analysis |
US8819009B2 (en) | 2011-05-12 | 2014-08-26 | Microsoft Corporation | Automatic social graph calculation |
US9477574B2 (en) | 2011-05-12 | 2016-10-25 | Microsoft Technology Licensing, Llc | Collection of intranet activity data |
US8893008B1 (en) * | 2011-07-12 | 2014-11-18 | Relationship Science LLC | Allowing groups expanded connectivity to entities of an information service |
WO2013032110A1 (fr) * | 2011-08-29 | 2013-03-07 | 엘지전자 주식회사 | Unité d'émission et de réception radio pour assurer un service ou une activité dans un réseau local d'accès radio |
US8849721B2 (en) * | 2011-09-21 | 2014-09-30 | Facebook, Inc. | Structured objects and actions on a social networking system |
EP2573772A1 (fr) * | 2011-09-22 | 2013-03-27 | Alcatel Lucent | Éditeur automatique de mashup vidéo en temps réel |
US9008114B2 (en) | 2012-01-12 | 2015-04-14 | Facebook, Inc. | System and method for distance-dependent data exchange between wireless communication devices |
US9055433B2 (en) * | 2012-01-12 | 2015-06-09 | Facebook, Inc. | Distance-dependent or user-dependent data exchange between wireless communication devices |
DK2810529T3 (da) | 2012-02-03 | 2019-07-29 | Nokia Technologies Oy | Fremgangsmåde og anordning til at lette fjerndeltagelse i et fællesskab |
EP2587712A4 (fr) * | 2012-06-08 | 2014-07-23 | Huawei Device Co Ltd | Procédé et dispositif de synchronisation de battements cardiaques |
US9602623B2 (en) * | 2012-09-11 | 2017-03-21 | Nokia Corporation | Method and apparatus for caching local mashup service parameters |
US9547704B1 (en) * | 2012-10-22 | 2017-01-17 | Google Inc. | Email robustness checking |
US9229632B2 (en) | 2012-10-29 | 2016-01-05 | Facebook, Inc. | Animation sequence associated with image |
US9245312B2 (en) | 2012-11-14 | 2016-01-26 | Facebook, Inc. | Image panning and zooming effect |
US9507757B2 (en) | 2012-11-14 | 2016-11-29 | Facebook, Inc. | Generating multiple versions of a content item for multiple platforms |
US9218188B2 (en) | 2012-11-14 | 2015-12-22 | Facebook, Inc. | Animation sequence associated with feedback user-interface element |
US9547416B2 (en) | 2012-11-14 | 2017-01-17 | Facebook, Inc. | Image presentation |
US9507483B2 (en) * | 2012-11-14 | 2016-11-29 | Facebook, Inc. | Photographs with location or time information |
US9607289B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Content type filter |
US9235321B2 (en) | 2012-11-14 | 2016-01-12 | Facebook, Inc. | Animation sequence associated with content item |
US9547627B2 (en) | 2012-11-14 | 2017-01-17 | Facebook, Inc. | Comment presentation |
US9696898B2 (en) | 2012-11-14 | 2017-07-04 | Facebook, Inc. | Scrolling through a series of content items |
US9606695B2 (en) | 2012-11-14 | 2017-03-28 | Facebook, Inc. | Event notification |
US9684935B2 (en) | 2012-11-14 | 2017-06-20 | Facebook, Inc. | Content composer for third-party applications |
US9081410B2 (en) | 2012-11-14 | 2015-07-14 | Facebook, Inc. | Loading content on electronic device |
US10028101B2 (en) * | 2012-11-20 | 2018-07-17 | Facebook, Inc. | Predicted-location notification |
US9130939B2 (en) * | 2012-12-28 | 2015-09-08 | Intel Corporation | Ad hoc decentralized cloud infrastructure |
US9294576B2 (en) | 2013-01-02 | 2016-03-22 | Microsoft Technology Licensing, Llc | Social media impact assessment |
US9119055B2 (en) * | 2013-02-06 | 2015-08-25 | Facebook, Inc. | Grouping ambient-location updates |
CN103227830A (zh) * | 2013-04-27 | 2013-07-31 | 天津大学 | 以用户为中心的应用混搭的手机云系统及其应用方法 |
US10165076B2 (en) * | 2013-05-21 | 2018-12-25 | Philips Lighting Holding B.V. | Network system, a lighting system, and a method of caching information from a resource-constrained device |
US10621232B2 (en) * | 2015-03-11 | 2020-04-14 | Sap Se | Importing data to a semantic graph |
US20170118707A1 (en) * | 2015-10-21 | 2017-04-27 | Qualcomm Incorporated | Techniques for achieving optimal power and mean opinion scores for internet protocol multimedia subsystem-based dual connectivity calling |
US10339198B2 (en) * | 2015-12-18 | 2019-07-02 | Bitly, Inc. | Systems and methods for benchmarking online activity via encoded links |
EP3270568B1 (fr) | 2016-07-13 | 2018-12-12 | Bayerische Motoren Werke Aktiengesellschaft | Architecture de capteur dynamique |
EP3270286B1 (fr) | 2016-07-13 | 2019-03-06 | Bayerische Motoren Werke Aktiengesellschaft | Logique de commande de véhicule tenant compte des estampilles temporelles |
EP3270567B1 (fr) | 2016-07-13 | 2019-07-03 | Bayerische Motoren Werke Aktiengesellschaft | Procédé, système et programme informatique pour arrangement de capteurs résistant aux défaillances |
US10027616B2 (en) | 2016-07-18 | 2018-07-17 | Plexus Meet, Inc. | Proximity discovery system and method |
US11049060B2 (en) * | 2019-05-31 | 2021-06-29 | Hitachi, Ltd. | Operating envelope recommendation system with guaranteed probabilistic coverage |
WO2021196172A1 (fr) * | 2020-04-03 | 2021-10-07 | Orange | Procédé de notification d'un premier terminal mobile d'un événement associé à un second terminal mobile |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6968179B1 (en) * | 2000-07-27 | 2005-11-22 | Microsoft Corporation | Place specific buddy list services |
US7212827B1 (en) * | 2000-11-09 | 2007-05-01 | Agere Systems Inc. | Intelligent reminders for wireless PDA devices |
US20050231425A1 (en) * | 2001-09-10 | 2005-10-20 | American Gnc Corporation | Wireless wide area networked precision geolocation |
EP1294135B1 (fr) | 2001-09-14 | 2006-11-22 | Motorola, Inc. | Méthode pour améliorer la capacité de communication dans un système de télécommunications sans fil |
WO2003100452A1 (fr) * | 2002-05-29 | 2003-12-04 | Lior Baussi | Telephones cellulaires radiogoniometriques |
US20050038876A1 (en) * | 2003-08-15 | 2005-02-17 | Aloke Chaudhuri | System and method for instant match based on location, presence, personalization and communication |
CN102982092B (zh) * | 2004-10-19 | 2017-06-09 | 飞扬管理有限公司 | 用于基于位置的社交网络的系统和方法 |
US7848765B2 (en) * | 2005-05-27 | 2010-12-07 | Where, Inc. | Location-based services |
US8121428B2 (en) | 2005-05-31 | 2012-02-21 | Microsoft Corporation | Accelerated image rendering |
CN101213792A (zh) * | 2005-06-30 | 2008-07-02 | 皇家飞利浦电子股份有限公司 | 在无线网络中进行多模式通话的方法及装置 |
US20070032244A1 (en) * | 2005-08-08 | 2007-02-08 | Microsoft Corporation | Group-centric location tagging for mobile devices |
JP2007135016A (ja) | 2005-11-11 | 2007-05-31 | Nec Engineering Ltd | 監視制御システム |
US8254301B2 (en) * | 2005-11-22 | 2012-08-28 | Telcordia Technologies, Inc. | Group-header based method to organize local peer group of vehicles for inter-vehicle communication |
US8046411B2 (en) * | 2006-04-28 | 2011-10-25 | Yahoo! Inc. | Multimedia sharing in social networks for mobile devices |
US20070271367A1 (en) * | 2006-05-09 | 2007-11-22 | Zohar Yardeni | Systems and methods for location-based social web interaction and instant messaging system |
US20070268864A1 (en) * | 2006-05-22 | 2007-11-22 | Motorola, Inc. | Method and system to enhance social networking through random location connectivity |
US8571580B2 (en) * | 2006-06-01 | 2013-10-29 | Loopt Llc. | Displaying the location of individuals on an interactive map display on a mobile communication device |
US20070282621A1 (en) * | 2006-06-01 | 2007-12-06 | Flipt, Inc | Mobile dating system incorporating user location information |
JP4715659B2 (ja) | 2006-07-19 | 2011-07-06 | 日本電気株式会社 | プローブ情報収集システムおよびその収集装置ならびに収集方法およびプログラム |
US7720037B2 (en) * | 2006-08-03 | 2010-05-18 | Aol Inc. | Wireless social networking |
US8149748B2 (en) * | 2006-11-14 | 2012-04-03 | Raytheon Company | Wireless data networking |
-
2008
- 2008-06-16 US US12/140,251 patent/US8072954B2/en active Active
-
2009
- 2009-06-16 CN CN2009801325262A patent/CN102124762A/zh active Pending
- 2009-06-16 CN CN201610394622.6A patent/CN105916114B/zh active Active
- 2009-06-16 EP EP09794944.0A patent/EP2292025B1/fr active Active
- 2009-06-16 EP EP19183890.3A patent/EP3567882B1/fr active Active
- 2009-06-16 WO PCT/US2009/047575 patent/WO2010005752A2/fr active Application Filing
Non-Patent Citations (1)
Title |
---|
See references of WO2010005752A2 * |
Also Published As
Publication number | Publication date |
---|---|
US8072954B2 (en) | 2011-12-06 |
CN105916114A (zh) | 2016-08-31 |
EP2292025B1 (fr) | 2019-07-24 |
CN102124762A (zh) | 2011-07-13 |
EP2292025A4 (fr) | 2017-05-03 |
WO2010005752A3 (fr) | 2010-03-04 |
EP3567882A1 (fr) | 2019-11-13 |
EP3567882B1 (fr) | 2020-08-26 |
CN105916114B (zh) | 2021-01-22 |
WO2010005752A2 (fr) | 2010-01-14 |
US20090312033A1 (en) | 2009-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2292025B1 (fr) | Application composite et service pour des dispositifs sans fil | |
Wang et al. | Toward trustworthy crowdsourcing in the social internet of things | |
US9485673B2 (en) | Method and apparatus for coordinating information request messages over an ad-hoc mesh network | |
JP5948409B2 (ja) | コンテンツ配布のための方法と装置 | |
US8515409B2 (en) | Method and apparatus for providing a publish/subscribe mechanism over an ad-hoc mesh network | |
Papadopouli et al. | Design and implementation of a peer-to-peer data dissemination and prefetching tool for mobile users | |
Cao et al. | Mobi-dic: Mobile discovery of local resources in peer-to-peer wireless network. | |
CN101772936A (zh) | 通信网络中的数据管理方法和系统 | |
Majma et al. | SGDD: self‐managed grid‐based data dissemination protocol for mobile sink in wireless sensor network | |
Harbird et al. | Adaptive resource discovery for ubiquitous computing | |
Zuo et al. | Hychat: A hybrid interactive chat system for mobile social networking in proximity | |
Huang et al. | Energy-aware group LBS using D2D offloading and M2M-based mobile proxy handoff mechanisms over the mobile converged networks | |
Menchaca-Mendez et al. | Opportunistic mobile sensing in the fog | |
Zhao et al. | Mobimsg: a resource-efficient location-based mobile instant messaging system | |
Stuedi et al. | Contrail: Decentralized and privacy-preserving social networks on smartphones | |
Seada et al. | Social networks: the killer app for wireless ad hoc networks? | |
Yang et al. | A study on stable data transmission using hierarchical share group in mobile ad hoc network | |
Girolami et al. | SIDEMAN: Service Discovery in Mobile Social Networks. | |
Jiang et al. | uDrop: Pushing drop-box to the edge of mobile network | |
Liang et al. | Data forwarding mechanism based on node function and node centricity | |
Žarko et al. | The OpenIoT Approach to Sensor Mobility with Quality-Driven Data Acquisition Management | |
Dow et al. | An Efficient Crowdsourcing Search Scheme and Aggregation Techniques in Vehicular Ad hoc Networks | |
Das et al. | Wireless Networks: VoIP Service | |
Rashid et al. | Towards seamless service mobility for mobile devices communicating within wireless grids | |
Liu et al. | Querying time indexed information in mobile Ad hoc networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20110113 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA RS |
|
DAX | Request for extension of the european patent (deleted) | ||
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 20170403 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04W 4/20 20090101ALI20170328BHEP Ipc: H04W 84/12 20090101ALI20170328BHEP Ipc: H04W 84/18 20090101ALI20170328BHEP Ipc: H04W 4/02 20090101ALI20170328BHEP Ipc: H04W 4/08 20090101AFI20170328BHEP |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
INTG | Intention to grant announced |
Effective date: 20190214 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602009059240 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 1159732 Country of ref document: AT Kind code of ref document: T Effective date: 20190815 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: FP |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 1159732 Country of ref document: AT Kind code of ref document: T Effective date: 20190724 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191125 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191024 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191024 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191124 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191025 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20200224 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602009059240 Country of ref document: DE |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
PG2D | Information on lapse in contracting state deleted |
Ref country code: IS |
|
26N | No opposition filed |
Effective date: 20200603 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200616 |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20200630 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200630 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200630 Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200616 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200630 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190724 |
|
P01 | Opt-out of the competence of the unified patent court (upc) registered |
Effective date: 20230505 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20230523 Year of fee payment: 15 Ref country code: DE Payment date: 20230523 Year of fee payment: 15 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20230524 Year of fee payment: 15 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: NL Payment date: 20240521 Year of fee payment: 16 |