[zeromq-dev] Connecting with CURVE gives a timeout on one host but not the other

Pieter Hintjens ph at imatix.com
Tue Mar 18 17:18:43 CET 2014


Can you rebuild the server using libzmq master? It will print
informational messages when there are CURVE authentication errors.

On Tue, Mar 18, 2014 at 1:33 PM, Goswin von Brederlow <goswin-v-b at web.de> wrote:
> Hi,
>
> I'm having  clients that uses a REQ socket to connect to a servers
> ROUTER socket using CURVE. Now one client fails to connect and retries
> over and over after a timeout and I have no idea why.
>
> ===== FAILING client =====
>
> [pid 18880] connect(12, {sa_family=AF_INET, sin_port=htons(6004), sin_addr=inet_addr("192.168.52.254")}, 16) = -1 EINPROGRESS (Operation now in progress)
> [pid 18880] getpeername(12, {sa_family=AF_INET, sin_port=htons(6004), sin_addr=inet_addr("192.168.52.254")}, [16]) = 0
> [pid 18880] recvfrom(12, "\377\0\0\0\0\0\0\0\1\177", 12, 0, NULL, NULL) = 10
> [pid 18880] recvfrom(12, 0x7f9840000e92, 2, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
> [pid 18880] sendto(12, "\377\0\0\0\0\0\0\0\5\177\3", 11, 0, NULL, 0) = 11
> [pid 18880] recvfrom(12, "\3\0", 2, 0, NULL, NULL) = 2
> [pid 18880] recvfrom(12, "CURVE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 52, 0, NULL, NULL) = 52
> [pid 18880] recvfrom(12, 0x7f98400031a0, 8192, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
> [pid 18880] sendto(12, "\0CURVE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 53, 0, NULL, 0) = 53
> [pid 18880] sendto(12, "\4\310\5HELLO\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\v\243\25\21'\240\354\321,c*\0\375\rS\4^x\220\\\2217o\323\27\275\264})\26\345>\0\0\0\0\0\0\0\0003X\327\274\266|\350$\227\342\221\325nvl\242\212\5\207\346l\372\n\337S\4\2712\342\5be]\37k\325\270Y\354I\306\251\10J\f\204\211i\300\10\31#}\243\232\26c\264Z\235\326\263\372N\320t\317?)\374A\r5u\370\27\36\n?I", 202, 0, NULL, 0) = 202
> [pid 18880] recvfrom(12, "\4\250\7WELCOME\356ul\321`\267\2459:6T\203\23\355\2624\351Q\30M\374)\31%\232lYB\201H\335\360\25c\373\343\21%\335Z#X\0243\356\274\320\3462+\332\245\0268\250w\33\274\355\213\252\204\361\366\310\305\16\304\262\27\232\204\310:\367\270\37\257\321\203\325\210?\306\214\r\357\232Z\36Tn\344\324\240\35\255>\322c&Vi\327\346y5ebR>t7\345\323\372\2141\315,\36\352]\\\35\367\310P\2Yp\3\255O\6T\231[\357\304v\20\376N[\340\217/\315e\347\34\n\322\332U\223\27\366N", 8192, 0, NULL, NULL) = 170
> [pid 18880] sendto(12, "\6\0\0\0\0\0\0\1(\10INITIATE.{\7_\3733\211\236\236\201\233V\22$\371>\367BQ\31_WA\226\27\275\227\337\363D\244}\373\5\376d\26\263\307\0030\212e!\302'\7\17\367'u\322\326\26WT\312=\342\25O\310\227i\351,WD\242\303\16\311\230\356\270Z\273\204\350\256y\377\271\331|v\33\271\25\360\340\266v\37\244\224\1\0\0\0\0\0\0\0\230\32\360\337\23\4jq\352!\227+\214/E]&f+\261lR5u\214\31!\3455qt\344\321\270\307G\226\312rlS{5;\27\211j\305\357\335&0\3668\254\304X\374\202\2151)k)\347!\27S\23\223]K\207\347\3134\2741\204\237\230J;\26No\201\24nOl\305M\367\26\217\303?\335\3047\215>\371\5\331\264\233\305m\230\270\332l\234=\243?\2726\251\270G\312\350|,;W\372Nh\33\215?\355\26\210\273\1\374\366\7\223N\255\267\246zZ\370v\243\\\364mo,\25P\310\32\255\330\320\224\332\\M\307\214w\335\24f\364\r\334Y\202\375\243\236", 305, 0, NULL, 0) = 305
> [pid 18880] recvfrom(12, "\4A\5READY\1\0\0\0\0\0\0\0v\20o\340l1\366\232&\310{\223\10\252\304_;>\26\30>-\374Y\356\222\303\247C\323\7\20\257_*7\364\\a.\223o\301\250;I\203J:\312g", 8192, 0, NULL, NULL) = 67
> [pid 18880] sendto(12, "\0!\7MESSAGE\2\0\0\0\0\0\0\0)\313\260\0041=\177\253\360$\362\332\34L\7R\21\0~\7MESSAGE\3\0\0\0\0\0\0\0\370rK&R\367B\361\210\232{\215\265))CIB\221\2744\316\210T\366$\307!-\334&\331\275\273[\211\f\25\33!V\225E'v\2649[VN\10\n\271\v\374\202\225n\262X\302\327\353=\1\251\223\232\225\220+\262\21\30\0104\220\17\245\241)\317\352G\222@\3\253\355\325>\346\347\310z?\310\325\0\t\v\32\2743\247\362>\27e\264", 163, 0, NULL, 0 <unfinished ...>
> *timeout*
>
> ===== SUVVESSFULL client =====
>
> [pid  7708] connect(12, {sa_family=AF_INET, sin_port=htons(6004), sin_addr=inet_addr("192.168.52.254")}, 16 <unfinished ...>
> [pid  7708] getpeername(12, {sa_family=AF_INET, sin_port=htons(6004), sin_addr=inet_addr("192.168.52.254")}, [16]) = 0
> [pid  7708] recvfrom(12, "\377\0\0\0\0\0\0\0\1\177", 12, 0, NULL, NULL) = 10
> [pid  7708] recvfrom(12, 0x7f954c000e92, 2, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
> [pid  7708] sendto(12, "\377\0\0\0\0\0\0\0\10\177\3", 11, 0, NULL, 0) = 11
> [pid  7708] recvfrom(12, "\3\0", 2, 0, NULL, NULL) = 2
> [pid  7708] recvfrom(12, "CURVE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 52, 0, NULL, NULL) = 52
> [pid  7708] recvfrom(12, 0x7f954c0031a0, 8192, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
> [pid  7708] sendto(12, "\0CURVE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 53, 0, NULL, 0) = 53
> [pid  7708] sendto(12, "\4\310\5HELLO\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0=\17\34\205\231\203\215pA\331\350M\3n\270\35f\273\363\17e\341\313R(\303\2775\1\3036l\0\0\0\0\0\0\0\0\352\210 at E\2\375\307\224\273^g\371my\255\20\320\274-\6\3506\372\25dDc\364\240\0316\345\34\201\317SS5\360\250\2640\250\16R\3\235.\202\311\3\236\362\247\357\217ri\303\21\36\373s(\223\2038\275\231\2453>\17(\31\350\25\340e\342", 202, 0, NULL, 0) = 202
> [pid  7708] recvfrom(12, "\4\250\7WELCOME\344\321|p\221\376\230\342I\340\36y\375\326^aY\323\364e\354\340E\367O\353{\253\0\33\232\233\36\370k\244\237\210\356\361\207^\0378\305\243=\323\34\3\326[@\237Q%2\314\375Z\250\30;\360\333\377\360:\17\254\345 D\r\352\316\241\230\232\36303\336\36J:\310\7\323\246\336\226\232T8'\324Xx\26,\27\311F(\200/\346FX\236h\2v\2456T\261V]\370^\225\305\257\245\f@\266r\277\312\20^\244\6>a.\352\356\306O\216\252\2647\360\336,\264\23/J\361\367\323\26n ", 8192, 0, NULL, NULL) = 170
> [pid  7708] sendto(12, "\6\0\0\0\0\0\0\1+\10INITIATE\321>31.\22\351\363h\225\311\350x\310\242(\351\22\371\207D\16\0264\300\277\245\341H[\2252I+/Dq\307\267\263?\206Y[\366-\356\242'x\363`\34\333\324`\10\25\346h\f\27\37277:\210\335\241S\27eq\200\253h\230\202\241\3231\235\324\36\242\345\210\256\342i\241Ii\216\2131\1\0\0\0\0\0\0\0\325\211\264:\320zR\356_\21\32\366ge\305\337\26\375_P\32+\216f,\26\37PU\345V\351\260Y!y\246h\261\210\207\226>\250\335\3760vi\302\235%\36$\2713\355]`\314\271\252\335\234\177\370\212\216\331\5\22\3054\372\223\323\342\340\237-\3\n%~\2511\361+ %e8y.\3534\374\31\325\207\222\367\376\2776\\/\207\373K\272_\253\233%\203i\7\367\317\223\257\266\346\300]\245.\35x\320m\304t\345I\222\200\353P\274\17\302\373\\\1\300\36\230\333\306\363d\210\33Ro\201\26o\342\336\32>q\7\227\27\363\205r\334\26\1\377\242B\344\31E21\215\224\202\362", 308, 0, NULL, 0) = 308
> [pid  7708] recvfrom(12, "\4A\5READY\1\0\0\0\0\0\0\0\200P\0301\204s\364\345\346\233\213\33k+U\6\343ew_-C\354\234l\201\346\210\264\264\310\n\341y at 2\33D\233\4@\202\33\307MUL\3\233\210\216", 8192, 0, NULL, NULL) = 67
> [pid  7708] sendto(12, "\0!\7MESSAGE\2\0\0\0\0\0\0\0\377\343P=\307\345\311\6\212\213:\253!\315L/x\0~\7MESSAGE\3\0\0\0\0\0\0\0[P\266L\200/\t\306-\204\264$W/\4\247\254\266u7r$n/!>\32\23\255'\315\333\270\224\33\305\201\243\34\250\2156-\350EIs\211\257\313\7!\214\305\210\5\356$\24O\204\212\372\1\216-[5\317\233F\372\265\353\341L\376\247\\\337\254k\7\t\224iyr\3055\357\2654\230\374z\2\324\302{\257y\212\222\237Y\273\261Z\247", 163, 0, NULL, 0 <unfinished ...>
> [pid  7708] recvfrom(12, "\0!\7MESSAGE\2\0\0\0\0\0\0\0\247\356Zk\345\261Q\240C\241\33\312\336{<\317\"\0\306\7MESSAGE\3\0\0\0\0\0\0\0X\222\255\266\2469z\377\357+\371\353\0\26\316.\vw\f\377\375\340\276jU\324\200\313\277\1\330\303\207z\320\340\220\373\252y\352\20W\fz\253\24R\237_P8\7\0-\226\n\352\7v-_-\220:\247\33\307\376!\231\31\0^\351\7\250\307i\363\344\264\370\205\322\231\230\211\343\3\267p\0370\346\357w`\334O\325\356r\217h_\356)\362-#\262e;\236h\35\374\264r\256n\245G\34\225\n\356\23\307~\270\246\271\37Ij\353Z(\314\271\23A\0208\26\325\220\330\270\233\177\274\21\344\270\177l\240)\206\234\376,\t\354@}\214\205\341\374\360\205\320g(\377\232\313\237", 8192, 0, NULL, NULL) = 235
> ...
>
> Am I correct assuming that the connection is established and the CURVE
> handshake completed sucessfully with the "READY" message?
>
> After that the clients seem to send their first request and the
> failing client never gets a reply.
>
> Any ideas?
>
> MfG
>         Goswin
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev



More information about the zeromq-dev mailing list