Functional blocks of IoT architecture