Patents - stay tuned to the technology

Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Jain, WA

Ashima Jain, Bellevue, WA US

Patent application numberDescriptionPublished
20120131387MANAGING AUTOMATED AND MANUAL APPLICATION TESTING - An application for which approval is requested is identified and multiple automated tests are applied to the application in groups of automated tests. Each of the groups of automated tests includes multiple ones of the multiple automated tests. If one or more automated tests in a group of automated tests returns an inconclusive result, then a manual check is initiated for the application based on the one or more automated tests that returned the inconclusive result. If one or more automated tests in a group, or a manual test applied in the manual check, returns a fail result then an indication that the application is rejected is returned, the indication that the application is rejected including an identification of why the application is rejected. If none of the multiple automated tests returns a fail result, then a manual testing phase is initiated.05-24-2012

Avanti M. Jain, Richland, WA US

Patent application numberDescriptionPublished
20150362817MOISTURE RESISTANT ELECTROCHROMIC DEVICE - An electrochromic device is structured to restrict moisture permeation between an electrochromic stack in the device and an external environment. The electrochromic device includes conductive layers and one or more encapsulation layers, where the encapsulation layers and conductive layers collectively isolate the electrochromic stack from the ambient environment. The encapsulation layers resist moisture permeation, and at least the outer portions of the conductive layers resist moisture permeation. The moisture-resistant electrochromic device can be fabricated based at least in part upon selective removal of one or more outer portions of at least the EC stack, so that at least the encapsulation layer extends over one or more edge portions of the EC stack to isolate the edge portions of the EC stack from the ambient environment. The encapsulation layer can include one or more of an anti-reflective layer, infrared cut-off filter, etc.12-17-2015

Chandresh Jain, Sammamish, WA US

Patent application numberDescriptionPublished
20090319781SECURE MESSAGE DELIVERY USING A TRUST BROKER - An email security system is described that allows users within different organizations to securely send email to one another. The email security system provides a federation server on the Internet or other unsecured network accessible by each of the organizations. Each organization provides identity information to the federation server. When a sender in one organization sends a message to a recipient in another organization, the federation server provides the sender's email server with a secure token for encrypting the message to provide secure delivery over the unsecured network.12-24-2009
20140245000SECURE MESSAGE DELIVERY USING A TRUST BROKER - An email security system is described that allows users within different organizations to securely send email to one another. The email security system provides a federation server on the Internet or other unsecured network accessible by each of the organizations. Each organization provides identity information to the federation server. When a sender in one organization sends a message to a recipient in another organization, the federation server provides the sender's email server with a secure token for encrypting the message to provide secure delivery over the unsecured network.08-28-2014

Chandresh K. Jain, Sammamish, WA US

Patent application numberDescriptionPublished
20100306535Business To Business Secure Mail - Business to business secure mail may be provided. Consistent with embodiments of the invention, a protected message may be received. The recipient may request a token from a trust broker, submit the token to an authorization server associated with the sender, receive a user license from the authorization server; and decrypt the protected message using the user license. The protected message may restrict actions that may be taken by the recipient, such as forwarding to other users.12-02-2010
20110173272FILTERING OF ELECTONIC MAIL MESSAGES DESTINED FOR AN INTERNAL NETWORK - A perimeter network may be utilized to filter electronic mail messages destined for an internal network. A computer may be utilized to monitor an electronic mail mailbox for changes to a safe recipients list and/or a blocked senders list. The computer may further be utilized to automatically copy the safe recipients list and/or the blocked senders list to a network directory in the internal network. The computer may further be utilized to automatically send the safe recipients list and/or the blocked senders list to a network directory in the perimeter network for utilization by one or more agents executing on a computer in the perimeter network. The one or more agents may be configured to utilize the safe recipients list and/or the blocked senders list to filter electronic mail messages received by the perimeter network which are destined for delivery to the internal network.07-14-2011

Patent applications by Chandresh K. Jain, Sammamish, WA US

Chandresh Kumar Jain, Sammamish, WA US

Patent application numberDescriptionPublished
20120079268SEPARATING AUTHORIZATION IDENTITY FROM POLICY ENFORCEMENT IDENTITY - The present invention extends to methods, systems, and computer program products for separating authorization identity from policy enforcement identity. Embodiments of the invention extend the consumption phase for protected information. Two identities, an authorization identity and a policy enforcement identity, are used for acquiring, issuing and enforcing usage license instead of one identity certificate. The authorization identity is used to evaluate against usage policy. The authorization identity is similar to identification information in an identity certificate. The policy enforcement identity is used to ensure the confidentiality of granted permissions and content key. The policy enforcement identity enforces a usage license on an authorization principal's (e.g., recipient's) machine. The policy enforcement identity's enforcement of a usage license is similar use of a cryptographic key in an identity certificate.03-29-2012

Gunjan Jain, Redmond, WA US

Patent application numberDescriptionPublished
20120116984AUTOMATED EVALUATION OF COMPLIANCE DATA FROM HETEROGENEOUS IT SYSTEMS - Compliance-relevant data from external systems comprising managed entities can be received, stored, processed, transformed and evaluated in an automated fashion. Compliance reporting can be generated dynamically to reflect the most current regulations, guidance and system operating conditions. Compliance data from external systems can be converted into a unified format compatible with a compliance management schema. A series of transformations can be applied to the compliance-relevant data. A compliance threshold can be provided to the compliance management system and compliance scoring can be provided.05-10-2012

Jinesh J. Jain, Kennewick, WA US

Patent application numberDescriptionPublished
20160000382SYSTEMS AND METHODS FOR EEG MONITORING - Systems, devices and methods are described for physiological monitoring, for example monitoring EEG signals to detect the onset or probability of adverse events. The systems, devices and methods discussed herein may monitor received EEG signals to identify trends or patterns in the signal that are either indicative of ongoing seizures or indicative of a future risk of seizure. The systems, devices and methods provide the user with increased control and flexibility in the monitoring processes that produce the alerts. In particular, in some implementations the physician is able to make adjustments during monitoring and customize the process by which EEG data is displayed and analyzed during the patient monitoring without pausing the monitoring to make the adjustments.01-07-2016

Kalpit Jain, Redmond, WA US

Patent application numberDescriptionPublished
20100223597AGGREGATION AND PRIORITIZATION OF APPLICATION ISSUE DATA - A novel software application development aid comprises a web portal that provides aggregated and prioritized application issue data to ISVs in an ISV-specific and ISV-customizable manner so that the ISVs may improve their applications or correct errors therein and may know which application issues are causing the greatest reductions in customer satisfaction. So informed, the ISV may efficiently focus limited corrective resources on the most pressing problems. The application issue data sources for the ISV portal may include logo testing data, user crash report data, and other testing data.09-02-2010
20100293014DISPLAY ADS TESTING TOOL FOR RICH MEDIA DEVELOPERS - An ad test tool allows rich media developers to test ads in both a stand-alone environment and within live web pages. The ad test tool includes a stand-alone ad test tool, a live site ad test tool, and a rules and compliancy engine. The stand-alone ad test tool tests ads in a stand-alone environment by providing the ad rendering framework necessary to render ads on the user's local device. The live site ad test tool tests ads on live web pages. The live site ad test tool includes a proxy that intercepts ad requests from web pages and replaces the ads on the web pages with test ads. The rules and compliancy engine checks test ads for compliancy for security and privacy purposes and also verifies that click tracking and/or impression tracking operate properly.11-18-2010
20120089943INITIATING AND COMPLETING TRANSACTIONS VIA NOTIFICATION ELEMENTS - Initiating and completing transactions using a notification architecture associated in part with an operating system executing on a first computing device. The transactions are associated with a second computing device (e.g., a merchant computing device). Transaction messages relating to the transactions are conveyed via the notification architecture to the first computing device of a user. User interface notification elements associated with the operating system on the first computing device display the transaction messages, and receive authorization from the user relating to the transactions. The authorization is provided to the merchant computing device by the notification architecture. The transactions are completed without executing, on the first computing device, an application associated with the merchant computing device.04-12-2012

