Patents by Inventor Sunil Potti

Sunil Potti 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: 9380008
    Abstract: A method is disclosed for high-speed processing of structured application messages in a network device. According to one aspect, a network device receives a structured application layer message and identifies, in message classification requirements at the network device, a reference to a classification portion of the structured application layer message and an operation portion of the structured application layer message. The system extracts, based on one or more expressions, a portion of the message for classifying the structured application layer message and classifies the message using the extracted portion and according to the message classification requirements. At least in part by accessing information indicated by one or more location identifiers, at least one operation is performed on the classified structured application layer message.
    Type: Grant
    Filed: September 30, 2013
    Date of Patent: June 28, 2016
    Assignee: Cisco Technology, Inc.
    Inventors: Karempudi Ramarao, Tefcros Anthias, Jr., Sunil Potti, Sandeep Kumar, Stephen Cho, Alex Yin-Man Chan, Yi Jin, Ricky Ho
  • Publication number: 20140032690
    Abstract: A method is disclosed for high-speed processing of structured application messages in a network device. According to one aspect, a network device receives a structured application layer message and identifies, in message classification requirements at the network device, a reference to a classification portion of the structured application layer message and an operation portion of the structured application layer message. The system extracts, based on one or more expressions, a portion of the message for classifying the structured application layer message and classifies the message using the extracted portion and according to the message classification requirements. At least in part by accessing information indicated by one or more location identifiers, at least one operation is performed on the classified structured application layer message.
    Type: Application
    Filed: September 30, 2013
    Publication date: January 30, 2014
    Applicant: Cisco Technology, Inc.
    Inventors: Karempudi Ramarao, Tefcros Anthias, JR., Sunil Potti, Sandeep Kumar, Stephen Cho, Alex Yin-Man Chan, Yi Jin, Ricky Ho
  • Patent number: 8549171
    Abstract: A method is disclosed for high-speed processing of structured application messages in a network device. According to one aspect, a network device receives a set of message classification rules that have been prepared beforehand by a system administrator or customer. The system analyzes the message classification rules to determine what part(s) of the message are necessary to classify a message according to the message classification rules. This allows the system to consider only the relevant parts of the message and ignore the rest of the message. The system extracts the portion of the message necessary for classifying the message and classifies the message using the values of the extracted information and the message classification rules. A unique sequence of operations is implied by the message classification and those operations must then be applied to the message.
    Type: Grant
    Filed: March 24, 2005
    Date of Patent: October 1, 2013
    Assignee: Cisco Technology, Inc.
    Inventors: Karempudi Ramarao, Tefcros Anthias, Sunil Potti, Sandeep Kumar, Stephen Cho, Alex Yiu-Man Chan, Yi Jin, Ricky Ho
  • Patent number: 7996556
    Abstract: A method is disclosed for generating a network topology representation based on inspection of application messages at a network device. According to one aspect, a network device receives a request packet, routes the packet to the destination, and extracts and stores correlation information from a copy of the request packet. When the network device receives a response packet, it examines the contents of a copy of the response packet using context-based correlation rules and matches the response packet with the appropriate stored request packet correlation information. It analyzes recorded correlation information to determine application-to-application mapping and calculate application response times. Another embodiment inserts custom headers that contain information used to match a response packet with a request packet into request packets.
    Type: Grant
    Filed: March 24, 2005
    Date of Patent: August 9, 2011
    Assignee: Cisco Technology, Inc.
    Inventors: Kollivakkam Raghavan, Tefcros Anthias, Parley Van Oleson, Sunil Potti, Raj De Datta, Stephen Cho
  • Patent number: 7962582
    Abstract: Enforcing network service level agreements in a network infrastructure element comprises receiving, at the network infrastructure element, an application-layer message comprising one or more of the packets; forwarding the application-layer message toward a destination endpoint and concurrently copying the application-layer message without disrupting the forwarding; using the copied application-layer message, discovering one or more applications or services that are using the network; using the copied application-layer message, identifying one or more network-layer condition metrics, and identifying one or more application-layer condition metrics; determining, based on the identified network-layer condition metrics and the application-layer condition metrics, whether one or more conditions of a service level agreement are violated; and in response to determining a violation, performing one or more responsive operations on one or more network elements.
    Type: Grant
    Filed: June 21, 2006
    Date of Patent: June 14, 2011
    Assignee: Cisco Technology, Inc.
    Inventors: Sunil Potti, Praveen Joshi, Rahul Tripathi, Steve Phillips
  • Patent number: 7840700
    Abstract: Custom or user-defined application program extensions may be loaded into a network infrastructure element such as a router or switch without restarting the device. For example, a network element has program extensibility logic operable for receiving one or more user program extensions that comprise logic operable to interface with the application program and perform message processing functions or protocol processing functions that are not in the application program; installing the one or more user program extensions without restarting the apparatus; receiving one or more packets representing an application message; selecting a particular one of the user program extensions based on a protocol associated with the message; loading the particular one of the user program extensions; executing business logic of the application program associated with the received message; and invoking a function of the particular one of the user program extensions in response to a call in the business logic.
    Type: Grant
    Filed: June 21, 2006
    Date of Patent: November 23, 2010
    Assignee: Cisco Technology, Inc.
    Inventors: Kollivakkam Raghavan, Pravin Singhal, Sunil Potti, Tefcros Anthias
  • Patent number: 7827256
    Abstract: A network element such as a router or switch provides application-level quality of service for application-layer messages processed in the network element, using application QoS logic which when executed by the one or more processors is operable to cause receiving an application-layer message; matching one or more attributes of the application-layer message to the message classification rules; determining a message classification of the application-layer message based on the matching; selecting one of the network-level QoS values using the mapping and based on the determined message classification; and marking a network-level header of the application-layer message using the selected QoS value. As a result, attributes of application messages at OSI Layer 5, 6, or 7 can be used to determine how to mark packets of the messages with QoS values at OSI Layer 2, 3 or 4, integrating application-level concepts of order and priority into network-layer QoS mechanisms.
    Type: Grant
    Filed: June 21, 2006
    Date of Patent: November 2, 2010
    Assignee: Cisco Technology, Inc.
    Inventors: Steve Phillips, Sunil Potti, Praveen Joshi, Pravin Singhal, Tefcros Anthias, Rahul Tripathi
  • Patent number: 7725934
    Abstract: A method is disclosed for protecting a network against a denial-of-service attack by inspecting application layer messages at a network element. According to one aspect, when a network element intercepts data packets that contain an application layer message, the network element constructs the message from the payload portions of the packets. The network element determines whether the message satisfies specified criteria. The criteria may indicate characteristics of messages that are suspected to be involved in a denial-of-service attack, for example. If the message satisfies the specified criteria, then the network element prevents the data packets that contain the message from being received by the application for which the message was intended. The network element may accomplish this by dropping the packets, for example. As a result, the application's host does not waste processing resources on messages whose only purpose might be to deluge and overwhelm the application.
    Type: Grant
    Filed: December 7, 2004
    Date of Patent: May 25, 2010
    Assignee: Cisco Technology, Inc.
    Inventors: Sandeep Kumar, Yi Jin, Sunil Potti, Christopher R. Wiborg
  • Patent number: 7698416
    Abstract: A method is disclosed for application layer message-based network element management of server failures. According to one aspect, a network element such as a router intercepts session state information that is contained in a request from a client and locally stores the session state information. As a result, application servers to which the requests are directed do not need to store the session state information. If an application server fails, then the network element can use the session state information stored at the network element to continue the session with another application server, transparently to the client application that is involved in the session.
    Type: Grant
    Filed: January 25, 2005
    Date of Patent: April 13, 2010
    Assignee: Cisco Technology, Inc.
    Inventors: Sunil Potti, Alex Yiu-Man Chan, Snehal Haridas, Hari Kathi, Pravin Singhal
  • Patent number: 7551567
    Abstract: A method is disclosed for interpreting an application message at a network element using sampling and heuristics. Using this method, a network element such as a router can determine, based solely on a data packet's packet headers, whether the network element ought to invest the time and processing power required to inspect and interpret the data packet's payload portion, or whether the network element can send the data packet toward the data packet's destination without inspecting and interpreting the data packet's payload portion. According to one aspect, while in a sampling state, the network element determines shared packet header characteristics possessed by packet headers of all data packets that require application layer message inspection. While in a processing state, the network element forgoes application layer message inspection relative to data packets whose packet headers do not possess the shared packet header characteristics. The network element alternates between the states.
    Type: Grant
    Filed: January 5, 2005
    Date of Patent: June 23, 2009
    Assignee: Cisco Technology, Inc.
    Inventors: Tefcros Anthias, Sunil Potti, Subramanian Srinivasan, Nitesh Trikha
  • Patent number: 7509431
    Abstract: A method is disclosed for performing message and transformation adapter functions in a network element on behalf of an application. According to one aspect, the network element determines an application layer message that is collectively contained in payload portions of data packets. The application layer message conforms to an application layer protocol, such as Hypertext Transfer Protocol (HTTP). The network element determines the application layer protocol to which the application layer message conforms. Based on the application layer protocol, an adapter is selected from among a plurality of adapters that are accessible to the network element. The application layer message is provided to the selected adapter, which converts the application layer message into a “canonical” message that is not specific to any particular application layer protocol.
    Type: Grant
    Filed: November 17, 2004
    Date of Patent: March 24, 2009
    Assignee: Cisco Technology, Inc.
    Inventors: Pravin Singhal, Qingqing Li, Juzar Kothambawala, Parley Van Oleson, Wai Yip Tung, Sunil Potti
  • Publication number: 20070156919
    Abstract: Enforcing network service level agreements in a network infrastructure element comprises receiving, at the network infrastructure element, an application-layer message comprising one or more of the packets; forwarding the application-layer message toward a destination endpoint and concurrently copying the application-layer message without disrupting the forwarding; using the copied application-layer message, discovering one or more applications or services that are using the network; using the copied application-layer message, identifying one or more network-layer condition metrics, and identifying one or more application-layer condition metrics; determining, based on the identified network-layer condition metrics and the application-layer condition metrics, whether one or more conditions of a service level agreement are violated; and in response to determining a violation, performing one or more responsive operations on one or more network elements.
    Type: Application
    Filed: June 21, 2006
    Publication date: July 5, 2007
    Inventors: Sunil Potti, Praveen Joshi, Rahul Tripathi, Steve Phillips
  • Publication number: 20070028001
    Abstract: A network element such as a router or switch provides application-level quality of service for application-layer messages processed in the network element, using application QoS logic which when executed by the one or more processors is operable to cause receiving an application-layer message; matching one or more attributes of the application-layer message to the message classification rules; determining a message classification of the application-layer message based on the matching; selecting one of the network-level QoS values using the mapping and based on the determined message classification; and marking a network-level header of the application-layer message using the selected QoS value. As a result, attributes of application messages at OSI Layer 5, 6, or 7 can be used to determine how to mark packets of the messages with QoS values at OSI Layer 2, 3 or 4, integrating application-level concepts of order and priority into network-layer QoS mechanisms.
    Type: Application
    Filed: June 21, 2006
    Publication date: February 1, 2007
    Inventors: Steve Phillips, Sunil Potti, Praveen Joshi, Pravin Singhal, Tefcros Anthias, Rahul Tripathi
  • Publication number: 20070011332
    Abstract: Custom or user-defined application program extensions may be loaded into a network infrastructure element such as a router or switch without restarting the device. For example, a network element has program extensibility logic operable for receiving one or more user program extensions that comprise logic operable to interface with the application program and perform message processing functions or protocol processing functions that are not in the application program; installing the one or more user program extensions without restarting the apparatus; receiving one or more packets representing an application message; selecting a particular one of the user program extensions based on a protocol associated with the message; loading the particular one of the user program extensions; executing business logic of the application program associated with the received message; and invoking a function of the particular one of the user program extensions in response to a call in the business logic.
    Type: Application
    Filed: June 21, 2006
    Publication date: January 11, 2007
    Inventors: Kollivakkam Raghavan, Pravin Singhal, Sunil Potti, Tefcros Anthias
  • Publication number: 20060168334
    Abstract: A method is disclosed for application layer message-based network element management of server failures. According to one aspect, a network element such as a router intercepts session state information that is contained in a request from a client and locally stores the session state information. As a result, application servers to which the requests are directed do not need to store the session state information. If an application server fails, then the network element can use the session state information stored at the network element to continue the session with another application server, transparently to the client application that is involved in the session.
    Type: Application
    Filed: January 25, 2005
    Publication date: July 27, 2006
    Inventors: Sunil Potti, Alex Chan, Snehal Haridas, Hari Kathi, Pravin Singhal
  • Publication number: 20060146879
    Abstract: A method is disclosed for interpreting an application message at a network element using sampling and heuristics. Using this method, a network element such as a router can determine, based solely on a data packet's packet headers, whether the network element ought to invest the time and processing power required to inspect and interpret the data packet's payload portion, or whether the network element can send the data packet toward the data packet's destination without inspecting and interpreting the data packet's payload portion. According to one aspect, while in a sampling state, the network element determines shared packet header characteristics possessed by packet headers of all data packets that require application layer message inspection. While in a processing state, the network element forgoes application layer message inspection relative to data packets whose packet headers do not possess the shared packet header characteristics. The network element alternates between the states.
    Type: Application
    Filed: January 5, 2005
    Publication date: July 6, 2006
    Inventors: Tefcros Anthias, Sunil Potti, Subramanian Srinivasan, Nitesh Trikha
  • Publication number: 20060123425
    Abstract: A method is disclosed for high-speed processing of structured application messages in a network device. According to one aspect, a network device receives a set of message classification rules that have been prepared beforehand by a system administrator or customer. The system analyzes the message classification rules to determine what part(s) of the message are necessary to classify a message according to the message classification rules. This allows the system to consider only the relevant parts of the message and ignore the rest of the message. The system extracts the portion of the message necessary for classifying the message and classifies the message using the values of the extracted information and the message classification rules. A unique sequence of operations is implied by the message classification and those operations must then be applied to the message.
    Type: Application
    Filed: March 24, 2005
    Publication date: June 8, 2006
    Inventors: Karempudi Ramarao, Tefcros Anthias, Sunil Potti, Sandeep Kumar, Stephen Cho, Alex Chan, Yi Jin, Ricky Ho
  • Publication number: 20060123477
    Abstract: A method is disclosed for generating a network topology representation based on inspection of application messages at a network device. According to one aspect, a network device receives a request packet, routes the packet to the destination, and extracts and stores correlation information from a copy of the request packet. When the network device receives a response packet, it examines the contents of a copy of the response packet using context-based correlation rules and matches the response packet with the appropriate stored request packet correlation information. It analyzes recorded correlation information to determine application-to-application mapping and calculate application response times. Another embodiment inserts custom headers that contain information used to match a response packet with a request packet into request packets.
    Type: Application
    Filed: March 24, 2005
    Publication date: June 8, 2006
    Inventors: Kollivakkam Raghavan, Tefcros Anthias, Parley Oleson, Sunil Potti, Raj De Datta, Stephen Cho
  • Publication number: 20060123479
    Abstract: A method is disclosed for protecting a network against a denial-of-service attack by inspecting application layer messages at a network element. According to one aspect, when a network element intercepts data packets that contain an application layer message, the network element constructs the message from the payload portions of the packets. The network element determines whether the message satisfies specified criteria. The criteria may indicate characteristics of messages that are suspected to be involved in a denial-of-service attack, for example. If the message satisfies the specified criteria, then the network element prevents the data packets that contain the message from being received by the application for which the message was intended. The network element may accomplish this by dropping the packets, for example. As a result, the application's host does not waste processing resources on messages whose only purpose might be to deluge and overwhelm the application.
    Type: Application
    Filed: December 7, 2004
    Publication date: June 8, 2006
    Inventors: Sandeep Kumar, Yi Jin, Sunil Potti, Christopher Wiborg
  • Publication number: 20060106941
    Abstract: A method is disclosed for performing message and transformation adapter functions in a network element on behalf of an application. According to one aspect, the network element determines an application layer message that is collectively contained in payload portions of data packets. The application layer message conforms to an application layer protocol, such as Hypertext Transfer Protocol (HTTP). The network element determines the application layer protocol to which the application layer message conforms. Based on the application layer protocol, an adapter is selected from among a plurality of adapters that are accessible to the network element. The application layer message is provided to the selected adapter, which converts the application layer message into a “canonical” message that is not specific to any particular application layer protocol.
    Type: Application
    Filed: November 17, 2004
    Publication date: May 18, 2006
    Inventors: Pravin Singhal, Qingqing Li, Juzar Kothambawala, Parley Oleson, Wai Tung, Sunil Potti