Patents by Inventor Thomas J. Edsall

Thomas J. Edsall 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: 20150236933
    Abstract: Techniques are presented herein to facilitate latency measurements in a networking environment. A first network device receives a packet for transport within a network domain that comprises a plurality of network devices. The plurality of network devices have a common time reference, that is, they are time synchronized. The first network device generates timestamp information indicating time of arrival of the packet at the first network device. The first network device inserts into the packet a tag that comprises at least a first subfield and a second subfield. The first subfield comprising a type indicator to signify to other network devices in the network domain that the tag includes timestamp information, and the second subfield includes the timestamp information. The first network device sends the packet from to into the network domain to another network device. Other network devices which receive that packet can make latency measurements.
    Type: Application
    Filed: May 1, 2015
    Publication date: August 20, 2015
    Inventors: Thomas J. Edsall, Wei-Jen Huang, Chih-Tsung Huang, Yichou Lin
  • Publication number: 20150236982
    Abstract: A network device receives a packet that includes a plurality of sets of fields. Sets of fields of the packet are parsed and the field sets are evaluated as soon as they are available to determine whether a processing decision can be made on the packet. Additional field sets may be parsed from the packet and obtained in parallel with determining whether a processing decision can be made, but once it is determined that a processing decision can be made, the evaluating of field sets is terminated such that any further field sets of the packet are ignored for purposes of making a processing decision for the packet.
    Type: Application
    Filed: May 1, 2015
    Publication date: August 20, 2015
    Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
  • Publication number: 20150229555
    Abstract: Presented herein are techniques for detection and characterization of buffer occupancy of a buffer in a network device. Packets are received at a network device. The packets are stored in a buffer of the network device as they are processed by the network device. An occupancy level of the buffer is sampled at a sampling rate. Occupancy levels of the buffer over time are determined from the sampling, and traffic flow through the network device is characterized based on the occupancy levels.
    Type: Application
    Filed: April 21, 2015
    Publication date: August 13, 2015
    Inventors: Thomas J. Edsall, Ganga Sudharshini Devadas, Dennis Khoa Dang Nguyen, Chih-Tsung Huang
  • Patent number: 9094307
    Abstract: Presented herein are techniques to measure latency associated with packets that are processed within a network device. A packet is received at a component of a network device comprising one or more components. A timestamp representing a time of arrival of the packet at a first point in the network device is associated with the packet. The timestamp is generated with respect to a clock of the network device. A latency value for the packet is computed based on at least one of the timestamp and current time of arrival at a second point in the network device. One or more latency statistics are updated based on the latency value.
    Type: Grant
    Filed: December 7, 2012
    Date of Patent: July 28, 2015
    Assignee: Cisco Technology, Inc.
    Inventors: Thomas J. Edsall, Wei-Jen Huang, Chih-Tsung Huang, Kelvin Chan
  • Patent number: 9077619
    Abstract: Techniques are presented herein to facilitate the monitoring of occupancy of a buffer in a network device. Packets are received at a network device. Information is captured describing occupancy of the buffer caused by packet flow through the buffer in the network device. Analytics packets are generated containing the information. The analytics packets from the network device for retrieval of the information contained therein for analysis, replay of buffer occupancy, etc.
    Type: Grant
    Filed: December 7, 2012
    Date of Patent: July 7, 2015
    Assignee: Cisco Technology, Inc.
    Inventors: Thomas J. Edsall, Yue J. Yang, Wei-Jen Huang, Chih-Tsung Huang
  • Patent number: 9065780
    Abstract: A network device receives a packet that includes a plurality of header fields. The packet is parsed to sequentially obtain the plurality of header fields. One or more header fields not yet available at the network device are predicted based on one or more header fields that are available at the network device. A network processing decision is generated for the packet based on the predicted one or more header fields and the one or more header fields that are available at the network device.
    Type: Grant
    Filed: February 14, 2013
    Date of Patent: June 23, 2015
    Assignee: Cisco Technology, Inc.
    Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
  • Publication number: 20150172177
    Abstract: Presented herein are techniques to achieve ultra low latency determination of processing decisions for packets in a network device. A packet is received at a port of a network device. A processing decision is determined in a first processing decision path based on content of the packet and one or more network policies. A processing decision is determined in a second processing decision path, in parallel with the first processing path, by accessing a table storing processing decisions. The second processing decision path can output a processing decision faster than the first processing decision path for packets that match one or more particular packet flow parameters contained in the table. A processing decision determined by the second processing decision path, if one can be made, is used, and otherwise a processing decision determined by the first processing decision path is used.
    Type: Application
    Filed: February 23, 2015
    Publication date: June 18, 2015
    Inventors: Thomas J. Edsall, Alessandro Fulli, Putu Harry Subagio, Mingzhe Li, Christopher A. Wildman, Yichou Lin, Chih-Tsung Huang
  • Patent number: 9055004
    Abstract: A network device receives a packet that includes a plurality of sets of fields. Sets of fields of the packet are parsed and the field sets are evaluated as soon as they are available to determine whether a processing decision can be made on the packet. Additional field sets may be parsed from the packet and obtained in parallel with determining whether a processing decision can be made, but once it is determined that a processing decision can be made, the evaluating of field sets is terminated such that any further field sets of the packet are ignored for purposes of making a processing decision for the packet.
    Type: Grant
    Filed: February 14, 2013
    Date of Patent: June 9, 2015
    Assignee: Cisco Technology, Inc.
    Inventors: Thomas J. Edsall, Putu Harry Subagio, Alessandro Fulli, Christopher A. Wildman, Mingzhe Li, Wei-Jen Huang, Chih-Tsung Huang
  • Patent number: 9054967
    Abstract: Techniques are presented herein to facilitate latency measurements in a networking environment. A first network device receives a packet for transport within a network domain that comprises a plurality of network devices. The plurality of network devices have a common time reference, that is, they are time synchronized. The first network device generates timestamp information indicating time of arrival of the packet at the first network device. The first network device inserts into the packet a tag that comprises at least a first subfield and a second subfield. The first subfield comprising a type indicator to signify to other network devices in the network domain that the tag includes timestamp information, and the second subfield includes the timestamp information. The first network device sends the packet from to into the network domain to another network device. Other network devices which receive that packet can make latency measurements.
    Type: Grant
    Filed: December 7, 2012
    Date of Patent: June 9, 2015
    Assignee: Cisco Technology, Inc.
    Inventors: Thomas J. Edsall, Wei-Jen Huang, Chih-Tsung Huang, Yichou Lin
  • Patent number: 9042230
    Abstract: Presented herein are techniques for detection and characterization of buffer occupancy of a buffer in a network device. Packets are received at a network device. The packets are stored in a buffer of the network device as they are processed by the network device. An occupancy level of the buffer is sampled at a sampling rate. Occupancy levels of the buffer over time are determined from the sampling, and traffic flow through the network device is characterized based on the occupancy levels.
    Type: Grant
    Filed: December 16, 2014
    Date of Patent: May 26, 2015
    Assignee: Cisco Technology, Inc.
    Inventors: Thomas J. Edsall, Ganga Sudharshini Devadas, Dennis Khoa Dang Nguyen, Chih-Tsung Huang
  • Publication number: 20150124822
    Abstract: Systems, methods, and non-transitory computer-readable storage media for managing routing information in overlay networks. A first tunnel endpoint in an overlay network may receive an encapsulated packet from a second tunnel endpoint. The encapsulated packet may have been encapsulated at the second tunnel endpoint based on another packet originating from a source host that is associated with the second tunnel endpoint. The encapsulated packet can include a source host address for the source host and a source tunnel endpoint address for the second tunnel endpoint. The first tunnel endpoint can then update a lookup table based on an association between the source host address and the source tunnel endpoint address.
    Type: Application
    Filed: September 4, 2014
    Publication date: May 7, 2015
    Inventors: Kit Chiu Chu, Thomas J. Edsall, Navindra Yadav, Francisco M. Matus, Krishna Doddapaneni, Satyam Sinha
  • Publication number: 20150127900
    Abstract: A ternary content-addressable memory (TCAM) that is implemented based on other types of memory (e.g., SRAM) in conjunction with processing, including hashing functions. Such a H-TCAM may be used, for example, in implementation of routing equipment. A method of storing routing information on a network device, the routing information comprising a plurality of entries, each entry has a key value and a mask value, commences by identifying a plurality of groups, each group comprising a subset number of entries having a different common mask. The groups are identified by determining a subset number of entries that have a common mask value, meaning at least a portion of the mask value that is the same for all entries of the subset number of entries.
    Type: Application
    Filed: September 18, 2014
    Publication date: May 7, 2015
    Inventors: Sarang M. Dharmapurikar, Francisco M. Matus, Kit Chiu Chu, Georges Akis, Thomas J. Edsall
  • Publication number: 20150124809
    Abstract: Systems, methods, and non-transitory computer-readable storage media for implementing a policy enforcement proxy are disclosed. A data packet associated with a source endpoint group and a destination endpoint group is received at a network device. The network device performs a policy lookup based on the source endpoint group and the destination endpoint group. The network device determines that the policy is not available and in response, modifies the data packet and forwards it to a policy enforcement proxy.
    Type: Application
    Filed: November 4, 2014
    Publication date: May 7, 2015
    Inventors: Thomas J. Edsall, Navindra Yadav, Kit Chiu Chu
  • Publication number: 20150124640
    Abstract: The subject technology addresses the need in the art for directly measuring a maximum latency number with respect to a percentile of network traffic, which a network operator may utilize as an performance indication or metric. Given a traffic percentile, a tracking algorithm in accordance with embodiments described herein may be implemented in hardware and/or software to determine a maximum latency for this specific percentile of traffic.
    Type: Application
    Filed: September 8, 2014
    Publication date: May 7, 2015
    Inventors: Kit Chiu Chu, Jeff Hill, Thomas J. Edsall, Mohammadreza Alizadeh Attar
  • Publication number: 20150124824
    Abstract: Aspects of the subject disclosure relate to ways to capture packet metadata following an incast event. In some implementations, a method of the subject technology can include steps for receiving a plurality of data packets at a network device, storing each of the plurality of packets in a buffer, and detecting a packet drop event for one or more incoming packets, wherein the one or more incoming packets are not stored in the queue. In some aspects, the method can further include steps for indicating a marked packet from among the received data packets, dequeuing each of the plurality of packets in the buffer, capturing metadata for each dequeued packet until the marked packet is dequeued.
    Type: Application
    Filed: September 11, 2014
    Publication date: May 7, 2015
    Inventors: Thomas J. Edsall, Mohammadreza Alizadeh Attar
  • Publication number: 20150124590
    Abstract: Aspects of the subject disclosure relate to methods for detecting a link failure between the first network device and a destination node, receiving a data packet addressed to the destination node, and rewriting encapsulation information of the first data packet. Subsequent to rewriting the encapsulation information of the first data packet, the first data packet is forwarded to a second network device (e.g., using updated address information in the packet header), wherein the second network device is paired with the first network device in the virtual port channel. In certain aspects, systems and computer readable media are also provided.
    Type: Application
    Filed: October 7, 2014
    Publication date: May 7, 2015
    Inventors: Kit Chiu Chu, Thomas J. Edsall, Navindra Yadav, Francisco M. Matus, Krishna Doddapaneni, Satyam Sinha
  • Publication number: 20150124614
    Abstract: Systems, methods, and non-transitory computer-readable storage media for per-packet load balancing in a port channel. The system first maps an incoming traffic flow to queues containing packets to be transmitted through a port channel at the system, the port channel including ports grouped into a single virtual port. Next, the system assigns a port from the port channel to a queue for a predetermined period of time, wherein the port is assigned to the queue based on at least one of a port state and a service history associated with the queue. The system then de-queues at least a portion of the packets in the queue through the port for the predetermined period of time. This load balancing can ensure that traffic is efficiently and fairly load balanced across the links of the port channel, and packets of each queue are not reordered.
    Type: Application
    Filed: July 31, 2014
    Publication date: May 7, 2015
    Inventors: Mohammadreza Alizadeh Attar, Sha Ma, Thomas J. Edsall
  • Publication number: 20150124805
    Abstract: Various examples of the present disclosure provide methods for unifying various types of end-point identifiers, such as IPv4 (e.g., Internet protocol version 4 represented by a VRF and an IPv4 address), IPv6 (e.g., Internet protocol version 6 represented by a VRF and an IPv6 address) and L2 (e.g., Layer-2 represented by a bridge domain (BD) and a media access control (MAC) address), by mapping end-point identifiers to a uniform space (e.g., a synthetic IPv4 address and a synthetic VRF) and allowing different forms of lookups to be uniformly handled. In some examples, a lookup database residing on a switch device can be sharded into a plurality of lookup table subsets, each of which resides on a different one of multiple switch chipsets (e.g., Tridents) in the switch device.
    Type: Application
    Filed: September 2, 2014
    Publication date: May 7, 2015
    Inventors: Navindra Yadav, Satyam Sinha, Thomas J. Edsall, Mohammadreza Alizadeh Attar, Kit Chiu Chu
  • Publication number: 20150124820
    Abstract: Various embodiments of the present disclosure provide methods for randomly mapping entries in a suitable lookup table across multiple switch devices and/or multiple switch chipsets in each of the multiple switch devices by using two or more independent hash functions. In some embodiments, the number of entries in the lookup table is equal to be the least common multiple of all possible M (i.e., a number of switch devices) choosing R values (i.e., a desired redundancy level).
    Type: Application
    Filed: August 28, 2014
    Publication date: May 7, 2015
    Inventors: Mohammadreza Alizadeh Attar, Navindra Yadav, Satyam Sinha, Thomas J. Edsall, Kit Chiu Chu
  • Publication number: 20150127797
    Abstract: In accordance with one embodiment, a source leaf device receives a packet. The source leaf device identifies a flowlet associated with the packet and a destination leaf device to which the packet is to be transmitted. The source leaf device may determine whether the flowlet is a new flowlet. The source leaf device may select an uplink of the source leaf device via which to transmit the flowlet to the destination leaf device according to whether the flowlet is a new flowlet. The source leaf device may then transmit the packet to the destination leaf device via the uplink.
    Type: Application
    Filed: June 18, 2014
    Publication date: May 7, 2015
    Inventors: Mohammadreza Alizadeh Attar, Thomas J. Edsall, Sarang M. Dharmapurikar, Janakiramanan Vaidyanathan