X-Git-Url: http://git.rohieb.name/skm-ma-ws1314.git/blobdiff_plain/3c87e67ce62440f6132d63d3adb69a4df71cfa6f..a1c81dce7c7d4e3a0e6e1f446eaeb893845fd680:/main.tex diff --git a/main.tex b/main.tex index 7044ce7..bd1cb9b 100644 --- a/main.tex +++ b/main.tex @@ -3,16 +3,21 @@ \usepackage[T1]{fontenc} \usepackage{ae} \usepackage{color} +\usepackage{graphicx} +\usepackage{wrapfig} +\usepackage{hyperref} + +\urlstyle{sf} \newcommand{\pages}[1]{\marginpar{#1 pages}} -\newcommand{\todo}{\textcolor{red}{TODO} \\} +\newcommand{\todo}[1][]{\textcolor{red}{TODO #1} \\} \newcommand{\term}[1]{\emph{#1}} -\newcommand{\code}[1]{\texttt{#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 \\ \today} +\date{Seminar Communications and Multimedia, TU~Braunschweig \\[1em] \today} \begin{document} \maketitle @@ -24,54 +29,19 @@ Masses with XMPP} short overview, not too long: what do we want, what are we going to do +basically: how do we talk to our smart home? %% Prerequisites \section{Prerequisites} \todo overview to the techniques used in the paper by Klauk and Kirsche -\cite{klauck-kirsche-chattythings} - -\input{address-allocation.tex} - -\subsection{DNS-Based Service Discovery} -\todo -\cite{rfc6763} -\begin{itemize} - \item allows flexible mapping of available services to ports - \item utilization of SRV \cite{rfc2782}, TXT and PTR records - \item case study for IoT in \cite{Klauck:2012:BCC:2352852.2352881} -\end{itemize} - -\pages{1} - -\subsection{XMPP} -\todo -\cite{rfc6120} -\begin{itemize} - \item architecture: client-server, use of DNS-SD - \item addressing: JIDs, resources - \item XML-based communication primitives, stanzas and streams - \item presence - \item publish/subscribe \cite{xep-0060}, roster - \item multi-user chats \cite{xep-0045} -\end{itemize} - -\pages{3-4} - -\subsection{Multicast DNS} -\todo -\cite{rfc6762} \pages{1} -\subsection{XMPP Serverless Messaging} -\todo -\cite{xep-0174} \pages{1} +\cite{klauck-kirsche-chattythings} -\section{System Architecture of Chatty Things} -\todo -\pages{3} -\subsection{Service Provisioning Sublayer} -\subsection{Bootstrapping} -\subsection{Presence Subscription} +\input{sec-address-allocation.tex} +\input{sec-dns-extensions.tex} +\input{sec-xmpp.tex} +\input{sec-chatty-things.tex} \section{Related Approaches} \todo @@ -79,8 +49,36 @@ overview to the techniques used in the paper by Klauk and Kirsche 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}