# Concepts and architecture

This chapter walks you through the high-level concepts in Testground. Each section covers a different component or subsystem of Testground.

To help you situate yourself, this architecture diagram provides a bird's-eye view of the system, emphasizing the circuitry of the observability pipeline:

![](https://553969225-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M3Ca3OQSAlIMUyorSwi%2F-M6auIfShaiAqhSm4N8V%2F-M6avCsCX8IhWD8ndnKD%2FTestground%20Observability%20Architecture.png?alt=media\&token=e103d1f2-8859-45d8-9ca0-463bae6b3654)

**Read on to learn more about the individual components:**

* [Test plans and test cases](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/test-structure)
* [Daemon and client](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/daemon-and-client)
* [Synchronization service](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/sync-service)
* [Networking](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/networking)
* [Sidecar](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/sidecar)
* [Builders](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/builders)
* [Runners](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/runners)
* [Runtime environment (runenv)](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/runtime)
* [Client-Server communication](https://protocol-labs.gitbook.io/testground/table-of-contents/concepts-and-architecture/client-server-communication)
