Introducers sending duplicated announcements for upgraded nodes #2887

Open
opened 2017-06-24 09:01:50 +00:00 by nwks · 0 comments
Owner

The duplicated announcements/servers observed in #2875 seems to be linked to node upgrades.

Example:

1st announcement reporting version 1.10.0:

{u'nonce': u'toxgxkremcgsn4a4uyk2dd3pohiv76upkqj5csjtlcqe3vto4k3a', u'app-versions': {u'pycryptopp': u'0.6.0.1206569328141510525648634803928199668821045408958', u'allmydata-tahoe': u'1.10.0', u'pycrypto': u'2.6.1', u'Nevow': u'0.10.0', u'pyOpenSSL': u'0.13', u'foolscap': u'0.6.4', u'twisted': u'13.2.0', u'Twisted': u'13.2.0', u'zfec': u'1.4.24', u'platform': u'Linux-Ubuntu_14.04-x86_64-64bit_ELF', u'simplejson': u'3.3.1', u'setuptools': u'3.3', u'zope.interface': u'unknown', u'python': u'2.7.6', u'pyasn1': u'0.1.7', u'mock': u'1.0.1'}, u'oldest-supported': u'1.0.0', u'seqnum': 6, u'anonymous-storage-FURL': u'pb://ywm2l7y6kzc3n72ux6iytr56xoubxuof@i2p:bulrdymtlmkplsoqyy6uvzx5h5y6x5how4l5lmdm3b5v7yshvgaq.b32.i2p/6hori6l4dptrymo7fd7sclwckzc7sjtk', u'version': 0, u'my-version': u'allmydata-tahoe/1.10.0', u'service-name': u'storage', u'permutation-seed-base32': u'6i2sk6xm6puiw6akq4ek4uet2cmmcf7oqly6wduzzvg7q3rx4u2a', u'nickname': u'zoidberg@mail.i2p_N5'}

2nd announcement with same FURL reporting version 1.12.1:

{u'nonce': u'5hicbhllimpdko7vkn5neeqkauqnvwsf3yxag2flt3gazau67taa', u'app-versions': {u'six': u'1.10.0', u'Nevow': u'0.14.2', u'foolscap': u'0.12.6', u'cffi': u'1.10.0', u'Twisted': u'17.1.0', u'automat': u'0.5.0', u'OpenSSL': u'1.0.1f', u'packaging': u'16.8', u'incremental': u'16.10.1', u'attrs': u'16.3.0', u'pyparsing': u'2.2.0', u'appdirs': u'1.4.3', u'simplejson': u'3.3.1', u'ipaddress': u'1.0.18', u'constantly': u'15.1.0', u'twisted': u'17.1.0', u'platform': u'Linux-Ubuntu_14.04-x86_64-64bit_ELF', u'zope.interface': u'unknown', u'PyYAML': u'3.12', u'pyasn1': u'0.2.3', u'cryptography': u'1.8.1', u'python': u'2.7.6', u'pycparser': u'2.17', u'zfec': u'1.4.24', u'pycryptopp': u'0.6.0.1206569328141510525648634803928199668821045408958', u'pyasn1-modules': u'0.0.8', u'pycrypto': u'2.6.1', u'tahoe-lafs': u'1.12.1', u'pyOpenSSL': u'16.2.0', u'characteristic': u'14.3.0', u'service-identity': u'16.0.0', u'enum34': u'1.1.6', u'setuptools': u'34.4.1', u'idna': u'2.5', u'asn1crypto': u'0.22.0'}, u'oldest-supported': u'1.0.0', u'seqnum': 24, u'anonymous-storage-FURL': u'pb://ywm2l7y6kzc3n72ux6iytr56xoubxuof@i2p:bulrdymtlmkplsoqyy6uvzx5h5y6x5how4l5lmdm3b5v7yshvgaq.b32.i2p/6hori6l4dptrymo7fd7sclwckzc7sjtk', u'version': 0, u'my-version': u'tahoe-lafs/1.12.1', u'service-name': u'storage', u'permutation-seed-base32': u'6i2sk6xm6puiw6akq4ek4uet2cmmcf7oqly6wduzzvg7q3rx4u2a', u'nickname': u'zoidberg@mail.i2p_N5'}


Introducers do not consider the 2nd announcement as being an upgrade of the first one even though FURLs, permutation-seeds, and nicknames are identical.

So it seems that after a node is upgraded introducers do not discard the old announcement unless they are restarted, triggering issue #2875.