Patent applications by Kalpit Jain, Redmond, WA US

Kritarth Jain, Seattle, WA US

Patent application numberDescriptionPublished
20150364109ARCHITECTURES FOR INPUT TRACKING - A tracking architecture is provided that enables data for gestures and head positions to be provided to both native and non-native clients on a computing device. A pipeline component can obtain the raw image data and sensor data and synchronize that data to be processed to determine, for example, location and/or motion data that may correspond to device input. The data can be processed by separate components, such as an event publisher and an event provider, each capable of filtering the location, motion, and/or raw sensor data to generate a set of event data. The event data then can be published to registered listeners or provided in response to polling requests. Head coordinates, gesture data, and other such information can be passed through one or more interface layers enabling the data to be processed by a non-native client on the device.12-17-2015

Mayank Jain, Redmond, WA US

Patent application numberDescriptionPublished
20140324805USER-GENERATED CONTENT OF ENTITY-SPECIFIC SEARCH - Architecture that enables users to contribute their knowledge and add content to entities in a search context. The architecture provides the capability for users to add content to entities in a search context, display the knowledge assimilated from a user base for entities in a search context, validate (algorithmic, editorial or crowd-based) user-generated content to ensure correctness and filter spam, and rank the user-generated facts (whether algorithmic or crowd-sourced) to display most relevant facts in the user interface (as part of the user experience (UX)). To address user motivation and provide incentives, users can be given rewards (e.g., points, recognition, etc.) for a validated submission.10-30-2014

Megha Jain, Seattle, WA US

Patent application numberDescriptionPublished
20130088505CACHING COVERAGE VALUES FOR RENDERING TEXT USING ANTI-ALIASING TECHNIQUES - Techniques for calculating sub-pixel coverage values for text to be displayed, so as to enable caching of the sub-pixel coverage values. The sub-pixel coverage values may enable a linear combination of color information for the text with color information for one or more other, overlapping display elements for calculating composite color values to be used in controlling a display. Such composite color values to be used in controlling sub-pixels of a display may be calculated, in some embodiments, without performing a gamma correction process. Also described are techniques for retrieving cached sub-pixel coverage values and combining the values with color information for text and for other, overlapping display elements to calculate composite color values for sub-pixels of a display. At least one graphics processing unit (GPU) may be configured to perform operations using the sub-pixel coverage information and to calculate the composite color values for the sub-pixels.04-11-2013
20150287220RENDERING TEXT USING ANTI-ALIASING TECHNIQUES, CACHED COVERAGE VALUES, AND/OR REUSE OF FONT COLOR VALUES - Techniques for calculating sub-pixel coverage values for text to be displayed, so as to enable caching of the sub-pixel coverage values. The sub-pixel coverage values may enable a linear combination of color information for the text with color information for one or more other, overlapping display elements for calculating composite color values to be used in controlling a display. Such composite color values to be used in controlling sub-pixels of a display may be calculated, in some embodiments, without performing a gamma correction process. Also described are techniques for retrieving cached sub-pixel coverage values and combining the values with color information for text and for other, overlapping display elements to calculate composite color values for sub-pixels of a display. Further described are techniques for cached font color values for the text in a shared memory location, and use of the cached font color values to composite color values for each of multiple pixels. At least one graphics processing unit (GPU) may be configured to perform operations using the sub-pixel coverage information and to calculate the composite color values for the sub-pixels.10-08-2015

Monty Jain, Redmond, WA US

Patent application numberDescriptionPublished
20140282460ENTERPRISE DEVICE UNENROLLMENT - A method and apparatus are described for unenrolling applications, such as from a mobile device. An enterprise can be associated with one or more applications. Rather than uninstalling the applications individually, a single unenroll user interface command can be used to remove all data on the mobile device associated with the enterprise. Moreover, the applications associated with the enterprise can be uninstalled. A user's personal data on the mobile device is not affected during the unenrollment.09-18-2014
20140282836ENTERPRISE DEVICE POLICY MANAGEMENT - When receiving multiple security policy configurations from different management sources, a computer device can apply the most secure of the policy configurations to the device. If one of the policy configurations is removed from the device, a determination can be made regarding which of the remaining security policy configurations is the most secure. Once the determination is made, one of the remaining security policies that is the most secure is applied.09-18-2014
20140282839UNIFIED ENTERPRISE DEVICE ENROLLMENT - A unified enrollment client is described that allows authentication and communication with disparate enterprise management source types. A first enterprise management source type can have a corporate-based management server which is on the premises of the corporation. A second enterprise management source type can have a cloud-based management server in which a corporate server communicates through a federation gateway to a cloud-based management server. Authentication can be handled regardless of the source type through the use of a discovery request which identifies the source type so that the enrollment client knows how to tailor the authentication, if any is needed, to the particular enterprise management source.09-18-2014

Naresh Jain, Redmond, WA US

Patent application numberDescriptionPublished
20120079585PROXY AUTHENTICATION AND INDIRECT CERTIFICATE CHAINING - Embodiments of proxy authentication and indirect certificate chaining are described herein. In an implementation, authentication for a client occurs via a proxy service. Proxy service communicates between client and server, and caches security tokens on behalf of the client. In an implementation, trustworthiness of certificate presented to a client to establish trust is determined utilizing a signed data package which incorporates a plurality of known certificates. The presented certificate is verified without utilizing root certificates installed on the client device.03-29-2012
20130263285Multiuser Web Service Sign-In Client Side Components - Embodiments of multi-user web service sign-in client side components are presented herein. In an implementation, the currently authenticated user account of a first application of a client is transferred to another application of a client. In another implementation, a common credential store is used to share data for a plurality of user accounts associated with a client between a plurality of applications of the client, and for the applications to output multi-user interfaces having portions corresponding to the plurality of accounts.10-03-2013

Navendu Jain, Seattle, WA US

