GFE Control Panel Guy Ezra Prof. Ran Giladi Mr. Niv Yemini
Introduction Project’s Goal Software Design Implementation and Testing Creating configuration platform for the GFE system Software Design Implementation and Testing Communication Protocols – VLAN Local and Remote GFE Control Panel
What’s GFE ? General Forwarding Element Generic and flexible: Forwarding, Processing, Multicast, Encapsulation/De-capsulation, QoS and more. XML based API Based on Logical Functional Blocks (LFBs) GFE Control Panel
What’s the Problem GFE Programming is currently done using: Native API Supported programming protocol (e.g., ForCES and OpenFlow) Inconvenient for developers Generic and Dynamic approach GFE Control Panel
GFE Control Panel Interface
General Command line style Commands are actually Scripts – Generic configuration Commands are organized in hierarchically ordered, technology oriented, categories Categories and their respective commands are loaded on initialization – not hard coded Enables remote operation GFE Control Panel
GFE CP Components Diagram Settings Inner Commands System Commands Command Category GFE Control Panel GFE GFE CP Components Diagram GFE Control Panel
GFE CP Interface Features Command line style Interface GFE Control Panel
GFE CP Interface Features Using scripts for editing the LFB definitions GFE Control Panel
Scripts Manual Signature Command Lines GFE Control Panel
Scripts A script has 3 parts: Manual header ( “//” ) Signature line : procedure ReturnValue = CommandName( arg1, arg2 ) Arguments are passed by order, as in programming function. Script command lines GFE Control Panel
Scripts Structure Variables Functions “Voids” Loops GFE Control Panel
GFE CP Interface Features Getting help is easy GFE Control Panel
GFE CP Interface Features Logging Debugging Reverse Operation GFE Control Panel
Executing Scripts 1 5 7 3 create GFE@CP > VLAN Par1 Par2 Par3 5 7 3 create Classifier Forwarder Mapper Settings GFE Control Panel
Executing Scripts ScriptRunner 2 ScriptFile ScriptLogger Variables Classifier Par1 Settings Forwarder Par2 Mapper Par3 GFE Control Panel
Get line from ScriptFile Executing Scripts Get line from ScriptFile Execute Line Handle Result ScriptFile Variables ScriptLogger Settings Classifier Forwarder Mapper GFE Control Panel
Executing Scripts Lines Function Execution Result F_Function Execute Function Script Error ScriptFile Variables ScriptLogger Settings Classifier Forwarder Mapper GFE Control Panel
Executing Scripts Lines ScriptLogger ScriptLogger GFE Control Panel
GFE Control Panel The Interface can work either locally or remotely In order to remotely access the GFE, a Web Services bundle has been created GFE Control Panel
GFE Control Panel Web Service
GFE Web Service Enabling remote operation Stand Alone component Including a Client-side module and a Server-side application SOAP Approach GFE Control Panel
Web Service Architecture Client Server GFE System Client Program GFE Web Service GFE Tables GFE Control Panel
GFE Web Service API XML XML XML Client Server XML Classifier Web Server GFE Handle LFB Load XML Forwarder GFE Tables XML Mapper GFE Control Panel
Future Work Finalizing the GFE Control Panel Interface and Web Service as a product Adding functionality to scripting, as required by complex protocols, to be tested with the GFE system Creating other configuration programs, such as web based interfaces, using the GFE Web Service GFE Control Panel
Thank You!