Amazon Patent Applications

FPGA-ENABLED COMPUTE INSTANCES

Granted: January 17, 2019
Application Number: 20190020538
A resource manager of a virtualized computing service indicates to a client that FPGA-enabled compute instances are supported at the service. From a set of virtualization hosts of the service, a particular host from which an FPGA is accessible is selected for the client based on an indication of computation objectives of the client. Configuration operations are performed to prepare the host for the application, and an FPGA-enabled compute instance is launched at the host for the client.

STORAGE DEVICE AUTHENTICATION

Granted: January 10, 2019
Application Number: 20190012272
Systems and methods authenticate storage devices. In one implementation, a computer-implemented method is provided for authenticating a storage device. According to the method, a manifest that identifies a destination is receive. A transfer station reads a digital signature from the storage device. The digital signature is validated and, based on the validation of the digital signature, a transfer of one or more files from the storage device via the transfer station is authorized to the…

ON-DEMAND CUSTOMIZATION OF PRODUCTS

Granted: January 3, 2019
Application Number: 20190005560
Methods and apparatus for on-demand customization of products. A product distributor may provide a product customization service and user interface to its customers that may be used to enhance, extend, customize, or combine stock physical products offered by the product distributor by providing custom add-on physical items for or customizations to the stock products. The product distributor may leverage on-demand production technologies such as additive manufacturing technologies to…

VIRTUAL PRIVATE NETWORK SERVICE ENDPOINTS

Granted: January 3, 2019
Application Number: 20190007366
A customer may request a service endpoint for a service in their virtual network on a provider network. In response, a service endpoint is generated in the customer's virtual network, a local IP address in the IP address range of the customer's virtual network is assigned to the service endpoint, and a DNS name is assigned to the service endpoint. Resources on the customer's virtual network resolve the DNS name of the service endpoint to obtain the local IP address of the service…

PROVISIONING MULTIPLE NETWORK RESOURCES

Granted: January 3, 2019
Application Number: 20190007526
A resource provisioning service allows users to provision multiple, different network resources in an atomic manner and with a single call to a resource provisioning service. In some instances, the multiple, different network resources comprise individual types of resources that form a portion of one or more cloud-computing platforms. For instance, one or more entities may host and operate a cloud-computing platform that includes different types of network resources, such a storage…

TRANSPORTATION ADJUSTMENTS BASED ON RECOMMENDED SHIPPING PACKAGES

Granted: December 27, 2018
Application Number: 20180374031
Transportation plan adjustments based on recommended shipping packages may utilize a shipment data model for a facility that is updated with cubic volumes of recommended packages for received orders. The shipment data model may also be updated with the cubic volumes of the packages that are actually used to pack the orders and transportation utilization data such as assignment of packages to particular transportation resources. A transportation plan may be updated based on the updated…

DECOMPRESSION USING CASCADED HISTORY WINDOWS

Granted: December 27, 2018
Application Number: 20180375528
The following description is directed to decompression using cascaded history buffers. In one example, an apparatus can include a decompression pipeline configured to decompress compressed data comprising code words that reference a history of decompressed data generated from the compressed data. The apparatus can include a first-level history buffer configured to store a more recent history of the decompressed data received from the decompression pipeline. The apparatus can include a…

SECURE MODELS FOR IOT DEVICES

Granted: December 27, 2018
Application Number: 20180375638
A hub device of a network receives a data model that includes a secure portion that is encrypted and one or more unsecure portions. The hub device deploys the one or more unsecure portions of the data model to respective edge devices of the network. The hub device decrypts the secure portion of the data model. The edge devices collect data (e.g., from sensors) and process the data using the unsecure portions of the data model. The edge devices send the processed data to the hub device.…

MODEL AND FILTER DEPLOYMENT ACROSS IOT NETWORKS

Granted: December 27, 2018
Application Number: 20180375736
A deployment service at a remote provider network receives topology data for a local network and generates data filters for edge devices of the local network based on the topology data. The deployment service then sends the data filters to a hub device connected to the local network. The hub device deploys the data filters to respective edge devices of the local network. The data filters may be configured to discard a sufficient portion of collected data to prevent routers from being…

NETWORK TRAFFIC TRACKING USING ENCAPSULATION PROTOCOL

Granted: December 27, 2018
Application Number: 20180375748
A first encapsulation protocol processing component (EPPC) at a particular device of a virtualized computing service establishes a network packet tracking session with a second EPPC at another device. The first EPPC tags at least some encapsulation packets (which contain baseline packets generated at or directed to guest virtual machines) sent to the second EPPC as tracked packets. The first EPPC obtains network metrics corresponding to the tracked packets of the session from the second…

INTERFACES TO MANAGE DIRECT NETWORK PEERINGS

