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).

  • Publication number: 20080281908
    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: Application
    Filed: May 8, 2008
    Publication date: November 13, 2008
    Applicant: Riverbed Technology, Inc.
    Inventors: Steven McCanne, Nitin Parab, John Martin
  • Patent number: 7428573
    Abstract: In a network having transaction acceleration, for an accelerated transaction, a client directs a request to a client-side transaction handler that forwards the request to a server-side transaction handler, which in turn provides the request, or a representation thereof, to a server for responding to the request. The server sends the response to the server-side transaction handler, which forwards the response to the client-side transaction handler, which in turn provides the response to the client. Transactions are accelerated by the transaction handlers by storing segments of data used in the transactions in persistent segment storage accessible to the server-side transaction handler and in persistent segment storage accessible to the client-side transaction handler.
    Type: Grant
    Filed: September 15, 2005
    Date of Patent: September 23, 2008
    Assignee: Riverbed Technology, Inc.
    Inventors: Steven McCanne, Michael J. Demmer
  • Publication number: 20080159331
    Abstract: Shift-varying segmentation uses a shift-varying predicate function to evaluate input data within a sliding window to determine if the current sliding window position should be a segment boundary. The shift-varying predicate function is a function of both the input data within the sliding window and the position of the sliding window relative to a previous segment boundary or the beginning of the input data. The shift-varying predicate function includes a containment property and may compute a hash value from the input data in the sliding window. The hash value is compared to a threshold value that is a function of the sliding window position. As the sliding window position advances away from a previous segment boundary, the probability of a segment boundary at the window position increases. Shift-varying segmentation can be used in compression, transaction acceleration, and data storage applications.
    Type: Application
    Filed: December 29, 2006
    Publication date: July 3, 2008
    Applicant: Riverbed Technology, Inc.
    Inventors: James E Mace, David B. Anderson, Steven McCanne
  • Patent number: 7318100
    Abstract: In a network supporting transactions between clients and servers and proxies that are interposable in a network path between at least one client and at least one server, wherein a pair of proxies can modify a packet stream between a client and a server such that packet data from the client to the server is transformed at a client-side proxy of the proxy pair and untransformed at a server-side proxy of proxy pair and such that packet data from the server to the client is transformed at the server-side proxy and untransformed at the client-side proxy, a method and apparatus for a discovering proxy to transparently discover its position in a proxy pair by using proxy signals to indicate to other proxies that could pair with the discovering proxy. A discovering proxy might determine that it is a client-side proxy by receipt of a packet from client without a proxy signal. A discovering proxy might determine that it is a server-side proxy by receipt of a packet from server without a return proxy signal.
    Type: Grant
    Filed: August 12, 2003
    Date of Patent: January 8, 2008
    Assignee: Riverbed Technology, Inc.
    Inventors: Michael J. Demmer, Steven McCanne, Alfred Landrum
  • Publication number: 20070297414
    Abstract: Methods, systems, and apparatus provide efficient and flexible networking quality of service as well as transport protocol design. A hybrid transport/network quality of service (HNTQ) scheme improves the performance of TCP over specific links or network paths that are subject to high latency, a high bandwidth-delay product, high packet loss, and/or bit errors. A callback mechanism can be used between a packet scheduler and a transport module to control the transmission rate of packets across one or more connections or links.
    Type: Application
    Filed: June 13, 2007
    Publication date: December 27, 2007
    Applicant: Riverbed Technology, Inc.
    Inventors: Nitin Gupta, William Welch, Steven McCanne
  • Publication number: 20070297348
    Abstract: A method for configuring service curves for managing the output port of a networking device includes the following steps. A multitude of traffic classes is defined, each traffic class being characterized by a bandwidth and a delay priority. A multitude of traffic service curves is computed, each of the plurality of traffic service curves is associated with a different one of the multitude of traffic classes. At least one of the multitude of traffic classes service curves is characterized by a shifted two-piece linear function shifted such that the service curve limits service to during a nonzero time period prior to the start of the two-piece linear function.
    Type: Application
    Filed: May 31, 2007
    Publication date: December 27, 2007
    Applicant: Riverbed Technology, Inc.
    Inventors: Lap Trac, Steven McCanne
  • Publication number: 20070028002
    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: Application
    Filed: October 5, 2006
    Publication date: February 1, 2007
    Applicants: Yahoo! Inc.
    Inventor: Steven McCanne
  • Publication number: 20070018858
    Abstract: In a coding system, input data within a system is encoded. The input data might include sequences of symbols that repeat in the input data or occur in other input data encoded in the system. The encoding includes determining a target segment size, determining a window size, identifying a fingerprint within a window of symbols at an offset in the input data, determining whether the offset is to be designated as a cut point and segmenting the input data as indicated by the set of cut points. For each segment so identified, the encoder determines whether the segment is to be a referenced segment or an unreferenced segment, replacing the segment data of each referenced segment with a reference label and storing a reference binding in a persistent segment store for each referenced segment, if needed.
    Type: Application
    Filed: August 22, 2006
    Publication date: January 25, 2007
    Applicant: NBT Technology, Inc., (a Delaware Corporation)
    Inventors: Steven McCanne, Michael Demmer
  • Patent number: 7133928
    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: June 19, 2003
    Date of Patent: November 7, 2006
    Assignee: Yahoo! Inc.
    Inventor: Steven McCanne
  • Patent number: 7120666
    Abstract: In a network having transaction acceleration, for an accelerated transaction, a client directs a request to a client-side transaction handler that forwards the request to a server-side transaction handler, which in turn provides the request, or a representation thereof, to a server for responding to the request. The server sends the response to the server-side transaction handler, which forwards the response to the client-side transaction handler, which in turn provides the response to the client. Transactions are accelerated by the transaction handlers by storing segments of data used in the transactions in persistent segment storage accessible to the server-side transaction handler and in persistent segment storage accessible to the client-side transaction handler.
    Type: Grant
    Filed: October 30, 2002
    Date of Patent: October 10, 2006
    Assignee: Riverbed Technology, Inc.
    Inventors: Steven McCanne, Michael J. Demmer
  • Patent number: 7116249
    Abstract: In a coding system, input data within a system is encoded. The input data might include sequences of symbols that repeat in the input data or occur in other input data encoded in the system. The encoding includes determining a target segment size, determining a window size, identifying a fingerprint within a window of symbols at an offset in the input data, determining whether the offset is to be designated as a cut point and segmenting the input data as indicated by the set of cut points. For each segment so identified, the encoder determines whether the segment is to be a referenced segment or an unreferenced segment, replacing the segment data of each referenced segment with a reference label and storing a reference binding in a persistent segment store for each referenced segment, if needed.
    Type: Grant
    Filed: September 8, 2005
    Date of Patent: October 3, 2006
    Assignee: NBT Technology, Inc.
    Inventors: Steven McCanne, Michael J. Demmer
  • Publication number: 20060212935
    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: Application
    Filed: October 3, 2005
    Publication date: September 21, 2006
    Applicant: Riverbed Technology, Inc.
    Inventors: Daniel Burman, Kartik Subbanna, Steven McCanne, David Wu, Mark Day
  • Patent number: 7080157
    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: November 18, 2002
    Date of Patent: July 18, 2006
    Assignee: FastForward Networks, Inc.
    Inventor: Steven McCanne
  • Publication number: 20060069719
    Abstract: In a network having transaction acceleration, for an accelerated transaction, a client directs a request to a client-side transaction handler that forwards the request to a server-side transaction handler, which in turn provides the request, or a representation thereof, to a server for responding to the request. The server sends the response to the server-side transaction handler, which forwards the response to the client-side transaction handler, which in turn provides the response to the client. Transactions are accelerated by the transaction handlers by storing segments of data used in the transactions in persistent segment storage accessible to the server-side transaction handler and in persistent segment storage accessible to the client-side transaction handler.
    Type: Application
    Filed: September 15, 2005
    Publication date: March 30, 2006
    Applicant: Riverbed Technology, Inc.
    Inventors: Steven McCanne, Michael Demmer
  • Publication number: 20060061495
    Abstract: In a coding system, input data within a system is encoded. The input data might include sequences of symbols that repeat in the input data or occur in other input data encoded in the system. The encoding includes determining a target segment size, determining a window size, identifying a fingerprint within a window of symbols at an offset in the input data, determining whether the offset is to be designated as a cut point and segmenting the input data as indicated by the set of cut points. For each segment so identified, the encoder determines whether the segment is to be a referenced segment or an unreferenced segment, replacing the segment data of each referenced segment with a reference label and storing a reference binding in a persistent segment store for each referenced segment, if needed.
    Type: Application
    Filed: September 8, 2005
    Publication date: March 23, 2006
    Applicant: NBT Technology, Inc.
    Inventors: Steven McCanne, Michael Demmer
  • Patent number: 6961009
    Abstract: In a coding system, input data within a system is encoded. The input data might include sequences of symbols that repeat in the input data or occur in other input data encoded in the system. The encoding includes determining a target segment size, determining a window size, identifying a fingerprint within a window of symbols at an offset in the input data, determining whether the offset is to be designated as a cut point and segmenting the input data as indicated by the set of cut points. For each segment so identified, the encoder determines whether the segment is to be a referenced segment or an unreferenced segment, replacing the segment data of each referenced segment with a reference label and storing a reference binding in a persistent segment store for each referenced segment, if needed.
    Type: Grant
    Filed: October 18, 2004
    Date of Patent: November 1, 2005
    Assignee: NBT Technology, Inc.
    Inventors: Steven McCanne, Michael J. Demmer
  • Publication number: 20050162288
    Abstract: In a coding system, input data within a system is encoded. The input data might include sequences of symbols that repeat in the input data or occur in other input data encoded in the system. The encoding includes determining a target segment size, determining a window size, identifying a fingerprint within a window of symbols at an offset in the input data, determining whether the offset is to be designated as a cut point and segmenting the input data as indicated by the set of cut points. For each segment so identified, the encoder determines whether the segment is to be a referenced segment or an unreferenced segment, replacing the segment data of each referenced segment with a reference label and storing a reference binding in a persistent segment store for each referenced segment, if needed.
    Type: Application
    Filed: October 18, 2004
    Publication date: July 28, 2005
    Applicant: NBT Technology, Inc.
    Inventors: Steven McCanne, Michael Demmer
  • Publication number: 20050125553
    Abstract: In a network supporting transactions between clients and servers over a network path having operating characteristics to overcome, data is transported to overcome the operating characteristics using user affinities and dynamic user location information to selectively preload data, or representations, signatures, segments, etc. of data, in order to overcome the one or more operating characteristic. Examples of operating characteristics to overcome include bandwidth limitations, errors and latency. The dynamic location information can be stored in data structures accessible by agents of a data server and the data structures are populated based on user activities with respect to proxies associated with user locations, or the dynamic location information can be obtained implicitly as proxies maintain connections after termination by clients and the use of those maintained connections for preloading of data for the users associated with those clients.
    Type: Application
    Filed: August 12, 2003
    Publication date: June 9, 2005
    Applicant: NBT Technology, Inc., (a Delaware Corporation)
    Inventors: David Wu, Steven McCanne
  • Patent number: 6901445
    Abstract: A proximity-oriented redirection system for service-to-client attachment in a virtual overlay distribution network. The virtual overlay distribution network includes addressable routers for routing packet traffic, wherein a packet of data is routed from a source node to a destination node based on address fields of the packet. The invention includes a redirector coupled to at least one of the addressable routers and includes: logic for accepting a service request from a client; logic for determining a selected server for handling the service request, the selected server being one of a plurality of servers that can handle the service request; and logic for generating a redirection message directed to the client for redirecting the service request to the selected server.
    Type: Grant
    Filed: July 1, 2002
    Date of Patent: May 31, 2005
    Assignee: Fastforward Networks, Inc.
    Inventors: Steven McCanne, William C. DeStein
  • Patent number: 6850987
    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: October 5, 1999
    Date of Patent: February 1, 2005
    Assignee: Fastforward Networks, Inc.
    Inventors: Steven McCanne, Andrew Swan