An epoch is a fixed length of time in the Ethereum network. There are two types of epochs: block and uncle.
The block epoch lasts for approximately 15 seconds. In this time, a new block is created and added to the blockchain.
NOTE: WARNING: Ethereum’s Epoch system is an experimental consensus mechanism and can be difficult to understand. It is important to be familiar with the details of epochs before attempting to use them in any Ethereum transaction. Additionally, it is important to note that Epochs are subject to change and may not work as expected in all cases. As such, caution should be exercised when using them in any transaction.
The uncle epoch also lasts for approximately 15 seconds. However, in this time, uncles (or stale blocks) can be added to the blockchain.
The purpose of an epoch is to keep the blockchain from getting too large. If the blockchain were allowed to grow without any limit, it would eventually become unmanageable.
By keeping the blockchain a manageable size, epochs help ensure that the Ethereum network can continue to function smoothly.