Why does OpenBMC use Avahi mDNS instead of SSDP - proposal

Joseph Reynolds jrey at linux.ibm.com
Tue Apr 28 02:13:19 AEST 2020


On 4/17/20 3:02 PM, Joseph Reynolds wrote:
> On 4/17/20 11:44 AM, Gunnar Mills wrote:
>> On 4/16/2020 7:42 PM, Richard Hanley wrote:
>>>
>>>     > The members on the call really wanted to encourage OpenBMC to
>>>     implement
>>>     > SSDP instead.
>>>
>
> Thanks for helping to move this forward.  IMHO, Redfish has given us 
> enough direction to move forward with OpenBMC.  I understand the 
> debate, but don't have any insight or energy to contribute. So on a 
> purely practical level...
>
> I hereby propose implementing ManagerNetworkProtocol.Oem.OpenBMC.mDNS.
> Its schema would either be "Protocol" or a new "mDNSProtocol" modeled 
> after SSDProtocol.
> The only property I need to be readwrite is ProtocolEnabled.
> This allows the BMC admin to enable and disable OpenBMC's Avahi-based 
> mDNS discovery service.

Who can effectively ask DMTF Redfish to add a new "mDNSProtocol"? Some 
of the reasons stated in this email thread [1] seem compelling:

1. Installations can be locked into a specific discovery protocol. Some 
use SSDP and some use mDNS.  It would take effort for these 
installations to support an additional discovery protocol.  --> Given 
that real Redfish server implement mDNS Discovery, can we add a Redfish 
capability to control this service?

2. If we wanted to use SSDP discovery of our FOSS Linux-based project, 
what implementation can we use?

I tried, but my knowledge is limited.  You can respond to this email or 
participate in the Redfish discussion here: 
https://redfishforum.com/thread/267/add-avahi-managernetworkprotocol

- Joseph

[1]: You can review the OpenBMC mDNS email discussion thread here:
https://lists.ozlabs.org/pipermail/openbmc/2020-April/

> - Joseph
>
>>>
>>>     It probably isn't a bad thing to be able to support SSDP, don't
>>>     get me
>>>     wrong, but "instead"?  Why would we want to take away service
>>>     advertisement functionality, unless someone wants to explicitly
>>>     disable it?
>>>
>>>     I can understand if they don't want to document, in the standard,
>>>     a way to
>>>     advertise the Redfish service over mDNS, but isn't that a different
>>>     problem from what we're asking for?  Aren't we asking for a 
>>> method to
>>>     manage the enablement of services on the BMC, specifically our mDNS
>>>     service?  So, if we still have mDNS, don't we need a way to
>>>     configure it
>>>     through Redfish?
>>>
>>> I see your point here.  I guess there might be some implicit 
>>> assumption that adding it to a schema implies endorsement elsewhere.
>>
>> Yeah, from Jeff's reply on the thread, "The concern is if we add this 
>> to ManagerNetworkProtocol, it would seem to indicate that Redfish 
>> supports mDNS/DNS-SD for discovery of Redfish services, which it does 
>> not (SSDP is the standard discovery mechanism). "
>>
>>> Discovery is probably an area where supporting a diversity of 
>>> protocols is better than making a single choice.
>>
>> A bit over my head here, but I believe Redfish's interoperability 
>> concern about supporting a second discovery protocol comes from then 
>> all Redfish implementations need to implement both otherwise 
>> different Redfish implementations aren't discoverable. This can be 
>> expanded to OpenBMC's use of mDNS vs Redfish's SSDP and hence the ask 
>> for OpenBMC to implement SSDP. A concern of compatibility of 
>> OpenBMC-based Redfish implementations vs other Redfish implementations.
>>
>> These are all good questions. Anyone can sign up for an account and 
>> post to the Redfish forum if you are interested in pursuing.
>> https://redfishforum.com/thread/267/add-avahi-managernetworkprotocol
>>
>> Forum posts, along with new issues and proposals, are discussed on 
>> the main Redfish calls, Tuesday at 1:00 PM CT and Thursday at 2:00 PM 
>> CT if your company is a supporting member of Redfish.
>>
>> Thanks,
>> Gunnar
>>
>



More information about the openbmc mailing list