×

Dynamically adding application logic and protocol adapters to a programmable network element

  • US 7,840,700 B2
  • Filed: 06/21/2006
  • Issued: 11/23/2010
  • Est. Priority Date: 06/21/2005
  • Status: Active Grant
First Claim
Patent Images

1. A data processing apparatus, comprising:

  • a plurality of network interfaces that are coupled to a data network for receiving one or more packets therefrom and sending one or more packets thereto;

    one or more processors;

    a switching system coupled to the one or more processors and packet forwarding logic, wherein the switching system and packet forwarding logic are configured to receive packets on a first network interface, determine a second network interface on which to send the packets, and to send the packets on the second network interface;

    a non-transitory computer-readable volatile or non-volatile storage medium having an application program stored thereon;

    program extensibility logic which when executed by the one or more processors is operable to cause;

    receiving one or more user software application program extensions,using the one or more user software application program extensions, changing a runtime behavior of the packet forwarding logic during a normal processing of the switching system,wherein the user software application program extensions comprise logic operable to interface with the application program and perform any of message processing functions and protocol processing functions that are not in the application program, and which emit and consume messages exchanged at a Layer Five or higher of the Open Systems Interconnection (OSI) reference model;

    installing the one or more user software application program extensions without restarting the apparatus;

    receiving one or more packets representing an application message;

    selecting a particular one of the user software application program extensions based on a protocol associated with the message;

    loading the particular one of the user software application program extensions;

    executing business logic of the application program associated with the received message;

    invoking a function of the particular one of the user software application program extensions in response to a call in the business logic.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×