Granted: December 27, 2018
Application Number: 20180375837
Methods and apparatus for interfaces to manage direct network peerings. A system may include a data center, endpoint routers and a connectivity coordinator. The coordinator implements a programmatic interface defining connectivity operations. The coordinator receives a request for dedicated connectivity to data center resources, formatted according to the interface. The coordinator selects a target endpoint router at which to establish a physical link to implement the dedicated…

DISTRIBUTED LOAD BALANCER

Granted: December 27, 2018
Application Number: 20180375928
A distributed load balancer in which a router receives packets from at least one client and routes packet flows to multiple load balancer (LB) nodes according to a per-flow hashed multipath routing technique. For a given packet flow, the LB nodes randomly select a server node as a target for the packet flow from among multiple server nodes and send a connection request to the server node. A load balancer module on the server node makes the decision on whether to accept or reject the…

GENERATING ADAPTIVE MODELS FOR IOT NETWORKS

Granted: December 27, 2018
Application Number: 20180376416
A hub device of a network receives topology data for the network that indicates changes in a topology or performance of the network. The hub device determines modifications to processing functions for edge devices of the network based on the topology data. The hub device deploys the modifications to respective edge devices of the network. An edge device may collect data and use a processing function to perform operations on the data, generate processed data, and send the processed data…

CENTRALIZED NETWORKING CONFIGURATION IN DISTRIBUTED SYSTEMS

Granted: December 20, 2018
Application Number: 20180365040
Methods and apparatus for centralized networking configuration in distributed systems are disclosed. Networking related metrics from a plurality of sources within a distributed system are obtained at a networking configuration server. A set of rules to be used to apply a network configuration option to a particular category of traffic associated with a node of the distributed system is determined based on the collected metrics and on networking management policies. A representation of…

EXPORTING DIALOG-DRIVEN APPLICATIONS TO DIGITAL COMMUNICATION PLATFORMS

Granted: December 20, 2018
Application Number: 20180366114
Methods, systems, and computer-readable media for exporting dialog-driven applications to digital communication platforms are disclosed. A launch condition is received from a user. The launch condition is caused to be registered with one or more digital communication platforms. Detection of the launch condition is to cause a natural language input to be routed from at least one of the digital communication platforms to an application management service.

PROGRAMMABLE TUNNEL CREATION FOR HARDWARE-BASED PACKET PROCESSING

Granted: December 20, 2018
Application Number: 20180367338
A packet processor may implement programmable tunnel creation. A network packet may be received at a packet processor. A tunneling protocol may be identified for the network packet. The packet processor may access one or more memories to obtain tunnel header data that includes a tunnel header and field identifiers which indicate respective fields in the tunnel header that are determined based on data in the network packet. The tunnel header data may have been stored in the one or more…

CAMERA SYSTEMS ADAPTED FOR INSTALLATION IN A VEHICLE

Granted: December 20, 2018
Application Number: 20180367731
A camera system for vehicles captures panoramic video, has a unique identifier, and has an image processor that compresses the video and detects events. It transmits compressed video with one or more of a timestamp, a unique identifier, a location, and event flags through a network (e.g., cellular) to a server. A GPS device (or the like) may be adapted to determine location. Particular embodiments process the video to detect events, and, upon detecting these events, transmit video at a…

CACHED VOLUMES AT STORAGE GATEWAYS

Granted: December 13, 2018
Application Number: 20180357167
Methods and apparatus for supporting cached volumes at storage gateways are disclosed. A storage gateway appliance is configured to cache at least a portion of a storage object of a remote storage service at local storage devices. In response to a client's write request, directed to at least a portion of a data chunk of the storage object, the appliance stores a data modification indicated in the write request at a storage device, and asynchronously uploads the modification to the…

PAGE CACHE WRITE LOGGING AT BLOCK-BASED STORAGE

Granted: December 13, 2018
Application Number: 20180357173
A block-based storage system may implement page cache write logging. Write requests for a data volume maintained at a storage node may be received at a storage node. A page cache for may be updated in accordance with the request. A log record describing the page cache update may be stored in a page cache write log maintained in a persistent storage device. Once the write request is performed in the page cache and recorded in a log record in the page cache write log, the write request may…

OBJECT LOSS REPORTING IN A DATA STORAGE SYSTEM

Granted: December 13, 2018
Application Number: 20180357271
In response to receiving a request from a client to store an object, a key-durable storage system may assign the object to a volume in its data store, generate a key for the object (e.g., an opaque identifier that encodes information for locating the object in the data store), store the object on one disk in the assigned volume, store the key redundantly in the assigned volume (e.g., using a replication or erasure coding technique), and may return the key to the client. To retrieve the…