From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id QEkuDBJFH2SBZQEASxT56A (envelope-from ) for ; Sat, 25 Mar 2023 20:01:38 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id aEQLDBJFH2TV8wAAauVa8A (envelope-from ) for ; Sat, 25 Mar 2023 20:01:38 +0100 Received: from lists.gnu.org (unknown [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id E8BC411C9B for ; Sat, 25 Mar 2023 20:01:37 +0100 (CET) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=lendvai.name header.s=protonmail2 header.b=Y8+ZNTWa; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1679770898; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=DxpQPFKpo5JjosDyUjS6/x4JQn4L4bxvbhe/S+LGymg=; b=lamBDUhGySCxMrgQnzqvTf3mT9inObpKa87ZYpNSW563iR3SMFNzueF7cFaDkVFGrXmPRT Z4d0zfFh1rTgpxfrDonHlW7IVUfjXEf7amukauV364zSAr6/JkeCdnUijWJ945FoogcdeK Sv0mw4ySrFUwjcV2fe+NzQ5IGm0DLqwqGO0MXOCi8fOSRloY4DrMMSlYmgZwrE1aaINUwu +SvQRsiF1K+fHmkh4lD/IOWDglpuNgBy8xYCbvhDAuTKjqcNHQSLjI1HHk8+JVAsD3XJBu BEBXbKkMRiqx9gxrUXFCoaIkkGUM9ijOSjWkQH18OvxBk4eth926K64ufmwH1Q== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1679770898; a=rsa-sha256; cv=none; b=KN1WWc9h1O+KSQRJh5d+q/Ht/rhB6DO6VKr5rB+nE9jsEUh1c07DXihdeB0fYRuOXqdOmV a3k6cBAXPUyAjh/0ziqXE9Rylp73aBHAi8UzxAwda9FB1804+k9TjwT0587soa5XRgrxuU lO3z/YXJwtnNEEa3aedUJqpJ3WVfJv+B2pRNjXA6F2KRYUdMRfLoJTufBkGLbe3K3koYqK 4B3Zj63Ggl5nPzOJxCpVK3T6wANqsUamPUSzMOIrkbnQGYNcnOaSFpZzJxRM+bdTVQvn8h slN/wFDi2AoJN+oUrn4QQZYFMxuYELykN79eMg6+WbWNC8u1RM/9GtoQDf9Mxg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=lendvai.name header.s=protonmail2 header.b=Y8+ZNTWa; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=none Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pg98Y-0002zL-Ar; Sat, 25 Mar 2023 15:01:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pg98W-0002y5-FW for guix-devel@gnu.org; Sat, 25 Mar 2023 15:01:08 -0400 Received: from mail-4317.proton.ch ([185.70.43.17]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pg98O-00039P-Jk for guix-devel@gnu.org; Sat, 25 Mar 2023 15:01:07 -0400 Date: Sat, 25 Mar 2023 19:00:28 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lendvai.name; s=protonmail2; t=1679770837; x=1680030037; bh=DxpQPFKpo5JjosDyUjS6/x4JQn4L4bxvbhe/S+LGymg=; h=Date:To:From:Cc:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=Y8+ZNTWa4+dGs8qPuGSlbVEOiKi/G4yTJIQKQNbhTu9I5AFeFoj1OI0rkNAes+TO2 sLMkutaeE7FV07EBVqx6iI5U8te9R4gHVjIj9KOcNtBs57TLa11cEyUBg+rzFaTvYc avaaMhPTQHPMgqlWyG6tEJ+v1ZgggUX4RVyoTuAlrRU6eMCIQGr5pEVSMYyRY2Q+2d 2yucWHA6uhekDBZ+QrYyNIbCV7JuUEfuKyk0kebQTFc77K8rX1Hlok0+wXBxY/WLOr h0Uwa6Cyg7TKpAu6A9WCzRYEvVeWMtqrkVGliwMgm491Gh3YfFT5ZgDZeGFvwXl/hq A4rQCW52GxtDg== To: Vijaya Anand From: Attila Lendvai Cc: pukkamustard , guix-devel@gnu.org Subject: [GSoC 23] distributed substitutes, cost of storage Message-ID: Feedback-ID: 28384833:user:proton MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=185.70.43.17; envelope-from=attila@lendvai.name; helo=mail-4317.proton.ch X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: X-Migadu-Queue-Id: E8BC411C9B X-Spam-Score: -6.53 X-Migadu-Spam-Score: -6.53 X-Migadu-Scanner: scn0.migadu.com List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-TUID: 5CzH/cs/Lbsb welcome on board Anand! > In case a user requests for a substitute and there is a missing > block in the decoding process, a HTTP request for block would sent > to the substitute server and the server will encode the > corresponding block in real time and push it back into the > network. The block will be searched again and retrieved. something to consider here: whose responsibility should it be that a block,= that is missing from a p2p network, is (re-)uploaded there? the clients? o= r the current substitute server? my gut instinct says that it's better if the clients do the (re-)upload of = the blocks. in this architecture the substitute server is just another storage mechanis= m along the other storage backends (although with a different reliability c= haracteristics), and it's the clients that are doing the mirroring/spreadin= g/distribution of the blocks among the various backends. the clients of cou= rse will/should keep the current substitute servers at the bottom of their = list of backends in their configuration. this way the load is distributed, and we don't need to add (too much) extra= complexity to the substitute server codebase, and the actors are less tigh= tly coupled. it's another question whether this mirroring should be enabled by default i= n the clients. probably it shouldn't, and the project infrastructure should= be running clients where it is turned on. altruistic third parties could a= lso enable this mirroring feature, and donate their bandwidth/resources. there's an issue with this, though: some p2p storage backends will require some form of payment/credentials to = use their resources. arguably, all p2p storage networks that will survive i= nto the future will have some mechanism to limit the infinite abuse of thei= r resources. it is to be researched how these payment mechanisms work on th= e various p2p networks, and whether it is possible that the Guix project pa= ys for the storage globally, and then the random clients will have the nece= ssary credentials to (re-)upload the missing blocks. this architecture shouldn't be impossible, because the content is authentic= ated by its hash, and if the payment/authorization mechanism is based on th= e hashes of the blocks (probably), then any client could (re-)upload a miss= ing block that was already paid for. i'll look into this, especially in the context of Swarm. meta: i think such specific discussions should be kept off-list, but the fi= nancing of the storage fees is probably something that should be known abou= t more widely. -- =E2=80=A2 attila lendvai =E2=80=A2 PGP: 963F 5D5F 45C7 DFCD 0A39 -- Every lie is a debt to the truth.