In this project, we aim to make a full study of possible Satellite-IoT architectures and develop novel and realistic communication algorithms in order to enable an end-to-end communication of IoT devices through a satellite channel. Satellite-IoT is a novel solution which has been proposed as a key-enabling technology to complement the terrestrial IoT network in highly congested areas and to extend the coverage in remote areas (e.g. desert, ocean, forest, etc.) where a terrestrial network is impossible to reach. Furthermore, terrestrial networks are still, not capable enough to connect the tremendous number of IoT devices and terminals deployed all over the world. Therefore, the role of the satellite to extend and complement the terrestrial IoT network is crucial and irreplaceable. New communication algorithms will be designed for the PHY, MAC, NET layers of communication and the main results will be obtained, compared and analyzed through numerical simulations. Finally, the project will go one step further and the theoretically developed algorithms will be evaluated experimentally using software defined radios (SDRs), particularly universal software radio peripherals (USRPs).