Subnet Management - pjljw (Application)

This topic is intended to capture Subnet Management activities over time for the pjljw subnet, providing a place to ask questions and make observations about the management of this subnet.

At the time of creating this topic the current subnet configuration is as follows:

Expand
{
  "version": 44449,
  "records": [
    {
      "key": "subnet_record_pjljw-kztyl-46ud4-ofrj6-nzkhm-3n4nt-wi3jt-ypmav-ijqkt-gjf66-uae",
      "version": 44449,
      "value": {
        "membership": [
          "fqczw-cfksr-xl2d4-5bubi-2am2s-znzzk-k6tma-5o6dq-hmvnc-rjhfs-wqe",
          "5fpzb-vvlbo-rtbdy-4kcev-qy4k2-okbxr-3wtbp-nmjra-bqknh-zmquz-kqe",
          "yszpk-lt4rh-gktee-rctwj-hrajy-vbg62-jy24t-47ua3-mu55b-yxonx-zae",
          "yjbaw-7mgap-u2qrc-ol6db-ncf2z-wgxuy-4337g-2wjw2-6jjcj-wzdgc-5ae",
          "4bokb-dd7ie-6sx2e-s75z3-ncqvu-rfjzo-gfe4g-lzlma-bship-vmd2o-vqe",
          "z6jp6-245uu-gh3cs-sblcy-f3jmj-s4ngl-v3z4u-lafz2-qudjr-6mbqx-vqe",
          "dd3ye-qncdq-jvghc-iymve-55lbp-hf6mq-6a3pa-ms5yj-espcn-n32jm-3qe",
          "c6on3-qhvg5-k5v5v-wcson-2wek7-blvc7-xnr54-gyakg-6etp7-khw33-qqe",
          "vdvh4-bdy7m-gyxbj-7pt5m-ykhey-mtobh-ul4kq-mwozd-t6enu-3pcau-jqe",
          "ogigs-wyvqw-emnfo-ldeuo-6nic6-bdvxc-xu7dg-ji46r-wcxrk-syvqt-gqe",
          "tkoxk-7juao-nynai-s6dt7-mpsfm-alwl7-yg5md-2zsbl-twivd-xbdae-4qe",
          "vtbf4-olrta-q4eso-47b2z-ncgrs-lksia-xohkj-slwil-m5xoi-uxovi-wae",
          "gtjga-mlpu7-5vz4f-knn5w-i2fea-cy3r4-vq245-ip62r-fosvm-7w3ck-2qe"
        ],
        "nodes": {},
        "max_ingress_bytes_per_message": 2097152,
        "max_ingress_messages_per_block": 1000,
        "max_block_payload_size": 4194304,
        "unit_delay_millis": 1000,
        "initial_notary_delay_millis": 600,
        "replica_version_id": "2c0b76cfc7e596d5c4304cff5222a2619294c8c1",
        "dkg_interval_length": 499,
        "start_as_nns": false,
        "subnet_type": "application",
        "features": {
          "canister_sandboxing": false,
          "http_requests": true,
          "sev_enabled": false
        },
        "max_number_of_canisters": 120000,
        "ssh_readonly_access": [],
        "ssh_backup_access": [],
        "ecdsa_config": null,
        "chain_key_config": null
      }
    }
  ]
}

There’s an open proposal for changing subnet membership - https://dashboard.internetcomputer.org/proposal/131414. This information is presented below:

  • red marker represents a removed node
  • green marker represents an added node
  • highlighted patches represent the country a node sits within

