Riverbed Technology Patent Grants

Stitching together partial network topologies

Granted: August 8, 2017
Patent Number: 9729426
A method and system that takes advantage of processes that are efficient for determining the topology of small to medium size networks to determine individual network topologies for such networks, and then merges these individual topologies into a consolidated topology for the entire network. Each of the processes that determines the topology of the smaller networks provides the determined network topology, as well as a list of factors that may be relevant in the determination of how the…

Persisting large volumes of data in an efficient unobtrusive manner

Granted: March 28, 2017
Patent Number: 9606887
Embodiments provide a data persisting mechanism that allows for efficient, unobtrusive persisting of large volumes of data while optimizing the use of system resources by the persisting process. In an embodiment, the persisting process includes a self-tuning algorithm that constantly monitors persistence performance and that adjusts persistence time to maintain performance within user-defined criteria. From one aspect, this allows the persisting process to seamlessly adapt to changes in…

User-configurable network performance monitors

Granted: February 28, 2017
Patent Number: 9584391
A network analysis system provides for a user-definable display of information related to messages communicated on the network. The network analysis system includes one or more display formats that provide a display of message exchanges between nodes of a network, and a display augmenter that provides additional information on the display based on a user-defined visualization. The user defined visualization includes augmenting the display based on user-defined coloring characteristics…

Optimizing secure communications between a client authenticating server and a mobile client

Granted: February 21, 2017
Patent Number: 9578016
Systems and techniques are described for optimizing secure communications. Specifically, a first intermediary and a second intermediary can split-terminate a secure connection handshake or a handshake renegotiation between two computing devices. The first and second intermediaries can then optimize secure communications between the two computing devices.

Correlating input and output requests between client and server components in a multi-tier application

Granted: January 17, 2017
Patent Number: 9549030
The present invention relates to correlating requests between a client and a server to a particular transaction. In one embodiment, transactions in a system of clients and servers are monitored and traced. From this information, a context comprising sets or groupings of transaction call sequences are determined. For example, a sequence of method calls on a client process is traced to a socket carrying data for transmission of a request message to a server. In response to this request…

Method and apparatus for path selection

Granted: December 27, 2016
Patent Number: 9531624
Systems and techniques are described for path selection. A packet can be transparently intercepted at an intermediary device. Next, the intermediary device may modify one or more bits in the header of the packet. The intermediary device can then forward the packet to the next hop device. In some network configurations, the modifications to the one or more bits in the header of the packet may cause a downstream device to select a path that is different from the path that would have been…

Native code profiler framework

Granted: October 11, 2016
Patent Number: 9465717
Embodiments provide systems, methods, and computer program products for dynamically hooking multiple levels of application code. A server receives identifying information that identifies a target function of a target application to hook. The server pauses a target process of the target application. The server locates the target function within the target application code based on the received identifying information. The server then hooks the located function outside of the target…

Methods and systems for efficient updating of time-aligned graphs in a monitoring system

Granted: October 4, 2016
Patent Number: 9461896
The present invention relates to displaying data in a time-aligned fashion. A dashboard may have a defined time window and a plurality of graphs for various types of monitoring data metrics. Updates to each of the graphs may occur at different intervals while the graphs stay aligned to the same time window. The updates may be asynchronously received and displayed in the dashboard in real-time or near real-time. The graphs are aligned to the same time window in a dashboard by adding a…

End-to-end analysis of transactions in networks with traffic-altering devices

Granted: September 27, 2016
Patent Number: 9455873
In a network that includes intermediary nodes, such as WAN accelerators, that transform messages between nodes, an end-to-end path of the messages is determined. The determined end-to-end path is used in subsequent analyses of message traces, to identify timing and other factors related to the performance of the network relative to the propagation of these messages, including the propagation of the transformed messages. A variety of techniques are presented for determining the path of…

Optimizing communications using client-side reconstruction scripting

Granted: August 2, 2016
Patent Number: 9407727
Systems and techniques are described for optimizing communications between a client and a server. Specifically, in some embodiments, an executing script on a client can send a resource request to a server. In response, the server can send an optimized version of the resource back to the client. The client can then reconstruct the resource from the optimized version of the resource.

Policy aggregation for computing network health

