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: 11593319
    Abstract: 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: Grant
    Filed: April 15, 2020
    Date of Patent: February 28, 2023
    Assignee: Riverbed Technology, Inc.
    Inventors: David Tze-Si Wu, Steven McCanne, Michael J. Demmer, Nitin Gupta
  • Patent number: 10831721
    Abstract: 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: Grant
    Filed: March 23, 2010
    Date of Patent: November 10, 2020
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: David Tze-Si Wu, Steven McCanne, Michael J. Demmer, Nitin Gupta
  • Publication number: 20200242088
    Abstract: 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: Application
    Filed: April 15, 2020
    Publication date: July 30, 2020
    Applicant: Riverbed Technology, Inc.
    Inventors: David Tze-Si Wu, Steven McCanne, Michael J. Demmer, Nitin Gupta
  • Patent number: 9930099
    Abstract: 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: Grant
    Filed: May 8, 2008
    Date of Patent: March 27, 2018
    Assignee: Riverbed Technology, Inc.
    Inventors: Steven McCanne, Nitin Parab, John Martin
  • Patent number: 9565076
    Abstract: 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: Grant
    Filed: February 27, 2015
    Date of Patent: February 7, 2017
    Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dimitri S. Vlachos
  • Patent number: 9407727
    Abstract: 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: Grant
    Filed: August 23, 2013
    Date of Patent: August 2, 2016
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: Steven McCanne, Michael J. Demmer, Derek J. Watson, David Tze-Si Wu
  • Patent number: 9332091
    Abstract: 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: Grant
    Filed: April 22, 2013
    Date of Patent: May 3, 2016
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: Alfred Landrum, Kand Ly, Steven McCanne
  • Patent number: 9252963
    Abstract: 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: Grant
    Filed: December 25, 2013
    Date of Patent: February 2, 2016
    Assignee: Google Inc.
    Inventor: Steven McCanne
  • Patent number: 9225659
    Abstract: 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: Grant
    Filed: January 12, 2015
    Date of Patent: December 29, 2015
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: Steven McCanne, Lap Nathan Trac, Andrew Swan
  • Patent number: 9172620
    Abstract: 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: Grant
    Filed: February 4, 2014
    Date of Patent: October 27, 2015
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: Michael J. Demmer, Steven McCanne, Alfred Landrum
  • Patent number: 9124666
    Abstract: 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: Grant
    Filed: December 21, 2012
    Date of Patent: September 1, 2015
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: Daniel Edwin Burman, Kartik Subbanna, Steven McCanne, David Tze-Si Wu, MArk Stuart Day
  • Publication number: 20150188779
    Abstract: 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: Application
    Filed: December 12, 2014
    Publication date: July 2, 2015
    Inventors: Steven McCanne, Michael Demmer
  • Publication number: 20150172143
    Abstract: 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: Application
    Filed: February 27, 2015
    Publication date: June 18, 2015
    Applicant: RIVERBED TECHNOLOGY, INC.
    Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dimitri S. Vlachos
  • Patent number: 9049216
    Abstract: 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: Grant
    Filed: March 8, 2012
    Date of Patent: June 2, 2015
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: Steven McCanne, Loris Degioanni
  • Patent number: 9036493
    Abstract: 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: Grant
    Filed: March 8, 2012
    Date of Patent: May 19, 2015
    Assignee: RIVERBED TECHNOLOGY, INC.
    Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dmitri S. Vlachos
  • Publication number: 20150124835
    Abstract: 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: Application
    Filed: January 12, 2015
    Publication date: May 7, 2015
    Applicant: RIVERBED TECHNOLOGY, INC.
    Inventors: Steven McCanne, Lap Nathan Trac, Andrew Swan
  • Patent number: 8971196
    Abstract: 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: Grant
    Filed: March 8, 2012
    Date of Patent: March 3, 2015
    Assignee: Riverbed Technology, Inc.
    Inventors: Loris Degioanni, Steven McCanne, Christopher J. White, Dimitri S. Vlachos
  • Patent number: 8971345
    Abstract: 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: Grant
    Filed: March 22, 2010
    Date of Patent: March 3, 2015
    Assignee: Riverbed Technology, Inc.
    Inventors: Steven McCanne, Lap Nathan Trac, Andrew Swan
  • Patent number: 8938553
    Abstract: 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: Grant
    Filed: March 31, 2012
    Date of Patent: January 20, 2015
    Assignee: Riverbed Technology, Inc.
    Inventors: Kand Ly, Michael J. Demmer, Steven McCanne, Alfred Landrum
  • Patent number: 8886826
    Abstract: 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: Grant
    Filed: July 10, 2003
    Date of Patent: November 11, 2014
    Assignee: Google Inc.
    Inventors: Steven McCanne, Andrew Swan