 Fog computing is a distributed computing paradigm which brings the cloud closer to IoT devices. It offers faster response times and higher quality than traditional cloud computing, making it ideal for providing efficient and secure services for many IoT users. This paper reviews the current state of fog computing and its integration with the IoT, highlighting the benefits and challenges associated with this technology. Additionally, the paper discusses the architecture of the fog and emerging IoT applications that can benefit from its use. Finally, open issues and future research directions related to fog computing and the IoT are presented. This article was authored by Haney F. Adlam, Robert J. Walters, and Gary B. Wills.