https://www.ibm.com/developerworks/cn/linux/l-slp/
服务发现(service discovery) 是在网络环境中发现必须使用的服务的能力。例如,如果要在网络上新安装一个桌面系统,应该如何对这个系统配置邮件服务器、缺省网关(用来对本机之外的连接进行路由)或可用打印机呢?通常,这些都是信息都要向系统管理员进行咨询,然后在每台机器上手工进行配置 —— 考虑到网络中的情况不可避免地会发生变化,这一耗时的过程需要反复多次进行维护。
因此,当网络上的服务被删除或位置发生变化时,如果可以自动发现这些服务,您就可以看到这样做的价值有多大。在本文中,我将向您介绍一种专门用于简化该过程的协议 —— Service Location Protocol(SLP)—— 并深入介绍这种协议用来进行服务广播和发现所采用的架构。
除了 API 库之外,OpenSLP 还提供了 slptool
,使用这个工具可以交互地执行大部分 SLP 的功能。这个工具对于注册或查找服务来说非常有用。例如,下面的代码就展示了如何查找一个日期查询服务:
$ slptool findsrvs service:daytime
service:daytime://www.mtjones.com:45667,65535
$