Patent application numberDescriptionPublished
20130346227Performance-Based Pricing for Cloud Computing - Described are performance-based pricing models for pricing execution of a client job in a cloud service. Client-provided performance-related parameters are used to determine a price. The price may be a minimum bid price that is evaluated against a bid received from client bidder to accept or reject the bid. Alternatively, the price may be returned as a quote. For batch application-type jobs, performance parameters include a work volume parameter and a deadline or the like. For an interactive-type application job, example performance-related parameters may include an average load parameter, a peak load parameter, an acceptance rate parameter, a minimum capacity parameter, a maximum capacity parameter, and/or a time window parameter over which load is specified.12-26-2013
20130346572PROCESS MIGRATION IN DATA CENTER NETWORKS - There is provided a method and system for process migration in a data center network. The method includes selecting processes to be migrated from a number of overloaded servers within a data center network based on an overload status of each overloaded server. Additionally, the method includes selecting, for each selected process, one of a number of underloaded servers to which to migrate the selected process based on an underload status of each underloaded server, and based on a parameter of a network component by which the selected process is to be migrated. The method also includes migrating each selected process to the selected underloaded server such that a migration finishes within a specified budget.12-26-2013
20140006861PROBLEM INFERENCE FROM SUPPORT TICKETS01-02-2014
20140006862MIDDLEBOX RELIABILITY01-02-2014
20140136684CHARACTERIZING SERVICE LEVELS ON AN ELECTRONIC NETWORK - The described implementations relate to processing of electronic data. One implementation is manifest as a system that that can include an event analysis component and one or more processing devices configured to execute the event analysis component. The event analysis component can be configured to obtain events from event logs, the events reflecting failures by one or more network devices in one or more data centers and characterize a service level of an application or a network device based on the events. For example, the event analysis component can be configured to characterize the availability of an application based on one or more network stamps of the application.05-15-2014
20140136690Evaluating Electronic Network Devices In View of Cost and Service Level Considerations - The described implementations relate to processing of electronic data. One implementation is manifest as one or more computer-readable storage devices comprising instructions which, when executed by one or more processing devices, cause the one or more processing devices to perform acts. The acts can include determining service levels provided by multiple network configurations, determining costs associated with the multiple network configurations, and evaluating the multiple network configurations based on both the costs and the service levels. The multiple network configurations can include redundantly-deployed devices. Furthermore, some implementations may determine cost/service level metrics that can be used to compare devices based on expected costs to provide a particular service level.05-15-2014
20140379895NETWORK EVENT PROCESSING AND PRIORITIZATION - The described implementations relate to processing of electronic data. One implementation is manifest as a system that can include an event analysis component and one or more processing devices configured to execute the event analysis component. The event analysis component can be configured to obtain multiple events that are generated by network devices in a networking environment. The event analysis component can also be configured to identify impactful events from the multiple events. The impactful events can have associated device-level or link-level impacts. The event analysis component can also be configured to determine one or more failure metrics for an individual impactful event. The one or more failure metrics can include at least a first redundancy-related failure metric associated with redundant failovers in the networking environment.12-25-2014
20150113118HIERARCHICAL NETWORK ANALYSIS SERVICE - A hierarchical network analytics system operated by a computing device or system is described. In some example techniques, the analytics system may determine results of a plurality of first level analyses each based at least in part on results of a respective plurality of data queries that return respective subsets of a plurality of types of network data. The analytics system may determine a result of a second level analysis based at least in part on results of the plurality of first level analyses.04-23-2015
20150186193GENERATION OF CLIENT-SIDE APPLICATION PROGRAMMING INTERFACES - Techniques for generating a client-side Application Programming Interface (API) are described herein. The techniques may include analyzing source code that is related to an API of a service provider and/or content that describes the source code and/or the API of the service provider. The analysis may identify characteristics of the API of the service provider, such as routines, characteristics of the routines, data constructs, characteristics of the data constructs, and so on. The techniques may also include generating a representation to represent the characteristics of the API of the service provider and generating a client-side API based on the representation. The client-side API may include a library of client-side routines and/or data constructs that provide access to routines and/or data constructs that are made available via the API of the service provider.07-02-2015
20150271008IDENTIFYING TROUBLESHOOTING OPTIONS FOR RESOLVING NETWORK FAILURES - Described herein are various technologies pertaining to providing assistance to an operator in a data center with respect to failures in the data center. An alarm is received, and a failing device is identified based upon content of the alarm. Failure conditions of the alarm are mapped to a failure symptom that may be exhibited by the failing device, and troubleshooting options previously employed to mitigate the failure symptom are retrieved from historical data. Labels are respectively assigned to the troubleshooting options, where a label is indicative of a probability that a troubleshooting option to which the label has been assigned will mitigate the failure symptom.09-24-2015
20160036837DETECTING ATTACKS ON DATA CENTERS - The claimed subject matter includes a system and method for detecting attacks on a data center. The method includes sampling a packet stream by coordinating at multiple levels of data center architecture, based on specified parameters. The method also includes processing the sampled packet stream to identify one or more data center attacks. Further, the method includes generating attack notifications for the identified data center attacks.02-04-2016
20160036838DATA CENTER ARCHITECTURE THAT SUPPORTS ATTACK DETECTION AND MITIGATION - Described herein are various technologies pertaining to identification of inbound and outbound network and application attacks with respect to a data center. Commodity servers are used to monitor ingress and egress traffic flows, and anomalies are detected in the traffic flows. Responsive to detecting an anomaly, a mitigation strategy is executed to mitigate damage caused by a cyber-attack.02-04-2016
20160070784IDENTIFYING MATHEMATICAL OPERATORS IN NATURAL LANGUAGE TEXT FOR KNOWLEDGE-BASED MATCHING - Disclosed herein is a system and method for taking a snapshot or input from a source and identifying appropriate documents in a knowledge base that are applicable to the input. The system identifies documents that are applicable to the query by identifying comparative features/statements found in the natural language text documents and evaluating those comparative features with the conditions of the input. When the conditions of the comparative features evaluate with the input conditions the document is considered a match. The system processes the documents through a value type filter to understand the mathematical equivalent of the comparative feature and uses this mathematical equivalent in the evaluation of the document and input.03-10-2016
20160094413Network Resource Governance in Multi-Tenant Datacenters - Bandwidth requirement specifications in a multi-tenant datacenter are implemented using resource-bundle level queues and tenant level queues. Data is transmitted via the resource-bundle level queues and the tenant level queues according to the bandwidth requirement specifications, such that minimum bandwidth requirements are maintained for data being transmitted and for data being received.03-31-2016

Patent applications by Navendu Jain, Seattle, WA US

Navendu Jain, Redmond, WA US

Patent application numberDescriptionPublished
20100218005ENERGY-AWARE SERVER MANAGEMENT - The described implementations relate to energy-aware server management. One implementation involves an adaptive control unit configured to manage energy usage in a server farm by transitioning individual servers between active and inactive states while maintaining response times for the server farm at a predefined level.08-26-2010
20100306408AGILE DATA CENTER NETWORK ARCHITECTURE - This patent application relates to an agile network architecture that can be employed in data centers, among others. One implementation provides a virtual layer-2 network connecting machines of a layer-3 infrastructure.12-02-2010

Navendu Jain, Bellevue, WA US

