Service Location Protocol
Le Service Location Protocol est un protocole de découverte de services qui permet aux ordinateurs et autres dispositifs de trouver des services dans un réseau local sans aucune configuration préalable.
PRINCIPE
Chaque service doit avoir une URL qui est utilisée pour localiser le service. L'URL d'une imprimante pourrait ressembler:
service:imprimante:lpr://myprinter/myQueue
Cette URL dĂ©crit une file appelĂ©e myQueue sur une imprimante avec le nom d'hĂŽte myprinter. Le protocole utilisĂ© par l'imprimante est LPR. Notez qu'un rĂ©gime spĂ©cial dâURL service est utilisĂ© par l'imprimante. Les URLs "service:" ne sont pas nĂ©cessaires: tout rĂ©gime d'URL peut ĂȘtre utilisĂ©, mais ils vous permettent de rechercher tous les services du mĂȘme type (par exemple, toutes les imprimantes) quel que soit le protocole qu'ils utilisent. Les trois premiĂšres composantes du service: URL de type (service: imprimante:lpr) sont Ă©galement appelĂ©s type de service. Les deux premiers volets (service:imprimante) sont appelĂ©s type de service abstrait. SLP a trois rĂŽles diffĂ©rents pour les pĂ©riphĂ©riques. Un appareil peut Ă©galement comporter deux ou les trois rĂŽles Ă la fois :
- Les User Agent (UA) sont des dispositifs qui recherchent des services,
- Les Service Agent (SA) sont des dispositifs qui annoncent un ou plusieurs services,
- Les Agents Directory (AD) sont des dispositifs de cache.
L'existence d'un Agent Directory dans un rĂ©seau est facultative, mais si un Agent Directory est prĂ©sent, les User Agent et les Service Agent sont tenus de l'utiliser au lieu de communiquer directement. SLP est un protocole orientĂ© paquets. La plupart des paquets sont transmis en utilisant UDP, mais TCP peut aussi ĂȘtre utilisĂ© pour la transmission de paquets plus longs. En raison du manque de fiabilitĂ© potentiels de l'UDP, SLP rĂ©pĂšte tous les multidiffusions Ă plusieurs reprises dans des intervalles de plus en plus long jusqu'Ă ce qu'une rĂ©ponse a Ă©tĂ© reçue. Tous les dispositifs doivent ĂȘtre Ă l'Ă©coute du port 427 pour les paquets UDP, les SAs et DAs devrait aussi Ă©couter les connexions TCP sur le mĂȘme port. Quand un client rejoint un rĂ©seau, il fait une requĂȘte en multidiffusions pour l' Agents Directory sur le rĂ©seau. Si aucune des rĂ©ponses ne vient dâun Agents Directory, il considĂ©rera que c'est dans un rĂ©seau sans Agents Directory.
CAS AVEC Agents Directory
Quand une SA dĂ©couvre un Agents Directory, il est nĂ©cessaire d'inscrire tous les services Ă la Agents Directory. Quand un service disparaĂźt, les SA doivent en informer le Agents Directory et sây dĂ©sinscrire. Un User Agent va envoyer le paquet de requĂȘte Ă la Agents Directory en utilisant soit UDP ou TCP. Comme chaque SA doit inscrire tous les services avec le Agents Directory, le Agents Directory est en mesure de rĂ©pondre Ă la demande complĂštement et envoie simplement le rĂ©sultat Ă l'User Agent.
CAS SANS Agents Directory
Afin d'envoyer une requĂȘte dans un rĂ©seau sans Agents Directory, l'User Agent envoie un paquet UDP multi-caste qui contient la requĂȘte.