Table
Country Data Center Owner Node Provider Node
--- Germany Munich (mu1) q.beyond Staking Facilities ogigs-wyvqw-emnfo-ldeuo-6nic6-bdvxc-xu7dg-ji46r-wcxrk-syvqt-gqe
+++ China HongKong 3 (hk3) hkcolo Power Meta Corporation 5ei6o-6mx3z-zag6b-ubdsz-odxr3-ytixv-rrnv3-khmkc-4tuni-ber6p-mae
Australia Melbourne 2 (mn2) NEXTDC Icaria Systems Pty Ltd yjbaw-7mgap-u2qrc-ol6db-ncf2z-wgxuy-4337g-2wjw2-6jjcj-wzdgc-5ae
Belgium Brussels (br1) Digital Realty Allusion vdvh4-bdy7m-gyxbj-7pt5m-ykhey-mtobh-ul4kq-mwozd-t6enu-3pcau-jqe
Switzerland Geneva (ge1) HighDC Archery Blockchain SCSp gtjga-mlpu7-5vz4f-knn5w-i2fea-cy3r4-vq245-ip62r-fosvm-7w3ck-2qe
Switzerland Zurich 2 (zh2) Everyware DFINITY Operations SA 4bokb-dd7ie-6sx2e-s75z3-ncqvu-rfjzo-gfe4g-lzlma-bship-vmd2o-vqe
China Seoul 3 (kr1) KT Pindar Technology Limited fqczw-cfksr-xl2d4-5bubi-2am2s-znzzk-k6tma-5o6dq-hmvnc-rjhfs-wqe
Germany Frankfurt 2 (fr2) Equinix Virtual Hive Ltd dd3ye-qncdq-jvghc-iymve-55lbp-hf6mq-6a3pa-ms5yj-espcn-n32jm-3qe
India New Delhi 1 (nd1) Marvelous Web3 DC Marvelous Web3 5fpzb-vvlbo-rtbdy-4kcev-qy4k2-okbxr-3wtbp-nmjra-bqknh-zmquz-kqe
Romania Bucharest (bu1) M247 Iancu Aurel tkoxk-7juao-nynai-s6dt7-mpsfm-alwl7-yg5md-2zsbl-twivd-xbdae-4qe
Singapore Singapore 2 (sg2) Telin OneSixtyTwo Digital Capital vtbf4-olrta-q4eso-47b2z-ncgrs-lksia-xohkj-slwil-m5xoi-uxovi-wae
Slovenia Ljubljana (lj1) Posita.si Fractal Labs AG c6on3-qhvg5-k5v5v-wcson-2wek7-blvc7-xnr54-gyakg-6etp7-khw33-qqe
United States of America (the) Dallas (dl1) Flexential 87m Neuron, LLC z6jp6-245uu-gh3cs-sblcy-f3jmj-s4ngl-v3z4u-lafz2-qudjr-6mbqx-vqe
South Africa Gauteng 2 (jb2) Africa Data Centres Honeycomb Capital (Pty) Ltd yszpk-lt4rh-gktee-rctwj-hrajy-vbg62-jy24t-47ua3-mu55b-yxonx-zae

The removed node is replaced with a node based in China. I’ve verified that this node is currently unassigned.

The proposal mentions that his change is needed due to the Munich (mu1) data centre being due for decommissioning. See here for more discussion and references.

Subnet pjljw is being made public by → Expanding the list of Public Subnets on the Internet Computer - Governance / NNS proposal discussions - Internet Computer Developer Forum (dfinity.org)

DFINITY will submit an NNS proposal today to reduce the notarization delay on the subnet, pjljw, similar to what has happened on other subnets in recent weeks (you can find all details in this forum thread).

2 Likes

Voted to adopt proposal 133067. The initial_notary_delay_millis is set to 300 and the subnet_id is correct.

1 Like

Voted to adopt proposal 134282. The proposal seeks to remove a cordoned node from the subnet and specifies that the associated data centre is being offboarded “after 48 months”. Decentralisation parameters are unchanged. The relevant context is provided by this forum post and associated discussion. However, I voted before this reply was posted. The subsequent posts indicate that this proposal was submitted in error, so I would therefore now recommend a reject vote.

I’ve vote to reject proposal 134282. The proposal is inaccurate, and appears to have been the result of a typo. The proposal was announced here.

1 Like

Voted to reject proposal 134282. This result was submitted in error as pointed out by @timk11 which we can verify through this confirmation by DFINITY in a forum post.

1 Like

A new proposal with id 134619 has been submitted, please take a look.

Click here to open proposal details

Replace a node in subnet pjljw

Motivation:

  • replacing z6jp6 as per user request: Requested by the node operator in order to redeploy all nodes in the DC after 48 months, and switch to a new node operator ID.

NOTE: The information below is provided for your convenience. Please independently verify the decentralization changes rather than relying solely on this summary.
Code for calculating replacements is at dre/rs/decentralization/src/network.rs at 79066127f58c852eaf4adda11610e815a426878c · dfinity/dre · GitHub

