Patents by Inventor Steven McCanne
Steven McCanne has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11593319Abstract: 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. The virtual storage arrays overcomes 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 semantics and structure of high-level data structures associated with storage blocks to predict which storage blocks are likely to be requested by a storage client in the near future. Virtual storage arrays determine the association between requested storage blocks and corresponding high-level data structure entities to predict additional high-level data structure entities that are likely to be accessed. From this, the virtual storage array identifies the additional storage blocks for prefetching.Type: GrantFiled: April 15, 2020Date of Patent: February 28, 2023Assignee: Riverbed Technology, Inc.Inventors: David Tze-Si Wu, Steven McCanne, Michael J. Demmer, Nitin Gupta
-
Patent number: 10831721Abstract: 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. The virtual storage arrays overcomes 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 semantics and structure of high-level data structures associated with storage blocks to predict which storage blocks are likely to be requested by a storage client in the near future. Virtual storage arrays determine the association between requested storage blocks and corresponding high-level data structure entities to predict additional high-level data structure entities that are likely to be accessed. From this, the virtual storage array identifies the additional storage blocks for prefetching.Type: GrantFiled: March 23, 2010Date of Patent: November 10, 2020Assignee: RIVERBED TECHNOLOGY, INC.Inventors: David Tze-Si Wu, Steven McCanne, Michael J. Demmer, Nitin Gupta
-
Publication number: 20200242088Abstract: 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. The virtual storage arrays overcomes 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 semantics and structure of high-level data structures associated with storage blocks to predict which storage blocks are likely to be requested by a storage client in the near future. Virtual storage arrays determine the association between requested storage blocks and corresponding high-level data structure entities to predict additional high-level data structure entities that are likely to be accessed. From this, the virtual storage array identifies the additional storage blocks for prefetching.Type: ApplicationFiled: April 15, 2020Publication date: July 30, 2020Applicant: Riverbed Technology, Inc.Inventors: David Tze-Si Wu, Steven McCanne, Michael J. Demmer, Nitin Gupta
-
Patent number: 9930099Abstract: In a network including WAN accelerators and segment-oriented file servers, a method comprises responding to a client request to manipulate a file via a network file protocol by receiving a first request at a first WAN accelerator, wherein the request is a request to open a file located at a file server that is a segment-oriented file server, sending a local request for the file, corresponding to the first request, from the WAN accelerator to the file server, using a segment-aware network request protocol, returning at least a portion of the requested file in the form of a representation of a data map corresponding to the at least a portion of the requested file stored on the file server and using a data map for reconstruction of the requested file.Type: GrantFiled: May 8, 2008Date of Patent: March 27, 2018Assignee: Riverbed Technology, Inc.Inventors: Steven McCanne, Nitin Parab, John Martin
-
Patent number: 9565076Abstract: Network traffic information from multiple sources, at multiple time scales, and at multiple levels of detail are integrated so that users may more easily identify relevant network information. The network monitoring system stores and manipulates low-level and higher-level network traffic data separately to enable efficient data collection and storage. Packet traffic data is collected, stored, and analyzed at multiple locations. The network monitoring locations communicate summary and aggregate data to central modules, which combine this data to provide an end-to-end description of network traffic at coarser time scales. The network monitoring system enables users to zoom in on high-level, coarse time scale network performance data to one or more lower levels of network performance data at finer time scales.Type: GrantFiled: February 27, 2015Date of Patent: February 7, 2017Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dimitri S. Vlachos
-
Patent number: 9407727Abstract: 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.Type: GrantFiled: August 23, 2013Date of Patent: August 2, 2016Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Steven McCanne, Michael J. Demmer, Derek J. Watson, David Tze-Si Wu
-
Patent number: 9332091Abstract: 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 the connection. Address information can be encoded into header fields originally intended for other purposes but that are unused or encoded into used fields, overlaid in combination with other data that is being carried in those used fields. The existence of inner-connection addressing information in a packet can be signaled by a flag in the packet, by a bit or other designated encoding. The flag can be in an unused header field or overlaid.Type: GrantFiled: April 22, 2013Date of Patent: May 3, 2016Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Alfred Landrum, Kand Ly, Steven McCanne
-
Patent number: 9252963Abstract: An overlay protocol and system for allowing multicast routing in the Internet to be performed at the application level. The overlay protocol uses “native” Internet multicast and multicast routing protocols to route information, according to overlay routing tables. Overlay groups are mapped to native multicast groups to exploit native multicasting in regional or local forwarding domains. Use of the overlay protocol allows overlay distribution to be handled in a more intelligent and bandwidth-managed fashion. Overlay routers are placed at each of several local area networks, Internet service provider's point of presence, enterprise, or other cohesively-managed locations. The overlay computers are configured according to bandwidth and security policies, and perform application-level multicast distribution across the otherwise disjoint multicast networks by using the overlay routing. The result is an overlay multicast network that is effectively managed according to local network management policies.Type: GrantFiled: December 25, 2013Date of Patent: February 2, 2016Assignee: Google Inc.Inventor: Steven McCanne
-
Patent number: 9225659Abstract: A method and apparatus are provided for scheduling a heterogeneous communication flow. A heterogeneous flow is a flow comprising packets with varying classes or levels of service, which may correspond to different priorities, qualities of service or other service characteristics. When a packet is ready for scheduling, it is queued in order in a flow queue that corresponds to the communication flow. The flow queue then migrates among class queues that correspond to the class or level of service of the packet at the head of the flow queue. Thus, after the head packet is scheduled, the flow queue may be dequeued from its current class queue and requeued at the tail of another class queue. If the subsequent packet has the same classification, it may be requeued at the tail of the class queue or may remain in place for another servicing round.Type: GrantFiled: January 12, 2015Date of Patent: December 29, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Steven McCanne, Lap Nathan Trac, Andrew Swan
-
Patent number: 9172620Abstract: In a network supporting transactions between clients and servers and proxies that are interposable in a network path, a pair of proxies can modify a packet stream such that packet data from client to server is transformed at a client-side proxy of the pair and untransformed at a server-side of the pair and packet data from server to client is transformed at the server-side proxy and untransformed at the client-side proxy. A discovering proxy transparently discovers its position in a proxy pair by using proxy signals. A discovering proxy might determine that it is a client-side proxy by receipt of a packet from client without a proxy signal, or that it is a server-side proxy by receipt of a packet from server without a return proxy signal. Once a proxy pair is discovered, it might transform traffic from server to client or vice versa, transforming and untransforming the traffic.Type: GrantFiled: February 4, 2014Date of Patent: October 27, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Michael J. Demmer, Steven McCanne, Alfred Landrum
-
Patent number: 9124666Abstract: A system of network proxies distributes data to multiple servers. Each network proxy is associated with a server. A network proxy intercepts a client request for data. If the network proxy determines that the request can be served using a copy of data stored on the local server, rather than the data stored on a remote server, it diverts the request to the local server. If the network proxy determines that the request cannot be served using a data from the local server, the network proxy diverts the request to a remote server storing the primary copy of the data. A server map specifies the locations of the primary copies of data. When a primary copy of data is updated on one of the servers, the associated network proxy propagates the updated data to the other servers. The servers can provide data from files, e-mail services, databases, or multimedia services.Type: GrantFiled: December 21, 2012Date of Patent: September 1, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Daniel Edwin Burman, Kartik Subbanna, Steven McCanne, David Tze-Si Wu, MArk Stuart Day
-
Publication number: 20150188779Abstract: Methods and systems for managing software as a service include receiving a request from a client, and as a result of receiving the request, providing a response to the client request including a mechanism for permitting cross-origin requests. An application can provide to the client a mechanism for permitting cross-origin requests and a client can receive user data from a user-controlled data repository. Methods and systems can manage a user application using user data within the user-controlled data repository, according to the cross-origin requests permissions.Type: ApplicationFiled: December 12, 2014Publication date: July 2, 2015Inventors: Steven McCanne, Michael Demmer
-
Publication number: 20150172143Abstract: Network traffic information from multiple sources, at multiple time scales, and at multiple levels of detail are integrated so that users may more easily identify relevant network information. The network monitoring system stores and manipulates low-level and higher-level network traffic data separately to enable efficient data collection and storage. Packet traffic data is collected, stored, and analyzed at multiple locations. The network monitoring locations communicate summary and aggregate data to central modules, which combine this data to provide an end-to-end description of network traffic at coarser time scales. The network monitoring system enables users to zoom in on high-level, coarse time scale network performance data to one or more lower levels of network performance data at finer time scales.Type: ApplicationFiled: February 27, 2015Publication date: June 18, 2015Applicant: RIVERBED TECHNOLOGY, INC.Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dimitri S. Vlachos
-
Patent number: 9049216Abstract: Network traffic information from multiple sources, at multiple time scales, and at multiple levels of detail are integrated so that users may more easily identify relevant network information. The network monitoring system stores and manipulates low-level and higher-level network traffic data separately to enable efficient data collection and storage. Packet traffic data is collected, stored, and analyzed at multiple locations. The network monitoring locations communicate summary and aggregate data to central modules, which combine this data to provide an end-to-end description of network traffic at coarser time scales. The network monitoring system enables users to zoom in on high-level, coarse time scale network performance data to one or more lower levels of network performance data at finer time scales.Type: GrantFiled: March 8, 2012Date of Patent: June 2, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Steven McCanne, Loris Degioanni
-
Patent number: 9036493Abstract: Network traffic information from multiple sources, at multiple time scales, and at multiple levels of detail are integrated so that users may more easily identify relevant network information. The network monitoring system stores and manipulates low-level and higher-level network traffic data separately to enable efficient data collection and storage. Packet traffic data is collected, stored, and analyzed at multiple locations. The network monitoring locations communicate summary and aggregate data to central modules, which combine this data to provide an end-to-end description of network traffic at coarser time scales. The network monitoring system enables users to zoom in on high-level, coarse time scale network performance data to one or more lower levels of network performance data at finer time scales.Type: GrantFiled: March 8, 2012Date of Patent: May 19, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dmitri S. Vlachos
-
Publication number: 20150124835Abstract: A method and apparatus are provided for scheduling a heterogeneous communication flow. A heterogeneous flow is a flow comprising packets with varying classes or levels of service, which may correspond to different priorities, qualities of service or other service characteristics. When a packet is ready for scheduling, it is queued in order in a flow queue that corresponds to the communication flow. The flow queue then migrates among class queues that correspond to the class or level of service of the packet at the head of the flow queue. Thus, after the head packet is scheduled, the flow queue may be dequeued from its current class queue and requeued at the tail of another class queue. If the subsequent packet has the same classification, it may be requeued at the tail of the class queue or may remain in place for another servicing round.Type: ApplicationFiled: January 12, 2015Publication date: May 7, 2015Applicant: RIVERBED TECHNOLOGY, INC.Inventors: Steven McCanne, Lap Nathan Trac, Andrew Swan
-
Patent number: 8971196Abstract: Network traffic information from multiple sources, at multiple time scales, and at multiple levels of detail are integrated so that users may more easily identify relevant network information. The network monitoring system stores and manipulates low-level and higher-level network traffic data separately to enable efficient data collection and storage. Packet traffic data is collected, stored, and analyzed at multiple locations. The network monitoring locations communicate summary and aggregate data to central modules, which combine this data to provide an end-to-end description of network traffic at coarser time scales. The network monitoring system enables users to zoom in on high-level, coarse time scale network performance data to one or more lower levels of network performance data at finer time scales.Type: GrantFiled: March 8, 2012Date of Patent: March 3, 2015Assignee: Riverbed Technology, Inc.Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dimitri S. Vlachos
-
Patent number: 8971345Abstract: A method and apparatus are provided for scheduling a heterogeneous communication flow. A heterogeneous flow is a flow comprising packets with varying classes or levels of service, which may correspond to different priorities, qualities of service or other service characteristics. When a packet is ready for scheduling, it is queued in order in a flow queue that corresponds to the communication flow. The flow queue then migrates among class queues that correspond to the class or level of service of the packet at the head of the flow queue. Thus, after the head packet is scheduled, the flow queue may be dequeued from its current class queue and requeued at the tail of another class queue. If the subsequent packet has the same classification, it may be requeued at the tail of the class queue or may remain in place for another servicing round.Type: GrantFiled: March 22, 2010Date of Patent: March 3, 2015Assignee: Riverbed Technology, Inc.Inventors: Steven McCanne, Lap Nathan Trac, Andrew Swan
-
Patent number: 8938553Abstract: Proxy devices associate their direct connection with a client/server connection passing through one or more NAT devices. First proxy device receives a network connection request from a client. First proxy device stores connection information in association with a connection identifier. Connection information may reflect the usage of NAT devices between the two proxy devices. First proxy device sends a connection response including the connection identifier to the client. Second proxy device sends a direct connection request to first proxy device to establish a direct connection. Direct connection request includes the connection identifier, which is used by first proxy device to associate the direct connection with stored connection information. First proxy device may use the connection information to direct network traffic received via this direct connection to the correct destination and to divert network traffic from the server to the client through the direct connection and first and second proxy devices.Type: GrantFiled: March 31, 2012Date of Patent: January 20, 2015Assignee: Riverbed Technology, Inc.Inventors: Kand Ly, Michael J. Demmer, Steven McCanne, Alfred Landrum
-
Patent number: 8886826Abstract: A method and apparatus for implementing a Multipoint Infrastructure Transport (MINT) protocol in a data network. The present invention includes a method for distributing data in a data network. The data network connects a plurality of nodes and at least a portion of the plurality of the nodes form a multicast group. One of the nodes in the multicast group is designated as a rendezvous node. The method includes a step of maintaining a data store containing a group state at each of the nodes in the multicast group. State updates, received at the rendezvous node are used to update the group state in the data store at the rendezvous node. The state updates are propagated, using a reliable protocol, from the rendezvous node to the other nodes in the multicast group. Finally, the group states in the data stores at the other nodes in the multicast group are updated.Type: GrantFiled: July 10, 2003Date of Patent: November 11, 2014Assignee: Google Inc.Inventors: Steven McCanne, Andrew Swan