Patent application numberDescriptionPublished
20110239010MANAGING POWER PROVISIONING IN DISTRIBUTED COMPUTING - One or more computers manage power consumption in a plurality of computers by repeatedly evaluating power consumption of pluralities of computers such that any given plurality of computers is evaluated by aggregating indicia of power consumption of the individual computers in the given plurality. The evaluation identifies or predicts pluralities of computers that are over-consuming power and identifies pluralities of computers that are under-consuming power. A first plurality of computers identified as over-consuming power are sent messages to instruct some of its comprising computers or virtual machines (VMs) to lower their computational workload. A second plurality of computers identified as under-consuming power are sent messages instructing the other computers to increase their computation workload.09-29-2011
20110276951MANAGING RUNTIME EXECUTION OF APPLICATIONS ON CLOUD COMPUTING SYSTEMS - Instances of a same application execute on different respective hosts in a cloud computing environment. Instances of a monitor application are distributed to concurrently execute with each application instance on a host in the cloud environment, which provides user access to the application instances. The monitor application may be generated from a specification, which may define properties of the application/cloud to monitor and rules based on the properties. Each rule may have one or more conditions. Each monitor instance running on a host, monitors execution of the corresponding application instance on that host by obtaining from the host information regarding values of properties on the host per the application instance. Each monitor instance may evaluate the local host information or aggregate information collected from hosts running other instances of the monitor application, to repeatedly determine whether a rule condition has been violated. On violation, a user-specified handler is triggered.11-10-2011
20110282982DYNAMIC APPLICATION PLACEMENT BASED ON COST AND AVAILABILITY OF ENERGY IN DATACENTERS - An optimization framework for hosting sites that dynamically places application instances across multiple hosting sites based on the energy cost and availability of energy at these sites, application SLAs (service level agreements), and cost of network bandwidth between sites, just to name a few. The framework leverages a global network of hosting sites, possibly co-located with renewable and non-renewable energy sources, to dynamically determine the best datacenter (site) suited to place application instances to handle incoming workload at a given point in time. Application instances can be moved between datacenters subject to energy availability and dynamic power pricing, for example, which can vary hourly in day-ahead markets and in a time span of minutes in realtime markets.11-17-2011
20110320520DYNAMIC PARTITIONING OF APPLICATIONS BETWEEN CLIENTS AND SERVERS - Optimization mechanism that dynamically splits the computation in an application (e.g., cloud), that is, which parts run on a client (e.g., mobile) and which parts run on servers in a datacenter. This optimization can be based on application characteristics, network connectivity (e.g., latency, bandwidth, etc.) between the client and the datacenter, power or energy available at the client, size of the application objects, load in the datacenter, security and privacy concerns (e.g., cannot share all data on the client with the datacenter), and other criteria, as desired.12-29-2011
20120109705DATA CENTER SYSTEM THAT ACCOMMODATES EPISODIC COMPUTATION - A data center system is described which includes multiple data centers powered by multiple power sources, including any combination of renewable power sources and on-grid utility power sources. The data center system also includes a management system for managing execution of computational tasks by moving data components associated with the computational tasks within the data center system, in lieu of, or in addition to, moving power itself. The movement of data components can involve performing pre-computation or delayed computation on data components within any data center, as well as moving data components between data centers. The management system also includes a price determination module for determining prices for performing the computational tasks based on different pricing models. The data center system also includes a “stripped down” architecture to complement its use in the above-summarized data-centric environment.05-03-2012
20120130554DYNAMICALLY PLACING COMPUTING JOBS - This document describes techniques for dynamically placing computing jobs. These techniques enable reduced financial and/or energy costs to perform computing jobs at data centers.05-24-2012
20120158447PRICING BATCH COMPUTING JOBS AT DATA CENTERS - This document describes techniques for pricing batch computing jobs based at least in part on temporally- or spatially-dependent costs. By so doing, prices offered to perform a batch computing job better reflect the costs to perform that batch computing job.06-21-2012
20120330711RESOURCE MANAGEMENT FOR CLOUD COMPUTING PLATFORMS - A system for managing allocation of resources based on service level agreements between application owners and cloud operators. Under some service level agreements, the cloud operator may have responsibility for managing allocation of resources to the software application and may manage the allocation such that the software application executes within an agreed performance level. Operating a cloud computing platform according to such a service level agreement may alleviate for the application owners the complexities of managing allocation of resources and may provide greater flexibility to cloud operators in managing their cloud computing platforms.12-27-2012
20120331113RESOURCE MANAGEMENT FOR CLOUD COMPUTING PLATFORMS - A system for managing allocation of resources based on service level agreements between application owners and cloud operators. Under some service level agreements, the cloud operator may have responsibility for managing allocation of resources to the software application and may manage the allocation such that the software application executes within an agreed performance level. Operating a cloud computing platform according to such a service level agreement may alleviate for the application owners the complexities of managing allocation of resources and may provide greater flexibility to cloud operators in managing their cloud computing platforms.12-27-2012
20130007753ELASTIC SCALING FOR CLOUD-HOSTED BATCH APPLICATIONS - An elastic scaling cloud-hosted batch application system and method that performs automated elastic scaling of the number of compute instances used to process batch applications in a cloud computing environment. The system and method use automated elastic scaling to minimize job completion time and monetary cost of resources. Embodiments of the system and method use a workload-driven approach to estimate a work volume to be performed. This is based on task arrivals and job execution times. Given the work volume estimate, an adaptive controller dynamically adapts the number of compute instances to minimize the cost and completion time. Embodiments of the system and method also mitigate startup delays by computing a work volume in the near future and gradually starting up additional compute instances before they are needed. Embodiments of the system and method also ensure fairness among batch applications and concurrently executing jobs.01-03-2013
20130151683LOAD BALANCING IN CLUSTER STORAGE SYSTEMS - Methods and systems for load balancing in a cluster storage system are disclosed herein. The method includes identifying a source node within the cluster storage system from which to move a number of data objects, wherein the source node includes a node with a total load exceeding a threshold value. The method also includes selecting the data objects to move from the source node, wherein the data objects are chosen such that the total load of the source node no longer exceeds the threshold value. The method further includes determining a target node within the cluster storage system based on a proximity to the source node and the total load of the target node and moving the data objects from the source node to the target node.06-13-2013
20130179371SCHEDULING COMPUTING JOBS BASED ON VALUE - A plurality of requests for execution of computing jobs on one or more devices that include a plurality of computing resources may be obtained, the one or more devices configured to flexibly allocate the plurality of computing resources, each of the computing jobs including job completion values representing a worth to a respective user that is associated with execution completion times of each respective computing job. The computing resources may be scheduled based on the job completion values associated with each respective computing job.07-11-2013
20130232382METHOD AND SYSTEM FOR DETERMINING THE IMPACT OF FAILURES IN DATA CENTER NETWORKS - There is provided a method and system for determining an impact of failures in a data center network. The method includes identifying failures for the data center network based on data about the data center network and grouping the failures into failure event groups, wherein each failure event group includes related failures for a network element. The method also includes estimating the impact of the failures for each of the failure event groups by correlating the failures with traffic for the data center network.09-05-2013
20130246208ALLOCATION OF COMPUTATIONAL RESOURCES WITH POLICY SELECTION - A method for adaptively allocating resources to a plurality of jobs. The method comprises selecting a first policy from a plurality of policies for a first job in the plurality of jobs by using a policy selection mechanism, allocating at least one resource to the first job in accordance with the first policy, and in response to completion of the first job, updating the policy selection mechanism to obtain an updated policy selection mechanism by using at least one processor. Updating the policy selection mechanism comprises evaluating the performance of the first policy with respect to the first job by calculating a value of a metric of utility for the first policy based on conditions associated with execution of the first job and updating the policy selection mechanism based on the calculated value and a delay of execution of the first job.09-19-2013
20140365402DATA CENTER SYSTEM THAT ACCOMMODATES EPISODIC COMPUTATION - A data center system is described which includes multiple data centers powered by multiple power sources, including any combination of renewable power sources and on-grid utility power sources. The data center system also includes a management system for managing execution of computational tasks by moving data components associated with the computational tasks within the data center system, in lieu of, or in addition to, moving power itself. The movement of data components can involve performing pre-computation or delayed computation on data components within any data center, as well as moving data components between data centers. The management system also includes a price determination module for determining prices for performing the computational tasks based on different pricing models. The data center system also includes a “stripped down” architecture to complement its use in the above-summarized data-centric environment.12-11-2014

Patent applications by Navendu Jain, Bellevue, WA US

Neel Jain, Redmond, WA US

Patent application numberDescriptionPublished
20120144177FAST COMPUTER STARTUP - Fast computer startup is provided by, upon receipt of a shutdown command, recording state information representing a target state. In this target state, the computing device may have closed all user sessions, such that no user state information is included in the target state. However, the operating system may still be executing. In response to a command to startup the computer, this target state may be quickly reestablished from the recorded target state information. Portions of a startup sequence may be performed to complete the startup process, including establishing user state. To protect user expectations despite changes in response to a shutdown command, creation and use of the file holding the recorded state information may be conditional on dynamically determined events. Also, user and programmatic interfaces may provide options to override creation or use of the recorded state information.06-07-2012
20120144178FAST COMPUTER STARTUP - Fast computer startup is provided by, upon receipt of a shutdown command, recording state information representing a target state. In this target state, the computing device may have closed all user sessions, such that no user state information is included in the target state. However, the operating system may still be executing. In response to a command to startup the computer, this target state may be quickly reestablished from the recorded target state information. Portions of a startup sequence may be performed to complete the startup process, including establishing user state. To protect user expectations despite changes in response to a shutdown command, creation and use of the file holding the recorded state information may be conditional on dynamically determined events. Also, user and programmatic interfaces may provide options to override creation or use of the recorded state information.06-07-2012
20120144179FAST COMPUTER STARTUP - Fast computer startup is provided by, upon receipt of a shutdown command, recording state information representing a target state. In this target state, the computing device may have closed all user sessions, such that no user state information is included in the target state. However, the operating system may still be executing. In response to a command to startup the computer, this target state may be quickly reestablished from the recorded target state information. Portions of a startup sequence may be performed to complete the startup process, including establishing user state. To protect user expectations despite changes in response to a shutdown command, creation and use of the file holding the recorded state information may be conditional on dynamically determined events. Also, user and programmatic interfaces may provide options to override creation or use of the recorded state information.06-07-2012
20130346734FAST COMPUTER STARTUP - Fast computer startup is provided by, upon receipt of a shutdown command, recording state information representing a target state. In this target state, the computing device may have closed all user sessions, such that no user state information is included in the target state. However, the operating system may still be executing. In response to a command to startup the computer, this target state may be quickly reestablished from the recorded target state information. Portions of a startup sequence may be performed to complete the startup process, including establishing user state. To protect user expectations despite changes in response to a shutdown command, creation and use of the file holding the recorded state information may be conditional on dynamically determined events. Also, user and programmatic interfaces may provide options to override creation or use of the recorded state information.12-26-2013
20140331035FAST COMPUTER STARTUP - Fast computer startup is provided by, upon receipt of a shutdown command, recording state information representing a target state. In this target state, the computing device may have closed all user sessions, such that no user state information is included in the target state. However, the operating system may still be executing. In response to a command to startup the computer, this target state may be quickly reestablished from the recorded target state information. Portions of a startup sequence may be performed to complete the startup process, including establishing user state. To protect user expectations despite changes in response to a shutdown command, creation and use of the file holding the recorded state information may be conditional on dynamically determined events. Also, user and programmatic interfaces may provide options to override creation or use of the recorded state information.11-06-2014
20150234666FAST COMPUTER STARTUP - Fast computer startup is provided by, upon receipt of a shutdown command, recording state information representing a target state. In this target state, the computing device may have closed all user sessions, such that no user state information is included in the target state. However, the operating system may still be executing. In response to a command to startup the computer, this target state may be quickly reestablished from the recorded target state information. Portions of a startup sequence may be performed to complete the startup process, including establishing user state. To protect user expectations despite changes in response to a shutdown command, creation and use of the file holding the recorded state information may be conditional on dynamically determined events. Also, user and programmatic interfaces may provide options to override creation or use of the recorded state information.08-20-2015

