migramos de um servidor openldap no linux para um DirX no windows 2008. O pedido do servidor ldap und normal se comporta como esperado. No entanto, com alguns aplicativos (webapps weblogic implantados) estão superando problemas de desempenho.
Rastreamos a atividade de rede e descobrimos que quando o cliente envia uma operação de 'abandono' o servidor ldap envia e ACK com um RTT de aournd 0.1 - 0.2s.
Não temos 100% de certeza, mas achamos que é de onde vem o desempenho. a interação que analisamos teve 270 abandones e 179 dos ACKS tiveram um RTT de > 0,2s.
Não sendo tão familiarizado com o TCP, tenho as seguintes perguntas:
todas as outras interações dizem que o searchrequest / searchresponse tem o ack no pacote de carga útil. isso é 'atrasado ack'? eles só levam cerca de 0,01 s e isso inclui carga útil e presumivelmente computação. Então, por que as ACKS individuais são enviadas para os abandono? ou para colocar a questão da seguinte forma: quando são enviados acks individuais em oposição a dados combinados de ack +?
657 9.2943 ldapserver ldapclient LDAP 170 searchResDone(57)
658 9.2948 ldapclient ldapserver TCP 66 18367 > 389 [ACK] Seq=10007 Ack=19799 Len=0
659 9.2954 ldapclient ldapserver LDAP 1009 searchRequest(134)
660 9.2972 ldapserver ldapclient LDAP 630 searchResEntry(134)
661 9.2973 ldapserver ldapclient LDAP 172 searchResDone(134)
Sequence number:45106, len=106
662 9.2978 ldapclient ldapserver LDAP 76 abandonRequest(134)
Sequence number: 46818, len=10
663 9.3378 ldapclient ldapserver TCP 66 18368 > 389 [ACK] Seq=46828 Ack=45212 Len=0
(The RTT to ACK the segment was: 0.040492000 seconds)
664 9.5062 ldapserver ldapclient TCP 66 389 > 18368 [ACK] Seq=45212 Ack=46828 Len=0
(The RTT to ACK the segment was: 0.208397000 seconds)
665 9.5068 ldapclient ldapserver LDAP 183 searchRequest(136)
666 9.5229 ldapserver ldapclient LDAP 163 searchResEntry(136)
667 9.5229 ldapserver ldapclient LDAP 170 searchResDone(136)
obrigado,
Michael