WO2004021199A1 - Dynamic proxy server filtering - Google Patents

Dynamic proxy server filtering Download PDF

Info

Publication number
WO2004021199A1
WO2004021199A1 PCT/US2003/026099 US0326099W WO2004021199A1 WO 2004021199 A1 WO2004021199 A1 WO 2004021199A1 US 0326099 W US0326099 W US 0326099W WO 2004021199 A1 WO2004021199 A1 WO 2004021199A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
subscriber
subscriber device
request
requested
Prior art date
Application number
PCT/US2003/026099
Other languages
French (fr)
Inventor
James Allen Hymel
Rami Chaim Levy
Original Assignee
Motorola, Inc., A Corporation Of The State Of Delaware
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Motorola, Inc., A Corporation Of The State Of Delaware filed Critical Motorola, Inc., A Corporation Of The State Of Delaware
Priority to AU2003262750A priority Critical patent/AU2003262750A1/en
Publication of WO2004021199A1 publication Critical patent/WO2004021199A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel

Definitions

  • the present invention relates to wireless communication, and specifically to
  • the device has a color display with graphics display capabilities) or a dynamically changing device status (e.g., device battery power level or available memory), and is not capable of receiving a user profile (e.g., device has color capabilities, but user requests text only for cost or bandwidth reasons).
  • a dynamically changing device status e.g., device battery power level or available memory
  • the service provider will forward requested information such as
  • the device battery power level is low or whether a subscriber using the device would prefer black and white graphics for bandwidth preservation and cost
  • battery may run out of power during an Internet communications session.
  • FIG. 1 is a block diagram of a wireless communications system in which an
  • FIG. 2 is a flow diagram illustrating the exemplary operation of a service
  • FIG. 1 shows a wireless communications system 10 including an exemplary
  • subscriber device 12 and a remote data storage entity 14, as well as a service provider network 16 including an intelligent proxy server 18 according to a
  • the subscriber device 12 may be any type of wireless phone or messaging
  • a device such as, for example, a CDMA or GSM type cellular telephone, that is capable of accessing the Internet, or any other remotely accessible information
  • the data storage entity 14 may be any remotely accessible entity, such as,
  • search engine for example, a search engine, a website or other Internet location, an Intranet location, any remote or local hard drive or storage medium or, more generically,
  • the data storage entity 14 may be a service provider memory storage device if, for example, the service provider has
  • the service provider network 16 may be or include a central service provider location such as a mobile switching office (MSO), or any other location
  • MSO mobile switching office
  • subscriber information and where the subscriber information may be stored or
  • the service provider network 16 includes a memory 20 and a data engine 22. While it will be discussed hereinafter.
  • a service provider network includes
  • the memory 20 is for storing subscriber information such as, for example, a semi-static device profile, a dynamically changing device
  • An exemplary semi-static device profile might contain
  • exemplary dynamically changing device status might contain data indicative of a present device battery power level, present available memory, or current channel
  • An exemplary user profile might contain user-defined parameters indicative of the device user's desire to receive only text data due to bandwidth and/or cost considerations, even though a device
  • a user profile can also include parameters such as time of day user
  • profile information may include other user defined parameters such as, for example
  • threshold such as, for example, 10% free memory or 5% battery level.
  • the data engine 22 may be realized, for example, by software running on
  • the intelligent proxy server 18 or by hardware that performs specific functions
  • requests such as, for example, HTTP or WAP requests
  • subscriber device 12 formatting the requests into a format, such as HTTP or SCTP (Stream Control Transmission Protocol), suitable for transmission over the Internet, transmitting
  • HTTP or WAP HyperText Transfer Protocol
  • SCTP Stream Control Transmission Protocol
  • the data engine 22 is programmed to intermediately receive the
  • a WAP proxy server that may already exist in WAP implemented hardware and software
  • the intelligent proxy server 18 is a server that may be implemented through hardware, software, or both, for receiving the requested raw data from the
  • the filtering performed by the intelligent proxy server 18 can be altered
  • thin audio files truncate text files, increase the compression ratio of JPEG or MPEG files, or reduce graphic resolution, color depth or gray scale depth on
  • the subscriber device 12 can monitor its battery power level and accordingly update its device profile (dynamic profile) in the
  • the subscriber device 12 may instruct the intelligent proxy server 18 via
  • the memory 20 not to institute any filtering. If the battery power level is between
  • the subscriber device 12 may instruct the subscriber device 12
  • intelligent proxy server 18 via the memory 20 to convert all color pictures to 4-
  • the subscriber device 12 may instruct the intelligent proxy server 18 via
  • the memory 20 to convert all pictures to 2-level black and white. If the battery
  • the subscriber device 12 may instruct the intelligent
  • proxy server 18 via the memory 20 not to send picture data at all.
  • the wireless device 12 may also monitor its incoming signal strength, or bit error rate or have the service provider do so, and correspondingly update its
  • the subscriber device 12 may instruct the intelligent proxy server 18 via the memory
  • the subscriber device 12 may instruct the intelligent proxy server 18 via the memory 20, for example, to convert all color pictures to 4-
  • the subscriber device 12 may instruct the intelligent proxy server 18 via
  • the memory 20 for example, to convert all color pictures to 2-level black and
  • the subscriber device 12 may instruct the intelligent proxy server 18 via the memory 20, for
  • the above instructions may be standing instructions.
  • a user of the wireless device 12 may simply select a level of filtering based on a cost threshold, usually in cost per unit of transmitted
  • the subscriber device 12 may be any type of messaging service.
  • the subscriber device 12 may be any type of messaging service.
  • the subscriber device 12 may be any type of messaging service.
  • the subscriber device 12 may be any type of messaging service.
  • the subscriber device 12 may be any type of messaging service.
  • the subscriber device 12 may be any type of messaging service.
  • the subscriber device 12 may be any type of messaging service.
  • subscriber device 12 may also update one of the device profile, the user profile, or the device status stored in the memory 20 to stipulate that, for example, audio files
  • the intelligent proxy server 18 would subsequently filter
  • a user of the subscriber device 12 may
  • the subscriber device 12 When a user of the subscriber device 12 requests, for example, the status of all movies playing within a local area, the subscriber device 12 transmits the local
  • the memory 20 updates the subscriber information associated with the specific subscriber device 12 and stored therein.
  • the data engine 22 receives the local movie request, and at 44
  • the data engine 22 receives raw local
  • This raw local movie data may be
  • the total amount of raw local movie data received is 10 kB.
  • the intelligent proxy server 18 receives the raw local movie data
  • identity data transmitted with the raw local movie data uses the stored subscriber information to filter the raw local movie data.
  • the identity data transmitted with the raw local movie data uses the stored subscriber information to filter the raw local movie data.
  • intelligent proxy server 18 reduces all graphics data to 256-level gray, de-animates GIFs, and recalculates the size of the remaining raw local movie data to be 7 kB.
  • the intelligent proxy server 18 then removes all HTML formatting information from the remaining data
  • the intelligent proxy server 18 further reduces movie review text
  • intelligent proxy server 18 relays the 5 kB of data to the subscriber device 12 via a
  • intelligent proxy server 18 is capable of filtering data based on subscriber information such as, for example, a device profile, a user profile, or a device status stored in the memory 20 at, for example, a service provider MSO.
  • subscriber information such as, for example, a device profile, a user profile, or a device status stored in the memory 20 at, for example, a service provider MSO.
  • proxy server 18 thereby enables a subscriber device user to control the amount
  • the subscriber device 12 could be configured to perform data filtering to eliminate the need for implementation of the intelligent proxy server 18
  • service provider network 16 could be configured so that the
  • intelligent proxy server 18 uses an external proxy service to initially filter received data prior to the intelligent proxy server 18 performing final filtering. For example,
  • the intelligent proxy server 18 provides a service to, for example, further compress MPEG2 formatted data to MPEG4 formatted data or to deanimate GIFs.
  • the intelligent proxy server 18 may be any suitable proxy server.
  • an MSO the MSO may be programmed to periodically retrieve the