Decentralization Nakamoto coefficient changes for subnet pjljw-kztyl-46ud4-ofrj6-nzkhm-3n4nt-wi3jt-ypmav-ijqkt-gjf66-uae:

    node_provider: 5.00 -> 5.00    (+0%)
      data_center: 5.00 -> 5.00    (+0%)
data_center_owner: 5.00 -> 5.00    (+0%)
             area: 5.00 -> 5.00    (+0%)
          country: 4.00 -> 4.00    (+0%)

Mean Nakamoto comparison: 4.83 → 4.83 (+0%)

Overall replacement impact: equal decentralization across all features

Details

Nodes removed:

  • z6jp6-245uu-gh3cs-sblcy-f3jmj-s4ngl-v3z4u-lafz2-qudjr-6mbqx-vqe [health: healthy]

Nodes added:

  • k67we-rbzgg-dzz2e-y3rki-ourfo-tfxdk-boewb-zyayq-l5m7f-su4px-gae [health: healthy]
    node_provider                                                              data_center            data_center_owner              area                        country   
    -------------                                                              -----------            -----------------              ----                        -------   
    4fedi-eu6ue-nd7ts-vnof5-hzg66-hgzl7-liy5n-3otyp-h7ipw-owycg-uae       1    br1               1    Africa Data Centres       1    Brussels Capital       1    AU       1
    6nbcy-kprg6-ax3db-kh3cz-7jllk-oceyh-jznhs-riguq-fvk6z-6tsds-rqe       1    bu1               1    Digital Realty            1    Bucuresti              1    BE       1
    7ryes-jnj73-bsyu4-lo6h7-lbxk5-x4ien-lylws-5qwzl-hxd5f-xjh3w-mqe       1    dl1          1 -> 0    Equinix                   1    Florida           0 -> 1    CH       2
    7uioy-xitfw-yqcko-5gpya-3lpsw-dw7zt-dyyyf-wfqif-jvi76-fdbkg-cqe       1    fr2               1    Everyware                 1    Gauteng                1    DE       1
    bvcsg-3od6r-jnydw-eysln-aql7w-td5zn-ay5m6-sibd2-jzojt-anwag-mqe       1    ge1               1    Flexential           1 -> 0    Geneva                 1    HK       1
    eipr5-izbom-neyqh-s3ec2-52eww-cyfpg-qfomg-3dpwj-4pffh-34xcu-7qe  1 -> 0    hk3               1    HighDC                    1    Hesse                  1    IN       1
    i7dto-bgkj2-xo5dx-cyrb7-zkk5y-q46eh-gz6iq-qkgyc-w4qte-scgtb-6ae       1    jb2               1    KT                        1    HongKong               1    KR       1
    ihbuj-erwnc-tkjux-tqtnv-zkoar-uniy2-sk2go-xfpkc-znbb4-seukm-wqe       1    jv1          0 -> 1    M247                      1    Ljubljana              1    RO       1
    nmdd6-rouxw-55leh-wcbkn-kejit-njvje-p4s6e-v64d3-nlbjb-vipul-mae       1    kr1               1    Marvelous Web3 DC         1    Melbourne              1    SG       1
    r3yjn-kthmg-pfgmb-2fngg-5c7d7-t6kqg-wi37r-j7gy6-iee64-kjdja-jae       1    lj1               1    NEXTDC                    1    New Delhi              1    SI       1
    rbn2y-6vfsb-gv35j-4cyvy-pzbdu-e5aum-jzjg6-5b4n5-vuguf-ycubq-zae       1    mn2               1    Posita.si                 1    Seoul                  1    US       1
    spp3m-vawt7-3gyh6-pjz5d-6zidf-up3qb-yte62-otexv-vfpqg-n6awf-lqe  0 -> 1    nd1               1    Telin                     1    Singapore              1    ZA       1
    wdjjk-blh44-lxm74-ojj43-rvgf4-j5rie-nm6xs-xvnuv-j3ptn-25t4v-6ae       1    sg2               1    Tierpoint            0 -> 1    Texas             1 -> 0              
    wdnqm-clqti-im5yf-iapio-avjom-kyppl-xuiza-oaz6z-smmts-52wyg-5ae       1    zh2               1    hkcolo                    1    Zurich                 1              
