X-Git-Url: http://git.rohieb.name/skm-ma-ws1314.git/blobdiff_plain/747e9d2a6f3468676b5e60d20e488e9a7891b06d..4573c0eb2dbb23f52ba40118e3f5d2892805af14:/main.tex?ds=inline diff --git a/main.tex b/main.tex index 8219bb3..fd48513 100644 --- a/main.tex +++ b/main.tex @@ -1,94 +1,60 @@ \documentclass[a4paper,11pt]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} -\usepackage{ae} +\usepackage{lmodern} \usepackage{color} \usepackage{graphicx} \usepackage{wrapfig} -\usepackage{hyperref} +\usepackage[hidelinks=true]{hyperref} +\usepackage[disable]{todonotes} +\usepackage{tikz} +\usepackage{enumitem} % for sparse lists with \setlist +\usetikzlibrary{arrows} +% use sans-serif font for code instead of default monospace \urlstyle{sf} +\makeatletter \def\verbatim@font{\sffamily} \makeatother + +% optimize vertical space in lists +\setlist[enumerate]{noitemsep} +\setlist[itemize]{noitemsep} + +% ...and in verbatim environment +\usepackage{etoolbox} +\makeatletter \preto{\@verbatim}{\topsep=0pt \partopsep=0pt} \makeatother \newcommand{\pages}[1]{\marginpar{#1 pages}} -\newcommand{\todo}[1][]{\textcolor{red}{TODO #1} \\} \newcommand{\term}[1]{\emph{#1}} \newcommand{\code}[1]{\textsf{#1}} \title{Chatty Things -- Making the Internet of Things Readily Usable for the Masses with XMPP} \author{Roland Hieber} -\date{Seminar Communications and Multimedia, TU~Braunschweig \\[1em] \today} +\date{Seminar Communications and Multimedia, TU~Braunschweig \\[1em] + January 27, 2014} \begin{document} \maketitle -%% Introduction -\section{Introduction} -\todo -\pages{0-1} -short overview, not too long: what do we want, what are we -going to do - -basically: how do we talk to our smart home? - +\input{sec-intro.tex} %% Prerequisites -\section{Prerequisites} -\todo -overview to the techniques used in the paper by Klauk and Kirsche +\section{Prerequisites}\label{sec:prereq} -\cite{klauck-kirsche-chattythings} +In order to build a distributed, failure-tolerant network for our Chatty Things, +we will first look at some techniques which can be used to eliminate centralized +infrastructure. Most of these techniques are standardized by the IETF and widely +used in existing networks. Finally, we will look at XMPP as the basic +communication protocol used in Chatty Things. -\input{address-allocation.tex} -\input{dns-extensions.tex} -\input{xmpp.tex} +\input{sec-address-allocation.tex} +\input{sec-dns-extensions.tex} +\input{sec-xmpp.tex} \input{sec-chatty-things.tex} - -\section{Related Approaches} -\todo -\pages{3} -Middleware, Application protocol gateways: -\begin{itemize} - \item Constrained Application Protocol \cite{draft-ietf-core-coap-18} - \begin{itemize} - \item machine-to-machine - \item everything-built-in - \item discovery over multicast, service discovery over /.well-known - entry-point - \item maps to HTTP => stateless - \item low protocol overhead and parsing complexity (binary messages) - \item only draft status - \item UDP with Ack and IDs instead of TCP... (limited state machine) - \item proxies - \item asynchronous messages - \end{itemize} - \item MQ Telemetry Transport \cite{mqtt} - \begin{itemize} - \item TCP/IP - \item small overhead: 2 byte header + variable header length - \item publish-subscribe with topic names - \item binary protocol - \item discovery? - \end{itemize} - \item Devices Profile for Web Services \cite{zeeb-moritz-ws4d} - \begin{itemize} - \item TCP/IP -> HTTP -> SOAP -> Web Services. Overhead! - \item but very extendable and composable - \item discovery as a service - \item focused on multiple platforms, deeply embedded and servers - \item IPv6 partly experimental - \item ROM usage of uDPWS: 45 kByte - \end{itemize} - -\end{itemize} - -\section{Discussion} -\todo -comparison of mentioned approaches - -\pages{1-2} +\input{sec-outlook.tex} +\input{sec-discussion.tex} \bibliographystyle{plain} -\bibliography{biblio} +{\footnotesize \bibliography{biblio}} \end{document} % vim: set ft=tex et ts=2 sw=2 :