Abstract

A service provider network (16) and method therein operates to dynamically reduce the bandwidth required for data. The service provider network (16) includes a memory (20) for storing subscriber information of a subscriber device (12), a data engine (22) for receiving a generic data request from the subscriber device (12), formatting the request into a compatible format, transmitting the request, and receiving data in response to the request, and an intelligent proxy server (18) for receiving the data from the data engine (22), manipulating or filtering the data as a function of the subscriber information to thin the content of the data, and outputting the filtered data to the subscriber device (12).

Description

DYNAMIC PROXY SERVER FILTERING
Background of the Invention Field of the Invention The present invention relates to wireless communication, and specifically to
wireless communications where data is dynamically filtered to reduce bandwidth
required to send the data to a wireless subscriber device.
Description of Related Art Emerging smart phone and smart messaging devices are generally capable
of accessing the Internet through scaled down Internet browsers. Deployment of
these emerging smart phone and smart messaging devices is seamless, as they are
typically 2G or 2.5G devices that operate using conventional communications protocol such as CDMA or GSM and that subscribe to the service(s) of one or
more service providers.
While the above new technology opens the way for advancements in
wireless messaging, certain limitations do exist. Specifically, a service provider,
while capable of storing a minimal device profile that is communicated by the device itself through a SIM card in a GSM device or through a device specific
code in a CDMA device and that includes device identity and home region data for
roaming purposes, has no way of determining a semi-static device profile (e.g.,
whether the device has a color display with graphics display capabilities) or a dynamically changing device status (e.g., device battery power level or available memory), and is not capable of receiving a user profile (e.g., device has color capabilities, but user requests text only for cost or bandwidth reasons).
As a result, the service provider will forward requested information such
as, for example, color graphics to a requesting device regardless of whether, for
example, the device battery power level is low or whether a subscriber using the device would prefer black and white graphics for bandwidth preservation and cost
purposes. As the bandwidth available to each wireless device is limited (64
kB/sec for a 2G or 2.5G wireless device) and device battery life is finite, a device
user may receive truncated data or may incur unexpected charges, or the device
battery may run out of power during an Internet communications session.
Therefore, what is needed is a way to dynamically adjust, or filter, the
information to be transmitted to a requesting wireless device.
Brief Description of the Drawings
Objects and advantages of the present invention will be more readily
apparent from the following detailed description of preferred embodiments thereof when taken together with the accompanying drawings in which:
FIG. 1 is a block diagram of a wireless communications system in which an
intelligent proxy server according to a preferred embodiment of the present invention is implemented; and
FIG. 2 is a flow diagram illustrating the exemplary operation of a service
provider network, including the intelligent proxy server of FIG. 1, to dynamically
adjust the content of information to be transmitted to a requesting wireless device.
Detailed Description of the Presently Preferred Exemplary
Embodiments
In overview form the present disclosure concerns communications systems
that provide services and specifically data communications services to subscriber devices or units, such as cellular phones or two-way radios and the like, and users
thereof operating therein. More particularly various inventive concepts and
principles are discussed and disclosed that dynamically reduce the content or
amount of data that is transported to the wireless devices based on various
considerations.
The instant disclosure is provided to further explain in an enabling fashion
the best modes of making and using various embodiments in accordance with the
present invention. The disclosure is further offered to enhance an understanding
and appreciation for the inventive principles and advantages thereof, rather than to
limit in any manner the invention. The invention is defined solely by the
appended claims including any amendments made during the pendency of this
application and all equivalents of those claims as issued.
It is further understood that the use of relational terms, if any, such as first
and second, top and bottom, and the like are used solely to distinguish one from
another entity or action without necessarily requiring or implying any actual such
relationship or order between such entities or actions. Much of the inventive
functionality and many of the inventive principles are best implemented with or in
software programs or instructions. It is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by,
for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein will be readily capable of generating such software instructions and programs with minimal
experimentation. Therefore, in the interest of brevity and minimization of any risk
of obscuring the principles and concepts according to the present invention, further
discussion of such software, if any, will be limited to the essentials with respect to the principles and concepts used by the preferred embodiments.
Referring now to the drawings in which like numerals reference like parts,
FIG. 1 shows a wireless communications system 10 including an exemplary
subscriber device 12 and a remote data storage entity 14, as well as a service provider network 16 including an intelligent proxy server 18 according to a
preferred embodiment of the present invention.
The subscriber device 12 may be any type of wireless phone or messaging
device such as, for example, a CDMA or GSM type cellular telephone, that is capable of accessing the Internet, or any other remotely accessible information
network, through a commercially available scaled down Internet browser and that subscribes to or has access to the wireless service(s) of one or more service
providers.
The data storage entity 14 may be any remotely accessible entity, such as,
for example, a search engine, a website or other Internet location, an Intranet location, any remote or local hard drive or storage medium or, more generically,
any destination that contains data or provides access to data such as data accessible over the World Wide Web. Alternatively, the data storage entity 14 may be a service provider memory storage device if, for example, the service provider has
an agreement with an Internet service provider to store World Wide Web
accessible data locally to improve subscriber access time.
The service provider network 16 may be or include a central service provider location such as a mobile switching office (MSO), or any other location
having access to subscriber information. In addition, the service provider network
16 represents a location from which the intelligent proxy server 18 may request the
subscriber information, and where the subscriber information may be stored or
updated. In addition to the intelligent proxy server 18, the service provider network 16 includes a memory 20 and a data engine 22. While it will be
appreciated by one skilled in the art that a service provider network includes
numerous additional hardware and software components, including base stations
(not shown) for routing information from the subscriber device 12 to the memory
20 and the data engine 22, and from the intelligent proxy server 18 to the subscriber device 12, only those server components most relevant to the present
invention are shown and will be discussed.
In addition to storing conventional subscriber information such as device
identity and home region data, the memory 20 is for storing subscriber information such as, for example, a semi-static device profile, a dynamically changing device
status, and a user profile. An exemplary semi-static device profile might contain
data indicative of display type, memory size and text/audio/video capabilities. An
exemplary dynamically changing device status might contain data indicative of a present device battery power level, present available memory, or current channel
conditions such as bit or frame error rates. An exemplary user profile might contain user-defined parameters indicative of the device user's desire to receive only text data due to bandwidth and/or cost considerations, even though a device
display has color graphics capability.
A user profile can also include parameters such as time of day user
preferences so that, for example, a device user can receive only text data during the day and only text and graphics data at night when bandwidth availability and
usage cost is less of a concern. In addition to time of day user preferences, user
profile information may include other user defined parameters such as, for
example, user preferences relating to day of week, roaming, user schedule and number of remaining free subscriber minutes. This above subscriber information
is updated in the memory 20 either periodically when the memory 20 receives
update preferences and device status information from the subscriber device 12,
only when the subscriber device 12 transmits a data request, or at a predetermined
threshold such as, for example, 10% free memory or 5% battery level.
The data engine 22 may be realized, for example, by software running on
the intelligent proxy server 18 or by hardware that performs specific functions
described below, and is programmed/configured for receiving generic data
requests such as, for example, HTTP or WAP requests, from the subscriber device 12, formatting the requests into a format, such as HTTP or SCTP (Stream Control Transmission Protocol), suitable for transmission over the Internet, transmitting
the requests to the data storage entity 14, and receiving requested data back from the data storage entity 14, rather than the requested data being sent directly back to the requesting subscriber device 12, as is the case with conventional subscriber
devices. The data engine 22 is programmed to intermediately receive the
requested data back from the data storage entity 14 so that it can input the
requested data into the intelligent proxy server 18 for data filtering purposes.
It should be appreciated from the above discussion that the data engine 22
may be implemented in a myriad of different ways without deviating from the
scope of the present invention. For example, in a WAP environment, a WAP proxy server that may already exist in WAP implemented hardware and software
may transmit data to the data storage entity 14 and therefore effectively bypass the
data engine 22 so that the data engine 22 is only operative to receive responses
from the data storage entity 14 and pass the responses to the intelligent proxy
server 18.
The intelligent proxy server 18 is a server that may be implemented through hardware, software, or both, for receiving the requested raw data from the
data storage entity 14 through the data engine 22, and for manipulating, or, in
other words, filtering, the raw data as a function of subscriber information such as
the semi-static device profile, the dynamically changing device status, or the user profile retrieved from the memory 20 in response to device identity data in a data
request received from the subscriber device 12. The intelligent proxy server 18
then passes the filtered data to a service provider transmitter (not shown) for
transmission to the subscriber device 12. The filtering performed by the intelligent proxy server 18 can be altered
from the subscriber device 12 or locally in many different ways to, for example,
thin audio files, truncate text files, increase the compression ratio of JPEG or MPEG files, or reduce graphic resolution, color depth or gray scale depth on
image files. Several exemplary scenarios will be described to further illustrate the
filtering that may be performed by the intelligent proxy filter 18.
In one exemplary scenario, the subscriber device 12 can monitor its battery power level and accordingly update its device profile (dynamic profile) in the
memory 20, along with the level of filtering that should be associated with the
battery power level. If the battery power level is between fully charged and 75%
charged, the subscriber device 12 may instruct the intelligent proxy server 18 via
the memory 20 not to institute any filtering. If the battery power level is between
75% charged and 50% charged, the subscriber device 12 may instruct the
intelligent proxy server 18 via the memory 20 to convert all color pictures to 4-
level gray scale. If the battery power level is between 50% charged and 25% charged, the subscriber device 12 may instruct the intelligent proxy server 18 via
the memory 20 to convert all pictures to 2-level black and white. If the battery
power level is below 25%, the subscriber device 12 may instruct the intelligent
proxy server 18 via the memory 20 not to send picture data at all.
The wireless device 12 may also monitor its incoming signal strength, or bit error rate or have the service provider do so, and correspondingly update its
device profile in the memory 20 as to the desired level of filtering. For example, if a bit error rate of the subscriber device 12 is in the range of 0% - 2%, the subscriber device 12 may instruct the intelligent proxy server 18 via the memory
20 to not initiate data filtering. If the bit error rate of the subscriber device 12 is
in the range of 2% - 5%, the subscriber device 12 may instruct the intelligent proxy server 18 via the memory 20, for example, to convert all color pictures to 4-
level gray scale. If the bit error rate of the subscriber device 12 is in the range of 5% - 8%, the subscriber device 12 may instruct the intelligent proxy server 18 via
the memory 20, for example, to convert all color pictures to 2-level black and
white. If the bit error rate of the subscriber device 12 is above 8%, the subscriber device 12 may instruct the intelligent proxy server 18 via the memory 20, for
example, to not transmit picture data, and instead to transmit a dummy thumbnail.
Note that when the service provider is monitoring the bit error or frame error rates
the above instructions may be standing instructions.
Alternatively, a user of the wireless device 12 may simply select a level of filtering based on a cost threshold, usually in cost per unit of transmitted
information or per unit of time required for transmission, associated with a
particular type of messaging service. For example, the subscriber device 12 may
instruct the intelligent proxy server 18 via the memory 20, for example, to reduce
the resolution or color depth of pictures, or in other words convert all pictures to
one of full color (256-bit), which is the most expensive type of service, 4-level
gray scale, 2-level black and white, or to the dummy thumbnail, which is the least expensive type of service.
In addition to any of the above types of filtering scenarios, a user of the
subscriber device 12 may also update one of the device profile, the user profile, or the device status stored in the memory 20 to stipulate that, for example, audio files
be thinned to reduce the content transmitted from the data engine 22 to the subscriber device 12. The intelligent proxy server 18 would subsequently filter
audio files by evenly dropping bits from the audio file by a desired percentage to
reduce the richness of the audio file and therefore expedite the transfer of audio
data to the subscriber device 12. Similarly, a user of the subscriber device 12 may
also update one of the device profile, the user profile, or the device status to stipulate that, for example, text files be filtered so that only a summary portion be
sent to the subscriber device 12, only a summary portion and general information
be sent to the subscriber device 12, or that a summary portion, general information
and detailed text information be sent to the subscriber device 12.
Referring now to FIG. 2, operation of the service provider network 16,
including the intelligent proxy server 18, will now be described within the context
of an exemplary scenario in which the subscriber device 12 requests data from the
data storage entity 14 .
When a user of the subscriber device 12 requests, for example, the status of all movies playing within a local area, the subscriber device 12 transmits the local
movie request as well as subscriber information including device location, battery
status (for example, 50% charged), and a detected signal strength, or bit error rate
(BER), to the memory 20. Subsequently at 40, the memory 20 updates the subscriber information associated with the specific subscriber device 12 and stored therein. At 42, the data engine 22 receives the local movie request, and at 44
formats the request into an Internet readable format and transmits the request to the data storage entity 14. In response, at 46, the data engine 22 receives raw local
movie data back from the data storage entity 14. This raw local movie data may
include, for example, lists of local movie theaters, movies, movie times, movie
reviews, and links to video trailers. In the present example, the total amount of raw local movie data received is 10 kB.
At 48, the intelligent proxy server 18 receives the raw local movie data
from the data engine 22, identifies the subscriber device 12 through the device
identity data transmitted with the raw local movie data, and uses the stored subscriber information to filter the raw local movie data. For example, the
intelligent proxy server 18 reduces all graphics data to 256-level gray, de-animates GIFs, and recalculates the size of the remaining raw local movie data to be 7 kB.
If it is determined at 50 that the data must be further reduced in size based on the
user preferences, device profiles and/or device status, at 48 the intelligent proxy server 18 then removes all HTML formatting information from the remaining data
to reduce the data size to 6 kB. If it is determined again at 50 that the data must be
further reduced in size based on the user preferences, device profiles and/or device
status, at 48 the intelligent proxy server 18 further reduces movie review text
lengths to 200 characters each to reduce the remaining data size to 5 kB. If at 50 it is finally determined that the data has been sufficiently reduced in size, at 52 the
intelligent proxy server 18 relays the 5 kB of data to the subscriber device 12 via a
service provider transmitter (not shown) for review by the user, and the filtering
process ends. In view of the above, one skilled in the art will appreciate that the
intelligent proxy server 18 is capable of filtering data based on subscriber information such as, for example, a device profile, a user profile, or a device status stored in the memory 20 at, for example, a service provider MSO. The intelligent
proxy server 18 thereby enables a subscriber device user to control the amount and
type of data received in response to a data request by taking variables such as
device battery usage, bandwidth and cost into consideration.
While the above description is of the preferred embodiment of the present
invention, it should be appreciated that the invention may be modified, altered, or
varied without deviating from the scope and fair meaning of the following claims.
For example, the subscriber device 12 could be configured to perform data filtering to eliminate the need for implementation of the intelligent proxy server 18
at, for example, a service provider mobile switching office, in exchange for the
amount of data being transmitted to the subscriber device 12 not being reduced.
In addition, the service provider network 16 could be configured so that the
intelligent proxy server 18 uses an external proxy service to initially filter received data prior to the intelligent proxy server 18 performing final filtering. For
example, if the intelligent proxy server 18 is not capable of removing tables or de-
animating GIFs, or it is not capable of further compressing video data due to
proprietary compression technology, it may send the data to an external proxy
service to, for example, further compress MPEG2 formatted data to MPEG4 formatted data or to deanimate GIFs. Alternatively, the intelligent proxy server 18
itself may be remotely located from the co-located memory 20 and data engine 22. Further, if the entity represented by the service provider network 16 is, for
example, an MSO, the MSO may be programmed to periodically retrieve the
subscriber device profiles and statuses independent of subscriber device status
requests. This disclosure is intended to explain how to fashion and use various embodiments in accordance with the invention rather than to limit the true,
intended, and fair scope and spirit thereof. The foregoing description is not
intended to be exhaustive or to limit the invention to the precise form disclosed.
Modifications or variations, such as described just above and others, are possible in light of the above teachings. The embodiment(s) was chosen and described to
provide the best illustration of the principles of the invention and its practical
application, and to enable one of ordinary skill in the art to utilize the invention in
various embodiments and with various modifications as are suited to the particular use contemplated. All such modifications and variations are within the scope of
the invention as determined by the appended claims, as may be amended during
the pendency of this application for patent, and all equivalents thereof, when
interpreted in accordance with the breadth to which they are fairly, legally, and
equitably entitled.

