Files
papers/lux-tee-computing-mesh/sections/05-gossip-based-job-distribution.tex
zeekay abf99d05fc papers: reorganize into per-paper dirs, add Antje Worring as co-author
Restructured from flat .tex/.pdf files into per-paper subdirectories.
Added Antje Worring as co-author on all papers.
Synced PDFs to pdfs/ for download site.
2026-04-18 21:50:07 -07:00

44 lines
1.4 KiB
TeX

\section{Gossip-Based Job Distribution}
\label{sec:scheduler}
\subsection{Decentralized Scheduler}
Lux avoids centralized job coordinators using ZAP-based gossip \cite{zap-protocol}. Workers join the \texttt{/lux/jobs/v1} topic and receive job announcements via pub/sub.
\textbf{Algorithm \ref{alg:job-selection}} describes worker job selection:
\begin{algorithm}
\caption{Worker Job Selection Protocol}
\label{alg:job-selection}
\begin{algorithmic}[1]
\STATE Subscribe to \texttt{/lux/jobs/v1} gossip topic
\WHILE{true}
\STATE $\text{jobs} \leftarrow$ ReceiveGossipMessages()
\FOR{$\text{job} \in \text{jobs}$}
\IF{$\text{job.teeType} == \text{self.teeType}$}
\IF{$\text{EstimatedGas}(\text{job}) < \text{self.capacity}$}
\STATE $\text{bid} \leftarrow \text{CalculateBid}(\text{job.gasLimit})$
\STATE SubmitBidTransaction($\text{job.id}, \text{bid}$)
\ENDIF
\ENDIF
\ENDFOR
\STATE winner $\leftarrow$ WatchAuctionResult()
\IF{winner == self.address}
\STATE ExecuteJobInTEE(job)
\ENDIF
\ENDWHILE
\end{algorithmic}
\end{algorithm}
\subsection{Anti-Sybil Mechanisms}
To prevent workers from creating multiple identities:
\begin{itemize}
\item Each worker must stake 5,000 LUX tokens
\item TEE attestation binds worker's Ethereum address to hardware identity
\item Repeated failed attestations lead to exponential stake slashing
\end{itemize}