Patent application number | Description | Published |
20100027588 | Content Transfer - Content transfer between nodes in a communications network is required in many situations. For example, between fixed nodes in a data center, between a fixed node such as a base station and a mobile node such as a mobile telephone and between mobile nodes themselves such as personal digital assistants. In an embodiment a content transfer process for use between nodes where one node knows the size of content to be transferred is described. For example, a file is divided into blocks to be sent between the nodes. A node receiving a block keeps a record of the received blocks and sends that record to the sending node at certain times. By controlling the times at which the records are sent the number of messages that need to be sent to transfer the records is low and the blocks are transferred in an efficient manner. | 02-04-2010 |
20120072478 | Content Discovery and Transfer Between Mobile Communications Nodes - Content discovery and content transfer between mobile communications nodes is often required, for example, to synchronize maps, traffic hot spot information and the like for vehicle mounted satellite navigation devices, pedestrian hand-held personal digital assistants and other mobile communications nodes. In an embodiment, content discovery processes using a tree-based data structure for transferring data between two mobile communication nodes is described. | 03-22-2012 |
20120158858 | Resource Optimization for Online Services - Resource optimization for online services is described. In one example, objects (such as mailboxes or other data associated with an online service) are assigned to network elements (such as servers) by inferring a relationship graph from log data relating to usage of the online service. The graph has a node for each object, and connections between each pair of objects having data items in common. Each connection has a weight relating to the number of common data items. The graph is partitioned into a set of clusters, such that each cluster has nodes joined by connections with a high weight relative to the weight of connections between nodes in different clusters. The objects are then distributed to the network elements such that objects corresponding to nodes in the same cluster are located on the same network element. | 06-21-2012 |
Patent application number | Description | Published |
20100030840 | Content Discovery and Transfer Between Mobile Communications Nodes - Content discovery and content transfer between mobile communications nodes is often required, for example, to synchronize maps, traffic hot spot information and the like for vehicle mounted satellite navigation devices, pedestrian hand-held personal digital assistants and other mobile communications nodes. In an embodiment, content discovery processes using data structures designed in particular ways and sent using a single packet enable nodes to identify files to be transferred whilst keeping overheads down. In an embodiment a first and a second data structure are used, each being formed from slightly different information about a subset of the files to be synchronized. In another embodiment a single tree-based data structure is used. A process for transferring data between two mobile communications nodes is also described. | 02-04-2010 |
20120151292 | Supporting Distributed Key-Based Processes - Supporting distributed key-based processes is described. In an embodiment, servers at a data center provide a key-based process for carrying out computationally expensive tasks and are connected using point to point connections in a geometric topology such as a torus. In an example, aggregation trees are built on top of the geometric topology of the data center, each aggregation tree being a sequence of servers in the data center that forms a tree structure. In an embodiment packets of data are sent from the leaves of the trees to the root and at each server along the tree the packets are aggregated using a combiner function of the key-based process. In an embodiment, if a server fails, the trees are dynamically recomputed and a recovery phase is triggered to resend any packets lost at the failed server. In some embodiments, packets are scheduled by inspecting the content of the packets. | 06-14-2012 |
20120155265 | Deadline-Aware Network Protocol - A deadline-aware network protocol is described. In an example, data transfer at a transport layer entity of a packet-based communication network is controlled by receiving a request for network resources for a data flow from a network element and allocating network resources to the data flow. The data flow comprises a number of data packets associated with an application, and the request comprises a factor relating to a time deadline associated with the application. The network resources allocated depend on the factor relating to the time deadline. In examples, the network resource can be a bandwidth or data rate allocated to the data flow, and the factor can be a data rate sufficient to complete the data flow within the time deadline. In examples, the network resources are allocated greedily, such that requests are fully satisfied whenever possible, and the network resources are fully utilized. | 06-21-2012 |
20120158998 | API Supporting Server and Key Based Networking - An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links. | 06-21-2012 |
20130014101 | Offering Network Performance Guarantees in Multi-Tenant Datacenters - Methods of offering network performance guarantees in multi-tenant datacenters are described. In an embodiment, a request for resources received at a datacenter from a tenant comprises a number of virtual machines and a performance requirement, such as a bandwidth requirement, specified by the tenant. A network manager within the datacenter maps the request onto the datacenter topology and allocates virtual machines within the datacenter based on the available slots for virtual machines within the topology and such that the performance requirement is satisfied. Following allocation, stored residual capacity values for elements within the topology are updated according to the new allocation and this updated stored data is used in mapping subsequent requests onto the datacenter. The allocated virtual machines form part of a virtual network within the datacenter which is allocated in response to the request and two virtual network abstractions are described: virtual clusters and virtual oversubscribed clusters. | 01-10-2013 |
20130152088 | Generating Filters Automatically From Data Processing Jobs - Methods of generating filters automatically from data processing jobs are described. In an embodiment, these filters are automatically generated from a compiled version of the data processing job using static analysis which is applied to a high-level representation of the job. The executable filter is arranged to suppress rows and/or columns within the data to which the job is applied and which do not affect the output of the job. The filters are generated by a filter generator and then stored and applied dynamically at a filtering proxy that may be co-located with the storage node that holds the data. In another embodiment, the filtered data may be cached close to a compute node which runs the job and data may be provided to the compute node from the local cache rather than from the filtering proxy. | 06-13-2013 |
20130219068 | PREDICTING DATACENTER PERFORMANCE TO IMPROVE PROVISIONING - Methods of predicting datacenter performance to improve provisioning are described. In an embodiment, a resource manager element receives a request from a tenant which describes an application that the tenant wants executed by a multi-resource, multi-tenant datacenter. The request that has been received is mapped to a set of different candidate resource combinations within the datacenter, where each candidate resource combination can be used to execute the application in a manner which satisfies a high level constraint specified within the request. This mapping may, for example, be performed using a combination of benchmarking and an analytical model. In some examples, each resource combination may comprise a number of virtual machines and a bandwidth between those machines. Data relating to at least a subset (and in some examples, two or more) of the candidate resource combinations is then presented to the tenant. | 08-22-2013 |
20140157274 | OFFERING NETWORK PERFORMANCE GUARANTEES IN MULTI-TENANT DATACENTERS - Methods of offering network performance guarantees in multi-tenant datacenters are described. In an embodiment, a request for resources received at a datacenter from a tenant comprises a number of virtual machines and a performance requirement, such as a bandwidth requirement, specified by the tenant. A network manager within the datacenter maps the request onto the datacenter topology and allocates virtual machines within the datacenter based on the available slots for virtual machines within the topology and such that the performance requirement is satisfied. Following allocation, stored residual capacity values for elements within the topology are updated according to the new allocation and this updated stored data is used in mapping subsequent requests onto the datacenter. The allocated virtual machines form part of a virtual network within the datacenter which is allocated in response to the request and two virtual network abstractions are described: virtual clusters and virtual oversubscribed clusters. | 06-05-2014 |
Patent application number | Description | Published |
20090088089 | CONTROL CHANNEL NEGOTIATED INTERMITTENT WIRELESS COMMUNICATION - A dual mode communication device utilizes a control channel to exploit diversity, history, and context in advance of establishing a broadband data exchange session on a broadband but shorter range wireless data channel, maximizing productive use of such a session. Appropriate diversity for the negotiated session further enhance data transfer, including path diversity, radio technology diversity (e.g., WiMax, Wi-Fi, ultra wideband, Bluetooth), antenna diversity (e.g., MIMO), modulation diversity (e.g., rate selection for 802.11, or symbol length selection to combat multi-path fading), and frequency diversity (e.g., 2.4 GHz versus 5 GHz). Historical information about channel characteristics optimize the selection of channel parameters with respect to the diversity choices. In addition, context information such as location and speed can be used to categorize the historical information that is collected to further optimize channel parameters. | 04-02-2009 |
20140330937 | END-TO-END CLASSIFICATION OF STORAGE TRAFFIC STREAMS - Methods of classifying a storage traffic stream in a shared storage network are described. In an embodiment, an identifier for the entity generating the stream is generated, where this entity may, for example, indicate a virtual machine, program, session, physical machine, user or process. The identifier is then shared with at least one processing layer along a path of the storage traffic stream between the generating entity and the storage device which stores the file to which the traffic stream relates. In various embodiments, the identifier may then be used by any processing layers which receive it, to selectively handle traffic streams based on the generating entity. The identifier may be shared when the traffic stream is created or subsequently and in various embodiments, the identifier is shared in a second exchange of messages, following the creation of the traffic stream and prior to any other traffic. | 11-06-2014 |
20150032286 | LOW COST STORAGE FOR RARELY READ DATA - Low cost storage for write once read rarely data is described. In an embodiment a storage device comprises a plurality of hard disk drives connected to a server via an interconnect fabric. The storage device comprises a cooling system which is only capable of cooling a first subset of the hard disk drives and a power supply system which is only capable of powering a second subset of the hard disk drives and in some examples, the interconnect fabric may be only capable of providing full bandwidth for a third subset of the hard disk drives. Each subset may comprise only a small fraction of hard disk drives. A control mechanism, which may be implemented in software, is provided which controls which hard disk drives are active at any time in order that the constraints set by the cooling and power supply systems and interconnect fabric are not violated. | 01-29-2015 |
20150081948 | CONTROLLING DATA STORAGE INPUT/OUTPUT REQUESTS - Controlling data storage input/output requests is described, for example, to apply a policy to an end-to-end flow of data input/output requests between at least one computing entity and at least one store. In various examples a plurality of queues are configured at one or more stages of the end-to-end flow and controlled to adhere to a policy. In examples, each stage has a control interface enabling it to receive and execute control instructions from a controller which may be centralized or distributed. For example, the control instructions comprise queuing rules and/or queue configurations. In various examples queues and queuing rules are dynamically created and revised according to feedback about any of: flow behavior, changes in policy, changes in infrastructure or other factors. In examples, high level identifiers of the flow endpoints are resolved, on a per stage basis, to low level identifiers suitable for use by the stage. | 03-19-2015 |