add acronym
This commit is contained in:
7
.gitignore
vendored
7
.gitignore
vendored
@@ -15,7 +15,10 @@
|
||||
*.lof
|
||||
*.lot
|
||||
*.run.xml
|
||||
|
||||
*.acn
|
||||
*.glo
|
||||
*.glsdefs
|
||||
*.ist
|
||||
# SyncTeX files
|
||||
*.synctex.gz
|
||||
*.synctex(busy)
|
||||
@@ -35,6 +38,8 @@
|
||||
*.DS_Store
|
||||
.direnv
|
||||
.jupyter
|
||||
svg-inkscape
|
||||
.ipynb_checkpoints/
|
||||
|
||||
# Directory for auxiliary files created by latexmk
|
||||
latexmk/
|
||||
|
||||
@@ -5,21 +5,53 @@
|
||||
\label{Introduction} % Change X to a consecutive number; for
|
||||
% referencing this chapter elsewhere, use \ref{ChapterX}
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includesvg[width=\textwidth]{Figures/clan_thesis_argumentation_tree.drawio.svg}
|
||||
\caption{Argumentation Tree for the Clan Thesis}
|
||||
\label{fig:clan_thesis_argumentation_tree}
|
||||
\end{figure}
|
||||
|
||||
%----------------------------------------------------------------------------------------
|
||||
% SECTION 1
|
||||
%----------------------------------------------------------------------------------------
|
||||
|
||||
\section{Methodology}
|
||||
|
||||
In this chapter, we will discuss the methodology used in this
|
||||
research. We will discuss the research design, and the research limitations.
|
||||
This chapter outlines the methodology employed in the present
|
||||
research to evaluate and analyze the Clan framework. A visual
|
||||
representation of the argumentation flow central to the Clan Thesis
|
||||
is provided in Figure \ref{fig:clan_thesis_argumentation_tree}.
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
\includesvg[width=1\textwidth,
|
||||
keepaspectratio]{Figures/clan_thesis_argumentation_tree.drawio.svg}
|
||||
\caption{Argumentation Tree for the Clan Thesis}
|
||||
\label{fig:clan_thesis_argumentation_tree}
|
||||
\end{figure}
|
||||
|
||||
The structure of this thesis adopts a multi-problem-oriented approach
|
||||
rather than focusing on a single isolated problem. Specifically, it
|
||||
addresses a set of interrelated challenges within the context of
|
||||
enhancing the reliability and manageability of \ac{P2P}
|
||||
networks. The primary objective of this research is to investigate
|
||||
how the Clan framework provides effective solutions to these challenges.
|
||||
|
||||
To achieve this goal, the research is divided into two main components:
|
||||
\begin{enumerate}
|
||||
\item \textbf{Development of a Theoretical Model} \\
|
||||
A theoretical model of the Clan framework will be constructed. This
|
||||
model will consist of a formal specification of the foundational
|
||||
axioms of the system, including the properties and principles that
|
||||
govern its design. From these base axioms, the research will derive
|
||||
key theorems and explore their corresponding boundary conditions. The
|
||||
theoretical analysis will aim to elucidate the underlying mechanisms
|
||||
of the framework and provide a concrete foundation for its evaluation.
|
||||
|
||||
\item \textbf{Empirical Verification of the Theoretical Model} \\
|
||||
To validate the theoretical model, a series of experiments will be
|
||||
conducted on various components of the Clan framework. These
|
||||
experiments will assess how the theoretical predictions align with
|
||||
practical observations. This step is essential to determine the
|
||||
extent to which the theoretical model holds under real-world
|
||||
conditions and to identify its limitations, if any.
|
||||
\end{enumerate}
|
||||
|
||||
TODO
|
||||
|
||||
\section{Related Work}
|
||||
|
||||
@@ -36,21 +68,18 @@ the development and positioning of the Clan framework.
|
||||
|
||||
Nix addresses significant issues in software deployment by utilizing
|
||||
a technique that employs cryptographic
|
||||
hashes to ensure unique paths for component instances[1].
|
||||
hashes to ensure unique paths for component instances \cite{dolstra_nix_2004}.
|
||||
The system is distinguished by its features, such as concurrent
|
||||
installation of multiple versions and variants,
|
||||
atomic upgrades, and safe garbage collection.
|
||||
These capabilities lead to a flexible deployment system that
|
||||
harmonizes source and binary deployments.
|
||||
Nix conceptualizes deployment without imposing rigid policies,
|
||||
thereby offering adaptable strategies for component management[2].
|
||||
thereby offering adaptable strategies for component management.
|
||||
This contrasts with many prevailing systems that are constrained by
|
||||
policy-specific designs,
|
||||
making Nix an agile choice for modern deployment needs[3]. The
|
||||
insights gained from Nix's approach
|
||||
to non-interference and de-risking upgrades through atomic
|
||||
transactions highlight the potential
|
||||
for deploying software components seamlessly in decentralized networks[4].
|
||||
making Nix an easily extensible, safe and versatile deployment solution
|
||||
for configuration files and software.
|
||||
|
||||
\subsection{NixOS: A Purely Functional Linux Distribution}
|
||||
|
||||
|
||||
@@ -338,20 +338,19 @@ KOMA-script documentation for details.}]{fancyhdr}
|
||||
%----------------------------------------------------------------------------------------
|
||||
% ABBREVIATIONS PAGE DESIGN
|
||||
%----------------------------------------------------------------------------------------
|
||||
|
||||
\newcommand{\abbrevname}{List of Abbreviations}
|
||||
\providecaptionname{english,british,american}{\abbrevname}{List of
|
||||
Abbreviations}
|
||||
\providecaptionname{ngerman,german,austrian,naustrian}{\abbrevname}{Abk\"urzungsverzeichnis}
|
||||
\NewDocumentEnvironment{abbreviations}{ m }{%
|
||||
\ifbool{nolistspace}{\begingroup\singlespacing}{}
|
||||
\ifbool{listtoc}{\addchap{\abbrevname}}{\addchap*{\abbrevname}}
|
||||
\begin{longtable}{#1}
|
||||
}{%
|
||||
\end{longtable}
|
||||
\addtocounter{table}{-1}% Don't count this table as one of the document tables
|
||||
\ifbool{nolistspace}{\endgroup}{}
|
||||
}
|
||||
% \newcommand{\abbrevname}{List of Abbreviations}
|
||||
% \providecaptionname{english,british,american}{\abbrevname}{List of
|
||||
% Abbreviations}
|
||||
% \providecaptionname{ngerman,german,austrian,naustrian}{\abbrevname}{Abk\"urzungsverzeichnis}
|
||||
% \NewDocumentEnvironment{abbreviations}{ m }{%
|
||||
% \ifbool{nolistspace}{\begingroup\singlespacing}{}
|
||||
% \ifbool{listtoc}{\addchap{\abbrevname}}{\addchap*{\abbrevname}}
|
||||
% \begin{longtable}{#1}
|
||||
% }{%
|
||||
% \end{longtable}
|
||||
% \addtocounter{table}{-1}% Don't count this table as one of the document tables
|
||||
% \ifbool{nolistspace}{\endgroup}{}
|
||||
% }
|
||||
|
||||
%----------------------------------------------------------------------------------------
|
||||
% ABSTRACT PAGE DESIGN
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
{
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
|
||||
python3
|
||||
];
|
||||
};
|
||||
packages = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ ... }:
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
kernel.python.minimal = {
|
||||
enable = true;
|
||||
@@ -10,5 +10,10 @@
|
||||
|
||||
kernel.bash.minimal = {
|
||||
enable = true;
|
||||
runtimePackages = [
|
||||
pkgs.python3
|
||||
pkgs.nix
|
||||
pkgs.git
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,5 +7,5 @@
|
||||
% required.
|
||||
|
||||
@Control{biblatex-control,
|
||||
options = {3.10:0:0:1:0:1:1:0:0:1:0:2:3:1:3:1:0:0:3:1:79:+:+:nyt},
|
||||
options = {3.10:0:0:1:0:1:1:0:0:0:0:1:3:1:3:1:0:0:3:1:79:+:+:nty},
|
||||
}
|
||||
|
||||
23
main.tex
23
main.tex
@@ -49,10 +49,11 @@
|
||||
|
||||
\usepackage[utf8]{inputenc} % Required for inputting international characters
|
||||
\usepackage[T1]{fontenc} % Output font encoding for international characters
|
||||
|
||||
\usepackage{float}
|
||||
\usepackage{mathpazo} % Use the Palatino font by default
|
||||
\usepackage{svg}
|
||||
\usepackage[backend=bibtex,style=authoryear,natbib=true]{biblatex} %
|
||||
\usepackage{acronym}
|
||||
\usepackage[backend=bibtex,style=numeric,natbib=true]{biblatex} %
|
||||
% Use the bibtex backend with the authoryear citation style (which
|
||||
% resembles APA)
|
||||
|
||||
@@ -220,7 +221,7 @@ and Management}} % Your department's name and URL, this is used in
|
||||
Key to this investigation are the underlying peer-to-peer technologies,
|
||||
ZeroTier and Mycelium, which enable decentralized network connections,
|
||||
and the "Data-Mesher" a decentralized conflict free replicated database.
|
||||
The study begins with an in-depth analysis of fault tolerance
|
||||
This thesis begins with an in-depth analysis of fault tolerance
|
||||
mechanisms in these technologies,
|
||||
evaluating how robust they are against node failures and network disruptions.
|
||||
Next, scalability is examined through both theoretical models and
|
||||
@@ -269,13 +270,19 @@ and Management}} % Your department's name and URL, this is used in
|
||||
% ABBREVIATIONS
|
||||
%----------------------------------------------------------------------------------------
|
||||
|
||||
\begin{abbreviations}{ll} % Include a list of abbreviations (a table
|
||||
% of two columns)
|
||||
% \begin{abbreviations}{ll} % Include a list of abbreviations (a table
|
||||
% % of two columns)
|
||||
|
||||
\textbf{LAH} & \textbf{L}ist \textbf{A}bbreviations \textbf{H}ere\\
|
||||
\textbf{WSF} & \textbf{W}hat (it) \textbf{S}tands \textbf{F}or\\
|
||||
% \textbf{LAH} & \textbf{L}ist \textbf{A}bbreviations \textbf{H}ere\\
|
||||
% \textbf{WSF} & \textbf{W}hat (it) \textbf{S}tands \textbf{F}or\\
|
||||
% \textbf{P2P} & \textbf{P}eer \textbf{T}o \textbf{P}eer\\
|
||||
|
||||
\end{abbreviations}
|
||||
% \end{abbreviations}
|
||||
|
||||
\section*{Abbreviations}
|
||||
\begin{acronym}[P2P] % [P2P] aligns entries to the longest label
|
||||
\acro{P2P}{Peer to Peer}
|
||||
\end{acronym}
|
||||
|
||||
%----------------------------------------------------------------------------------------
|
||||
% PHYSICAL CONSTANTS/OTHER DEFINITIONS
|
||||
|
||||
@@ -108,75 +108,6 @@
|
||||
{Attachment:/home/lhebendanz/Zotero/storage/W44Z4XEE/inet_ipv6_vpn.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@report{shukla_navigating_2019,
|
||||
location = {Rochester, {NY}},
|
||||
title = {Navigating the Landscape of Programmable Networks: Looking
|
||||
beyond the Regulatory Status Quo},
|
||||
url = {https://papers.ssrn.com/abstract=3427455},
|
||||
shorttitle = {Navigating the Landscape of Programmable Networks},
|
||||
abstract = {Digital transition processes are transforming
|
||||
industries, economies, and societies. On the one hand, the number
|
||||
of connected end-users and things is growing rapidly. On the other
|
||||
hand, the range of applications is continuously evolving. As
|
||||
applications like {IoT}, the Tactile Internet, or Immersive User
|
||||
Interfaces gain traction, the demands for traffic delivery,
|
||||
privacy, and security become highly diverse and complex. In meeting
|
||||
these demands, programmable networks gain importance. They
|
||||
introduce a new networking paradigm and provide an evolved spectrum
|
||||
of capabilities. In this paper, we conduct a cross-disciplinary
|
||||
study to navigate the landscape of programmable networks. We
|
||||
provide a comprehensive overview of the evolution and the growing
|
||||
complexity of this new networking paradigm and, based on a horizon
|
||||
scanning approach, elucidate associated opportunities and
|
||||
challenges. From this, we derive and discuss insights for the
|
||||
design of appropriate policies and regulatory frameworks for the
|
||||
future Internet.},
|
||||
number = {3427455},
|
||||
author = {Shukla, Apoorv and Stocker, Volker},
|
||||
urldate = {2024-09-23},
|
||||
date = {2019-07},
|
||||
langid = {english},
|
||||
doi = {10.2139/ssrn.3427455},
|
||||
keywords = {P4, Policy, Programmable Networks, Regulations, {SDN}},
|
||||
file = {PDF:/home/lhebendanz/Zotero/storage/B768VLZ3/Shukla and
|
||||
Stocker - 2019 - Navigating the Landscape of Programmable Networks
|
||||
Looking beyond the Regulatory Status Quo.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@report{moghaddam_decentralized_2015,
|
||||
title = {A Decentralized Approach to Software-Defined Networks ({SDNs})},
|
||||
url = {http://arxiv.org/abs/1504.07933},
|
||||
abstract = {Redistribution of the intelligence and management in
|
||||
the software defined networks ({SDNs}) is a potential approach to
|
||||
address the bottlenecks of scalability and integrity of these
|
||||
networks. We propose to revisit the routing concept based on the
|
||||
notion of regions. Using basic and consistent definition of
|
||||
regions, a region-based packet routing called {SmartRegion} Routing
|
||||
is presented. The flexibility of regions in terms of naming and
|
||||
addressing is then leveraged in the form of a region stack among
|
||||
other features placed in the associated packet header. In this way,
|
||||
most of complexity and dynamicity of a network is absorbed, and
|
||||
therefore highly fast and simplified routing at the inter-region
|
||||
level along with semi-autonomous intra-region routing will be
|
||||
feasible. In addition, multipath planning can be naturally realized
|
||||
at both inter and intra levels. A basic form of {SmartRegion}
|
||||
routing mechanism is provided. Simplicity, scalability, and
|
||||
manageability of the proposed approach would also bring future
|
||||
potentials to reduce energy consumption and environmental footprint
|
||||
associated to the {SDNs}. Finally, various applications, such as
|
||||
enabling seamless broadband access, providing beyond {IP}
|
||||
addressing mechanisms, and also address-equivalent naming
|
||||
mechanisms, are considered and discussed.},
|
||||
institution = {{arXiv}},
|
||||
author = {Moghaddam, Reza Farrahi and Lemieux, Yves and Cheriet, Mohamed},
|
||||
urldate = {2024-09-23},
|
||||
date = {2015-04},
|
||||
doi = {10.48550/arXiv.1504.07933},
|
||||
keywords = {Computer Science - Networking and Internet Architecture},
|
||||
file =
|
||||
{Attachment:/home/lhebendanz/Zotero/storage/SENCWZZ4/decent_sdn.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@article{bakhshi_state_2017,
|
||||
title = {State of the Art and Recent Research Advances in Software
|
||||
Defined Networking},
|
||||
@@ -288,27 +219,6 @@
|
||||
under high churns a survey.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@article{dolstra_nix_nodate,
|
||||
title = {Nix: A Safe and Policy-Free System for Software Deployment},
|
||||
abstract = {Existing systems for software deployment are neither
|
||||
safe nor sufficiently flexible. Primary safety issues are the
|
||||
inability to enforce reliable specification of component
|
||||
dependencies, and the lack of support for multiple versions or
|
||||
variants of a component. This renders deployment operations such as
|
||||
upgrading or deleting components dangerous and unpredictable. A
|
||||
deployment system must also be flexible (i.e., policy-free) enough
|
||||
to support both centralised and local package management, and to
|
||||
allow a variety of mechanisms for transferring components. In this
|
||||
paper we present Nix, a deployment system that addresses these
|
||||
issues through a simple technique of using cryptographic hashes to
|
||||
compute unique paths for component instances.},
|
||||
author = {Dolstra, Eelco and de Jonge, Merijn and Visser, Eelco},
|
||||
langid = {english},
|
||||
file = {PDF:/home/lhebendanz/Zotero/storage/FVVZ628U/Dolstra et al.
|
||||
- Nix A Safe and Policy-Free System for Software
|
||||
Deployment.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@inproceedings{guilloteau_painless_2022,
|
||||
location = {Heidelberg, Germany},
|
||||
title = {Painless Transposition of Reproducible Distributed
|
||||
@@ -388,86 +298,6 @@
|
||||
- 2010 - NixOS A Purely Functional Linux Distribution.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@inproceedings{zhang_towards_2023,
|
||||
location = {Birmingham United Kingdom},
|
||||
title = {Towards Dynamic and Reliable Private Key Management for
|
||||
Hierarchical Access Structure in Decentralized Storage},
|
||||
isbn = {9798400701245},
|
||||
url = {https://dl.acm.org/doi/10.1145/3583780.3615090},
|
||||
doi = {10.1145/3583780.3615090},
|
||||
abstract = {With the widespread development of decentralized
|
||||
storage, it is increasingly popular for users to store their data
|
||||
to the decentralized database systems for the well-understood
|
||||
benefits of outsourced storage. To ensure the data privacy, systems
|
||||
commonly require users to securely keep their private keys. Thus,
|
||||
the secure storage of private keys is an important issue in these
|
||||
systems. However, existing key-management schemes commonly rely on
|
||||
a Trusted Third Party ({TTP}), which raises critical security
|
||||
concerns such as the single point of failure and Distributed Denial
|
||||
of Service ({DDoS}) attacks. In this paper, we propose {HasDPSS}, a
|
||||
secure and efficient blockchain-based key-management scheme for
|
||||
decentralized storage systems. It uses secret sharing, a
|
||||
lightweight cryptographic technique, to build the decentralized
|
||||
key-management scheme. Considering that the reliability of managing
|
||||
participants has inherent heterogeneity, we introduce the
|
||||
hierarchical access structure to achieve fine-grained key
|
||||
management. Meanwhile, to adapt the node churn of decentralized key
|
||||
management, {HasDPSS} enables a dynamic management committee to
|
||||
provide reliable services with a proactive refresh mechanism while
|
||||
protecting the integrity and security of private keys. In our
|
||||
design, we use the dimension switch method of polynomials in the
|
||||
evolving process to achieve the committee change of the
|
||||
hierarchical access structure. The reliability of participants is
|
||||
guaranteed by the customized commitment protocol and the immutable
|
||||
property of the blockchain. We thoroughly analyze security
|
||||
strengths and conduct extensive experiments to demonstrate the
|
||||
practicality of our design.},
|
||||
eventtitle = {{CIKM} '23: The 32nd {ACM} International Conference
|
||||
on Information and Knowledge Management},
|
||||
pages = {3371--3380},
|
||||
booktitle = {Proceedings of the 32nd {ACM} International Conference
|
||||
on Information and Knowledge Management},
|
||||
publisher = {{ACM}},
|
||||
author = {Zhang, Yifang and Wang, Mingyue and Guo, Yu and Guo, Fangda},
|
||||
urldate = {2024-11-24},
|
||||
date = {2023-10-21},
|
||||
langid = {english},
|
||||
file = {PDF:/home/lhebendanz/Zotero/storage/WI8JTTIS/Zhang et al. -
|
||||
2023 - Towards Dynamic and Reliable Private Key Management for
|
||||
Hierarchical Access Structure in Decentraliz.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@inproceedings{ryeng_robust_2008,
|
||||
location = {New York, {NY}, {USA}},
|
||||
title = {Robust aggregation in peer-to-peer database systems},
|
||||
isbn = {978-1-60558-188-0},
|
||||
url = {https://doi.org/10.1145/1451940.1451946},
|
||||
doi = {10.1145/1451940.1451946},
|
||||
series = {{IDEAS} '08},
|
||||
abstract = {Peer-to-peer database systems (P2PDBs) aim at providing
|
||||
database services with node autonomy, high availability and loose
|
||||
coupling between participating nodes by building the {DBMS} on top
|
||||
of a peer-to-peer network. A key feature of current peer-to-peer
|
||||
systems is resilience to churn in the overlay network layer. A
|
||||
major challenge in P2PDBs is to provide similar robustness in the
|
||||
data and query processing layer. In this paper we in particular
|
||||
describe how aggregation queries in P2PDBs can be handled in order
|
||||
to reduce the impact of churn on accuracy of results. We perform a
|
||||
formal study of data loss and accuracy of such queries, and
|
||||
describe new approaches that increase the accuracy of aggregation
|
||||
queries in P2PDBs under churn.},
|
||||
pages = {29--37},
|
||||
booktitle = {Proceedings of the 2008 international symposium on
|
||||
Database engineering \& applications},
|
||||
publisher = {Association for Computing Machinery},
|
||||
author = {Ryeng, Norvald H. and Nørvåg, Kjetil},
|
||||
urldate = {2024-11-24},
|
||||
date = {2008-09-10},
|
||||
file = {PDF:/home/lhebendanz/Zotero/storage/3KC9AG7C/Ryeng and
|
||||
Nørvåg - 2008 - Robust aggregation in peer-to-peer database
|
||||
systems.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@article{tatarinov_piazza_2003,
|
||||
title = {The Piazza peer data management project},
|
||||
volume = {32},
|
||||
@@ -566,5 +396,108 @@
|
||||
keywords = {Databases, {IP} networks, Linux, Production, Servers,
|
||||
Software, Testing},
|
||||
file = {IEEE Xplore Abstract
|
||||
Record:/home/lhebendanz/Zotero/storage/LDFB982I/6607691.html:text/html},
|
||||
Record:/home/lhebendanz/Zotero/storage/LDFB982I/6607691.html:text/html;PDF:/home/lhebendanz/Zotero/storage/6VBUL8L5/Dolstra
|
||||
et al. - 2013 - Charon Declarative provisioning and
|
||||
deployment.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@article{laddad_keep_2022,
|
||||
title = {Keep {CALM} and {CRDT} On},
|
||||
volume = {16},
|
||||
issn = {2150-8097},
|
||||
url = {https://doi.org/10.14778/3574245.3574268},
|
||||
doi = {10.14778/3574245.3574268},
|
||||
abstract = {Despite decades of research and practical experience,
|
||||
developers have few tools for programming reliable distributed
|
||||
applications without resorting to expensive coordination
|
||||
techniques. Conflict-free replicated datatypes ({CRDTs}) are a
|
||||
promising line of work that enable coordination-free replication
|
||||
and offer certain eventual consistency guarantees in a relatively
|
||||
simple object-oriented {API}. Yet {CRDT} guarantees extend only to
|
||||
data updates; observations of {CRDT} state are unconstrained and
|
||||
unsafe. We propose an agenda that embraces the simplicity of
|
||||
{CRDTs}, but provides richer, more uniform guarantees. We extend
|
||||
{CRDTs} with a query model that reasons about which queries are
|
||||
safe without coordination by applying monotonicity results from the
|
||||
{CALM} Theorem, and lay out a larger agenda for developing {CRDT}
|
||||
data stores that let developers safely and efficiently interact
|
||||
with replicated application state.},
|
||||
pages = {856--863},
|
||||
number = {4},
|
||||
journaltitle = {Proc. {VLDB} Endow.},
|
||||
author = {Laddad, Shadaj and Power, Conor and Milano, Mae and
|
||||
Cheung, Alvin and Crooks, Natacha and Hellerstein, Joseph M.},
|
||||
urldate = {2024-11-24},
|
||||
date = {2022},
|
||||
file = {PDF:/home/lhebendanz/Zotero/storage/SEGUKMKS/Laddad et al.
|
||||
- 2022 - Keep CALM and CRDT On.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@inproceedings{jeffery_amc_2023,
|
||||
location = {New York, {NY}, {USA}},
|
||||
title = {{AMC}: Towards Trustworthy and Explorable {CRDT}
|
||||
Applications with the Automerge Model Checker},
|
||||
isbn = {9798400700866},
|
||||
url = {https://dl.acm.org/doi/10.1145/3578358.3591326},
|
||||
doi = {10.1145/3578358.3591326},
|
||||
series = {{PaPoC} '23},
|
||||
shorttitle = {{AMC}},
|
||||
abstract = {Conflict-free Replicated Data Types ({CRDTs}) enable
|
||||
local-first operations and asynchronous collaboration without the
|
||||
need for always-on centralised services. {CRDTs} can have a high
|
||||
overhead, so implementations need to be optimised, but this
|
||||
optimisation can lead to bugs despite the use of test suites and
|
||||
fuzzing. Furthermore, using {CRDTs} in applications is complex,
|
||||
observing unexpected conflict resolution, issues synchronising
|
||||
documents and difficulties implementing appropriate data models.
|
||||
Automerge is a library, exposing a {JSON} {CRDT}, that sees users
|
||||
having difficulties in modelling their problems, understanding
|
||||
their edge cases and implementing applications correctly. We
|
||||
introduce the Automerge Model Checker ({AMC}), empowering
|
||||
application developers to check properties about their
|
||||
implementations and explore them dynamically. {AMC} can check a
|
||||
range of applications as well as being able to check properties
|
||||
about the core of Automerge itself, helping to make more
|
||||
trustworthy Automerge applications.{AMC} is available open-source
|
||||
at github.com/jeffa5/automerge-model-checker.},
|
||||
pages = {44--50},
|
||||
booktitle = {Proceedings of the 10th Workshop on Principles and
|
||||
Practice of Consistency for Distributed Data},
|
||||
publisher = {Association for Computing Machinery},
|
||||
author = {Jeffery, Andrew and Mortier, Richard},
|
||||
urldate = {2024-11-24},
|
||||
date = {2023},
|
||||
file = {Full Text
|
||||
PDF:/home/lhebendanz/Zotero/storage/EEMPQUIR/Jeffery and Mortier -
|
||||
2023 - AMC Towards Trustworthy and Explorable CRDT Applications
|
||||
with the Automerge Model Checker.pdf:application/pdf},
|
||||
}
|
||||
|
||||
@inproceedings{dolstra_nix_2004,
|
||||
location = {{USA}},
|
||||
title = {Nix: A Safe and Policy-Free System for Software Deployment},
|
||||
series = {{LISA} '04},
|
||||
shorttitle = {Nix},
|
||||
abstract = {Existing systems for software deployment are neither
|
||||
safe nor sufficiently flexible. Primary safety issues are the
|
||||
inability to enforce reliable specification of component
|
||||
dependencies, and the lack of support for multiple versions or
|
||||
variants of a component. This renders deployment operations such as
|
||||
upgrading or deleting components dangerous and unpredictable. A
|
||||
deployment system must also be flexible (i.e., policy-free) enough
|
||||
to support both centralised and local package management, and to
|
||||
allow a variety of mechanisms for transferring components. In this
|
||||
paper we present Nix, a deployment system that addresses these
|
||||
issues through a simple technique of using cryptographic hashes to
|
||||
compute unique paths for component instances.},
|
||||
pages = {79--92},
|
||||
booktitle = {Proceedings of the 18th {USENIX} conference on System
|
||||
administration},
|
||||
publisher = {{USENIX} Association},
|
||||
author = {Dolstra, Eelco and de Jonge, Merijn and Visser, Eelco},
|
||||
urldate = {2024-11-25},
|
||||
date = {2004-11-19},
|
||||
file = {PDF:/home/lhebendanz/Zotero/storage/FVVZ628U/Dolstra et al.
|
||||
- Nix A Safe and Policy-Free System for Software
|
||||
Deployment.pdf:application/pdf},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user