The duplicated announcements/servers observed in #2875 seems to be linked to node upgrades. Example: 1st announcement reporting version 1.10.0:<br> *{u'nonce': u'toxgxkremcgsn4a4uyk2dd3pohiv76upkqj5csjtlcqe3vto4k3a', u'app-versions': {u'pycryptopp': u'0.6.0.1206569328141510525648634803928199668821045408958', u'allmydata-tahoe': u'1.10.0', u'pycrypto': u'2.6.1', u'Nevow': u'0.10.0', u'pyOpenSSL': u'0.13', u'foolscap': u'0.6.4', u'twisted': u'13.2.0', u'Twisted': u'13.2.0', u'zfec': u'1.4.24', u'platform': u'Linux-Ubuntu_14.04-x86_64-64bit_ELF', u'simplejson': u'3.3.1', u'setuptools': u'3.3', u'zope.interface': u'unknown', u'python': u'2.7.6', u'pyasn1': u'0.1.7', u'mock': u'1.0.1'}, u'oldest-supported': u'1.0.0', u'seqnum': 6, u'anonymous-storage-FURL': u'pb://ywm2l7y6kzc3n72ux6iytr56xoubxuof@i2p:bulrdymtlmkplsoqyy6uvzx5h5y6x5how4l5lmdm3b5v7yshvgaq.b32.i2p/6hori6l4dptrymo7fd7sclwckzc7sjtk', u'version': 0, u'my-version': u'allmydata-tahoe/1.10.0', u'service-name': u'storage', u'permutation-seed-base32': u'6i2sk6xm6puiw6akq4ek4uet2cmmcf7oqly6wduzzvg7q3rx4u2a', u'nickname': u'zoidberg@mail.i2p_N5'}* 2nd announcement with same FURL reporting version 1.12.1:<br> *{u'nonce': u'5hicbhllimpdko7vkn5neeqkauqnvwsf3yxag2flt3gazau67taa', u'app-versions': {u'six': u'1.10.0', u'Nevow': u'0.14.2', u'foolscap': u'0.12.6', u'cffi': u'1.10.0', u'Twisted': u'17.1.0', u'automat': u'0.5.0', u'OpenSSL': u'1.0.1f', u'packaging': u'16.8', u'incremental': u'16.10.1', u'attrs': u'16.3.0', u'pyparsing': u'2.2.0', u'appdirs': u'1.4.3', u'simplejson': u'3.3.1', u'ipaddress': u'1.0.18', u'constantly': u'15.1.0', u'twisted': u'17.1.0', u'platform': u'Linux-Ubuntu_14.04-x86_64-64bit_ELF', u'zope.interface': u'unknown', u'PyYAML': u'3.12', u'pyasn1': u'0.2.3', u'cryptography': u'1.8.1', u'python': u'2.7.6', u'pycparser': u'2.17', u'zfec': u'1.4.24', u'pycryptopp': u'0.6.0.1206569328141510525648634803928199668821045408958', u'pyasn1-modules': u'0.0.8', u'pycrypto': u'2.6.1', u'tahoe-lafs': u'1.12.1', u'pyOpenSSL': u'16.2.0', u'characteristic': u'14.3.0', u'service-identity': u'16.0.0', u'enum34': u'1.1.6', u'setuptools': u'34.4.1', u'idna': u'2.5', u'asn1crypto': u'0.22.0'}, u'oldest-supported': u'1.0.0', u'seqnum': 24, u'anonymous-storage-FURL': u'pb://ywm2l7y6kzc3n72ux6iytr56xoubxuof@i2p:bulrdymtlmkplsoqyy6uvzx5h5y6x5how4l5lmdm3b5v7yshvgaq.b32.i2p/6hori6l4dptrymo7fd7sclwckzc7sjtk', u'version': 0, u'my-version': u'tahoe-lafs/1.12.1', u'service-name': u'storage', u'permutation-seed-base32': u'6i2sk6xm6puiw6akq4ek4uet2cmmcf7oqly6wduzzvg7q3rx4u2a', u'nickname': u'zoidberg@mail.i2p_N5'}* ---- Introducers do not consider the 2nd announcement as being an upgrade of the first one even though FURLs, permutation-seeds, and nicknames are identical. So it seems that after a node is upgraded introducers do not discard the old announcement unless they are restarted, triggering issue #2875.
tahoe-lafs added the
code-network
major
defect
1.12.1
labels 2017-06-24 09:01:50 +00:00
tahoe-lafs added this to the undecided milestone 2017-06-24 09:01:50 +00:00
Sign in to join this conversation.
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Reference: tahoe-lafs/trac-2024-07-25#2887
No description provided.