Context: Samsung SmartThings is a very famous smart home hub/cloud-based platform, this means that it is implemented both in the local smart hub and in the cloud server.

Question: Which technique (Port forwarding UPnP, hole punching, …) is implemented by this platform to allow users to control their home devices? How does it technically work?

  • 3
    We should not be doing your school research for you. What have you managed to find out for yourself before asking? – hardillb Jan 13 '18 at 22:05
  • 2
    Hi, thanks @hardillb.. for this question ? yes I did some researches especially in SmartThings' forum, and I didn't found the answer, and the same for all my previous questions – BiG_TooTh Jan 13 '18 at 22:25
  • 1
    Then buy one and do some network monitoring – hardillb Jan 13 '18 at 22:26
  • 2
    actually, I want to do that later, but I need first to find the security issues with smart home deployments independently from any specific platform – BiG_TooTh Jan 13 '18 at 22:30

Most of the devices connected to the SmartThings hub will not be IP devices, so they are not controlled directly via the cloud and the concepts of port forwarding and UPnP do not apply.

Instead, the devices connect to the SmartThings hub in whatever manner they can, and the hub acts as a proxy. The hub sends/receives a command to/from the cloud and translates that into something that can be communicated to the device. So the hub really is a protocol converter, rather than a network hub.

  • 1
    according to this topology, is the Device-to-Cloud/Cloud-to-Device the only communication type? I mean, is there direct D2D communication between different wireless devices, because to the best of my knowledge there is not! ... why using ZigBee, Z-Wave if their potential as mesh networks (enabling D2D) is not released. – BiG_TooTh Jan 29 '18 at 21:11
  • 1
    I'm suggesting this question if you have some answers: iot.stackexchange.com/questions/2596/… – BiG_TooTh Jan 29 '18 at 21:17
  • 2
    That's really another question. Given that you've asked 6 related questions in a short period of time, it might be worth giving your questions some more thought - otherwise you risk continuing to ask questions and not being able to make sense of the answer. Aurora0001 has already provided an excellent answer to your linked question and I can answer your latest one quite quickly: no, this answer does not exclude D2D or D2Hub2D. If Z-Wave devices want to talk directly to each other they can go right ahead. – Heath Raftery Jan 30 '18 at 9:18

The IoT device (e.g. wifi thermostat) usually connects/calls out to a central server, using your home ISP network, and keeps this connection alive 24/7 by sending combination of ACK & SYN packets every few seconds at the TCP level. The IP address of the central server is coded into the firmware of the IoT device. The upper-layer protocol (HTTP, SSH, custom made, etc.) and encryption vary between devices/companies. Alot use SSL TLS over port 443. If you port scanned the IoT device inside your local LAN, it would show no open ports (except for maybe an admin port/webpage to change settings) If you download a mobile app onto your smartphone to control this IoT device, that smartphone app calls into (sends commands to) the same central server, and that central server relays the command back to the IoT device. A similar & simple concept/technique with good documentation is called reverse SSH tunneling or reverse SSH port forwarding.

  • 1
    This works for an IP device (Wi-Fi Thermostat), but what about other non IP devices connected through the hub, how do they connect to the server, and how do they receive messages from it ? – BiG_TooTh Jan 21 '18 at 16:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.