Claims

ClaimsWhat is claimed is:
1. A method of controlling an amount of requested data being transmitted
to a requesting subscriber device, comprising: receiving the requested data;
identifying the subscriber device based on the receiving of the requested
data;
retrieving stored subscriber information indicative of at least one of a periodically updated semi-static device profile, a dynamically changing device
status, and a user profile associated with the subscriber device in response to the
identifying of the subscriber device;
filtering the requested data as a function of the at least one of the
periodically updated semi-static device profile, the dynamically changing device status, and the user profile associated with the subscriber device; and
transmitting filtered data resulting from the filtering of the requested data
to the subscriber device.
2. The method of claim 1, wherein the filtering of the requested data
comprises reducing content of the requested data based on a subscriber device battery level.
3. The method of claim 1, wherein the filtering of the requested data
comprises reducing content of the requested data based on a subscriber device bit
error rate.
4. The method of claim 1, wherein the filtering of the requested data
comprises reducing content of the requested data based on a selected user cost
threshold.
5. A service provider system, comprising: a memory for storing subscriber information of a subscriber device including at least one of a semi-static device profile, a dynamically changing
device status, and a user profile;
a data engine for receiving a generic data request from the subscriber
device, formatting the request into a format compatible with a type of data being requested, transmitting the request, and receiving data in response to the generic
data request; and an intelligent proxy server in communication with both the memory and
the data engine for manipulating data received by the data engine as a function of
the subscriber information received from the memory, and for outputting
manipulated data to the subscriber device.
6. The service provider system of claim 5, wherein the memory is further
for receiving from the subscriber device updates of at least one of the semi-static
device profile, the dynamically changing device status, and the user profile.
7. The service provider system of claim 5, wherein the data engine is for
receiving a generic Internet data request.
8. The service provider system of claim 5, wherein the memory and the data engine are co-located and the proxy server is located remotely from the memory and the data engine.
9. A method of processing a data request from a wireless subscriber
device, comprising: storing subscriber information of a subscriber device including at least one
of a semi-static device profile, a dynamically changing device status, and a user
profile;
receiving a generic data request from the subscriber device, formatting the
request into a format compatible with a type of data being requested; transmitting the generic data request to a data storage sector;
receiving data in response to the transmitting of the request to a data
storage sector; and manipulating the data as a function of the subscriber information to reduce
content of the data.
10. The method of claim 9, wherein the manipulating of the data as a
function of the subscriber information to reduce content of the data comprises
filtering the data to reduce the content of the data based on at least one of subscriber device battery level, subscriber device bit error rate, and selected user
cost threshold.
PCT/US2003/026099 2002-08-29 2003-08-20 Dynamic proxy server filtering WO2004021199A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003262750A AU2003262750A1 (en) 2002-08-29 2003-08-20 Dynamic proxy server filtering

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/230,719 2002-08-29
US10/230,719 US6832259B2 (en) 2002-08-29 2002-08-29 Dynamic adjustment of transmitted data size for a subscriber device

