wireless ip for iot / m2m 101 the basics...to establish a session, the iot / m2m code must initiate...

6
Wireless IP for IoT / M2M 101 The Basics Aeris White Paper www.aeris.com A concise introduction to using wireless devices for Internet of Things (IoT) and machine-to-machine (M2M) data transmissions.

Upload: others

Post on 20-Mar-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Wireless IP for IoT / M2M 101The Basics

Aeris White Paper

www.aeris.com

A concise introduction to using wireless devices for Internet of Things (IoT) and machine-to-machine (M2M) data transmissions.

1WIRELESS IP FOR IOT / M2M 101 - THE BASICS COPYRIGHT © 2015, AERIS COMMUNICATIONS, INC.

Let our experts lead the way

2WIRELESS IP FOR IOT / M2M 101 - THE BASICS COPYRIGHT © 2015, AERIS COMMUNICATIONS, INC.

Table of Contents

INTRODUCTION 1

WHY DO I NEED WIRELESS IP FOR IOT / M2M COMMUNICATION? 1

WIRELESS IP IN IOT / M2M: THE BASICS 1

Wireless IP Radio Modules ... Think Modems 2

Point-to-Point Protocols 2

IP Session Started by Device 2

UDP or TCP? 2

User Datagram Protocol (UDP) 2

Transmission Control Protocol (TCP) 2

Which Protocol to Use? 3

SECURITY 3

ABOUT AERIS 4

INTRODUCTIONSince the introduction of wireless IP for IoT / M2M networks in 1995, communication and data transmission between and among machines is faster than ever before. This revelation has not only increased the speed of business, but also enabled the introduction of many new products and applications for IoT / M2M communication.

Aeris has worked with many companies to develop and roll out best-in-class IoT / M2M solutions that rely on a wireless IP data connection. This white paper discusses the best practices for using IP data transport for IoT / M2M applications.

WHY DO I NEED WIRELESS IP FOR IOT / M2M COMMUNICATION?The first IoT / M2M applications used Short Message Service (SMS) as their data transport methodology. While very reliable for the delivery of data, SMS is limited to 140 eight-bit bytes (or 160 characters of seven bits) of IoT / M2M application data in every message packet transmission. This is true for both GSM and CDMA cellular technologies.

Many IoT / M2M applications require more bandwidth than SMS allows. For example, firmware updates for a remote device or content updates for a digital billboard require more data to be sent than SMS would allow.

In 2G GSM and CDMA cellular, the IP data transport technologies are GPRS and 1xRTT. While these have slower data throughput rates compared to 3G and 4G cellular, they are quite sufficient for the IP transmission needs for most IoT / M2M applications. (Readers should be aware that a significant portion of 2G GSM GPRS services are being shut down at the end of 2016 in the United States, so CDMA 1xRTT is the only practical option for new 2G devices.)

For IoT / M2M applications requiring faster transmission rates, devices can use 3G CDMA and GSM protocols such as EV-DO and HSPA (or 4G LTE in the future). But today, HSPA geographic coverage in the US does not match the EV-DO coverage, and LTE coverage is not yet sufficient for IoT / M2M applications.

Finally, the cost-per-byte of data is significantly lower for wireless IP when compared to SMS as a transport. 3G radio modules are more expensive than 1xRTT modules, so they are only used when the faster transmission rates are required for a particular IoT / M2M application. All of this has led to the mass adoption of wireless IP as the primary method of data transfer for IoT / M2M applications.

WIRELESS IP IN IOT / M2M: THE BASICSThis section describes the basics of wireless IP for IoT / M2M data transport. First, it is important to recognize that wireless IP data technologies are not the same as wired IP data technologies.

Recently, software developers, used to working with DSL, fiber, and cable IP services (and local-area IP networks), have begun working on wireless IP devices. They sometimes attempt to apply wired IP practices to wireless IP implementations, and then things are certain to go awry.