Granted: May 31, 2016
Patent Number: 9356839
A network health monitoring application computes aggregate reports of network health by combining status results from a group of segments to render a summary health status indicative of the entire group. Individual status values result from policies, which monitor various segments and metrics, or performance parameters (such as byte counts or retransmissions), concerned with providing a particular service. The policies form a hierarchy defining the general or specific nature of the…

Virtualized data storage system optimizations

Granted: May 24, 2016
Patent Number: 9348842
Virtual storage arrays consolidate branch data storage at data centers connected via wide area networks. Virtual storage arrays appear to storage clients as local data storage; however, virtual storage arrays actually store data at the data center. Virtual storage arrays overcome bandwidth and latency limitations of the wide area network by predicting and prefetching storage blocks, which are then cached at the branch location. Virtual storage arrays leverage an understanding of the…

Address manipulation to provide for the use of network tools even when transaction acceleration is in use over a network

Granted: May 3, 2016
Patent Number: 9332091
In address-manipulation enabled transaction accelerators, the transaction accelerators include outer-connection addressing information in packets emitted over an inner connection between transaction accelerators and inner-connection addressing information is added in packets sent over the inner connection. The inner-connection addressing information can be carried in TCP option fields, directly in other fields, or indirectly through data structures maintained by the endpoints processing…

Correcting packet timestamps in virtualized environments

Granted: April 26, 2016
Patent Number: 9323555
A network capture element is embodied on a virtual machine, and a utility function is embodied on the actual device, preferably within the virtual machine manager. Both the utility function and the traffic capture element are configured to monitor communication events. To minimize the overhead imposed, the utility function is configured to merely store the time that the event occurred on the actual machine, corresponding to an identifier of the event. The network capture element, on the…

Single-ended deduplication using cloud storage protocol

Granted: April 19, 2016
Patent Number: 9317377
A single-ended optimized storage protocol enables storage clients or other devices to direct a remote data storage to copy data. In response to commands via the protocol, a remote data storage can copy portions of a data stream at the remote data storage to destination storage locations within the same or a different data stream. The protocol may be utilized for optimized transfer of data via a network to a remote data storage. An initial data stream is divided into segments. Redundant…

Automatic prompt detection for universal device support

Granted: April 5, 2016
Patent Number: 9304847
Embodiments provide systems, methods, and computer program products for network management application to automatically determine a session prompt for a network device and perform error handling. After logging in to a network device, the network management application records the first session prompt response. The network management application sends a series of empty carriage returns and random characters and records the session prompt responses. The network management application…

Optimized file creation in WAN-optimized storage

Granted: April 5, 2016
Patent Number: 9307025
The file creation on remote data storage accessible via a WAN can be optimized by creating temporary files in advance on a remote data storage. The file handles or other file access parameters for these temporary files are cached at a client network location. A file creation request from a client is intercepted at the client network location and one of the cached file handle is returned to the client. This enables the client to immediately write data to the corresponding temporary file,…

Application monitoring of related activities across multiple threads

Granted: February 23, 2016
Patent Number: 9268624
Embodiments provide systems, methods, and computer program products for monitoring application performance in multithreaded environments. Monitoring data may be inserted into data structures that propagate and persist between threads involved in a processing event. Data related to specific methods executing on each thread may be output to a trace file. The trace file may be analyzed for application performance by associating the threads that contain the same tracking data from the…

Modeling and simulating flow propagation in dynamic bandwidth systems

Granted: February 2, 2016
Patent Number: 9253045
In a network that includes static bandwidth and dynamic bandwidth links, traffic flow at the OSI network layer is simulated at a traffic-flow level at interfaces to fixed bandwidth links, and simulated at a discrete-packet level at interfaces to dynamic bandwidth links. The resultant discrete-packet reception events at the receiving interface(s) of the dynamic bandwidth link are processed to determine the effective bandwidth/throughput of the link, as well as the allocation of this…

Inferring connectivity among network segments in the absence of configuration information

Granted: January 12, 2016
Patent Number: 9237073
The present system includes a system, method and device for inferring connectivity between unconnected network segments. In operation, unconnected network segments are identified. Configuration data related to the unconnected network segments may be examined to facilitate inferring configuration data for an external network connected between the unconnected network segments. The inferred configuration data may be rendered, such as exported or visualized. The inferred configuration data…