A programmable network element (400) operates on packet traffic flowing
through the element in accordance with a gateway program (404, 405, 406)
which is dynamically uploaded into the network element or unloaded from it
via a mechanism separate from the actual packet traffic as the element
operates. Such programmable network element can simultaneously operate on
plural packet flows with different or the same programs being applied to
each flow. A dispatcher (402) provides a packet filter (403) with a set of
rules provided by one or more of the dynamically loaded and invoked
programs. These rules define, for each program, the characteristics of
those packets flowing through the network element that are to be operated
upon in some manner. A packet that flows from the network through the
filter and satisfies one or more of such rules is sent by the packet
filter to the dispatcher. The dispatcher, in accordance with one of the
programs, either sends the packet to the program for manipulation by the
program itself, or manipulates the packet itself in a manner instructed by
the program. The processed packet is sent back through the filter to the
network for routing to its destination.
Ein programmierbares Netzelement (400) läßt an den Paketverkehr laufen, der das Element in Übereinstimmung mit einem Einfahrtprogramm durchfließt (404, 405, 406) das dynamisch in das Netzelement gehochladen wird oder von ihm über eine Einheit getrennt von dem tatsächlichen Paketverkehr geleert, während das Element funktioniert. Solches programmierbares Netzelement kann plural Paketflüsse mit unterschiedlichem oder den gleichen Programmen gleichzeitig an laufen lassen, die an jedem Fluß zugetroffen werden. Ein Fahrdienstleiter (402) versieht einen Paketfilter (403) mit Regeln bereitgestellt von einem oder von mehr der dynamisch geladenen und angerufenen Programme. Diese Richtlinien definieren, für jedes Programm, die Eigenschaften jener Pakete, die das Netzelement durchfließen, die auf auf gewisse Weise laufen gelassen werden sollen. Dem Fahrdienstleiter ein Paket, das vom Netz durch den Filter fließt und eine oder mehr erfüllt solcher Richtlinien, wird durch den Paketfilter geschickt. Der Fahrdienstleiter, in Übereinstimmung mit einem der Programme, entweder schickt das Paket zum Programm für Handhabung durch das Programm selbst, oder manipuliert das Paket selbst in gewissem Sinne angewiesen durch das Programm. Das verarbeitete Paket wird durch den Filter zum Netz für die Verlegung auf seinem Bestimmungsort zurückgeschickt.