  Fog computing is transforming the network edge into an intelligent platform
by bringing storage, computing, control, and networking functions closer to
end-users, things, and sensors. How to allocate multiple resource types (e.g.,
CPU, memory, bandwidth) of capacity-limited heterogeneous fog nodes to
competing services with diverse requirements and preferences in a fair and
efficient manner is a challenging task. To this end, we propose a novel
market-based resource allocation framework in which the services act as buyers
and fog resources act as divisible goods in the market. The proposed framework
aims to compute a market equilibrium (ME) solution at which every service
obtains its favorite resource bundle under the budget constraint while the
system achieves high resource utilization. This work extends the General
Equilibrium literature by considering a practical case of satiated utility
functions. Also, we introduce the notions of non-wastefulness and frugality for
equilibrium selection, and rigorously demonstrate that all the non-wasteful and
frugal ME are the optimal solutions to a convex program. Furthermore, the
proposed equilibrium is shown to possess salient fairness properties including
envy-freeness, sharing-incentive, and proportionality. Another major
contribution of this work is to develop a privacy-preserving distributed
algorithm, which is of independent interest, for computing an ME while allowing
market participants to obfuscate their private information. Finally, extensive
performance evaluation is conducted to verify our theoretical analyses.
