add texfmt

This commit is contained in:
2024-11-24 23:56:31 +01:00
parent 5b0ae1e598
commit 532a34e6e2
8 changed files with 899 additions and 556 deletions

View File

@@ -20,6 +20,7 @@ The color of links can be changed to your liking using:
{\small\verb!\hypersetup{hidelinks}!}.
\noindent If you want to have obvious links in the PDF but not the printed text, use:
\noindent If you want to have obvious links in the PDF but not the
printed text, use:
{\small\verb!\hypersetup{colorlinks=false}!}.

View File

@@ -2,6 +2,7 @@
\chapter{Appendix Title Here} % Main appendix title
\label{AppendixX} % Change X to a consecutive letter; for referencing this appendix elsewhere, use \ref{AppendixX}
\label{AppendixX} % Change X to a consecutive letter; for referencing
% this appendix elsewhere, use \ref{AppendixX}
Write your Appendix content here.

View File

@@ -11,9 +11,12 @@
% Johannes Böttcher
%
% Notes:
% 1) This class file defines the structure and layout of the template file (main.tex).
% 2) It has been written in such a way that under most circumstances you should not need
% to edit it; updating it to a newer version will be harder. If you do make changes, please change the name of
% 1) This class file defines the structure and layout of the template
% file (main.tex).
% 2) It has been written in such a way that under most circumstances
% you should not need
% to edit it; updating it to a newer version will be harder. If you
% do make changes, please change the name of
% the file and add comments to make your changes more visible.
%
% Class license:
@@ -22,7 +25,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%----------------------------------------------------------------------------------------
% CLASS DEFINITION AND PARAMETERS
% CLASS DEFINITION AND PARAMETERS
%----------------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}[1996/12/01]
@@ -65,88 +68,90 @@
\ProvideDocumentCommand{\chapterfont}{}{\Huge\bfseries}
\ProvideDocumentCommand{\chapterprefixfont}{}{\LARGE\bfseries}
\DeclareDocumentCommand{\@makechapterhead}{ m }{%
\abovechapterskip
{\parindent \z@ \chapteralign \normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\ifbool{chapteroneline}{%
\chapterfont \mdtChapapp\thechapter\autodot\enspace
}{%
\chapterprefixfont \@chapapp\space \thechapter
\par\nobreak
\chapterinbetweenskip
}%
\fi
\fi
\interlinepenalty\@M%
\chapterfont #1\par\nobreak
\chapterbelowskip
}
\thispagestyle{\chapter@p@gestyle}
\abovechapterskip
{\parindent \z@ \chapteralign \normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\ifbool{chapteroneline}{%
\chapterfont \mdtChapapp\thechapter\autodot\enspace
}{%
\chapterprefixfont \@chapapp\space \thechapter
\par\nobreak
\chapterinbetweenskip
}%
\fi
\fi
\interlinepenalty\@M%
\chapterfont #1\par\nobreak
\chapterbelowskip
}
\thispagestyle{\chapter@p@gestyle}
}
\def\@makeschapterhead#1{%
\abovechapterskip
{\parindent \z@ \chapteralign
\normalfont
\interlinepenalty\@M
\chapterfont #1\par\nobreak
\chapterbelowskip
}
\thispagestyle{\chapter@p@gestyle}
\abovechapterskip
{\parindent \z@ \chapteralign
\normalfont
\interlinepenalty\@M
\chapterfont #1\par\nobreak
\chapterbelowskip
}
\thispagestyle{\chapter@p@gestyle}
}
% Addchap provides unnumbered chapters with an entry in the table of contents as well as an updated header
% Addchap provides unnumbered chapters with an entry in the table of
% contents as well as an updated header
\ProvideDocumentCommand{\addchap}{ s o m }{%
\chapter*{#3}%
\markboth{}{}%
\IfBooleanTF{#1}{%
}{%
\IfNoValueTF{#2}{%
\addchaptertocentry{#3}%
\markboth{\MakeMarkcase{#3}}{\MakeMarkcase{#3}}%
}{%
\addchaptertocentry{#2}%
\markboth{\MakeMarkcase{#2}}{\MakeMarkcase{#2}}%
}%
}%
\chapter*{#3}%
\markboth{}{}%
\IfBooleanTF{#1}{%
}{%
\IfNoValueTF{#2}{%
\addchaptertocentry{#3}%
\markboth{\MakeMarkcase{#3}}{\MakeMarkcase{#3}}%
}{%
\addchaptertocentry{#2}%
\markboth{\MakeMarkcase{#2}}{\MakeMarkcase{#2}}%
}%
}%
}%
\ProvideDocumentCommand{\addsec}{ s o m }{%
\section*{#3}%
\markright{}%
\IfBooleanTF{#1}{%
}{%
\IfNoValueTF{#2}{%
\addcontentsline{toc}{section}{#3}%
\markright{\MakeMarkcase{#3}}%%
}{%
\addcontentsline{toc}{section}{#2}%
\markright{\MakeMarkcase{#2}}%
}%
}%
\section*{#3}%
\markright{}%
\IfBooleanTF{#1}{%
}{%
\IfNoValueTF{#2}{%
\addcontentsline{toc}{section}{#3}%
\markright{\MakeMarkcase{#3}}%%
}{%
\addcontentsline{toc}{section}{#2}%
\markright{\MakeMarkcase{#2}}%
}%
}%
}%
%----------------------------------------------------------------------------------------
% CLASS OPTIONS
% CLASS OPTIONS
%----------------------------------------------------------------------------------------
\ifbool{parskip}{\RequirePackage{parskip}} % If the parskip option is passed to the class, require the parskip package
\ifbool{parskip}{\RequirePackage{parskip}} % If the parskip option is
% passed to the class, require the parskip package
\ifbool{listtoc}{% If the liststotoc option has been passed to the class, add the lists to the table of contents
\patchcmd{\listoftables}{\@starttoc{lot}}{%
\addchaptertocentry{\listtablename}\@starttoc{lot}%
}{}{}%
\patchcmd{\listoffigures}{\@starttoc{lof}}{%
\addchaptertocentry{\listfigurename}\@starttoc{lof}%
}{}{}%
\ifbool{listtoc}{% If the liststotoc option has been passed to the
% class, add the lists to the table of contents
\patchcmd{\listoftables}{\@starttoc{lot}}{%
\addchaptertocentry{\listtablename}\@starttoc{lot}%
}{}{}%
\patchcmd{\listoffigures}{\@starttoc{lof}}{%
\addchaptertocentry{\listfigurename}\@starttoc{lof}%
}{}{}%
}
\ifbool{toctoc}{% If the toctotoc options has been passed to the class, add the table of contents to the table of contents
\patchcmd{\tableofcontents}{\@starttoc{toc}%
}{%
\addchaptertocentry{\contentsname}\@starttoc{toc}}{}{}%
\ifbool{toctoc}{% If the toctotoc options has been passed to the
% class, add the table of contents to the table of contents
\patchcmd{\tableofcontents}{\@starttoc{toc}%
}{%
\addchaptertocentry{\contentsname}\@starttoc{toc}}{}{}%
}
\patchcmd{\tableofcontents}{\MakeUppercase}{\MakeMarkcase}{}{}
@@ -156,42 +161,47 @@
\patchcmd{\listoftables}{\MakeUppercase}{\MakeMarkcase}{}{}
\patchcmd{\listoftables}{\MakeUppercase}{\MakeMarkcase}{}{}
% If the option `nolistspacing' is given, the spacing in the different lists is reduced to single spacing. This option is only useful, if the spacing of the document has been changed to onehalfspacing or doublespacing.
% If the option `nolistspacing' is given, the spacing in the
% different lists is reduced to single spacing. This option is only
% useful, if the spacing of the document has been changed to
% onehalfspacing or doublespacing.
\ifbool{nolistspace}{
\patchcmd{\listoffigures}{%
\@starttoc{lof}
}{%
\begingroup%
\singlespace\@starttoc{lof}\endgroup%
}{}{}%
\patchcmd{\listoftables}{%
\@starttoc{lot}
}{%
\begingroup%
\singlespace\@starttoc{lot}\endgroup%
}{}{}%
\patchcmd{\tableofcontents}{%
\@starttoc{toc}
}{%
\begingroup%
\singlespace\@starttoc{toc}\endgroup%
}{}{}%
\patchcmd{\listoffigures}{%
\@starttoc{lof}
}{%
\begingroup%
\singlespace\@starttoc{lof}\endgroup%
}{}{}%
\patchcmd{\listoftables}{%
\@starttoc{lot}
}{%
\begingroup%
\singlespace\@starttoc{lot}\endgroup%
}{}{}%
\patchcmd{\tableofcontents}{%
\@starttoc{toc}
}{%
\begingroup%
\singlespace\@starttoc{toc}\endgroup%
}{}{}%
}{}
%----------------------------------------------------------------------------------------
% REQUIRED PACKAGES
% REQUIRED PACKAGES
%----------------------------------------------------------------------------------------
\RequirePackage{babel} % Required for automatically changing names of document elements to languages besides english
\RequirePackage{babel} % Required for automatically changing names of
% document elements to languages besides english
\RequirePackage{scrbase} % Required for handling language-dependent names of sections/document elements
\RequirePackage{scrbase} % Required for handling language-dependent
% names of sections/document elements
\RequirePackage{scrhack} % Loads fixes for various packages
\RequirePackage{setspace} % Required for changing line spacing
\RequirePackage{longtable} % Required for tables that span multiple pages (used in the symbols, abbreviations and physical constants pages)
\RequirePackage{longtable} % Required for tables that span multiple
% pages (used in the symbols, abbreviations and physical constants pages)
\RequirePackage{siunitx} % Required for \SI commands
@@ -204,13 +214,13 @@
\captionsetup{justification=centerlast,font=small,labelfont=sc,margin=50pt}
%----------------------------------------------------------------------------------------
% DEFINE CUSTOM THESIS INFORMATION COMMANDS
% DEFINE CUSTOM THESIS INFORMATION COMMANDS
%----------------------------------------------------------------------------------------
\NewDocumentCommand{\thesistitle} { o m }{%
\IfValueTF{#1}{\def\shorttitle{#1}}{\def\shorttitle{#2}}%
\def\@title{#2}%
\def\ttitle{#2}%
\IfValueTF{#1}{\def\shorttitle{#1}}{\def\shorttitle{#2}}%
\def\@title{#2}%
\def\ttitle{#2}%
}
\DeclareDocumentCommand{\author}{m}{\newcommand{\authorname}{#1}\renewcommand{\@author}{#1}}
@@ -225,24 +235,29 @@
\NewDocumentCommand{\subject}{m}{\newcommand{\subjectname}{#1}}
\NewDocumentCommand{\keywords}{m}{\newcommand{\keywordnames}{#1}}
\newcommand{\checktoopen}{% New command to move content to the next page which prints to the next odd page if twosided mode is active
\if@openright\cleardoublepage\else\clearpage\fi
\ifdef{\phantomsection}{\phantomsection}{}% The \phantomsection command is necessary for hyperref to jump to the correct page
\newcommand{\checktoopen}{% New command to move content to the next
% page which prints to the next odd page if twosided mode is active
\if@openright\cleardoublepage\else\clearpage\fi
\ifdef{\phantomsection}{\phantomsection}{}% The \phantomsection
% command is necessary for hyperref to jump to the correct page
}
\NewDocumentCommand{\bhrule}{}{\typeout{--------------------}}
\NewDocumentCommand{\tttypeout}{m}{\bhrule\typeout{\space #1}\bhrule}
\newcommand{\HRule}{\rule{.9\linewidth}{.6pt}} % New command to make the lines in the title page
\newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}} % New command for a rule to be used under figures
\newcommand{\HRule}{\rule{.9\linewidth}{.6pt}} % New command to make
% the lines in the title page
\newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}} % New command for a
% rule to be used under figures
\setcounter{tocdepth}{3} % The depth to which the document sections are printed to the table of contents
\setcounter{tocdepth}{3} % The depth to which the document sections
% are printed to the table of contents
\ProvideDocumentCommand{\addchaptertocentry}{ m }{%
\addcontentsline{toc}{chapter}{#1}%
\addcontentsline{toc}{chapter}{#1}%
}
%----------------------------------------------------------------------------------------
% COLOURS
% COLOURS
%----------------------------------------------------------------------------------------
\usepackage{xcolor} % Required for specifying custom colours
@@ -250,20 +265,20 @@
\colorlet{mdtRed}{red!50!black}
%----------------------------------------------------------------------------------------
% MARGINS
% MARGINS
%----------------------------------------------------------------------------------------
\RequirePackage{geometry}
\geometry{
headheight=4ex,
includehead,
includefoot
headheight=4ex,
includehead,
includefoot
}
\raggedbottom
%----------------------------------------------------------------------------------------
% PENALTIES
% PENALTIES
%----------------------------------------------------------------------------------------
\doublehyphendemerits=10000 % No consecutive line hyphens
@@ -273,69 +288,73 @@
\interfootnotelinepenalty=9999 % Almost never break footnotes
%----------------------------------------------------------------------------------------
% HEADERS AND FOOTERS
% HEADERS AND FOOTERS
%----------------------------------------------------------------------------------------
\RequirePackage[markcase=used]{scrlayer-scrpage}
\providepairofpagestyles{thesisSimple}{%
\clearpairofpagestyles%
\automark[chapter]{chapter}
\ihead{\headmark}% Inner header
\ohead[\pagemark]{\pagemark}% Outer header
\clearpairofpagestyles%
\automark[chapter]{chapter}
\ihead{\headmark}% Inner header
\ohead[\pagemark]{\pagemark}% Outer header
}
\ifoot{}% Inner footer
\ofoot{}% Outer footer
\pagestyle{thesisSimple}
\providepairofpagestyles[thesisSimple]{thesis}{%
\automark*[section]{}%
\automark*[section]{}%
}
\providepairofpagestyles[thesisSimple]{review}{%
\ofoot[\shorttitle/\authorname]{\shorttitle/\authorname}
\ifoot[\today]{\today}
\ofoot[\shorttitle/\authorname]{\shorttitle/\authorname}
\ifoot[\today]{\today}
}
\pagestyle{thesis}
\ifbool{headsepline}{\KOMAoption{headsepline}{true}}{}
\PreventPackageFromLoading[\ClassError{\classname}{Package `fancyhdr' is
incompatible\MessageBreak with this class}{The pagesyles are defined
using package `scrlayer-scrpage', please consult the\MessageBreak
incompatible\MessageBreak with this class}{The pagesyles are defined
using package `scrlayer-scrpage', please consult the\MessageBreak
KOMA-script documentation for details.}]{fancyhdr}
\newcommand{\blank@p@gestyle}{empty}
\newcommand{\chapter@p@gestyle}{plain}
\NewDocumentCommand{\blankpagestyle}{ m }{%
\ClassWarning{\classname}{\string\blankpagestyle\space is
obsolete,\MessageBreak use \string\setblankpagestyle \space instead}\renewcommand{\blank@p@gestyle}{}{#1}
\ClassWarning{\classname}{\string\blankpagestyle\space is
obsolete,\MessageBreak use \string\setblankpagestyle \space
instead}\renewcommand{\blank@p@gestyle}{}{#1}
}
\NewDocumentCommand{\setblankpagestyle}{ m }{\renewcommand{\blank@p@gestyle}{#1}}
\NewDocumentCommand{\setchapterpagestyle}{ m }{\renewcommand{\chapter@p@gestyle}{#1}}
\NewDocumentCommand{\setblankpagestyle}{ m
}{\renewcommand{\blank@p@gestyle}{#1}}
\NewDocumentCommand{\setchapterpagestyle}{ m
}{\renewcommand{\chapter@p@gestyle}{#1}}
\DeclareDocumentCommand\cleardoublepage{}{\clearpage\if@twoside \ifodd\c@page\else
\hbox{}
\thispagestyle{\blank@p@gestyle}
\newpage
\if@twocolumn\hbox{}\newpage\fi\fi\fi%
\DeclareDocumentCommand\cleardoublepage{}{\clearpage\if@twoside
\ifodd\c@page\else
\hbox{}
\thispagestyle{\blank@p@gestyle}
\newpage
\if@twocolumn\hbox{}\newpage\fi\fi\fi%
}
%----------------------------------------------------------------------------------------
% ABBREVIATIONS PAGE DESIGN
% ABBREVIATIONS PAGE DESIGN
%----------------------------------------------------------------------------------------
\newcommand{\abbrevname}{List of Abbreviations}
\providecaptionname{english,british,american}{\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}{}
\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
% ABSTRACT PAGE DESIGN
%----------------------------------------------------------------------------------------
\DeclareDocumentCommand{\abstractauthorfont}{}{}
@@ -345,160 +364,169 @@ KOMA-script documentation for details.}]{fancyhdr}
\providecaptionname{german,ngerman,austrian,naustrian}{\byname}{von}
\providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\byname}{by}
\ifbool{consistentlayout}{
\DeclareDocumentEnvironment{abstract}{ O{} }{%
\addchap*{\abstractname}%
{\chapteralign\normalsize\abstractauthorfont \authorname \par}% Author name
\vspace{\baselineskip}
{\chapteralign\parbox{.7\linewidth}{\chapteralign\normalsize\itshape\abstracttitlefont\@title}\par}% Thesis title
\bigskip\noindent\ignorespaces
}%
{}%end alt-abstract
\DeclareDocumentEnvironment{abstract}{ O{} }{%
\addchap*{\abstractname}%
{\chapteralign\normalsize\abstractauthorfont \authorname \par}% Author name
\vspace{\baselineskip}
{\chapteralign\parbox{.7\linewidth}{\chapteralign\normalsize\itshape\abstracttitlefont\@title}\par}%
% Thesis title
\bigskip\noindent\ignorespaces
}%
{}%end alt-abstract
}{%
\DeclareDocumentEnvironment{abstract}{ O{\null\vfill} }{
\checktoopen
\tttypeout{\abstractname}
#1%added to be able to have abstract more than one page long
\thispagestyle{plain}
\begin{center}
{\normalsize \MakeUppercase{\univname} \par}% University name in capitals
\bigskip
{\huge\textit{\abstractname} \par}
\bigskip
{\normalsize \facname \par}% Faculty name
{\normalsize \deptname \par}% Department name
\bigskip
{\normalsize \degreename\par}% Degree name
\bigskip
{\normalsize\bfseries \@title \par}% Thesis title
\medskip
{\normalsize \byname{} \authorname \par}% Author name
\bigskip
\end{center}
}
{
\vfill\null
}
\DeclareDocumentEnvironment{abstract}{ O{\null\vfill} }{
\checktoopen
\tttypeout{\abstractname}
#1%added to be able to have abstract more than one page long
\thispagestyle{plain}
\begin{center}
{\normalsize \MakeUppercase{\univname} \par}% University name in capitals
\bigskip
{\huge\textit{\abstractname} \par}
\bigskip
{\normalsize \facname \par}% Faculty name
{\normalsize \deptname \par}% Department name
\bigskip
{\normalsize \degreename\par}% Degree name
\bigskip
{\normalsize\bfseries \@title \par}% Thesis title
\medskip
{\normalsize \byname{} \authorname \par}% Author name
\bigskip
\end{center}
}
{
\vfill\null
}
}
\DeclareDocumentEnvironment{extraAbstract}{ O{\null\vfill} }{
\checktoopen
\tttypeout{\abstractname}
#1%added to be able to have abstract more than one page long
\thispagestyle{empty}
\begin{center}
{\normalsize \MakeUppercase{\univname} \par}% University name in capitals
\bigskip
{\huge\textit{\abstractname} \par}
\bigskip
{\normalsize \facname \par}% Faculty name
{\normalsize \deptname \par}% Department name
\bigskip
{\normalsize \degreename\par}% Degree name
\bigskip
{\normalsize\bfseries \@title \par}% Thesis title
\medskip
{\normalsize \byname{} \authorname \par}% Author name
\bigskip
\end{center}
\checktoopen
\tttypeout{\abstractname}
#1%added to be able to have abstract more than one page long
\thispagestyle{empty}
\begin{center}
{\normalsize \MakeUppercase{\univname} \par}% University name in capitals
\bigskip
{\huge\textit{\abstractname} \par}
\bigskip
{\normalsize \facname \par}% Faculty name
{\normalsize \deptname \par}% Department name
\bigskip
{\normalsize \degreename\par}% Degree name
\bigskip
{\normalsize\bfseries \@title \par}% Thesis title
\medskip
{\normalsize \byname{} \authorname \par}% Author name
\bigskip
\end{center}
}
{
\vfill\null
\vfill\null
}
%----------------------------------------------------------------------------------------
% ACKNOWLEDGEMENTS PAGE DESIGN
% ACKNOWLEDGEMENTS PAGE DESIGN
%----------------------------------------------------------------------------------------
\usepackage{xcolor}
\colorlet{mdtRed}{red!50!black}
\newcommand{\acknowledgementname}{Acknowledgements}
\providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish} {\acknowledgementname}{Acknowledgements} % Acknowledgement text for English countries
\providecaptionname{german,ngerman,austrian,naustrian}{\acknowledgementname}{Danksagung} % Acknowledgement text for Germanic countries
\providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}
{\acknowledgementname}{Acknowledgements} % Acknowledgement text for
% English countries
\providecaptionname{german,ngerman,austrian,naustrian}{\acknowledgementname}{Danksagung}
% Acknowledgement text for Germanic countries
\ifbool{consistentlayout}{
\DeclareDocumentEnvironment{acknowledgements}{}{%
\tttypeout{\acknowledgementname}
\addchap*{\acknowledgementname}
}
\DeclareDocumentEnvironment{acknowledgements}{}{%
\tttypeout{\acknowledgementname}
\addchap*{\acknowledgementname}
}
}
{
\DeclareDocumentEnvironment{acknowledgements}{}{%
\checktoopen
\tttypeout{\acknowledgementname}
\thispagestyle{plain}
\begin{center}{\huge\textit{\acknowledgementname}\par}\end{center}
}
{
\vfil\vfil\null
}
\DeclareDocumentEnvironment{acknowledgements}{}{%
\checktoopen
\tttypeout{\acknowledgementname}
\thispagestyle{plain}
\begin{center}{\huge\textit{\acknowledgementname}\par}
\end{center}
}
{
\vfil\vfil\null
}
}
%----------------------------------------------------------------------------------------
% DECLARATION PAGE DESIGN
% DECLARATION PAGE DESIGN
%----------------------------------------------------------------------------------------
\newcommand{\authorshipname}{Declaration of Authorship}
\providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\authorshipname}{Declaration of Authorship} % Declaration of Authorship text for English countries
\providecaptionname{german,ngerman,austrian,naustrian}{\authorshipname}{Eidesstattliche Erkl\"arung} % Declaration of Authorship text for Germanic countries
\providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\authorshipname}{Declaration
of Authorship} % Declaration of Authorship text for English countries
\providecaptionname{german,ngerman,austrian,naustrian}{\authorshipname}{Eidesstattliche
Erkl\"arung} % Declaration of Authorship text for Germanic countries
\ifbool{consistentlayout}{
\DeclareDocumentEnvironment{declaration}{}{
\addchap*{\authorshipname}
}{}%
\DeclareDocumentEnvironment{declaration}{}{
\addchap*{\authorshipname}
}{}%
}{
\DeclareDocumentEnvironment{declaration}{}{
\checktoopen
\tttypeout{\authorshipname}
\thispagestyle{plain}
\null\vfil
{\noindent\huge\bfseries\authorshipname\par\vspace{10pt}}
}{}
\DeclareDocumentEnvironment{declaration}{}{
\checktoopen
\tttypeout{\authorshipname}
\thispagestyle{plain}
\null\vfil
{\noindent\huge\bfseries\authorshipname\par\vspace{10pt}}
}{}
}
%----------------------------------------------------------------------------------------
% DEDICATION PAGE DESIGN
% DEDICATION PAGE DESIGN
%----------------------------------------------------------------------------------------
\ifbool{consistentlayout}{
\DeclareDocumentCommand{\dedicatory}{
m O{\vspace*{.7\textheight} } }{
\checktoopen\tttypeout{Dedicatory}
\markboth{}{}
#2
{\hfill\parbox{.4\textwidth}{\flushright#1\par}}
}
\DeclareDocumentCommand{\dedicatory}{
m O{\vspace*{.7\textheight} } }{
\checktoopen\tttypeout{Dedicatory}
\markboth{}{}
#2
{\hfill\parbox{.4\textwidth}{\flushright#1\par}}
}
}{
\newcommand\dedicatory[1]{
\checktoopen
\tttypeout{Dedicatory}
\null\vfil
\thispagestyle{plain}
\begin{center}{\Large\slshape #1}\end{center}
\vfil\null
}
\newcommand\dedicatory[1]{
\checktoopen
\tttypeout{Dedicatory}
\null\vfil
\thispagestyle{plain}
\begin{center}{\Large\slshape #1}
\end{center}
\vfil\null
}
}
%----------------------------------------------------------------------------------------
% PHYSICAL CONSTANTS PAGE DESIGN
% PHYSICAL CONSTANTS PAGE DESIGN
%----------------------------------------------------------------------------------------
\newcommand{\constantsname}{Physical Constants}
\providecaptionname{english,british,american}{\constantsname}{Physical Constants}
\providecaptionname{ngerman,german,austrian,naustrian}{\constantsname}{Physikalische Konstanten}
\providecaptionname{english,british,american}{\constantsname}{Physical
Constants}
\providecaptionname{ngerman,german,austrian,naustrian}{\constantsname}{Physikalische
Konstanten}
\NewDocumentEnvironment{constants}{ m }{%
\ifbool{nolistspace}{\begingroup\singlespacing}{}
\ifbool{listtoc}{\addchap{\constantsname}}{\addchap*{\constantsname}}
\begin{longtable}{#1}
}{%
\end{longtable}
\addtocounter{table}{-1}% Don't count this table as one of the document tables
\ifbool{nolistspace}{\endgroup}{}
\ifbool{nolistspace}{\begingroup\singlespacing}{}
\ifbool{listtoc}{\addchap{\constantsname}}{\addchap*{\constantsname}}
\begin{longtable}{#1}
}{%
\end{longtable}
\addtocounter{table}{-1}% Don't count this table as one of the document tables
\ifbool{nolistspace}{\endgroup}{}
}
%----------------------------------------------------------------------------------------
% SYMBOLS PAGE DESIGN
% SYMBOLS PAGE DESIGN
%----------------------------------------------------------------------------------------
\newcommand{\symbolsname}{List of Symbols}
@@ -506,36 +534,39 @@ KOMA-script documentation for details.}]{fancyhdr}
\providecaptionname{ngerman,german,austrian,naustrian}{\symbolsname}{Symbolverzeichnis}
\NewDocumentEnvironment{symbols}{ m }{%
\ifbool{nolistspace}{\begingroup\singlespacing}{}
\ifbool{listtoc}{\addchap{\symbolsname}}{\addchap*{\symbolsname}}
\begin{longtable}{#1}
}{%
\end{longtable}
\addtocounter{table}{-1}% Don't count this table as one of the document tables
\ifbool{nolistspace}{\endgroup}{}
\ifbool{nolistspace}{\begingroup\singlespacing}{}
\ifbool{listtoc}{\addchap{\symbolsname}}{\addchap*{\symbolsname}}
\begin{longtable}{#1}
}{%
\end{longtable}
\addtocounter{table}{-1}% Don't count this table as one of the document tables
\ifbool{nolistspace}{\endgroup}{}
}
%----------------------------------------------------------------------------------------
\ifbool{hyperrefsupport}{% If the nohyperref class option has not been specified
\AtEndPreamble{\RequirePackage{hyperref}
\hypersetup{pdfpagemode={UseOutlines},
bookmarksopen=true,
bookmarksopenlevel=0,
hypertexnames=false,
colorlinks=true,% Set to false to disable coloring links
citecolor=magenta,% The color of citations
linkcolor=red,% The color of references to document elements (sections, figures, etc)
urlcolor=mdtRed,% The color of hyperlinks (URLs)
pdfstartview={FitV},
unicode,
breaklinks=true,
}
\AtEndPreamble{\RequirePackage{hyperref}
\hypersetup{pdfpagemode={UseOutlines},
bookmarksopen=true,
bookmarksopenlevel=0,
hypertexnames=false,
colorlinks=true,% Set to false to disable coloring links
citecolor=magenta,% The color of citations
linkcolor=red,% The color of references to document elements
% (sections, figures, etc)
urlcolor=mdtRed,% The color of hyperlinks (URLs)
pdfstartview={FitV},
unicode,
breaklinks=true,
}
\pdfstringdefDisableCommands{% If there is an explicit linebreak in a section heading (or anything printed to the pdf-bookmarks), it is replaced by a space
\let\\\space%
}
}
\pdfstringdefDisableCommands{% If there is an explicit linebreak
% in a section heading (or anything printed to the
% pdf-bookmarks), it is replaced by a space
\let\\\space%
}
}
}{%nothing
}

View File

@@ -1,40 +1,62 @@
@article{Reference1,
Abstract = {We have developed an enhanced Littrow configuration extended cavity diode laser (ECDL) that can be tuned without changing the direction of the output beam. The output of a conventional Littrow ECDL is reflected from a plane mirror fixed parallel to the tuning diffraction grating. Using a free-space Michelson wavemeter to measure the laser wavelength, we can tune the laser over a range greater than 10 nm without any alteration of alignment.},
Author = {C. J. Hawthorn and K. P. Weber and R. E. Scholten},
Journal = {Review of Scientific Instruments},
Month = {12},
Number = {12},
Numpages = {3},
Pages = {4477--4479},
Title = {Littrow Configuration Tunable External Cavity Diode Laser with Fixed Direction Output Beam},
Volume = {72},
Url = {http://link.aip.org/link/?RSI/72/4477/1},
Year = {2001}}
Abstract = {We have developed an enhanced Littrow configuration
extended cavity diode laser (ECDL) that can be tuned without
changing the direction of the output beam. The output of a
conventional Littrow ECDL is reflected from a plane mirror fixed
parallel to the tuning diffraction grating. Using a free-space
Michelson wavemeter to measure the laser wavelength, we can tune
the laser over a range greater than 10 nm without any alteration of
alignment.},
Author = {C. J. Hawthorn and K. P. Weber and R. E. Scholten},
Journal = {Review of Scientific Instruments},
Month = {12},
Number = {12},
Numpages = {3},
Pages = {4477--4479},
Title = {Littrow Configuration Tunable External Cavity Diode Laser
with Fixed Direction Output Beam},
Volume = {72},
Url = {http://link.aip.org/link/?RSI/72/4477/1},
Year = {2001}}
@article{Reference3,
Abstract = {Operating a laser diode in an extended cavity which provides frequency-selective feedback is a very effective method of reducing the laser's linewidth and improving its tunability. We have developed an extremely simple laser of this type, built from inexpensive commercial components with only a few minor modifications. A 780~nm laser built to this design has an output power of 80~mW, a linewidth of 350~kHz, and it has been continuously locked to a Doppler-free rubidium transition for several days.},
Author = {A. S. Arnold and J. S. Wilson and M. G. Boshier and J. Smith},
Journal = {Review of Scientific Instruments},
Month = {3},
Number = {3},
Numpages = {4},
Pages = {1236--1239},
Title = {A Simple Extended-Cavity Diode Laser},
Volume = {69},
Url = {http://link.aip.org/link/?RSI/69/1236/1},
Year = {1998}}
Abstract = {Operating a laser diode in an extended cavity which
provides frequency-selective feedback is a very effective method of
reducing the laser's linewidth and improving its tunability. We
have developed an extremely simple laser of this type, built from
inexpensive commercial components with only a few minor
modifications. A 780~nm laser built to this design has an output
power of 80~mW, a linewidth of 350~kHz, and it has been
continuously locked to a Doppler-free rubidium transition for several days.},
Author = {A. S. Arnold and J. S. Wilson and M. G. Boshier and J. Smith},
Journal = {Review of Scientific Instruments},
Month = {3},
Number = {3},
Numpages = {4},
Pages = {1236--1239},
Title = {A Simple Extended-Cavity Diode Laser},
Volume = {69},
Url = {http://link.aip.org/link/?RSI/69/1236/1},
Year = {1998}}
@article{Reference2,
Abstract = {We present a review of the use of diode lasers in atomic physics with an extensive list of references. We discuss the relevant characteristics of diode lasers and explain how to purchase and use them. We also review the various techniques that have been used to control and narrow the spectral outputs of diode lasers. Finally we present a number of examples illustrating the use of diode lasers in atomic physics experiments. Review of Scientific Instruments is copyrighted by The American Institute of Physics.},
Author = {Carl E. Wieman and Leo Hollberg},
Journal = {Review of Scientific Instruments},
Keywords = {Diode Laser},
Month = {1},
Number = {1},
Numpages = {20},
Pages = {1--20},
Title = {Using Diode Lasers for Atomic Physics},
Volume = {62},
Url = {http://link.aip.org/link/?RSI/62/1/1},
Year = {1991}}
Abstract = {We present a review of the use of diode lasers in
atomic physics with an extensive list of references. We discuss the
relevant characteristics of diode lasers and explain how to
purchase and use them. We also review the various techniques that
have been used to control and narrow the spectral outputs of diode
lasers. Finally we present a number of examples illustrating the
use of diode lasers in atomic physics experiments. Review of
Scientific Instruments is copyrighted by The American Institute of Physics.},
Author = {Carl E. Wieman and Leo Hollberg},
Journal = {Review of Scientific Instruments},
Keywords = {Diode Laser},
Month = {1},
Number = {1},
Numpages = {20},
Pages = {1--20},
Title = {Using Diode Lasers for Atomic Physics},
Volume = {62},
Url = {http://link.aip.org/link/?RSI/62/1/1},
Year = {1991}}

10
flake.lock generated
View File

@@ -637,15 +637,15 @@
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1732292307,
"narHash": "sha256-5WSng844vXt8uytT5djmqBCkopyle6ciFgteuA9bJpw=",
"owner": "numtide",
"lastModified": 1732488702,
"narHash": "sha256-GXM5VTytfLwXZ7SgVFjYXdNT9Ntk4ncSLVk6Jl2b1h8=",
"owner": "qubasa",
"repo": "treefmt-nix",
"rev": "705df92694af7093dfbb27109ce16d828a79155f",
"rev": "01ac7b7a95ea04c83174ea9a31ffa9357a9c2602",
"type": "github"
},
"original": {
"owner": "numtide",
"owner": "qubasa",
"repo": "treefmt-nix",
"type": "github"
}

View File

@@ -9,7 +9,8 @@
];
inputs = {
treefmt-nix.url = "github:numtide/treefmt-nix";
#treefmt-nix.url = "github:Qubasa/treefmt-nix";
treefmt-nix.url = "github:qubasa/treefmt-nix";
flake-parts.url = "github:hercules-ci/flake-parts";
flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs";
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
@@ -44,7 +45,7 @@
{
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
tex-fmt
];
};
packages = {

View File

@@ -1,289 +1,570 @@
@article{kjorveziroski_full-mesh_2024,
title = {Full-mesh {VPN} performance evaluation for a secure edge-cloud continuum},
volume = {54},
rights = {© 2024 The Authors. Software: Practice and Experience published by John Wiley \& Sons Ltd.},
issn = {1097-024X},
url = {https://onlinelibrary.wiley.com/doi/abs/10.1002/spe.3329},
doi = {10.1002/spe.3329},
abstract = {The recent introduction of full-mesh virtual private network ({VPN}) solutions which offer near native performance, coupled with modern encryption algorithms and easy scalability as a result of a central control plane have a strong potential to enable the implementation of a seamless edge-cloud continuum. To test the performance of existing solutions in this domain, we present a framework consisted of both essential and optional features that full-mesh {VPN} solutions need to support before they can be used for interconnecting geographically dispersed compute nodes. We then apply this framework on existing offerings and select three {VPN} solutions for further tests: Headscale, Netbird, and {ZeroTier}. We evaluate their features in the context of establishing an underlay network on top of which a Kubernetes overlay network can be created. We test pod-to-pod {TCP} and {UDP} throughput as well as Kubernetes application programming interface ({API}) response times, in multiple scenarios, accounting for adverse network conditions such as packet loss or packet delay. Based on the obtained measurement results and through analysis of the underlying strengths and weaknesses of the individual implementations, we draw conclusions on the preferred {VPN} solution depending on the use-case at hand, striking a balance between usability and performance.},
pages = {1543--1564},
number = {8},
journaltitle = {Software: Practice and Experience},
author = {Kjorveziroski, Vojdan and Bernad, Cristina and Gilly, Katja and Filiposka, Sonja},
urldate = {2024-09-19},
date = {2024},
langid = {english},
keywords = {edge-cloud continuum, Kubernetes, orchestration, virtual private networks, Wireguard, {ZeroTier}},
file = {Attachment:/home/lhebendanz/Zotero/storage/BGJCY48V/Softw Pract Exp - 2024 - Kjorveziroski - Fullmesh VPN performance evaluation for a secure edgecloud continuum.pdf:application/pdf},
title = {Full-mesh {VPN} performance evaluation for a secure
edge-cloud continuum},
volume = {54},
rights = {© 2024 The Authors. Software: Practice and Experience
published by John Wiley \& Sons Ltd.},
issn = {1097-024X},
url = {https://onlinelibrary.wiley.com/doi/abs/10.1002/spe.3329},
doi = {10.1002/spe.3329},
abstract = {The recent introduction of full-mesh virtual private
network ({VPN}) solutions which offer near native performance,
coupled with modern encryption algorithms and easy scalability as a
result of a central control plane have a strong potential to enable
the implementation of a seamless edge-cloud continuum. To test the
performance of existing solutions in this domain, we present a
framework consisted of both essential and optional features that
full-mesh {VPN} solutions need to support before they can be used
for interconnecting geographically dispersed compute nodes. We then
apply this framework on existing offerings and select three {VPN}
solutions for further tests: Headscale, Netbird, and {ZeroTier}. We
evaluate their features in the context of establishing an underlay
network on top of which a Kubernetes overlay network can be
created. We test pod-to-pod {TCP} and {UDP} throughput as well as
Kubernetes application programming interface ({API}) response
times, in multiple scenarios, accounting for adverse network
conditions such as packet loss or packet delay. Based on the
obtained measurement results and through analysis of the underlying
strengths and weaknesses of the individual implementations, we draw
conclusions on the preferred {VPN} solution depending on the
use-case at hand, striking a balance between usability and performance.},
pages = {1543--1564},
number = {8},
journaltitle = {Software: Practice and Experience},
author = {Kjorveziroski, Vojdan and Bernad, Cristina and Gilly,
Katja and Filiposka, Sonja},
urldate = {2024-09-19},
date = {2024},
langid = {english},
keywords = {edge-cloud continuum, Kubernetes, orchestration,
virtual private networks, Wireguard, {ZeroTier}},
file = {Attachment:/home/lhebendanz/Zotero/storage/BGJCY48V/Softw
Pract Exp - 2024 - Kjorveziroski - Fullmesh VPN performance
evaluation for a secure edgecloud continuum.pdf:application/pdf},
}
@inproceedings{hugerich_no-hop_2022,
location = {New York, {NY}, {USA}},
title = {No-hop: In-network Distributed Hash Tables},
isbn = {978-1-4503-9168-9},
url = {https://doi.org/10.1145/3493425.3502757},
doi = {10.1145/3493425.3502757},
series = {{ANCS} '21},
shorttitle = {No-hop},
abstract = {We make a case for a distributed hash table lookup in the network data plane. We argue that the lookup time performance of distributed hash tables can be further improved via an in-network data plane implementation. To this end, we introduce No-hop, an in-network distributed hash table implementation, which leverages the data plane programmability at line rate gained from P4. Our initial results of transporting distributed hash table logic from hosts' user space to the fast path of switches in the network data plane are promising. We show that No-hop improves the performance of locating the responsible host and maintains the properties of distributed hash tables while outperforming two baselines.},
pages = {80--87},
booktitle = {Proceedings of the Symposium on Architectures for Networking and Communications Systems},
publisher = {Association for Computing Machinery},
author = {Hügerich, Lily and Shukla, Apoorv and Smaragdakis, Georgios},
urldate = {2024-09-23},
date = {2022-01},
file = {Attachment:/home/lhebendanz/Zotero/storage/WCI9PCTE/inet_nohop_decen_hashtable.pdf:application/pdf},
location = {New York, {NY}, {USA}},
title = {No-hop: In-network Distributed Hash Tables},
isbn = {978-1-4503-9168-9},
url = {https://doi.org/10.1145/3493425.3502757},
doi = {10.1145/3493425.3502757},
series = {{ANCS} '21},
shorttitle = {No-hop},
abstract = {We make a case for a distributed hash table lookup in
the network data plane. We argue that the lookup time performance
of distributed hash tables can be further improved via an
in-network data plane implementation. To this end, we introduce
No-hop, an in-network distributed hash table implementation, which
leverages the data plane programmability at line rate gained from
P4. Our initial results of transporting distributed hash table
logic from hosts' user space to the fast path of switches in the
network data plane are promising. We show that No-hop improves the
performance of locating the responsible host and maintains the
properties of distributed hash tables while outperforming two baselines.},
pages = {80--87},
booktitle = {Proceedings of the Symposium on Architectures for
Networking and Communications Systems},
publisher = {Association for Computing Machinery},
author = {Hügerich, Lily and Shukla, Apoorv and Smaragdakis, Georgios},
urldate = {2024-09-23},
date = {2022-01},
file =
{Attachment:/home/lhebendanz/Zotero/storage/WCI9PCTE/inet_nohop_decen_hashtable.pdf:application/pdf},
}
@inproceedings{tiesel_multi-homed_2016,
location = {New York, {NY}, {USA}},
title = {Multi-Homed on a Single Link: Using Multiple {IPv}6 Access Networks},
isbn = {978-1-4503-4443-2},
url = {https://doi.org/10.1145/2959424.2959434},
doi = {10.1145/2959424.2959434},
series = {{ANRW} '16},
shorttitle = {Multi-Homed on a Single Link},
abstract = {Small companies and branch offices often have bandwidth demands and redundancy needs that go beyond the commercially available Internet access products in their price range. One way to overcome this problem is to bundle existing Internet access products. In effect, they become multi-homed often without running {BGP} or even getting an {AS} number.Currently, these users rely on proprietary L4 load balancing routers, proprietary multi-channel {VPN} routers, or sometimes {LISP}, to bundle their "cheaper" Internet access network links, e.g., via (v){DSL}, {DOCSIS}, {HSDPA}, or {LTE}. While most products claim transport-layer transparency they add complexity via middleboxes, map each {TCP} connection to a single interface, and have limited application support. Thus, in this paper we propose an alternative: Auto-configuration of multiple {IPv}6 prefixes on a single L2 link. We discuss how this enables applications to take advantage of combining multiple access networks at with minimal system changes.},
pages = {16--18},
booktitle = {Proceedings of the 2016 Applied Networking Research Workshop},
publisher = {Association for Computing Machinery},
author = {Tiesel, Philipp S. and May, Bernd and Feldmann, Anja},
urldate = {2024-09-23},
date = {2016-07},
file = {Attachment:/home/lhebendanz/Zotero/storage/W44Z4XEE/inet_ipv6_vpn.pdf:application/pdf},
location = {New York, {NY}, {USA}},
title = {Multi-Homed on a Single Link: Using Multiple {IPv}6 Access Networks},
isbn = {978-1-4503-4443-2},
url = {https://doi.org/10.1145/2959424.2959434},
doi = {10.1145/2959424.2959434},
series = {{ANRW} '16},
shorttitle = {Multi-Homed on a Single Link},
abstract = {Small companies and branch offices often have bandwidth
demands and redundancy needs that go beyond the commercially
available Internet access products in their price range. One way to
overcome this problem is to bundle existing Internet access
products. In effect, they become multi-homed often without running
{BGP} or even getting an {AS} number.Currently, these users rely on
proprietary L4 load balancing routers, proprietary multi-channel
{VPN} routers, or sometimes {LISP}, to bundle their "cheaper"
Internet access network links, e.g., via (v){DSL}, {DOCSIS},
{HSDPA}, or {LTE}. While most products claim transport-layer
transparency they add complexity via middleboxes, map each {TCP}
connection to a single interface, and have limited application
support. Thus, in this paper we propose an alternative:
Auto-configuration of multiple {IPv}6 prefixes on a single L2 link.
We discuss how this enables applications to take advantage of
combining multiple access networks at with minimal system changes.},
pages = {16--18},
booktitle = {Proceedings of the 2016 Applied Networking Research Workshop},
publisher = {Association for Computing Machinery},
author = {Tiesel, Philipp S. and May, Bernd and Feldmann, Anja},
urldate = {2024-09-23},
date = {2016-07},
file =
{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},
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},
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},
volume = {2017},
rights = {Copyright © 2017 Taimur Bakhshi.},
issn = {1530-8677},
url = {https://onlinelibrary.wiley.com/doi/abs/10.1155/2017/7191647},
doi = {10.1155/2017/7191647},
abstract = {Emerging network services and subsequent growth in the networking infrastructure have gained tremendous momentum in recent years. Application performance requiring rapid real-time network provisioning, optimized traffic management, and virtualization of shared resources has induced the conceptualization and adoption of new networking models. Software defined networking ({SDN}), one of the predominant and relatively new networking paradigms, seeks to simplify network management by decoupling network control logic from the underlying hardware and introduces real-time network programmability enabling innovation. The present work reviews the state of the art in software defined networking providing a historical perspective on complementary technologies in network programmability and the inherent shortcomings which paved the way for {SDN}. The {SDN} architecture is discussed along with popular protocols, platforms, and existing simulation and debugging solutions. Furthermore, a detailed analysis is presented around recent {SDN} development and deployment avenues ranging from mobile communications and data centers to campus networks and residential environments. The review concludes by highlighting implementation challenges and subsequent research directions being pursued in academia and industry to address issues related to application performance, control plane scalability and design, security, and interdomain connectivity in the context of {SDN}.},
pages = {7191647},
number = {1},
journaltitle = {Wireless Communications and Mobile Computing},
author = {Bakhshi, Taimur},
urldate = {2024-09-23},
date = {2017},
langid = {english},
file = {Attachment:/home/lhebendanz/Zotero/storage/TXFJ8DJB/Wireless Communications and Mobile Computing - 2017 - Bakhshi - State of the Art and Recent Research Advances in Software.pdf:application/pdf},
title = {State of the Art and Recent Research Advances in Software
Defined Networking},
volume = {2017},
rights = {Copyright © 2017 Taimur Bakhshi.},
issn = {1530-8677},
url = {https://onlinelibrary.wiley.com/doi/abs/10.1155/2017/7191647},
doi = {10.1155/2017/7191647},
abstract = {Emerging network services and subsequent growth in the
networking infrastructure have gained tremendous momentum in recent
years. Application performance requiring rapid real-time network
provisioning, optimized traffic management, and virtualization of
shared resources has induced the conceptualization and adoption of
new networking models. Software defined networking ({SDN}), one of
the predominant and relatively new networking paradigms, seeks to
simplify network management by decoupling network control logic
from the underlying hardware and introduces real-time network
programmability enabling innovation. The present work reviews the
state of the art in software defined networking providing a
historical perspective on complementary technologies in network
programmability and the inherent shortcomings which paved the way
for {SDN}. The {SDN} architecture is discussed along with popular
protocols, platforms, and existing simulation and debugging
solutions. Furthermore, a detailed analysis is presented around
recent {SDN} development and deployment avenues ranging from mobile
communications and data centers to campus networks and residential
environments. The review concludes by highlighting implementation
challenges and subsequent research directions being pursued in
academia and industry to address issues related to application
performance, control plane scalability and design, security, and
interdomain connectivity in the context of {SDN}.},
pages = {7191647},
number = {1},
journaltitle = {Wireless Communications and Mobile Computing},
author = {Bakhshi, Taimur},
urldate = {2024-09-23},
date = {2017},
langid = {english},
file =
{Attachment:/home/lhebendanz/Zotero/storage/TXFJ8DJB/Wireless
Communications and Mobile Computing - 2017 - Bakhshi - State of the
Art and Recent Research Advances in Software.pdf:application/pdf},
}
@article{han_distributed_2015,
title = {Distributed hybrid P2P networking systems},
volume = {8},
issn = {1936-6450},
url = {https://doi.org/10.1007/s12083-014-0298-7},
doi = {10.1007/s12083-014-0298-7},
pages = {555--556},
number = {4},
journaltitle = {Peer-to-Peer Netw. Appl.},
author = {Han, Jungsoo},
urldate = {2024-11-19},
date = {2015-07-01},
langid = {english},
file = {Full Text PDF:/home/lhebendanz/Zotero/storage/XVFPW4CM/Han - 2015 - Distributed hybrid P2P networking systems.pdf:application/pdf},
title = {Distributed hybrid P2P networking systems},
volume = {8},
issn = {1936-6450},
url = {https://doi.org/10.1007/s12083-014-0298-7},
doi = {10.1007/s12083-014-0298-7},
pages = {555--556},
number = {4},
journaltitle = {Peer-to-Peer Netw. Appl.},
author = {Han, Jungsoo},
urldate = {2024-11-19},
date = {2015-07-01},
langid = {english},
file = {Full Text PDF:/home/lhebendanz/Zotero/storage/XVFPW4CM/Han
- 2015 - Distributed hybrid P2P networking systems.pdf:application/pdf},
}
@online{noauthor_sci-hub_nodate,
title = {Sci-Hub},
url = {https://sci-hub.usualwant.com/},
abstract = {Sci-Hub,{SciHub}: Contains the latest literature in 2024,world where everyone has free access to knowledge.},
urldate = {2024-11-19},
file = {Snapshot:/home/lhebendanz/Zotero/storage/Q6ZNWGBH/sci-hub.usualwant.com.html:text/html},
title = {Sci-Hub},
url = {https://sci-hub.usualwant.com/},
abstract = {Sci-Hub,{SciHub}: Contains the latest literature in
2024,world where everyone has free access to knowledge.},
urldate = {2024-11-19},
file =
{Snapshot:/home/lhebendanz/Zotero/storage/Q6ZNWGBH/sci-hub.usualwant.com.html:text/html},
}
@article{shukla_towards_2021,
title = {Towards software defined low maintenance structured peer-to-peer overlays},
volume = {14},
issn = {1936-6442, 1936-6450},
url = {https://link.springer.com/10.1007/s12083-021-01112-7},
doi = {10.1007/s12083-021-01112-7},
pages = {1242--1260},
number = {3},
journaltitle = {Peer-to-Peer Netw. Appl.},
author = {Shukla, Nitin and Datta, Dipmalya and Pandey, Mayank and Srivastava, Shashank},
urldate = {2024-11-19},
date = {2021-05},
langid = {english},
file = {PDF:/home/lhebendanz/Zotero/storage/GTPSJRYK/Shukla et al. - 2021 - Towards software defined low maintenance structured peer-to-peer overlays.pdf:application/pdf},
title = {Towards software defined low maintenance structured
peer-to-peer overlays},
volume = {14},
issn = {1936-6442, 1936-6450},
url = {https://link.springer.com/10.1007/s12083-021-01112-7},
doi = {10.1007/s12083-021-01112-7},
pages = {1242--1260},
number = {3},
journaltitle = {Peer-to-Peer Netw. Appl.},
author = {Shukla, Nitin and Datta, Dipmalya and Pandey, Mayank and
Srivastava, Shashank},
urldate = {2024-11-19},
date = {2021-05},
langid = {english},
file = {PDF:/home/lhebendanz/Zotero/storage/GTPSJRYK/Shukla et al.
- 2021 - Towards software defined low maintenance structured
peer-to-peer overlays.pdf:application/pdf},
}
@article{naik_next_2020,
title = {Next level peer-to-peer overlay networks under high churns: a survey},
volume = {13},
issn = {1936-6442, 1936-6450},
url = {http://link.springer.com/10.1007/s12083-019-00839-8},
doi = {10.1007/s12083-019-00839-8},
shorttitle = {Next level peer-to-peer overlay networks under high churns},
pages = {905--931},
number = {3},
journaltitle = {Peer-to-Peer Netw. Appl.},
author = {Naik, Ashika R. and Keshavamurthy, Bettahally N.},
urldate = {2024-11-19},
date = {2020-05},
langid = {english},
file = {PDF:/home/lhebendanz/Zotero/storage/PWMXVDES/Naik and Keshavamurthy - 2020 - Next level peer-to-peer overlay networks under high churns a survey.pdf:application/pdf},
title = {Next level peer-to-peer overlay networks under high
churns: a survey},
volume = {13},
issn = {1936-6442, 1936-6450},
url = {http://link.springer.com/10.1007/s12083-019-00839-8},
doi = {10.1007/s12083-019-00839-8},
shorttitle = {Next level peer-to-peer overlay networks under high churns},
pages = {905--931},
number = {3},
journaltitle = {Peer-to-Peer Netw. Appl.},
author = {Naik, Ashika R. and Keshavamurthy, Bettahally N.},
urldate = {2024-11-19},
date = {2020-05},
langid = {english},
file = {PDF:/home/lhebendanz/Zotero/storage/PWMXVDES/Naik and
Keshavamurthy - 2020 - Next level peer-to-peer overlay networks
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},
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 Environments with {NixOS} Compose},
rights = {https://doi.org/10.15223/policy-029},
isbn = {978-1-66549-856-2},
url = {https://ieeexplore.ieee.org/document/9912715/},
doi = {10.1109/CLUSTER51413.2022.00051},
abstract = {Development of environments for distributed systems is a tedious and time-consuming iterative process. The reproducibility of such environments is a crucial factor for rigorous scientific contributions. We think that being able to smoothly test environments both locally and on a target distributed platform makes development cycles faster and reduces the friction to adopt better experimental practices. To address this issue, this paper introduces the notion of environment transposition and implements it in {NixOS} Compose, a tool that generates reproducible distributed environments. It enables users to deploy their environments on virtualized (docker, {QEMU}) or physical (Grid5000) platforms with the same unique description of the environment. We show that {NixOS} Compose enables to build reproducible environments without overhead by comparing it to state-of-the-art solutions for the generation of distributed environments ({EnOSlib} and Kameleon). {NixOS} Compose actually enables substantial performance improvements on image building time over Kameleon (up to 11x faster for initial builds and up to 19x faster when building a variation of an existing environment).},
eventtitle = {2022 {IEEE} International Conference on Cluster Computing ({CLUSTER})},
pages = {1--12},
booktitle = {2022 {IEEE} International Conference on Cluster Computing ({CLUSTER})},
publisher = {{IEEE}},
author = {Guilloteau, Quentin and Bleuzen, Jonathan and Poquet, Millian and Richard, Olivier},
urldate = {2024-11-24},
date = {2022-09},
langid = {english},
file = {PDF:/home/lhebendanz/Zotero/storage/SEEITEJA/Guilloteau et al. - 2022 - Painless Transposition of Reproducible Distributed Environments with NixOS Compose.pdf:application/pdf},
location = {Heidelberg, Germany},
title = {Painless Transposition of Reproducible Distributed
Environments with {NixOS} Compose},
rights = {https://doi.org/10.15223/policy-029},
isbn = {978-1-66549-856-2},
url = {https://ieeexplore.ieee.org/document/9912715/},
doi = {10.1109/CLUSTER51413.2022.00051},
abstract = {Development of environments for distributed systems is
a tedious and time-consuming iterative process. The reproducibility
of such environments is a crucial factor for rigorous scientific
contributions. We think that being able to smoothly test
environments both locally and on a target distributed platform
makes development cycles faster and reduces the friction to adopt
better experimental practices. To address this issue, this paper
introduces the notion of environment transposition and implements
it in {NixOS} Compose, a tool that generates reproducible
distributed environments. It enables users to deploy their
environments on virtualized (docker, {QEMU}) or physical
(Grid5000) platforms with the same unique description of the
environment. We show that {NixOS} Compose enables to build
reproducible environments without overhead by comparing it to
state-of-the-art solutions for the generation of distributed
environments ({EnOSlib} and Kameleon). {NixOS} Compose actually
enables substantial performance improvements on image building time
over Kameleon (up to 11x faster for initial builds and up to 19x
faster when building a variation of an existing environment).},
eventtitle = {2022 {IEEE} International Conference on Cluster
Computing ({CLUSTER})},
pages = {1--12},
booktitle = {2022 {IEEE} International Conference on Cluster
Computing ({CLUSTER})},
publisher = {{IEEE}},
author = {Guilloteau, Quentin and Bleuzen, Jonathan and Poquet,
Millian and Richard, Olivier},
urldate = {2024-11-24},
date = {2022-09},
langid = {english},
file = {PDF:/home/lhebendanz/Zotero/storage/SEEITEJA/Guilloteau et
al. - 2022 - Painless Transposition of Reproducible Distributed
Environments with NixOS Compose.pdf:application/pdf},
}
@inproceedings{dolstra_nixos_2008,
location = {New York, {NY}, {USA}},
title = {{NixOS}: a purely functional Linux distribution},
isbn = {978-1-59593-919-7},
url = {https://doi.org/10.1145/1411204.1411255},
doi = {10.1145/1411204.1411255},
series = {{ICFP} '08},
shorttitle = {{NixOS}},
abstract = {Existing package and system configuration management tools suffer from an imperative model, where system administration actions such as upgrading packages or changes to system configuration files are stateful: they destructively update the state of the system. This leads to many problems, such as the inability to roll back changes easily, to run multiple versions of a package side-by-side, to reproduce a configuration deterministically on another machine, or to reliably upgrade a system. In this paper we show that we can overcome these problems by moving to a purely functional system configuration model. This means that all static parts of a system (such as software packages, configuration files and system startup scripts) are built by pure functions and are immutable, stored in a way analogously to a heap in a purely function language. We have implemented this model in {NixOS}, a non-trivial Linux distribution that uses the Nix package manager to build the entire system configuration from a purely functional specification.},
pages = {367--378},
booktitle = {Proceedings of the 13th {ACM} {SIGPLAN} international conference on Functional programming},
publisher = {Association for Computing Machinery},
author = {Dolstra, Eelco and Löh, Andres},
urldate = {2024-11-24},
date = {2008-09-20},
file = {PDF:/home/lhebendanz/Zotero/storage/GGG3BB3V/Dolstra et al. - 2010 - NixOS A Purely Functional Linux Distribution.pdf:application/pdf},
location = {New York, {NY}, {USA}},
title = {{NixOS}: a purely functional Linux distribution},
isbn = {978-1-59593-919-7},
url = {https://doi.org/10.1145/1411204.1411255},
doi = {10.1145/1411204.1411255},
series = {{ICFP} '08},
shorttitle = {{NixOS}},
abstract = {Existing package and system configuration management
tools suffer from an imperative model, where system administration
actions such as upgrading packages or changes to system
configuration files are stateful: they destructively update the
state of the system. This leads to many problems, such as the
inability to roll back changes easily, to run multiple versions of
a package side-by-side, to reproduce a configuration
deterministically on another machine, or to reliably upgrade a
system. In this paper we show that we can overcome these problems
by moving to a purely functional system configuration model. This
means that all static parts of a system (such as software packages,
configuration files and system startup scripts) are built by pure
functions and are immutable, stored in a way analogously to a heap
in a purely function language. We have implemented this model in
{NixOS}, a non-trivial Linux distribution that uses the Nix package
manager to build the entire system configuration from a purely
functional specification.},
pages = {367--378},
booktitle = {Proceedings of the 13th {ACM} {SIGPLAN} international
conference on Functional programming},
publisher = {Association for Computing Machinery},
author = {Dolstra, Eelco and Löh, Andres},
urldate = {2024-11-24},
date = {2008-09-20},
file = {PDF:/home/lhebendanz/Zotero/storage/GGG3BB3V/Dolstra et al.
- 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},
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},
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},
issn = {0163-5808},
url = {https://doi.org/10.1145/945721.945732},
doi = {10.1145/945721.945732},
abstract = {A major problem in today's information-driven world is that sharing heterogeneous, semantically rich data is incredibly difficult. Piazza is a peer data management system that enables sharing heterogeneous data in a distributed and scalable way. Piazza assumes the participants to be interested in sharing data, and willing to define pairwise mappings between their schemas. Then, users formulate queries over their preferred schema, and a query answering system expands recursively any mappings relevant to the query, retrieving data from other peers. In this paper, we provide a brief overview of the Piazza project including our work on developing mapping languages and query reformulation algorithms, assisting the users in defining mappings, indexing, and enforcing access control over shared data.},
pages = {47--52},
number = {3},
journaltitle = {{SIGMOD} Rec.},
author = {Tatarinov, Igor and Ives, Zachary and Madhavan, Jayant and Halevy, Alon and Suciu, Dan and Dalvi, Nilesh and Dong, Xin (Luna) and Kadiyska, Yana and Miklau, Gerome and Mork, Peter},
urldate = {2024-11-24},
date = {2003-09-01},
file = {PDF:/home/lhebendanz/Zotero/storage/MRK3XWJG/Tatarinov et al. - 2003 - The Piazza peer data management project.pdf:application/pdf},
title = {The Piazza peer data management project},
volume = {32},
issn = {0163-5808},
url = {https://doi.org/10.1145/945721.945732},
doi = {10.1145/945721.945732},
abstract = {A major problem in today's information-driven world is
that sharing heterogeneous, semantically rich data is incredibly
difficult. Piazza is a peer data management system that enables
sharing heterogeneous data in a distributed and scalable way.
Piazza assumes the participants to be interested in sharing data,
and willing to define pairwise mappings between their schemas.
Then, users formulate queries over their preferred schema, and a
query answering system expands recursively any mappings relevant to
the query, retrieving data from other peers. In this paper, we
provide a brief overview of the Piazza project including our work
on developing mapping languages and query reformulation algorithms,
assisting the users in defining mappings, indexing, and enforcing
access control over shared data.},
pages = {47--52},
number = {3},
journaltitle = {{SIGMOD} Rec.},
author = {Tatarinov, Igor and Ives, Zachary and Madhavan, Jayant
and Halevy, Alon and Suciu, Dan and Dalvi, Nilesh and Dong, Xin
(Luna) and Kadiyska, Yana and Miklau, Gerome and Mork, Peter},
urldate = {2024-11-24},
date = {2003-09-01},
file = {PDF:/home/lhebendanz/Zotero/storage/MRK3XWJG/Tatarinov et
al. - 2003 - The Piazza peer data management project.pdf:application/pdf},
}
@article{van_der_burg_disnix_2014,
title = {Disnix: A toolset for distributed deployment},
volume = {79},
issn = {0167-6423},
url = {https://www.sciencedirect.com/science/article/pii/S0167642312000639},
doi = {10.1016/j.scico.2012.03.006},
series = {Experimental Software and Toolkits ({EST} 4): A special issue of the Workshop on Academic Software Development Tools and Techniques ({WASDeTT}-3 2010)},
shorttitle = {Disnix},
abstract = {The process of deploying a distributed system in a network of machines is often very complex, laborious and time-consuming, while it is hard to guarantee that the system will work as expected and that specific non-functional deployment requirements from the domain are supported. In this paper we describe the Disnix toolset, which provides system administrators or developers with automatic deployment of a distributed system in a network of machines from declarative specifications and offers properties such as complete dependencies, atomic upgrades and rollbacks to make this process efficient and reliable. Disnix has an extensible architecture, allowing the integration of custom modules to make the deployment more convenient and suitable for the domain in which the system is to be used. Disnix has been under development for almost four years and has been applied to several types of distributed systems, including an industrial case study.},
pages = {52--69},
journaltitle = {Science of Computer Programming},
author = {van der Burg, Sander and Dolstra, Eelco},
urldate = {2024-11-24},
date = {2014-01-01},
keywords = {Distributed systems, Service-oriented systems, Software deployment},
file = {PDF:/home/lhebendanz/Zotero/storage/XSWZ95UU/van der Burg and Dolstra - 2014 - Disnix A toolset for distributed deployment.pdf:application/pdf;ScienceDirect Snapshot:/home/lhebendanz/Zotero/storage/VHPTLVMW/S0167642312000639.html:text/html},
title = {Disnix: A toolset for distributed deployment},
volume = {79},
issn = {0167-6423},
url = {https://www.sciencedirect.com/science/article/pii/S0167642312000639},
doi = {10.1016/j.scico.2012.03.006},
series = {Experimental Software and Toolkits ({EST} 4): A special
issue of the Workshop on Academic Software Development Tools and
Techniques ({WASDeTT}-3 2010)},
shorttitle = {Disnix},
abstract = {The process of deploying a distributed system in a
network of machines is often very complex, laborious and
time-consuming, while it is hard to guarantee that the system will
work as expected and that specific non-functional deployment
requirements from the domain are supported. In this paper we
describe the Disnix toolset, which provides system administrators
or developers with automatic deployment of a distributed system in
a network of machines from declarative specifications and offers
properties such as complete dependencies, atomic upgrades and
rollbacks to make this process efficient and reliable. Disnix has
an extensible architecture, allowing the integration of custom
modules to make the deployment more convenient and suitable for the
domain in which the system is to be used. Disnix has been under
development for almost four years and has been applied to several
types of distributed systems, including an industrial case study.},
pages = {52--69},
journaltitle = {Science of Computer Programming},
author = {van der Burg, Sander and Dolstra, Eelco},
urldate = {2024-11-24},
date = {2014-01-01},
keywords = {Distributed systems, Service-oriented systems, Software
deployment},
file = {PDF:/home/lhebendanz/Zotero/storage/XSWZ95UU/van der Burg
and Dolstra - 2014 - Disnix A toolset for distributed
deployment.pdf:application/pdf;ScienceDirect
Snapshot:/home/lhebendanz/Zotero/storage/VHPTLVMW/S0167642312000639.html:text/html},
}
@inproceedings{dolstra_charon_2013,
title = {Charon: Declarative provisioning and deployment},
url = {https://ieeexplore.ieee.org/abstract/document/6607691},
doi = {10.1109/RELENG.2013.6607691},
shorttitle = {Charon},
abstract = {We introduce Charon, a tool for automated provisioning and deployment of networks of machines from declarative specifications. Building upon {NixOS}, a Linux distribution with a purely functional configuration management model, Charon specifications completely describe the desired configuration of sets of “logical” machines, including all software packages and services that need to be present on those machines, as well as their desired “physical” characteristics. Given such specifications, Charon will provision cloud resources (such as Amazon {EC}2 instances) as required, build and deploy packages, and activate services. We argue why declarativity and integrated provisioning and configuration management are important properties, and describe our experience with Charon.},
eventtitle = {2013 1st International Workshop on Release Engineering ({RELENG})},
pages = {17--20},
booktitle = {2013 1st International Workshop on Release Engineering ({RELENG})},
author = {Dolstra, Eelco and Vermaas, Rob and Levy, Shea},
urldate = {2024-11-24},
date = {2013-05},
keywords = {Databases, {IP} networks, Linux, Production, Servers, Software, Testing},
file = {IEEE Xplore Abstract Record:/home/lhebendanz/Zotero/storage/LDFB982I/6607691.html:text/html},
title = {Charon: Declarative provisioning and deployment},
url = {https://ieeexplore.ieee.org/abstract/document/6607691},
doi = {10.1109/RELENG.2013.6607691},
shorttitle = {Charon},
abstract = {We introduce Charon, a tool for automated provisioning
and deployment of networks of machines from declarative
specifications. Building upon {NixOS}, a Linux distribution with a
purely functional configuration management model, Charon
specifications completely describe the desired configuration of
sets of “logical” machines, including all software packages and
services that need to be present on those machines, as well as
their desired “physical” characteristics. Given such
specifications, Charon will provision cloud resources (such as
Amazon {EC}2 instances) as required, build and deploy packages, and
activate services. We argue why declarativity and integrated
provisioning and configuration management are important properties,
and describe our experience with Charon.},
eventtitle = {2013 1st International Workshop on Release
Engineering ({RELENG})},
pages = {17--20},
booktitle = {2013 1st International Workshop on Release Engineering
({RELENG})},
author = {Dolstra, Eelco and Vermaas, Rob and Levy, Shea},
urldate = {2024-11-24},
date = {2013-05},
keywords = {Databases, {IP} networks, Linux, Production, Servers,
Software, Testing},
file = {IEEE Xplore Abstract
Record:/home/lhebendanz/Zotero/storage/LDFB982I/6607691.html:text/html},
}

View File

@@ -12,6 +12,12 @@
programs.nixfmt.enable = true;
programs.shellcheck.enable = true;
programs.yamlfmt.enable = true;
programs.texfmt.enable = true;
settings.global.excludes = [
"AI_Data/**"
"Figures/**"
];
};
};
}