上次对Ldap做了简单的介绍,以及实现一个JNDI Ldap service provider需要做哪些事情,这次来说说Ldap协议。
这里的协议主要是指网络传输协议,消息的编码格式以及client和server的交互方式。
先说交互方式,Ldap明确指出:协议双方交互信息必须封装为LDAPMessage进行。也就是说client向server发的是LDAPMessage,
server向client发的也是LDAPMessage。这样server和client只需要收发LDAPMessage就可以了,何等简单。
协议本身是基于request-response方式进行的,就是问答方式了:client发出请求,server接收到后处理,最后将结果返回给client,
当然也有个别request没有response,如abandon,而search有多个response。消息到达的顺序可以是任意的,也就是说client可以使劲的
发request,然后再去接收response,接收到的response并不保证和request的顺序一致,request和response的对应通过MessageID保证。
这部分要完全实现还是有点小麻烦的,目前我们的实现都是发一个收一个,避免这种情况的产生,如果有时间的话还是希望能实现一下,
蛮有挑战的。
关于LDAPMessage的编码解码下次写,玩游戏去了:-)
posted on 2007-10-30 21:21
JBahamut 阅读(142)
评论(0) 编辑 收藏