Patent applications by Neel Jain, Redmond, WA US

Neel Jain, Seattle, WA US

Patent application numberDescriptionPublished
20160094427MANAGING CLASSIFIED NETWORK STREAMS - Embodiments relate to classifying network streams and regulating behavior of the streams based on their respective classes. One technique for managing streams involves analyzing applications, obtaining indicia of features of the applications, and using those features to infer classes to which streams of the applications may be assigned. Another technique involves deploying beacon nodes at the edge of a network. The beacon nodes inform a stream manager about network conditions such as latencies with regard to network boundaries or regions. Another embodiment for facilitating management of streams involves a subscription service for UDP applications. A UDP application may subscribe to the service, which may be provided by an operating system hosting the application. Events are published to any subscribed UDP applications to inform the UDP applications of changes in networking conditions. The UDP applications, in turn, may adapt their internal transmission control logic.03-31-2016
20160094464NETWORK CLASSIFICATION FOR APPLICATIONS - An operating system implements classes of network streams. Applications assign their network streams to the classes. The operating system, in turn, regulates the streams according to which classes the streams are in. As conditions change, network resources may be made available or more fully utilized by regulating streams according to which classes they have been assigned to. Network resources may be made available, perhaps rapidly or preemptively, for streams in higher priority classes by restricting streams in lower priority classes.03-31-2016

Neel K. Jain, Redmond, WA US

Patent application numberDescriptionPublished
20110010469ENHANCED NETWORK SYSTEM THROUGH THE COMBINATION OF NETWORKING OBJECTS - Reducing the cost of framing network packets in a virtual machine environment combines certain network objects to eliminate the cost of fully framing packets between the combined objects. In a virtual environment, for example, this allows a virtual NIC in one partition to send only data to a network provider partition and to rely on the latter to frame and route the data. A source network object, destination network object, or an intermediate network object may enable a separate intermediate network object to frame its data so that the network system may take advantage of offload framing when one or more of the intermediate network object's ports has the capacity to offload framing.01-13-2011

Raj Jain, Woodinville, WA US

Patent application numberDescriptionPublished
20120108320GAMING NOTIFICATIONS AGGREGATOR - A system and method for aggregating and consolidating game notifications is described. In one aspect, game related notifications of different types, from different game sessions, from different games, and from different gaming platforms are aggregated and further consolidated, according to a set of consolidation rules, into a single consolidated environment. The consolidated environment may be projected to and managed from a variety of different gaming devices including mobile devices, gaming and media consoles, and personal computers.05-03-2012

Rajit Jain, Seattle, WA US

Patent application numberDescriptionPublished
20090265056ELECTRONIC LOGBOOK FLIGHT PREPARATION SYSTEM AND METHOD - A method for carrying out a logbook flight preparation process to present pre-flight information to a flight crew member of an aircraft prior to a flight mission. The method may involve electronically accessing a database to obtain a quantity of pre-flight information relating to an airworthiness of the aircraft, with the database being at least one of on-board the aircraft and remote from said aircraft. The quantity of pre-flight information is displayed in accordance with a desired sequence in which the information is to be presented to said flight crew member. The quantity of preflight information may be presented on a visual display in the desired sequence.10-22-2009
20090265357SYSTEM AND METHOD FOR GENERATING MAINTENANCE RELEASE INFORMATION - A method for creating a maintenance release (MR) record containing operational status information for a mobile platform. The method may involve electronically accessing a database to acquire operational items relating to operational worthiness of the mobile platform, displaying the selected operational items to the user; and performing a synchronization check of the database system. The synchronization check verifies that the selected operational items represent the most recently stored information in the database system.10-22-2009
20090265393SYSTEM AND METHOD FOR SYNCHRONIZING DATABASES - A method for synchronizing information shared by a subsystem on-board a mobile platform and a subsystem remote from the mobile platform. The method may involve designating one of the subsystems as a first system having a first database, and designating one of the subsystems as a second system having a second database. The first subsystem may be used to transmit a synchronization request to the second subsystem, with the synchronization request including a synchronization point to be used as a reference for future synchronization operations between the subsystems. The second subsystem may be used to receive the synchronization request and to check the second database for any records that have been created or modified since a previously performed synchronization operation. Information may then be transmitted back to the first subsystem that includes information concerning the new or modified records.10-22-2009
20100121520SYSTEM AND METHOD FOR DETERMINING ELECTRONIC LOGBOOK OBSERVED DEFECT FIX EFFECTIVENESS - A method for automating tracking of an effectiveness of fault repairs. The method may involve defining a unique fault code for each one of a plurality of different faults; cataloging faults that are repaired according to their respective fault codes and storing each cataloged fault in a fix effectiveness subsystem; placing the fix effectiveness subsystem in communication with an electronic logbook (ELB) system that is able to populate the fix effectiveness subsystem with additional fault information; providing a user interface to enable a user to access said ELB system to obtain information on a specific fault condition that was previously stored on the fix effectiveness subsystem; and presenting a fault history to the user from information stored in the fix effectiveness subsystem that enables the user to select a repair procedure for correcting the specific fault condition.05-13-2010

Raju Jain, Woodinville, WA US

Patent application numberDescriptionPublished
20090254631DEFINING CLIPPABLE SECTIONS OF A NETWORK DOCUMENT AND SAVING CORRESPONDING CONTENT - A system and a method may be provided. The system may include a server and one or more user processing devices. The user processing devices may execute an application, such as, for example, a browser. Via the application, a user may define clippable sections of a network document without executing any scripts. The defined clippable sections may be stored on a user processing device or on a server. When viewing a network document, a user may select a portion of the network document corresponding to a defined clippable section to cause corresponding content to be saved to a list. The list may be stored on the user processing device or on the server. When the list is stored on the server, the list may be made shareable with other users.10-08-2009
20160065626CROSS DEVICE TASK CONTINUITY - Systems and methods for cross device and/or cross operating system task continuity between devices for frictionless task engagement and reengagement. Task continuity can provide for simple detection and selection of recently viewed and/or modified tasks. Task continuity can provide for simple engagement of new tasks in applications and/or websites, the new tasks being related to recently presented and/or modified tasks. Responsive to selection of the recently presented and/or modified task, the task can be seamlessly reengaged from the point at which it was last presented and/or modified. Responsive to selection of a new task, the task can be engaged from a starting point. Upon completion of the task on one device, the task can be closed across devices. Task continuity can be enabled on a single device or across a plurality of devices. Task continuity can be enabled on a single operating system, or across a plurality of operating systems.03-03-2016
20160077685Operating System Virtual Desktop Techniques - Operating system virtual desktop techniques are described. In one or more implementations, a plurality of virtual desktops are implemented by a single operating system of a computing device. Each of the virtual desktops includes a user interface that is configured to have an associated collection of windows that correspond to applications. Access to the plurality of virtual desktops is managed by the operating system that is navigable by a user to interact with associated collection of representations of application and windows corresponding to the applications by switching between the plurality of virtual desktops.03-17-2016
20160085388Desktop Environment Differentiation in Virtual Desktops - Desktop environment differentiation in virtual desktop techniques are described. In one or more implementations, a user is logged into a corresponding single user account of an operating system of a computing device. Functionality accessible via the single user account is exposed to implement a plurality of virtual desktops associated with the single user account. Each of the plurality of virtual desktops including a user interface that is configured to have an associated collection of windows corresponding to applications and desktop environments that are differentiated, one from another.03-24-2016