1WIRELESS IP FOR IOT / M2M 101 - THE BASICS COPYRIGHT © 2015, AERIS COMMUNICATIONS, INC.

WIRELESS IP RADIO MODULES … THINK MODEMSWireless IP radio modules (aka, modules) are more similar to old dial-up modems than continuously-connected devices used in DSL and cable IP services (DSL and cable units also perform the functional equivalent of “dial-up,” but these are usually set to “dial” immediately at power-on and stay connected until power-off — acting as if they were connected via a physical wire to the Internet).

To establish a session, the IoT / M2M code must initiate the cellular transmission from the module using a “dial-string” — similar to making a phone call with a dial-up modem. The controller running the IoT / M2M code sends an AT command (for example, ATDT #777) to the module over a RS-232 or USB port. Using AT commands with modules is very similar to using AT commands (originally developed by Hayes Corporation) for traditional dial-up modems.

After receiving the “ATDT #777” command, the module originates a call using the dialed digits “#777” to the Mobile Switching Center (MSC) that is serving the device in the local cellular network. The MSC interprets the digits “#777” as a request to establish a data session and allows the process to continue.

The detailed mechanisms of establishing an IP session in wireless IP technologies (authorization, authentication, etc.) are not described here. It is sufficient to note that the cellular systems have the necessary equipment, protocols, and communication and control mechanisms to make it happen using relevant cellular standards.

POINT-TO-POINT PROTOCOLSUsing a Point-to-Point Protocol (PPP) session for IP data transmissions after “dialing in” using a module is just like using PPP on traditional dial-up modems on dial-up telephone lines.

In traditional dial-up modem connections, the computer that is connected to the modem uses a PPP stack to establish an IP session to the network and remote server. This is under the control of the computer, since the user can choose whether the dial-up modem connection is used for an IP data session or with a terminal emulation program for accessing the server. Similarly, the wireless device must use a PPP stack for the IP data session to the cellular network.

IP SESSION STARTED BY THE DEVICEIn cellular data technologies, the session is always initiated by the module (under the control of the external IoT / M2M application code) — the analogy to dial-up modem service holds true.

Thus, until such an IP session is started and connected, there isn’t any IP data path for a network system or server to send IP data to the device. IoT / M2M applications are generally designed with this concept in mind.

However, if the network or server needs to initiate the transmission of IP data to a device, mechanisms called “shoulder-taps” must be used to cause the device to start the actual session if it is not in a session. Typically, these shoulder-taps are Mobile-Terminated SMS (MT-SMS) messages sent to the device.

UDP OR TCP?We are often asked whether a device should transmit User Datagram Protocol (UDP) packets or use Transmission Control Protocol (TCP) streaming sessions for IoT / M2M data transport. The answer, not surprisingly, is: “It depends!”

From the Internet Engineering Task Force (IETF) detailed definitions, let’s briefly describe these two protocols to understand why one may be better than the other for certain IoT / M2M data transmissions.

First, it is important to note that both UDP and TCP are used over an underlying IP connection.

USER DATAGRAM PROTOCOL (UDP)The UDP format was first defined in an IETF Request for Comment specification, RFC 768. This protocol provides a procedure for applications programs to send messages to other programs with a minimum of protocol mechanism. This protocol is transaction-oriented, and delivery and duplicate protection are not guaranteed.

If an application requires ordered, reliable delivery of streams of data, UDP is not the preferred protocol. The format has lower overhead than TCP — i.e., fewer bytes are sent in the headers of the packets in UDP than TCP.

TRANSMISSION CONTROL PROTOCOL (TCP)The TCP format was first defined in an IETF RFC specification, RFC 761. TCP is a connection-oriented, end-to-end reliable protocol and is intended for use as a highly reliable host-to-host protocol between hosts in IP networks and especially in interconnected systems of such networks.

TCP requires that a connection be opened and managed for the duration of the IP data transmission. Within the protocol, transmitted and received packets are acknowledged by the device and the servers. The format has more overhead than UDP — i.e., more bytes are sent in the headers of the packets in TCP than UDP.

2WIRELESS IP FOR IOT / M2M 101 - THE BASICS COPYRIGHT © 2015, AERIS COMMUNICATIONS, INC.

WHICH PROTOCOL TO USE?In general, the choice of UDP vs. TCP must take into account:

• The desired balance between the reliability of TCP and the lower cost of UDP, since UDP uses fewer bytes of overhead to transmit the same amount of application data.

• The increased complexity of TCP, where the module must open a data stream to a remote host where server programs await connections.

• Careful design of TCP server programs to allow easy scaling as the number of deployed devices is increased.

• A desire for the acknowledgments provided by TCP sessions.

It is important to note that these two protocols are not mutually exclusive for a given IoT / M2M application. For some communication purposes, a simple transmission of a UDP packet to a remote host may be sufficient — including using independent acknowledgment packets via UDP. If an acknowledgment is expected, but not received, either side can retry … intelligently (i.e., with limits on number of retries, variable delays between retries, etc.)

For other purposes, even in the same application, a device may open a TCP connection to a server and communicate with the higher reliability of a TCP streaming session to a program that accepts these connections and transmissions.

Often, the amount of data may require the use of TCP. For example, if an application needs to transmit a large file (more than a few kilobytes), it is better to use TCP, since the consequences of an error during transmission via UDP could mean that the entire file might need a complete retransmission.

SECURITYShould transmitted data from an IoT / M2M device be encrypted to enhance security? Let’s examine the perceived need.

While it is true that the radios in wireless cellular systems can be overheard, the ANSI-2000 CDMA radio protocol is secure to all but the most serious of listeners. The vast majority of individuals and entities do not have the expensive equipment needed to listen to the spread spectrum “noisy” CDMA transmissions.

Furthermore, the “cellular” nature of the system also ensures that any listening to the radio in the device will necessarily be localized — radio frequency (RF) transmissions from a particular cellular module do not travel more than a few miles in dense urban areas.

In the Aeris CDMA network, the network transmission of data is very secure. Once the device transmission and data “leaves” the radio network, it is “received” at Aeris via Virtual Private Network (VPN) connections from the carrier networks and “sent” to the customers’ systems via other VPN connections. These VPN network connections are already encrypted and provide secure access.

Finally, content data encryption may require significant processor performance in the module or device to encode and decode data. This process might be beyond the capability of many IoT / M2M application devices.

Based on these issues, our experiences, and use of VPN’s where appropriate, Aeris does not recommend or require, application-level encryption of IP data to and from the modules.

3WIRELESS IP FOR IOT / M2M 101 - THE BASICS COPYRIGHT © 2015, AERIS COMMUNICATIONS, INC.

ABOUT AERISAeris is a pioneer and leader in the market of the Internet of Things – as an operator of end-to-end IoT and M2M services and as a technology provider enabling other operators to build profitable IoT businesses. Among our customers are the most demanding users of IoT services today, including Hyundai, Acura, Rand McNally, Leica, and Sprint. Through our technology platform and dedicated IoT and M2M services, we strive to fundamentally improve their businesses – by dramatically reducing costs, improving operational efficiency, reducing time-to-market, and enabling new revenue streams.

Our global headquarters is in Silicon Valley (Santa Clara, California). Our European headquarters is near London, UK. Visit www.aeris.com or follow us on Twitter @AerisM2M to learn how we can inspire you to create new business models and to participate in the revolution of the Internet of Things.

Get in touch

To learn more, contact us at [email protected] or 1-888-GO-AERIS in North America or +44 118 925 3202 in Europe.

Copyright © 2015 Aeris Communications, Inc. All Rights Reserved.

1511www.aeris.com

4WIRELESS IP FOR IOT / M2M 101 - THE BASICS COPYRIGHT © 2015, AERIS COMMUNICATIONS, INC.