Publications (1)

Publication Number Publication Date
WO2004021199A1 true WO2004021199A1 (en) 2004-03-11

Family

ID=31976568

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/026099 WO2004021199A1 (en) 2002-08-29 2003-08-20 Dynamic proxy server filtering

Country Status (3)

Country Link
US (1) US6832259B2 (en)
AU (1) AU2003262750A1 (en)
WO (1) WO2004021199A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2879873A1 (en) * 2004-12-17 2006-06-23 Canon Kk Digital data transferring method for e.g. Internet, involves extracting digital object conforming to preferences specified in object request from object`s transcoded form, including object`s high resolution and quality, obtained in Internet

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1139679A1 (en) * 2000-03-31 2001-10-04 BRITISH TELECOMMUNICATIONS public limited company Mobile telephone with pager mode
GB2381334A (en) * 2001-08-04 2003-04-30 Vistorm Ltd Updating roaming user profiles
US8590013B2 (en) 2002-02-25 2013-11-19 C. S. Lee Crawford Method of managing and communicating data pertaining to software applications for processor-based devices comprising wireless communication circuitry
US7647428B2 (en) * 2003-05-27 2010-01-12 Fujifilm Corporation Method and apparatus for email relay of moving image conversion and transmission, and programs therefor
US20050049886A1 (en) * 2003-08-28 2005-03-03 Sbc Knowledge Ventures, L.P. System and method for managing digital rights and content assets
US7949726B2 (en) * 2004-03-12 2011-05-24 Ocean And Coastal Environmental Sensing, Inc. System and method for delivering information on demand
WO2005094463A2 (en) * 2004-03-23 2005-10-13 Pctel Inc. Service level assurance system and method for wired and wireless broadband networks
US8254379B1 (en) * 2004-07-15 2012-08-28 Sprint Spectrum L.P. Method and system for application based compression profile selection
DE602004016351D1 (en) * 2004-11-24 2008-10-16 Research In Motion Ltd Method and system for filtering waveform data for wireless devices
US7542730B2 (en) * 2004-11-24 2009-06-02 Research In Motion Limited Method and system for filtering wavetable information for wireless devices
US8209344B2 (en) 2005-09-14 2012-06-26 Jumptap, Inc. Embedding sponsored content in mobile applications
US8103545B2 (en) 2005-09-14 2012-01-24 Jumptap, Inc. Managing payment for sponsored content presented to mobile communication facilities
US8364540B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Contextual targeting of content using a monetization platform
US7702318B2 (en) 2005-09-14 2010-04-20 Jumptap, Inc. Presentation of sponsored content based on mobile transaction event
US8832100B2 (en) 2005-09-14 2014-09-09 Millennial Media, Inc. User transaction history influenced search results
US8805339B2 (en) 2005-09-14 2014-08-12 Millennial Media, Inc. Categorization of a mobile user profile based on browse and viewing behavior
US8660891B2 (en) 2005-11-01 2014-02-25 Millennial Media Interactive mobile advertisement banners
US8989718B2 (en) 2005-09-14 2015-03-24 Millennial Media, Inc. Idle screen advertising
US8027879B2 (en) 2005-11-05 2011-09-27 Jumptap, Inc. Exclusivity bidding for mobile sponsored content
US7860871B2 (en) 2005-09-14 2010-12-28 Jumptap, Inc. User history influenced search results
US8195133B2 (en) 2005-09-14 2012-06-05 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US10592930B2 (en) 2005-09-14 2020-03-17 Millenial Media, LLC Syndication of a behavioral profile using a monetization platform
US7769764B2 (en) 2005-09-14 2010-08-03 Jumptap, Inc. Mobile advertisement syndication
US7912458B2 (en) 2005-09-14 2011-03-22 Jumptap, Inc. Interaction analysis and prioritization of mobile content
US8311888B2 (en) 2005-09-14 2012-11-13 Jumptap, Inc. Revenue models associated with syndication of a behavioral profile using a monetization platform
US8688671B2 (en) 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
US7660581B2 (en) 2005-09-14 2010-02-09 Jumptap, Inc. Managing sponsored content based on usage history
US8666376B2 (en) 2005-09-14 2014-03-04 Millennial Media Location based mobile shopping affinity program
US9058406B2 (en) 2005-09-14 2015-06-16 Millennial Media, Inc. Management of multiple advertising inventories using a monetization platform
US9471925B2 (en) 2005-09-14 2016-10-18 Millennial Media Llc Increasing mobile interactivity
US8819659B2 (en) 2005-09-14 2014-08-26 Millennial Media, Inc. Mobile search service instant activation
US8290810B2 (en) 2005-09-14 2012-10-16 Jumptap, Inc. Realtime surveying within mobile sponsored content
US8364521B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Rendering targeted advertisement on mobile communication facilities
US8532633B2 (en) 2005-09-14 2013-09-10 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US20110313853A1 (en) 2005-09-14 2011-12-22 Jorey Ramer System for targeting advertising content to a plurality of mobile communication facilities
US7577665B2 (en) 2005-09-14 2009-08-18 Jumptap, Inc. User characteristic influenced search results
US8131271B2 (en) 2005-11-05 2012-03-06 Jumptap, Inc. Categorization of a mobile user profile based on browse behavior
US8238888B2 (en) 2006-09-13 2012-08-07 Jumptap, Inc. Methods and systems for mobile coupon placement
US10038756B2 (en) 2005-09-14 2018-07-31 Millenial Media LLC Managing sponsored content based on device characteristics
US8156128B2 (en) 2005-09-14 2012-04-10 Jumptap, Inc. Contextual mobile content placement on a mobile communication facility
US7676394B2 (en) 2005-09-14 2010-03-09 Jumptap, Inc. Dynamic bidding and expected value
US9076175B2 (en) 2005-09-14 2015-07-07 Millennial Media, Inc. Mobile comparison shopping
US10911894B2 (en) 2005-09-14 2021-02-02 Verizon Media Inc. Use of dynamic content generation parameters based on previous performance of those parameters
US8503995B2 (en) 2005-09-14 2013-08-06 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US8229914B2 (en) 2005-09-14 2012-07-24 Jumptap, Inc. Mobile content spidering and compatibility determination
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US8812526B2 (en) 2005-09-14 2014-08-19 Millennial Media, Inc. Mobile content cross-inventory yield optimization
US8302030B2 (en) 2005-09-14 2012-10-30 Jumptap, Inc. Management of multiple advertising inventories using a monetization platform
US8615719B2 (en) 2005-09-14 2013-12-24 Jumptap, Inc. Managing sponsored content for delivery to mobile communication facilities
US9703892B2 (en) 2005-09-14 2017-07-11 Millennial Media Llc Predictive text completion for a mobile communication facility
US9201979B2 (en) 2005-09-14 2015-12-01 Millennial Media, Inc. Syndication of a behavioral profile associated with an availability condition using a monetization platform
US8204950B2 (en) 2005-09-15 2012-06-19 Qwest Communications International Inc. Webpage search
US8799512B2 (en) * 2005-10-19 2014-08-05 Qwest Communications International Inc. Cross-platform support for a variety of media types
US7570975B2 (en) * 2005-10-26 2009-08-04 Motorola, Inc. Method and apparatus for management of low-battery mobile stations
US8170189B2 (en) * 2005-11-02 2012-05-01 Qwest Communications International Inc. Cross-platform message notification
US8175585B2 (en) 2005-11-05 2012-05-08 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US8571999B2 (en) 2005-11-14 2013-10-29 C. S. Lee Crawford Method of conducting operations for a social network application including activity list generation
US7676473B2 (en) * 2005-12-02 2010-03-09 Qwest Communications International, Inc. Propagation of user preferences to end devices
US7596369B2 (en) * 2006-04-05 2009-09-29 Qwest Communications International, Inc. Translation of messages between media types
US9323821B2 (en) 2006-04-05 2016-04-26 Qwest Communications International Inc. Network repository auto sync wireless handset
US20070239895A1 (en) * 2006-04-05 2007-10-11 Qwest Communications International Inc. Cross-platform push of various media types
US8078476B2 (en) * 2006-04-05 2011-12-13 Qwest Communications International Inc. Cross-platform calendar notifications
US8214469B2 (en) 2006-04-06 2012-07-03 Qwest Communications International Inc. Multiple use of common perspectives
US20070239833A1 (en) * 2006-04-06 2007-10-11 Qwest Communications International Inc. Device specific communication notifications
US8320535B2 (en) 2006-04-06 2012-11-27 Qwest Communications International Inc. Selectable greeting messages
US8819751B2 (en) 2006-05-16 2014-08-26 Qwest Communications International Inc. Socially networked television experience
US9386327B2 (en) * 2006-05-24 2016-07-05 Time Warner Cable Enterprises Llc Secondary content insertion apparatus and methods
US8280982B2 (en) 2006-05-24 2012-10-02 Time Warner Cable Inc. Personal content server apparatus and methods
US8024762B2 (en) 2006-06-13 2011-09-20 Time Warner Cable Inc. Methods and apparatus for providing virtual content over a network
US8181206B2 (en) 2007-02-28 2012-05-15 Time Warner Cable Inc. Personal content server apparatus and methods
JP5116319B2 (en) * 2007-03-06 2013-01-09 キヤノン株式会社 Message relay apparatus and method
US7764965B2 (en) * 2007-04-10 2010-07-27 Microsoft Corporation Dynamically changing service characteristics based on device and network connectivity attributes
US20090098914A1 (en) * 2007-10-15 2009-04-16 Research In Motion Limited Method and system for enabling or disabling features based on a battery level threshold
US9319360B2 (en) 2007-11-01 2016-04-19 Google Inc. Systems and methods for prefetching relevant information for responsive mobile email applications
US8726165B1 (en) 2007-11-01 2014-05-13 Google Inc. Methods for auto-completing contact entry on mobile devices
US8676901B1 (en) * 2007-11-01 2014-03-18 Google Inc. Methods for transcoding attachments for mobile devices
US9241063B2 (en) 2007-11-01 2016-01-19 Google Inc. Methods for responding to an email message by call from a mobile device
US20090119678A1 (en) 2007-11-02 2009-05-07 Jimmy Shih Systems and methods for supporting downloadable applications on a portable client device
US20090249405A1 (en) * 2008-03-31 2009-10-01 Broadcom Corporation Video transmission system with edge device for adjusting video streams based on device parameters and methods for use therewith
JP4982522B2 (en) * 2009-04-24 2012-07-25 株式会社エヌ・ティ・ティ・ドコモ Relay server, content distribution system, and content distribution method
US20110029670A1 (en) * 2009-07-31 2011-02-03 Microsoft Corporation Adapting pushed content delivery based on predictiveness
US20110264530A1 (en) 2010-04-23 2011-10-27 Bryan Santangelo Apparatus and methods for dynamic secondary content and data insertion and delivery
US8848625B2 (en) * 2010-10-05 2014-09-30 Blackberry Limited Method, server and system for propagating a wireless communication device state
WO2012092312A1 (en) * 2010-12-31 2012-07-05 Motorola Mobility, Inc. Method and apparatus for downloading data in an electronic device
US20130151589A1 (en) * 2011-11-17 2013-06-13 Market76 Computer-based system for use in providing advisory services
US9817860B2 (en) * 2011-12-13 2017-11-14 Microsoft Technology Licensing, Llc Generation and application of correctness-enforced executable filters
US20140282786A1 (en) 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
US10645597B2 (en) 2014-02-25 2020-05-05 Roblox Corporation Message by message tunability of message reliability in a cellular network
US10382981B2 (en) 2014-02-25 2019-08-13 Roblox Corporation Cellular network protocol optimizations
US10098174B2 (en) * 2014-02-25 2018-10-09 Chetan Ahuja Maintaining continuous sessions in cellular data networks
US9705762B2 (en) * 2014-09-30 2017-07-11 Citrix Systems, Inc. Systems and methods for detecting device identity at a proxy background
US9872255B2 (en) * 2015-04-01 2018-01-16 Ebay Inc. Battery charge aware communications
KR102549216B1 (en) * 2015-11-02 2023-06-30 삼성전자 주식회사 Electronic device and method for generating user profile
US10685029B2 (en) * 2015-11-23 2020-06-16 Google Llc Information ranking based on properties of a computing device
US20180137119A1 (en) * 2016-11-16 2018-05-17 Samsung Electronics Co., Ltd. Image management method and apparatus thereof
US11403849B2 (en) 2019-09-25 2022-08-02 Charter Communications Operating, Llc Methods and apparatus for characterization of digital content
US11647533B2 (en) 2020-11-02 2023-05-09 Motorola Solutions, Inc. Device, system and method for dynamically adjusting a queue structure and message sequencing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5727159A (en) * 1996-04-10 1998-03-10 Kikinis; Dan System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers
US6343318B1 (en) * 1998-05-29 2002-01-29 Palm, Inc. Method and apparatus for communicating information over low bandwidth communications networks
US6563517B1 (en) * 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6125262A (en) 1998-08-24 2000-09-26 Motorola Selective call radio for selectively decoding prioritized messages and method therefor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5727159A (en) * 1996-04-10 1998-03-10 Kikinis; Dan System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers
US6343318B1 (en) * 1998-05-29 2002-01-29 Palm, Inc. Method and apparatus for communicating information over low bandwidth communications networks
US6563517B1 (en) * 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2879873A1 (en) * 2004-12-17 2006-06-23 Canon Kk Digital data transferring method for e.g. Internet, involves extracting digital object conforming to preferences specified in object request from object`s transcoded form, including object`s high resolution and quality, obtained in Internet

