Patents Assigned to Robin Systems, Inc.
  • Patent number: 10534549
    Abstract: A system maintains a consistency database that maintains a status (current, down, stale) for copies of logical storage volumes stored on storage nodes. As failures are detected, the consistency database is updated. Copies are synchronized with one another using information in the consistency database. Write operations on a primary node for a slice of a logical storage node are assigned a virtual block address (VBA) that is mapped to a logical block address (LBA) within the slice. Consistency of the VBAs of the primary node and that of a secondary node is evaluated and used to detect currency. VBA holes are detected and corresponding write commands resent to maintain currency. Physical segments on the primary node are assigned virtual segment identifiers (VSID) that are maintained consistent with VSIDs on clone nodes so that they can be used for garbage collection and synchronization.
    Type: Grant
    Filed: September 19, 2017
    Date of Patent: January 14, 2020
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Gurmeet Singh, Ripulkumar Hemantbhai Patel, Partha Sarathi Seetala
  • Patent number: 10510192
    Abstract: A system provides systems and methods for visualizing a computational process. A portion of attributes of a computational process may be displayed on a face of a three-dimensional object. In response to rotation of the object by a user, a different face of the object may be displayed and a different portion of the attributes displayed thereon. Each object may represent a status of a computational cluster, specifically a set of jobs executing on the cluster. A cluster may be selected and the jobs represented by means of graphical indicators arranges on a time axis and a performance axis. The size of a graphical indicator may indicate an amount of processing time consume by the corresponding job. A color of the graphical indicator may indicate a status. A portion of the graphical indicator may be visually distinguished from a remaining portion to indicate a completion percentage of the job.
    Type: Grant
    Filed: April 4, 2016
    Date of Patent: December 17, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Robert S. Cancilla, Krishna Satyasai Yeddanapudi
  • Patent number: 10452267
    Abstract: A storage scheme allocates portions of a logical volume to storage nodes in excess of the capacity of the storage nodes. Slices of the storage nodes and segments of slices are allocated in response to write requests such that actual allocation on the storage nodes is only in response to usage. Segments are identified with virtual segment identifiers that are retained when segments are moved to a different storage node. Logical volumes may therefore be moved seamlessly to different storage nodes to ensure sufficient storage capacity. Data is written to new locations in segments having space and a block map tracks the last segment to which data for a given address is written. Garbage collection is performed to free segments that contain invalid data, i.e. data for addresses that have been subsequently written to.
    Type: Grant
    Filed: September 13, 2017
    Date of Patent: October 22, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Gurmeet Singh, Dhanashankar Venkatesan, Partha Sarathi Seetala
  • Patent number: 10452308
    Abstract: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Once pending write requests from the computing nodes are completed, storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. The snapshots may be represented by a storage manager in a hierarchy. Deleted snapshots may be flagged as such in the hierarchy and deletion may be implemented only in memory on a storage node, which is then restored from the hierarchy in the event of a crash. A snapshot is removed from the hierarchy when all segments previously are freed by garbage collection. A hybrid storage node may perform both computing and storage services. Data may be written with tags indicating encoding protocols used to encode the data.
    Type: Grant
    Filed: December 19, 2017
    Date of Patent: October 22, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Dhanashankar Venkatesan, Jagadish K. Mukku, Ripulkumar Hemantbhai Patel
  • Patent number: 10430110
    Abstract: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Once pending write requests from the computing nodes are completed, storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. The snapshots may be represented by a storage manager in a hierarchy. Deleted snapshots may be flagged as such in the hierarchy and deletion may be implemented only in memory on a storage node, which is then restored from the hierarchy in the event of a crash. A hybrid storage node may perform both computing and storage services. An IO module determines whether IOPs reference a locally-mounted storage device or a remote storage device. The IO module issues a library call for local IOPs using a shared memory in kernel space.
    Type: Grant
    Filed: December 19, 2017
    Date of Patent: October 1, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Jagadish K. Mukku, Dhanashankar Venkatesan, Ripulkumar Hemantbhai Patel
  • Patent number: 10430105
    Abstract: A storage scheme allocates portions of a logical volume to storage nodes in excess of the capacity of the storage nodes. Slices of the storage nodes and segments of slices are allocated in response to write requests such that actual allocation on the storage nodes is only in response to usage. Segments are identified with virtual segment identifiers that are retained when segments are moved to a different storage node. Logical volumes may therefore be moved seamlessly to different storage nodes to ensure sufficient storage capacity. Data is written to new locations in segments having space and a block map tracks the last segment to which data for a given address is written. Garbage collection is performed to free segments that contain invalid data, i.e. data for addresses that have been subsequently written to.
    Type: Grant
    Filed: September 13, 2017
    Date of Patent: October 1, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Dhanashankar Venkatesan, Partha Sarathi Seetala
  • Patent number: 10430292
    Abstract: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Once pending write requests from the computing nodes are completed, storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. The snapshots may be represented by a storage manager in a hierarchy. Deleted snapshots may be flagged as such in the hierarchy and deletion may be implemented only in memory on a storage node, which is then restored from the hierarchy in the event of a crash. A snapshot is removed from the hierarchy when all segments previously are freed by garbage collection. A hybrid storage node may perform both computing and storage services. Data may be written with tags indicating encoding protocols used to encode the data.
    Type: Grant
    Filed: December 19, 2017
    Date of Patent: October 1, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Jagadish K. Mukku, Dhanashankar Venkatesan, Ripulkumar Hemantbhai Patel
  • Patent number: 10423344
    Abstract: A system maintains a consistency database that maintains a status (current, down, stale) for copies of logical storage volumes stored on storage nodes. As failures are detected, the consistency database is updated. Copies are synchronized with one another using information in the consistency database. Write operations on a primary node for a slice of a logical storage node are assigned a virtual block address (VBA) that is mapped to a logical block address (LBA) within the slice. Consistency of the VBAs of the primary node and that of a secondary node is evaluated and used to detect currency. VBA holes are detected and corresponding write commands resent to maintain currency. Physical segments on the primary node are assigned virtual segment identifiers (VSID) that are maintained consistent with VSIDs on clone nodes so that they can be used for garbage collection and synchronization.
    Type: Grant
    Filed: September 19, 2017
    Date of Patent: September 24, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Gurmeet Singh, Ripulkumar Hemantbhai Patel, Partha Sarathi Seetala
  • Patent number: 10257088
    Abstract: Creation of a virtual overlay for a multipath network with tiered topology is disclosed. A virtual-node module may group network nodes connected within a common tier, which is initially the tier furthest from the core. This module may also group network nodes at a consecutive tier, closer to the core, that connect a pairs of groupings in the common tier by links between the common and consecutive tiers. Groupings with a common network node may be combined and designated as virtual nodes. A virtual-link module may sum bandwidths for network links between virtual-node pairs with nodes in both the common and consecutive tiers. A check module may combine virtual nodes and links and network nodes and links not yet virtualized in a graph, which it may check for a cycle. An iteration module may iterate both tiers toward the core, triggering further grouping, summing, and updating until no loop exists.
    Type: Grant
    Filed: April 14, 2016
    Date of Patent: April 9, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventor: Rafit Izhak-Ratzin
  • Patent number: 10237148
    Abstract: Systems and methods are disclosed for aggregating data capable of diagnosing unique datacenter issues. Traffic statistic collection may be moved from intermediate, datacenter nodes to end hosts providing reports for aggregation and correlation with events at an analytic controller, uncovering implications for such events. To track metrics and/or diagnose datacenter issues not addressed in traffic statistics, information locally available to the end hosts may be combined and/or correlated with traffic statistics. Examples may involve information about: virtual and physical computing resources; a sub-cluster; an application and/or process utilized by a datacenter task; a task/job type; an implementation phase; an initiating user; a task priority; link utilization and/or other traffic statistics relative to the foregoing.
    Type: Grant
    Filed: October 19, 2015
    Date of Patent: March 19, 2019
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Rafit Izhak-Ratzin, Shravan Kumar Vallala, Alon Pelled, Krishna Satyasai Yeddanapudi
  • Patent number: 9882832
    Abstract: Systems and methods are disclosed for traffic engineering and traffic flow control in a datacenter. Flow agents may be provided at hosts that may be operable to control a rate at which a traffic flow is sent from one point to another within a datacenter to facilitate differing levels of Quality of Service (QoS). The differing levels of QoS may be implemented by differing sizes of bandwidth allocations assigned remotely by a traffic engineering controller. The traffic engineering controller may distribute the differing allocations of bandwidth to the flow agents corresponding to the traffic flows to keep the traffic flow rates within the bandwidth allocation. An augmenting function may also be applied at the traffic engineering controller to maximize bandwidth utilization by checking for unutilized bandwidth and reallocating such bandwidth in accordance with one or more QoS.
    Type: Grant
    Filed: August 7, 2014
    Date of Patent: January 30, 2018
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Rafit Izhak-Ratzin, Krishna Satyasai Yeddanapudi, Haim Helman
  • Patent number: 9753942
    Abstract: Systems and methods are disclosed for generating traffic statistics for a datacenter. Distributed, parallel processing may be used to generate traffic statistics from data sets about traffic in a datacenter. To reduce data sets from which such statistics are derived to manageable sizes and relevant processing times for distributed, parallel processing, traffic agents may be provided at end hosts in the datacenter. The traffic agents may summarize data traffic over large numbers of packets in terms of the various sockets over which they are transmitted. Reports on the various sockets may be sent by the various flow agents that monitor them to an analytic controller. The analytic controller may aggregate, provide flow-path information for, further reduce, and/or provision the resultant data for distributed parallel processing.
    Type: Grant
    Filed: August 7, 2014
    Date of Patent: September 5, 2017
    Assignee: Robin Systems, Inc.
    Inventors: Rafit Izhak-Ratzin, Krishna Satyasai Yeddanapudi, Haim Helman
  • Patent number: 9455914
    Abstract: Systems and methods are disclosed for interacting with a file system. The file system is operable to reside in user space of a computing system. A module, also within user space, may provide a messaging service supporting requests from an application to the file system. By bypassing a System-Call Interface (SCI) of the computing system's kernel space, the module may support requests from the application to the file system with enhanced efficiency and/or customizable features not provided by the SCI. In some examples, the module may include a library in an independent layer within user space and below the application, allowing the library to provide an application-independent messaging service for different applications. Furthermore, in some examples, the module may include a segment of memory, within user space, shared between the application and the file system for passing data involved in requests and/or responses to and/or from the file system.
    Type: Grant
    Filed: May 12, 2014
    Date of Patent: September 27, 2016
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Gurmeet Singh, Krishna Satyasai Yeddanapudi, Dhanashankar Venkatesan
  • Patent number: 9426072
    Abstract: Systems and methods are disclosed for classifying traffic flows. A traffic agent operable to collect classification information for one or more traffic flows may be deployed at an end host communicatively coupled to a data-center network. The traffic agent, deployed in a user space independent of the operating system, may compare the classification information for a given traffic flow to a metric value. Where the classification information achieves a certain threshold indicated by the metric value, the traffic agent may classify the traffic flow as an elephant flow. In some examples, a library may be included with the traffic agent that may include a modified send function. The modified send function may provide classification information to the traffic agent indexed to the traffic flow for which it is called so that the traffic agent may analyze the classification information to potentially provide a classification for the traffic flow.
    Type: Grant
    Filed: March 21, 2014
    Date of Patent: August 23, 2016
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Rafit Izhak Ratzin, Krishna Satyasai Yeddanapudi, Dhanashankar Venkatesan
  • Patent number: 9331943
    Abstract: Systems and methods are disclosed for scheduling jobs processed in a distributed fashion to realize unharnessed efficiencies latent in the characteristics of the jobs and distributed processing technologies. A job store may be communicatively coupled to a job analyzer. The job analyzer may be operable to read information characterizing a job to identify multiple data blocks to be processed during the job at multiple locations in a cluster of nodes. A scheduling module may use information about the multiple data blocks, their storage locations, their status with respect to being provisioned to processing logic, data blocks to be processed by other jobs, data blocks in cache that have been pre-fetched for a prior job, quality-of-services parameters, and/or job characteristics, such as job size, to schedule the job in relation to other jobs.
    Type: Grant
    Filed: February 6, 2014
    Date of Patent: May 3, 2016
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Krishna Satyasai Yeddanapudi, Christopher Alan Mildebrandt, Rao V. Madduri
  • Patent number: 9313133
    Abstract: Systems and methods are disclosed for reducing latency in processing data sets in a distributed fashion. A job-queue operable for queuing data-processing jobs run on multiple nodes in a cluster may be communicatively coupled to a job analyzer. The job analyzer may be operable to read the data-processing jobs and extract information characterizing those jobs in ways that facilitate identification of resources in the cluster serviceable to run the data-processing jobs and/or data to be processed during the running of those jobs. The job analyzer may also be coupled to a resource warmer operable to warm-up a portion of the cluster to be used to run a particular data-processing job prior to the running of the job. In some embodiments, mappers and/or reducers may be extracted from the jobs and converted into compute node identifiers and/or data units identifying blocks for processing, informing the warm-up operations of the resource warmer.
    Type: Grant
    Filed: February 6, 2014
    Date of Patent: April 12, 2016
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Krishna Satyasai Yeddanapudi, Christopher Alan Mildebrandt, Rao V. Madduri
  • Patent number: 9270605
    Abstract: In one exemplary aspect, a method of managing computer network traffic flow quality of service includes the step of configuring a configurable network device to provide a specified quality of service to a data packet with a specified quality of service configuration based on a quality of service classification port number in a data packet header of the data packet. At the source node, a data packet is generated. At the source node, replacing the destination port number in the data packet header with a quality of service classification port number. At the source node, the destination port number is included in an options field of the data packet's header. The data packet is communicated to the configurable network device. At the destination node, receiving the data packet, replacing the quality of service classification port number with the original destination port number, and forwarding the packet to a destination process.
    Type: Grant
    Filed: May 28, 2014
    Date of Patent: February 23, 2016
    Assignee: ROBIN SYSTEMS, INC.
    Inventors: Rafit Izhak-Ratzin, Krishna Satyasai Yeddanapudi, Shravan Kumar Vallala
  • Publication number: 20150074671
    Abstract: Systems and methods are disclosed for reducing latency in processing data sets in a distributed fashion. A job-queue operable for queuing data-processing jobs run on multiple nodes in a cluster may be communicatively coupled to a job analyzer. The job analyzer may be operable to read the data-processing jobs and extract information characterizing those jobs in ways that facilitate identification of resources in the cluster serviceable to run the data-processing jobs and/or data to be processed during the running of those jobs. The job analyzer may also be coupled to a resource warmer operable to warm-up a portion of the cluster to be used to run a particular data-processing job prior to the running of the job. In some embodiments, mappers and/or reducers may be extracted from the jobs and converted into compute node identifiers and/or data units identifying blocks for processing, informing the warm-up operations of the resource warmer.
    Type: Application
    Filed: February 6, 2014
    Publication date: March 12, 2015
    Applicant: Robin Systems, Inc.
    Inventors: Krishna Satyasai Yeddanapudi, Christopher Alan Mildebrandt, Rao V. Madduri
  • Publication number: 20150071072
    Abstract: Systems and methods are disclosed for classifying traffic flows. A traffic agent operable to collect classification information for one or more traffic flows may be deployed at an end host communicatively coupled to a data-center network. The traffic agent, deployed in a user space independent of the operating system, may compare the classification information for a given traffic flow to a metric value. Where the classification information achieves a certain threshold indicated by the metric value, the traffic agent may classify the traffic flow as an elephant flow. In some examples, a library may be included with the traffic agent that may include a modified send function. The modified send function may provide classification information to the traffic agent indexed to the traffic flow for which it is called so that the traffic agent may analyze the classification information to potentially provide a classification for the traffic flow.
    Type: Application
    Filed: March 21, 2014
    Publication date: March 12, 2015
    Applicant: Robin Systems, Inc.
    Inventors: Rafit Izhak Ratzin, Krishna Satyasai Yeddanapudi, Dhanashankar Venkatesan
  • Publication number: 20150074672
    Abstract: Systems and methods are disclosed for scheduling jobs processed in a distributed fashion to realize unharnessed efficiencies latent in the characteristics of the jobs and distributed processing technologies. A job store may be communicatively coupled to a job analyzer. The job analyzer may be operable to read information characterizing a job to identify multiple data blocks to be processed during the job at multiple locations in a cluster of nodes. A scheduling module may use information about the multiple data blocks, their storage locations, their status with respect to being provisioned to processing logic, data blocks to be processed by other jobs, data blocks in cache that have been pre-fetched for a prior job, quality-of-services parameters, and/or job characteristics, such as job size, to schedule the job in relation to other jobs.
    Type: Application
    Filed: February 6, 2014
    Publication date: March 12, 2015
    Applicant: Robin Systems, Inc.
    Inventors: Krishna Satyasai Yeddanapudi, Christopher Alan Mildebrandt, Rao V. Madduri