{"title":"PyCAN:N 维内容可寻址网络的开源 Python 软件","authors":"Yuchan Lee , Sookwang Lee , Jaehwan Lee","doi":"10.1016/j.softx.2024.101962","DOIUrl":null,"url":null,"abstract":"<div><div>We propose PyCAN, the first open-source Python implementation of N-dimensional Content-Addressable Network (CAN) with full feature sets to maintain peer-to-peer structure. Existing CAN implementations supports limited functions of Distributed Hash Table (DHT), so they cannot be used in practice. However, PyCAN offers full set of features such as N-dimension coordinates, node removal followed by node taking over, and a verification method to keep peer-to-peer structure. By extensive experiments, we confirm that PyCAN supports scalable overlay structures, so it is practically usable in peer-to-peer systems.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"28 ","pages":"Article 101962"},"PeriodicalIF":2.4000,"publicationDate":"2024-11-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"PyCAN: Open-source Python software of N-dimensional Content-Addressable Network\",\"authors\":\"Yuchan Lee , Sookwang Lee , Jaehwan Lee\",\"doi\":\"10.1016/j.softx.2024.101962\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>We propose PyCAN, the first open-source Python implementation of N-dimensional Content-Addressable Network (CAN) with full feature sets to maintain peer-to-peer structure. Existing CAN implementations supports limited functions of Distributed Hash Table (DHT), so they cannot be used in practice. However, PyCAN offers full set of features such as N-dimension coordinates, node removal followed by node taking over, and a verification method to keep peer-to-peer structure. By extensive experiments, we confirm that PyCAN supports scalable overlay structures, so it is practically usable in peer-to-peer systems.</div></div>\",\"PeriodicalId\":21905,\"journal\":{\"name\":\"SoftwareX\",\"volume\":\"28 \",\"pages\":\"Article 101962\"},\"PeriodicalIF\":2.4000,\"publicationDate\":\"2024-11-11\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"SoftwareX\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S2352711024003327\",\"RegionNum\":4,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q2\",\"JCRName\":\"COMPUTER SCIENCE, SOFTWARE ENGINEERING\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"SoftwareX","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S2352711024003327","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
摘要
我们提出了 PyCAN,它是 N 维内容寻址网络(Content-Addressable Network,CAN)的第一个开源 Python 实现,具有维护点对点结构的完整功能集。现有的 CAN 实现支持分布式散列表(DHT)的有限功能,因此无法在实践中使用。然而,PyCAN 提供了全套功能,如 N 维坐标、节点移除后节点接管,以及保持点对点结构的验证方法。通过大量实验,我们证实 PyCAN 支持可扩展的叠加结构,因此它在点对点系统中实际上是可用的。
PyCAN: Open-source Python software of N-dimensional Content-Addressable Network
We propose PyCAN, the first open-source Python implementation of N-dimensional Content-Addressable Network (CAN) with full feature sets to maintain peer-to-peer structure. Existing CAN implementations supports limited functions of Distributed Hash Table (DHT), so they cannot be used in practice. However, PyCAN offers full set of features such as N-dimension coordinates, node removal followed by node taking over, and a verification method to keep peer-to-peer structure. By extensive experiments, we confirm that PyCAN supports scalable overlay structures, so it is practically usable in peer-to-peer systems.
期刊介绍:
SoftwareX aims to acknowledge the impact of software on today''s research practice, and on new scientific discoveries in almost all research domains. SoftwareX also aims to stress the importance of the software developers who are, in part, responsible for this impact. To this end, SoftwareX aims to support publication of research software in such a way that: The software is given a stamp of scientific relevance, and provided with a peer-reviewed recognition of scientific impact; The software developers are given the credits they deserve; The software is citable, allowing traditional metrics of scientific excellence to apply; The academic career paths of software developers are supported rather than hindered; The software is publicly available for inspection, validation, and re-use. Above all, SoftwareX aims to inform researchers about software applications, tools and libraries with a (proven) potential to impact the process of scientific discovery in various domains. The journal is multidisciplinary and accepts submissions from within and across subject domains such as those represented within the broad thematic areas below: Mathematical and Physical Sciences; Environmental Sciences; Medical and Biological Sciences; Humanities, Arts and Social Sciences. Originating from these broad thematic areas, the journal also welcomes submissions of software that works in cross cutting thematic areas, such as citizen science, cybersecurity, digital economy, energy, global resource stewardship, health and wellbeing, etcetera. SoftwareX specifically aims to accept submissions representing domain-independent software that may impact more than one research domain.