1 Like

HI @DRE-Team, why wasn’t the prior agreed procedure followed for this proposal? I see no forum post by the NP that’s clearly linked to.

Voted to adopt proposal #134619.

The proposal replaces healthy Active status node z6jp6 from Dallas, with unassigned healthy Awaiting status node k67we from Florida, without any change to the decentralization of the subnet.
The motivation is that this was requested by the NP 87m Neuron in order to be redeployed with a new node operator ID.
Contact info.

1 Like

Voted to reject proposal 134619.

This proposal is intended to replace node z6jp6 for the stated reason that the removal was requested by the node operator in order to redeploy all nodes under a new node operator ID, but no forum link to or other evidence of this request is provided in the proposal details.

2 Likes

Proposal 134619

Vote: REJECT

The proposal replaces the node z6jp6 with node k67we with no impact on the decentralization.
This type of proposal was discussed before and was agreed with @SvenF that the best way to move forward was to have a forum post from the NP confirming the intent to remove the node from the subnet.
This was not done and in order to enforce a standard on this type of proposal I think it’s important to reject specially since the issue was discussed before.

1 Like

Hey @LaCosta and @timk11, I like your reviews and I’m planning to vote the same way. Given that 2 of CodeGov’s 3 reviewers rejected, and only @ZackDS voted to adopt, I’m confused to see that CodeGov has voted to adopt overall.

Did one of you adopt by mistake or something?

2 Likes

I’ve double checked CodeGov’s followees list for topic 7 (subnet management). The following three neurons for @ZackDS, @timk11, @LaCosta :

Querying the NNS canister using the list_neurons method shows that the CodeGov neuron also has a hotkey. @wpb did you use this to override consensus on this proposal for some reason, or has something else occurred here that caused CodeGov to adopt?

2 Likes

Proposal 134619

TLDR: I’ve voted to reject, because the proposal does not follow procedure. There’s no reference to a public declaration from the node operator, with which to verify their request.

Motivation:

replacing z6jp6 as per user request: Requested by the node operator in order to redeploy all nodes in the DC after 48 months, and switch to a new node operator ID.

1 removed online US node replaced with an unassigned node in the US

Decentralisation Stats

Subnet node distance stats (distance between any 2 nodes in the subnet) →

Smallest Distance Average Distance Largest Distance
EXISTING 0 km 7325.541 km 16759.085 km
PROPOSED 0 km 7270.354 km (-0.8%) 16759.085 km

This proposal slightly reduces decentralisation, considered purely in terms of geographic distance (and therefore there’s a slight theoretical reduction in localised disaster resilience). :-1:

Subnet characteristic counts →

Continents Countries Data Centers Owners Node Providers Node Operator
EXISTING 5 11 13 13 13 13
PROPOSED 5 11 13 13 13 13

Largest number of nodes with the same characteristic (e.g. continent, country, data center, etc.) →

Continent Country Data Center Owner Node Provider Node Operator
EXISTING 7 2 1 1 1 1
PROPOSED 7 2 1 1 1 1

See here for acceptable limits → Motion 132136

The above subnet information is illustrated below, followed by a node reference table:

Map Description
  • Red marker represents a removed node (transparent center for overlap visibility)
  • Green marker represents an added node
  • Blue marker represents an unchanged node
  • Highlighted patches represent the country the above nodes sit within (red if the country is removed, green if added, otherwise grey)
  • Light grey markers with yellow borders are examples of unassigned nodes that would be viable candidates for joining the subnet according to formal decentralisation coefficients (so this proposal can be viewed in the context of alternative solutions that are not being used)

