Sistemas distribuídos, em contraste com sistemas centralizados, apresentam uma série de características que os tornam inerentemente mais complexos. Essas complexidades surgem devido à natureza descentralizada desses sistemas, nos quais recursos computacionais e dados são distribuídos em vários dispositivos interconectados.