Ranjiv Jain, Seattle, WA US

Patent application numberDescriptionPublished
20140237922BUILDING BLOCK SYSTEM - A building system includes a foundation block and a wall block. Each block has opposing first and second main surfaces, a first top end and an opposing second bottom end, and opposing first and second side surfaces extending between the first and second main surfaces and between the top and bottom ends. Portions of the first and second main surfaces of the foundation block proximate the top end thereof taper axially inwardly toward each other and toward an interior of the block to form a pair of inwardly tapered surfaces. The bottom end of the wall block includes a pair of outwardly tapered surfaces which extend axially outwardly away from each other and toward an exterior of the wall block. The pair of outwardly tapered surfaces of the wall block engage the pair of inwardly tapered surfaces of the foundation block in an assembled configuration to form a first vertical stack member.08-28-2014

Rupali Jain, Redmond, WA US

Patent application numberDescriptionPublished
20120143758Account Transfer Techniques - Account transfer techniques are described. In one or more implementations, a user interface is output by a mobile communication device that describes funds in an account. The account is usable by the mobile communication device to purchase goods or service and the purchase performable at least in part using credentials stored in a secure element implemented in hardware of the mobile communication device. An input is received via interaction with the user interface to authorize a transfer of funds from the account associated with the mobile communication device to another account usable by another mobile communication device to purchase goods or services.06-07-2012

Sachin Jain, Issaquah, WA US

Patent application numberDescriptionPublished
20110238546MANAGING COMMITTED PROCESSING RATES FOR SHARED RESOURCES - Commitments against various resources can be dynamically adjusted for customers in a shared-resource environment. A customer can provision a data volume with a committed rate of Input/Output Operations Per Second (IOPS) and pay only for that commitment (plus any overage), for example, as well as the amount of storage requested. The customer can subsequently adjust the committed rate of IOPS by submitting an appropriate request, or the rate can be adjusted automatically based on any of a number of criteria. Data volumes for the customer can be migrated, split, or combined in order to provide the adjusted rate. The interaction of the customer with the data volume does not need to change, independent of adjustments in rate or changes in the data volume, other than the rate at which requests are processed.09-29-2011
20110238857COMMITTED PROCESSING RATES FOR SHARED RESOURCES - Customers of a shared-resource environment can provision resources in a fine-grained manner that meets specific performance requirements. A customer can provision a data volume with a committed rate of Input/Output Operations Per Second (IOPS) and pay only for that commitment (plus any overage), and the amount of storage requested. The customer will then at any time be able to complete at least the committed rate of IOPS. If the customer generates submissions at a rate that exceeds the committed rate, the resource can still process at the higher rate when the system is not under pressure. Even under pressure, the system will deliver at least the committed rate. Multiple customers can be provisioned on the same resource, and more than one customer can have a committed rate on that resource. Customers without committed or guaranteed rates can utilize the uncommitted portion, or committed portions that are not being used.09-29-2011
20150026430VIRTUAL DATA STORAGE SERVICE WITH SPARSE PROVISIONING - Virtual data stores may be sparsely provisioned by virtual data storage services in a manner that controls risk of implementation resource shortages. Relationships between requested data storage space size, data storage server capacity, allocated data storage space size and/or allocated data storage space utilization may be tracked on a per data store, per customer, per data storage server, and/or a per virtual data storage service basis. For each such basis, a set of constraints may be specified to control the relationships. The set of constraints may be enforced during implementation resource allocation, and by migration of data storage space portions to different implementation resources as part of a sparse provisioning load balancing. Sparse provisioning details may be made explicit to virtual data storage service customers to varying degrees including explicit, aggregate on a per customer basis, and aggregate on a per virtual data storage service basis.01-22-2015

Sachin Jain, Sammamish, WA US

Patent application numberDescriptionPublished
20140180862MANAGING OPERATIONAL THROUGHPUT FOR SHARED RESOURCES - Usage of shared resources can be managed by enabling users to obtain different types of guarantees at different times for various types and/or levels of resource capacity. A user can select to have an amount or rate of capacity dedicated to that user. A user can also select reserved capacity for at least a portion of the requests, tasks, or program execution for that user, where the user has priority to that capacity but other users can utilize the excess capacity during other periods. Users can alternatively specify to use the excess capacity or other variable, non-guaranteed capacity. The capacity can be for any appropriate functional aspect of a resource, such as computational capacity, throughput, latency, bandwidth, and storage. Users can submit bids for various types and combinations of excess capacity, and winning bids can receive dedicated use of the excess capacity for at least a period of time.06-26-2014
20150106331DATA SET CAPTURE MANAGEMENT WITH FORECASTING - A set of virtualized computing services may include multiple types of virtualized data store differentiated by characteristics such as latency, throughput, durability and cost. A sequence of captures of a data set from one data store to another may be scheduled to achieve a variety of virtualized computing service user and provider goals such as lowering a probability of data loss, lowering costs, and computing resource load leveling. Data set captures may be scheduled according to policies specifying fixed and flexible schedules and conditions including flexible scheduling windows, target capture frequencies, probability of loss targets and/or cost targets. Capture lifetimes may also be managed with capture retention policies, which may specify fixed and flexible lifetimes and conditions including cost targets. Such data set capture policies may be specified with a Web-based administrative interface to a control plane of the virtualized computing services.04-16-2015

Sandhya D. Jain, Redmond, WA US

Patent application numberDescriptionPublished
20090222448ELEMENTS OF AN ENTERPRISE EVENT FEED - An enterprise-based social networking application. The events pool for the social networking application may be automatically populated without requiring direct individual participation in the social networking application. Furthermore, networks may be established automatically, without an expressed invitation. The default network may be based on a participant's communication history and/or organization context within the enterprise. The participant may then edit or expand the network without necessarily requesting permission for the individuals being added, and without necessarily being part of that individual's network.09-03-2009
20090222750ENTERPRISE SOCIAL NETWORKING SOFTWARE ARCHITECTURE - An enterprise-based social networking application. Events for individuals may be collected from various enterprise-based information systems automatically using adaptors that are specially tailored for particular types of information systems. Such events may then be used to populate event feeds regarding individuals in that enterprise. A filtering model for formulating event feeds identifies events by individual, event type, and event time. The filter also identifies which individuals are in which group of a participant, and identifies which groups correspond to which event types. Incoming events may then be filtered into the event feeds depending on the group to which the individual belongs. A user interface for a participant to view and edit group membership is also provided.09-03-2009
20100115033DO NOT DISTURB FILTER FOR ELECTRONIC MESSAGES - Data is received defining a time period during which a notification of receipt should not be provided when an electronic message is received. Data may also be received defining certain types of messages for which notification of receipt should be provided during the time period. During the duration of the time period, no notification of receipt is provided for received electronic messages that are not within one of the specified types. After the time period has elapsed, notification of receipt is provided for electronic messages received during the time period and for which no notification of receipt was previously provided. Electronic messages may be sent during the time period and electronic messages received prior to the time period may be displayed for reading during the time period.05-06-2010
20140324977ENTERPRISE SOCIAL NETWORKING SOFTWARE ARCHITECTURE - An enterprise-based social networking application. Events for individuals may be collected from various enterprise-based information systems automatically using adaptors that are specially tailored for particular types of information systems. Such events may then be used to populate event feeds regarding individuals in that enterprise. A filtering model for formulating event feeds identifies events by individual, event type, and event time. The filter also identifies which individuals are in which group of a participant, and identifies which groups correspond to which event types. Incoming events may then be filtered into the event feeds depending on the group to which the individual belongs. Filtering an event from an events pool to formulate an event feed is also provided.10-30-2014

