Hi All,


Enabling SLP Server on openBMC

What is SLP

=======

Service Location Protocol (SLP) is a protocol that provides a framework to allow networking applications to discover the existence, location, and configuration of networked services in enterprise networks.

openSLP is widely accepted in the industry

What do we need to do?

==============

1) Bring SLP(OpenSLP) in image:- Write the bitbake recipe(didn't find the readily available bitbake recipe)

2) Configure the services through Settings daemon.

3) Write the .service file as it needs to start after network is up(after networkd-online.target)

How to configure the services which needs to be registered with slpd

============================================

Option 1:- settingsd

Note: Gives the flexibility to change the configured services @ runtime. Do we require this functionality?

Option 2:conf file for discovery services

Note: During build time we can get the service info(service-name,port) from the existing infra(discoveryservice.bbclass)

How to register the services
==================

1) Static Registration:- will not work as we need ip/host-name details which we don't have @build time.

2) Application(new DBUS app) will register the configured services to the slpd on startup.

We need to provide the dynamic registration support on BMC as IP of BMC can change any time.  Registration of services with slpd takes the URL of the service which includes ip and port of the service which needs to be registered.

Create a DBUS service application

=====================

1) Once the service starts it registers the configured services with slpd.

2) listening on RTNETLINK event for ip change: raise a dbus signal(for the IP change)

    
     if there is IP change then dereg the old service followed by  reg service as the ip has changed.

Regards
Ratan Gupta