Node Changes
Action Node Status Continent Country Data Center Owner Node Provider Node Operator
Remove z6jp6 UP :bar_chart: Americas United States of America (the) Dallas (dl1) Flexential 87m Neuron, LLC sambh
Add k67we UNASSIGNED :bar_chart: Americas United States of America (the) Jacksonville (jv1) Tierpoint Rivonia Holdings LLC wmrev
Other Nodes
Node Status Continent Country Data Center Owner Node Provider Node Operator
yjbaw UP :bar_chart: Oceania Australia Melbourne 2 (mn2) NEXTDC Icaria Systems Pty Ltd l5lhp
vdvh4 UP :bar_chart: Europe Belgium Brussels (br1) Digital Realty Allusion mjeqs
fqczw UP :bar_chart: Europe Belgium Seoul 3 (kr1) KT Pindar Technology Limited iubpe
gtjga UP :bar_chart: Europe Switzerland Geneva (ge1) HighDC Archery Blockchain SCSp yngfj
4bokb UP :bar_chart: Europe Switzerland Zurich 2 (zh2) Everyware DFINITY Stiftung xcne4
5ei6o UP :bar_chart: Asia China HongKong 3 (hk3) hkcolo Power Meta Corporation 4lbqo
dd3ye UP :bar_chart: Europe Germany Frankfurt 2 (fr2) Equinix Virtual Hive Ltd 3nu7r
5fpzb UP :bar_chart: Asia India New Delhi 1 (nd1) Marvelous Web3 DC Marvelous Web3 ri4lg
tkoxk UP :bar_chart: Europe Romania Bucharest (bu1) M247 Iancu Aurel c5ssg
vtbf4 UP :bar_chart: Asia Singapore Singapore 2 (sg2) Telin OneSixtyTwo Digital Capital qffmn
c6on3 UP :bar_chart: Europe Slovenia Ljubljana (lj1) Posita.si Fractal Labs AG gl27f
yszpk UP :bar_chart: Africa South Africa Gauteng 2 (jb2) Africa Data Centres Honeycomb Capital (Pty) Ltd 3bohy

*This comment references the latest comment in the Subnet Management - General Discussion thread only to generate an automated cross-link from the general thread (to improve topic navigation).


You may wish to follow D-QUORUM if you found this analysis helpful.

Known Neurons to follow if you're too busy to keep on top of things like this

If you found this analysis helpful and would like to follow the vote of the LORIMER known neuron in the future, consider configuring LORIMER as a followee for the Subnet Management topic.

Additional good neurons to follow:

  • D-QUORUM (a highly decentralized neuron that follows neurons that have been elected by the NNS)
  • Synapse (currently follows the LORIMER and CodeGov known neurons for Subnet Management, and is a generally well informed known neuron to follow on numerous other topics)
  • CodeGov (actively reviews and votes on Subnet Management proposals, and is well informed on numerous other technical topics)
  • WaterNeuron (the WaterNeuron DAO frequently discuss proposals like this in order to vote responsibly based on DAO consensus)

Note that this analysis involved data provided by the IC-API, which is not open source. I’m in the process of switching over to more verifiable sources of this sort of information for future proposal reviews. See here for related discussion.

1 Like

Thankfully Synapse is no longer solely following CodeGov (as mentioned in the known neurons part of my review). I’ve just voted, following @timk11 and @LaCosta’s lead, which has triggered the Synapse vote, which has helped to balance that non-consentual vote slightly. See here for more info.

IC decentralisation FTW :man_astronaut:

2 Likes

The CodeGov team has a group chat in which we keep each other informed of different aspects of our decisions. I voted manually on proposal 134619 before @LaCosta cast his vote. At the time, @ZackDS had already voted to adopt and @timk11 had already voted to reject. Both posted their reviews and commented in our chat group. I was working with @hpeebles on testing of the WaterNeuron vote relay app and needed a vote to be cast since he and I were actively troubleshooting. Tim had commented in our chat that he was ok with either adopt or reject on this proposal. Zack indicated he thought it was ok to vote manually on a few proposals since it is the holidays and it might be difficult for all the votes to be cast in a timely manner. I voted to adopt, but failed to inform Henrique of my vote. I would have been ok with either adopt or reject on this one, but chose what seemed like the more reasonable option at the time. I stand by this manually cast vote. It was well informed. I can understand your confusion since you are no longer part of the CodeGov team and don’t have access to our internal discussions.

Thanks for clarifying the situation Wenzel. I understand triggering the vote early (as a convinience for testing the relay dapp in the production environment). I find the divergence from the public reviews and formal votes confusing/unsettling though (1 adopt + 1 reject = reject). I’m not sure why the rejection wasn’t respected.

I think it is though, isn’t it? That what the reviews are for, and it’s why they need to be public.

1 Like