Patent applications by Sandhya D. Jain, Redmond, WA US

Saral Jain, Seattle, WA US

Patent application numberDescriptionPublished
20150154506BROWSER-BASED SELECTION OF CONTENT REQUEST MODES - Features are disclosed for generating request decision models for use by client computing devices to determine request paths or modes for content requests. The request modes may correspond to direct requests (e.g., requests made from a client device directly to a content server hosting requested content) or to indirect requests (e.g., requests made from the client device to the content server via an intermediary system). The request decision models may be trained by a machine learning algorithm using performance data (e.g., prior content load times), contextual information (e.g., state information associated with devices at times content requests are executed), and the like.06-04-2015
20150156279BROWSER-BASED ANALYSIS OF CONTENT REQUEST MODE PERFORMANCE - Features are disclosed for selecting preferred content request modes on a client computing device when initiating content requests. The request modes may correspond to direct requests (e.g., requests made from a client device directly to a content sever hosting requested content) or to indirect requests (e.g., requests made from the client device to the content server via an intermediary system). The preferred request modes made be based on a statistical analysis of performance data (e.g., prior content load times) observed or recorded by the client computing device in connection with prior content requests. Randomly selected request modes may be used to provide additional data for performance analysis.06-04-2015
20150156280PERFORMANCE-BASED DETERMINATION OF REQUEST MODES - Features are disclosed for determining preferred content request modes for client computing devices when initiating content requests. The request modes may correspond to direct requests (e.g., requests made from a client device directly to a content sever hosting requested content) or to indirect requests (e.g., requests made from the client device to the content server via an intermediary system). The preferred request modes made be based on a statistical analysis of performance data (e.g., prior content load times) obtained from one or more client computing devices for a given content item, group of content items (e.g., domain), and the like.06-04-2015

Saral Jain, Bellevue, WA US

Patent application numberDescriptionPublished
20150371142PREDICTING NEXT WEB PAGES - Techniques and solutions for predicting web pages are described. Web page prediction can be performed using prediction models, including aggregate prediction models and user-based prediction models. Prediction models can be used to predict which web page (or which web pages) a user is likely to visit (e.g., to visit next after a current web page). Predicted web pages can be obtained in advance (e.g., pre-fetched and/or pre-rendered). Web page prediction can be performed by server computing environments and/or by client computing devices.12-24-2015

Saurabh Jain, Redmond, WA US

Patent application numberDescriptionPublished
20080294673DATA TRANSFER AND STORAGE BASED ON META-DATA - Meta-data is used to generate code which retrieves source data from multiple sources having different formats and places the data into a set of tables having a single schema. Stored procedures access meta-data from a set of meta-data tables, configure one or more destination tables, generate query code from the meta-data and store the source data in the destination tables. When storing the data, data may be replaced or updated as part of storing the source data. The meta-data tables contain meta-data that is combined into code statements by the stored procedures. The code statements are used to retrieve source data from one or more source data stores. Destination tables for storing retrieved data may have a single schema for storing source data, wherein the source data includes several different domains having different numbers of levels and attributes and originates from more than one source.11-27-2008

Shikha Jain, Redmond, WA US

Patent application numberDescriptionPublished
20100262632DATA TRANSFER FROM ON-LINE TO ON-PREMISE DEPLOYMENT - A customer can request migration of its data from a multi-tenant hosting environment to a local environment. The customer's data is pulled from the multi-tenant hosting environment and scrubbed so that it is compatible with a local version of the application previously hosted in the multi-tenant hosting environment. The data is made available to the customer at a secure location in the hosting environment. The customer retrieves the data, after proper authentication, to its local data store, and then imports the data into the local version of the application. Users of the local version of the application are then mapped from previous multi-jurisdictional identifications to local user identifications in the application.10-14-2010

Sidharath Jain, Kirkland, WA US

Patent application numberDescriptionPublished
20160006109SLOT ANTENNA INTEGRATED INTO A RESONANT CAVITY OF AN ELECTRONIC DEVICE CASE - An electronic device case includes a conductive cap section and a conductive bezel section forming a perimeter outside the conductive cap section and separated from the conductive cap section by a bezel gap. A conductive ground plane section forms a perimeter and is positioned opposite the conductive cap section and the conductive bezel section. The conductive ground plane section is separated from the conductive bezel section by a perimeter gap. One or more components reside between the conductive cap section and the conductive ground plane section forming a resonant cavity including a ground plane resonant cavity portion between the one or more components and the conductive ground plane section and a substantially annular resonant cavity portion between the one or more components and the perimeters of the conductive bezel section and the conductive ground plane section.01-07-2016
20160006110STRUCTURAL TANK INTEGRATED INTO AN ELECTRONIC DEVICE CASE - An apparatus is provided with a conductive bezel section and a conductive ground plane section forming a perimeter and being positioned opposite the conductive bezel section. The conductive ground plane section is separated from the conductive bezel section by a perimeter gap at the perimeter. A structural tank circuit is integrated with and connecting the conductive bezel section and the conductive ground plane section across the perimeter gap. Another implementation may include a structural capacitor or a structural inductor integrated with and connecting the conductive bezel section and the conductive ground plane section across the perimeter gap.01-07-2016

Sonal Jain, Bothell, WA US

Patent application numberDescriptionPublished
20110231385OBJECT ORIENTED DATA AND METADATA BASED SEARCH - An object oriented search mechanism extracts structural metadata and data based on type of document contents and data sources connected to the documents. Relationships between textual and non-textual elements within documents as well as metadata associated with the elements and data sources are utilized to generate a unified object model with the addition of semantic information derived from metadata and taxonomy, which are used to enhance search indexing, ranking of search results, and dynamic adjustment of result rendering user interface with fine tuned relevancy. Additional data from data sources connected to the documents may also be used to unlock hidden data such as data that has been filtered out in an original document.09-22-2011
20110238653PARSING AND INDEXING DYNAMIC REPORTS - A parsing and indexing mechanism for dynamically generated reports is provided. Upon detection of a dynamically generated report, a data source for the dynamically generated report may be identified based on metadata or other information associated with the report. Crawleable or machine readable metadata and data may be generated using the data source such that data represented in the report and/or other relevant data from the data source can be indexed and searched.09-29-2011
20130106914VIRTUALIZED DATA PRESENTATION IN A CAROUSEL PANEL05-02-2013
20130159453Pre-Provisioned Web Application Platform Site Collections - A pre-provisioned application platform may be provided. First, a plurality of parameters may be received. Then a plurality of pre-provisioned tenants may be created based upon the received plurality of parameters. A request for service may be received and then an actual tenant may be assigned to one of the plurality of pre-provisioned tenants in response to the received request.06-20-2013
20130282693OBJECT ORIENTED DATA AND METADATA BASED SEARCH - An object oriented search mechanism extracts structural metadata and data based on type of document contents and data sources connected to the documents. Relationships between textual and non-textual elements within documents as well as metadata associated with the elements and data sources are utilized to generate a unified object model with the addition of semantic information derived from metadata and taxonomy, which are used to enhance search indexing, ranking of search results, and dynamic adjustment of result rendering user interface with fine tuned relevancy. Additional data from data sources connected to the documents may also be used to unlock hidden data such as data that has been filtered out in an original document.10-24-2013
20140285529VIRTUALIZED DATA PRESENTATION IN A CAROUSEL PANEL - Embodiments are directed to displaying data items in a carousel display panel and to efficiently presenting virtualized data in a carousel display panel. In one example, a computer system accesses a list of data items that include at least a first data item and a last data item which are to be displayed in a carousel display panel. The computer system displays the selected portion of data items in the carousel display panel and receives a user input indicating that the last data item in the list is to be displayed in the carousel display panel. The computer system then rotates the data items displayed in the carousel display panel to the last data item. The last data item is thus displayed, along with at least a portion of a second-to-last data item and the first data item in the list.09-25-2014

