100 likes | 238 Vues
This paper presents the design and implementation of the NetServ signaling protocol based on the NSIS framework. The NetServ protocol operates atop GIST in C-mode, facilitating request validation, authentication, and installation/removal of service modules on the data path. Key features include state discovery of on-path nodes and services, logging, and error collection for improved management. The message structure employs TLV encoding, allowing seamless data processing by all nodes involved in packet transmission. The implementation relies on open-source technology, enabling service triggering through command-line tools or shared libraries.
E N D
NSIS basedNetServSignallingProtocol Design and Implementation Roberto Francescangeli VisitingPhDstudent
NetServSignalingProtocol • On-Path NSIS basedprotocol • NetServprotocolruns on top of GIST in C-mode • NetServprotocolwillprovide • Requestvalidation and authentication • Installation and removal of service modules on path • NetServ network probingfeaturessuchas • State of on-pathnodes (TopologyDiscovery) • State of services (Service Discovery) • Logs and errorscollection for service/node management system or debug
Design of NetServProtocol 1 • 3 Requestmessages • SETUP • REMOVE • PROBE • 3 Responsemessages, one for eachrequest • Messagescarry TLV encoded data (GIST-like format) • Probe Responsecontains a stack of responses • Eachnodetraversed by the probe addsitsown data • Initiatingnodewillget the stack and processit • Data can be used by othernodes on the pathaswell • Authorization for Probe Requests (TBD)
Design of NetServProtocol 2 • Only NSIS nodes with a runningNetServ NSLP willprocess the protocolmessages • Othernodesforward the packetstransparently
Message and TLV Objects 1 • SETUP Request • Data ID • URLs • Lifetime • [Security, NodeIDs, ConditionalInstall, Additional Info] • REMOVE Request • Data ID • [Security, NodeIDs, ConditionalInstall, Additional Info] • PROBE Request • Data ID • Probe Ids • Security
Message and TLV Objects 2 • SETUP and REMOVE Response • Response (class, code, object of interest) • [Additional Information] • PROBE Response • Node ID • Data ID • Probe Data Each NODE additsownresponse to the messagecreating a stack
GIST and NetServProtocol • NetServProtocolruns on top of GIST • GIST provides hop by hop nodediscovery, peerassociation and messagetransport
ProtocolImplementation • Basedcompletely on Open Source technologies • 2 free GIST layerimplemetationsavailable: • FreeNSIS by University of Göttingen • NSIS-KA by University of Karlsruhe • C++ based • Multi-process or Multi-thread • Timer and Hashtableslibraries • Common API between GIST and NSLP makes the two GIST implementationsswappable
ImplementationDetails • Services can trigger NetServsignalingusing a command line tool or a C++ Shared Library (.so) thatwillconnectdirectly to the NSLP daemon • GIST daemonalwaysconnected to NSLP daemon • NSLP daemonalwaysconnected to NetServ controller • NetServ controller will validate and executerequests • Download, verification, installation of services • Service Container management • NetServKernel management • Virtualization of different Service Containers management