X-Git-Url: https://git.rohieb.name/skm-ma-ws1314.git/blobdiff_plain/94cb4638c0b154bba68386a18eb63dfa12460a25..68e1003b79478493d68d1dc8a2a697e31d306b2d:/sec-xmpp.tex diff --git a/sec-xmpp.tex b/sec-xmpp.tex index fbc1dbe..15321bc 100644 --- a/sec-xmpp.tex +++ b/sec-xmpp.tex @@ -24,19 +24,7 @@ client and server. \tikzstyle{iconlabel}=[text width=3cm, align=center, font=\footnotesize] \tikzstyle{label}=[font=\footnotesize] \begin{tikzpicture}[node distance=0pt,scale=1.5,>=stealth,thick] - \def\nodelist{ - juliet/{(-1,-1)}/XMPP client \code{juliet@example.net}/below/computer, - examplenet/{(-1,1)}/XMPP server \code{example.net}/above/server, - imexampleorg/{(1,1)}/XMPP server \code{im.example.org}/above/server, - romeo/{(1,-1)}/XMPP client \code{romeo@im.example.org}/below/computer% - } - \foreach \name/\pos/\text/\tpos/\icon in \nodelist { - \node (\name) at \pos { \includegraphics[width=1cm]{icon-\icon.pdf} }; - \node[\tpos=of \name,iconlabel] (\name text) { \text }; - } - \draw[<->,dashed] (juliet) -- node[anchor=east,label]{s2c} (examplenet); - \draw[<->] (examplenet) -- node[anchor=south,label]{s2s} (imexampleorg); - \draw[<->,dashed] (imexampleorg) -- node[anchor=west,label]{s2c} (romeo); + \input{fig-xmpparch.tex} \end{tikzpicture} \centering \caption{XMPP architecture, showing server-to-server (s2s) and @@ -95,7 +83,7 @@ and several ``away'' or ``do not disturb'' states), a user needs to subscribe to the other user's status. The mechanism behind this is called \term{Publish-Subscribe} and is specified in XEP-0060~\cite{xep0060}. It can be used to notify interested users about changes in personal information, and -implements the well-known Observer pattern. +implements the well-known Observer pattern~\cite{GOF95}. A user publishes information by creating a \term{node} on the XMPP server, which acts as a handle for the data. Interested users can then query the server for @@ -160,7 +148,7 @@ publish the following four mDNS records: \begin{itemize} \item an A record \code{capulet.local}, specifying her IP address, \item an SRV record \code{juliet@capulet.\_presence.\_tcp.local}, specifying - the port on which her XMPP client listens, and refering to + the port on which her XMPP client listens, and referring to \code{capulet.local} as the host name \item a PTR record \code{\_presence.\_tcp.local} for service discovery, pointing to \code{juliet@capulet.\_presence.\_tcp.local}