Patent applications by Sonal Jain, Bothell, WA US

Stuti Jain, Redmond, WA US

Patent application numberDescriptionPublished
20090210789TECHNIQUES TO GENERATE A VISUAL COMPOSITION FOR A MULTIMEDIA CONFERENCE EVENT - Techniques to generate a visual composition for a multimedia conference event are described. An apparatus may comprise a visual composition component operative to generate a visual composition for a multimedia conference event. The visual composition component may comprise a video decoder module operative to decode multiple media streams for a multimedia conference event, an active speaker detector module operative to detect a participant in a decoded media stream as an active speaker, a media stream manager module operative to map the decoded media stream with the active speaker to an active display frame and the other decoded media streams to non-active display frames, and a visual composition generator module operative to generate a visual composition with a participant roster having the active and non-active display frames positioned in a predetermined order. Other embodiments are described and claimed.08-20-2009
20090282103TECHNIQUES TO MANAGE MEDIA CONTENT FOR A MULTIMEDIA CONFERENCE EVENT - Techniques to manage media content for a multimedia conference event are described. An apparatus may comprise a media content manager component operative to generate a visual composition for a multimedia conference event. The media content manager component may comprise a video decoder module operative to decode multiple media streams for a multimedia conference event. The media content manager component may comprise a media stream manager module communicatively coupled to the video decoder module, the media stream manager module operative to determine a total number of decoded media streams is greater than a total number of available display frames in a visual composition. The media content manager component may comprise a media selection module communicatively coupled to the media stream manager module, the media selection module operative to select an active group of decoded media streams from among the total number of decoded media streams for mapping to the available display frames based on speech activity. Other embodiments are described and claimed.11-12-2009

Stuti Jain, Kirkland, WA US

Patent application numberDescriptionPublished
20130110925SHARING NOTES IN ONLINE MEETINGS05-02-2013

Tarun Kumar Jain, Kirkland, WA US

Patent application numberDescriptionPublished
20110196746SEARCH AUCTION INSIGHTS FOR ADVERTISERS - Systems, methods, and computer storage media having computer-executable instructions embodied thereon that provide insight to advertisers that participated in online advertiser auctions. A system receives data from one or more advertiser auctions and stores the data in a log. The log is queried for a sample of the data from the advertiser auctions. Data is extracted from the sample regarding advertisements submitted by the advertisers that participated in the advertiser auctions. Based on the data extracted from the sample, a report is generated that summarizes statistics and feedback regarding the advertisements that participated in the advertiser auctions. The report is displayed to a user. In embodiments, the report is automatically generated and displayed to the advertisers that participated in the advertiser auctions.08-11-2011

Tushar Jain, Bellevue, WA US

Patent application numberDescriptionPublished
20150235191USING CONFIGURED APPLICATION INFORMATION TO CONTROL USE OF INVOCABLE SERVICES - Techniques are described for facilitating use of invocable services by applications in a configurable manner. In at least some situations, the invocable services are Web services or other network-accessible services that are made available by providers of the services for use by others in exchange for fees defined by the service providers. The described techniques facilitate use of such invocable services by applications in a manner configured by the application providers and the service providers, including to track use of third-party invocable services by applications on behalf of end users and to allocate fees that are charged end users between the applications and the services as configured by the providers of the applications and services. In some situations, the configured pricing terms for a service specify fees for end users that differ in one or more ways from the defined fees charged by the provider of that service.08-20-2015

Utkarsh Jain, Bellevue, WA US

Patent application numberDescriptionPublished
20120016864HIERARCHICAL MERGING FOR OPTIMIZED INDEX - Methods, systems, and media are provided for an optimized search engine index. The optimized index is formed by merging small lower level indexes of fresh documents together into a hierarchical cluster of multiple higher level indexes. The optimized index of fresh documents is formed via a single threaded process, while a fresh index serving platform concurrently serves fresh queries. The hierarchy of higher level indexes is formed by merging lower and/or higher level indexes with similar expiration times together. Therefore, as some indexes expire, the remaining un-expired indexes can be re-used and merged with new incoming indexes. The single threaded process provides fast serving of fresh documents, while also providing time to integrate the fresh indexes into a long term primary search engine index, prior to expiring.01-19-2012
20120257246RECEIVING INDIVIDUAL DOCUMENTS TO SERVE - Methods and systems for quickly serving documents are provided. Documents may be served to users, for example, in response to search query inputs. Documents may be individually communicated to a document server prior to batching the documents. By individually communicating documents to document servers, the document experiences sub-second latency before it is available to a user. The documents may also be modified individually such that real-time serving is not interrupted.10-11-2012
20120260124RECOVERY OF A DOCUMENT SERVING ENVIRONMENT - Methods and systems for quickly serving documents are provided. Documents may be served to users, for example, in response to search query inputs. Documents may be individually communicated to a document server individually prior to batching the documents. In such a real-time serving system, serving components may fail. To ensure real-time serving despite the failure, spares are utilized to replace the failing serving components such that the spare can immediately begin receiving documents. The spare can also be synchronized with other serving components to obtain the memory of the failing serving component prior to the failure.10-11-2012
20140181122GENERATING AND USING A CUSTOMIZED INDEX - In various embodiments, systems and methods are provided for generating and using a customized index. In embodiments, an index structure is constructed to efficiently utilize machines containing index portions. In this regard, the index structure for a particular application is customizable such that a number of virtual index units for a particular index type and/or a number of machines associated with the virtual index units for the particular index type can be optimized for machine and/or system performance and efficiency. Utilizing the constructed index structure, documents can be distributed to various index units, virtual index units, and/or machines in real-time or near real-time. Further, the customized index structure can be used to efficiently serve search results in response to search queries.06-26-2014

Utkarsh Jain, Redmond, WA US

Patent application numberDescriptionPublished
20090210389SYSTEM TO SUPPORT STRUCTURED SEARCH OVER METADATA ON A WEB INDEX - Systems, methods, and computer storage media for performing a structured search using metadata in a search index. A search index is augmented with meta words that are traditionally not found in the documents indexed. Documents to be indexed in the search index are analyzed to determine if a meta word that has a logical relationship to the document should be associated and then stored in the index along with metadata. In some embodiments the metadata is attribute metadata and document identification metadata. Query operators are then provided to aid in performing a structured search of the search index. In some embodiments s structured search request is received and parsed into nodes which is then utilized to search a search index. In some embodiments, the results of the search index are merged, duplicates removed, and sorted when presented.08-20-2009

Vaibhav Jain, Bellevue, WA US

Patent application numberDescriptionPublished
20140280339INTEGRATING OFFERS - Methods, computer systems, and computer-storage media are provided for generating offers. Offers may be generated upon being associated with one or more of a keyword, a search query input, a search query history for a user, a current trend, a social trend (either user-specific or not user-specific social trends), a user location, and the like. Upon determining the association between one or more offers and at least one of the above-listed factors, the one or more relevant offers may be displayed in a variety of ways including, but not limited to, in conjunction with search results, on an offers portal dedicated to presentation of offers, in a mapping application of a mobile device, and the like.09-18-2014

Vikas Jain, Bellevue, WA US

Patent application numberDescriptionPublished
20140343946Storing State Information From Network-Based User Devices - Network-based services may be provided to a user through the user of a speech-based user device located within a user environment. The speech-based user device may accept speech commands from a user and may also interact with the user by means of generated speech. Operating state of the speech-based user device may be provided to the network-based service and stored by the service. Applications that provide services through the speech-based interface may request and obtain the stored state information.11-20-2014
20160042748VOICE APPLICATION ARCHITECTURE - A voice-based system may comprise a local speech interface device and a remote control service. A user may interact with the system using speech to obtain services and perform functions. The system may allow a user to install applications to provide enhanced or customized functionality. Such applications may be installed on either the speech interface device or the control service. The control service receives user speech and determines user intent based on the speech. If an application installed on the control service can respond to the intent, that application is called. Otherwise, the intent is provided to the speech interface device which responds by invoking one of its applications to respond to the intent.02-11-2016
Website © 2016 Advameg, Inc.