Also Published As

Publication number Publication date
AU2003262750A1 (en) 2004-03-19
US20040044781A1 (en) 2004-03-04
US6832259B2 (en) 2004-12-14

Similar Documents

Publication Publication Date Title
US6832259B2 (en) Dynamic adjustment of transmitted data size for a subscriber device
CA2260264C (en) Method and system for coupling a selective call receiver to widely distributed information sources
US6961754B2 (en) Interactive access, manipulation, sharing and exchange of multimedia data
US9419926B2 (en) System, method and computer program product for the delivery of media content
US7764965B2 (en) Dynamically changing service characteristics based on device and network connectivity attributes
CN100556022C (en) Radio multimedium message transmits service
KR100663403B1 (en) Method for transmitting a multimedia message and system therefor
US7636363B2 (en) Adaptive QoS system and method
US7299271B2 (en) System for automatically downloading content from a server to a home system based on user's command from a remote terminal
US8254441B2 (en) Video streaming based upon wireless quality
EP1580965A2 (en) Image transmitting device of user equipment and method thereof
EP1033850A2 (en) Data communicating terminal
KR20110005696A (en) Method for implementing rich video on mobile terminals
JP2006510310A (en) Method and system for multimedia message processing service
CN100551039C (en) Use the method for pseudo-streaming technology transmitting moving picture data to mobile terminal
AU4128999A (en) Transmission and display of video data
CN102187641A (en) A method for delivering visit content and a device thereof
US20050256959A1 (en) Method of and system for multimedia messaging system interoperability
EP2447860A2 (en) Methods, systems and computer program products for managing memory usage on a computing device
JP2009521155A (en) Information distribution in telecommunication systems
KR100466830B1 (en) Contents conversion method for terminal dependent messaging service on wireless internet
KR100841412B1 (en) Method for offering optimum multimedia service according to characteristics of user's terminal and System for implementing the same
KR100645920B1 (en) System for service moving picture mail for mobile phone and method thereof
CN115208870A (en) Compression algorithm determination method and device, electronic equipment and storage medium
Yang et al. Mobile Content Delivery Technologies

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP