X-Git-Url: https://git.rohieb.name/skm-ma-ws1314.git/blobdiff_plain/9c0186068ed8d750cbae9dae7740f312a7663fe8..68e1003b79478493d68d1dc8a2a697e31d306b2d:/sec-chatty-things.tex diff --git a/sec-chatty-things.tex b/sec-chatty-things.tex index da27fbe..6acde0c 100644 --- a/sec-chatty-things.tex +++ b/sec-chatty-things.tex @@ -7,7 +7,7 @@ Kirsche~\cite{Klauck:2012:BCC:2352852.2352881} use to build Chatty Things. \subsection{Service Provisioning Sublayer} Considering the application in deeply embedded systems and the special needs of -the Internet of Things on the one hand, the protocol stack needs to fulfil +the Internet of Things on the one hand, the protocol stack needs to fulfill certain technical requirements. First, memory, computing resources and bandwidth on embedded systems are limited, @@ -46,8 +46,6 @@ The resulting implementation (uXMPP and uBonjour) gets by with 12{.}2\ kBytes of ROM and 0{.}63\ kBytes of RAM, which was about the size of the original, unoptimized uXMPP implementation while also implementing new features. -\todo{figure of example network structure with and without central server} - In order to react to different network infrastructures, their implementation allows both communication with a central XMPP server as well as peer-to-peer communication over XMPP Serverless Messaging. When a central XMPP server is @@ -68,7 +66,7 @@ devices talk directly with the user or with other devices. This method has the drawback that Multi-User Chats cannot be used for topic filtering, since no method is specified to do XEP-0045 and XEP-0174 at the same time. In this case, a user must have an XEP-0174-compliant chat client, but it also gives her the -opportunity to interact with things spontaneously on an ad-hoc basis (e.~g. when +opportunity to interact with things spontaneously on an ad hoc basis (e.~g. when entering a room) without need for any additional gateway on the application level. @@ -79,7 +77,7 @@ level. \subsection{Bootstrapping} With the given approach, bootstrapping new Chatty Things is easy and no -configuration is neccessary: on the network layer, IP addresses can simply be +configuration is necessary: on the network layer, IP addresses can simply be obtained using IPv4 Link-Local Addressing or IPv6 Stateless Address Autoconfiguration. On the transport layer, all needed ports can be obtained over DNS-Based Service Discovery. Finally, on the application layer, host names can @@ -95,7 +93,7 @@ Bootstrapping a Chatty Thing therefore incorporates three steps: \item If a server is found, connect to it using ANONYMOUS login, join topic-based Multi-User Chats, deactivate the uBonjour client \term{(Infrastructure mode).} - \item If no server is found, activate the XEP-0174 client \term{(Ad-hoc + \item If no server is found, activate the XEP-0174 client \term{(Ad hoc mode)}. \end{enumerate} @@ -106,7 +104,7 @@ changing from one mode to the other: \item In Infrastructure mode: when connection to the server is lost, enable the uBonjour client, try to find a server, and when none is found, enable Serverless Messaging. - \item In Ad-hoc mode: if uBonjour detects a new XMPP server joining the + \item In Ad hoc mode: if uBonjour detects a new XMPP server joining the network, try to connect to it. If this succeeds, disable Serverless Messaging and uBonjour and join topic-based Multi-User Chats. \end{itemize}