throbber
SMS: The Short
`Message Service
`
`Jeff Brown, Bill Shipman, and Ron Vetter
`University of North Carolina Wilmington
`
`Although it is a widely used
`communication mechanism for cell
`phone users,SMS is far more than
`just a technology for teenage chat.
`
`C ell phones have become an
`
`integral part of the modern
`world, providing human con-
`nectivity in a way never be-
`fore possible. A recent United
`Nations report (www.cellular-news.
`com/story/25833.php) estimated that
`the total number of mobile phone sub-
`scribers in the world now exceeds 2.68
`billion. Around 80 percent of the
`world’s population has mobile phone
`coverage, with 90 percent coverage
`forecast by 2010 (www.textually.org/
`textually/archives/2006/10/013841.
`htm).
`While most cell phones are used for
`their original intent—making tele-
`phone calls wirelessly—these devices
`are also loaded with other features
`that are often little used or even
`ignored. One feature that users have
`begun to fully exploit in recent years is
`the short message service or text mes-
`saging. This basic service allows the
`exchange of short text messages be-
`tween subscribers. According to Wiki-
`pedia, the first commercial short text
`message was sent in 1992 (http://en.
`wikipedia.org/wiki/Short_message_
`service).
`Although the popularity of text
`messaging is well established in many
`countries, in others, such as the US,
`
`interest in the thumb-driven phenom-
`enon has only recently skyrocketed.
`Consider these statistics from the
`Cellular Telecommunications & Inter-
`net Association (CTIA), the interna-
`tional association for the wireless
`telecommunications industry:
`
`• In 1995, roughly 13 percent of the
`US population had cell phones; by
`June 2007, it was 80 percent.
`• In 2000, 14.4 million text mes-
`sages were sent per month; by June
`2007, the number had increased to
`28.8 billion per month, which rep-
`resents a 130 percent increase over
`June 2006.
`• In the second quarter of 2007,
`Verizon Wireless alone says it han-
`dled 28.4 billion text messages.
`
`Based on these numbers, it is
`evident that SMS messaging is becom-
`ing a widely used communication
`mechanism for cell phone users. The
`“Typical SMS Applications” side-
`bar lists the variety of uses for this
`technology.
`
`THE SMS SPECIFICATION
`SMS technology evolved out of the
`Global System for Mobile Communi-
`cations standard, an internationally
`
`106
`
`Computer
`
`accepted cell phone network specifica-
`tion the European Telecommunications
`Standards Institute created. Presently,
`the 3rd Generation Partnership Project
`maintains the SMS standard.
`SMS messages are handled via a
`short message service center that the
`cellular provider maintains for the end
`devices. The SMSC can send SMS
`messages to the end device using a
`maximum payload of 140 octets. This
`defines the upper bound of an SMS
`message to be 160 characters using
`7-bit encoding. It is possible to specify
`other schemes such as 8-bit or 16-bit
`encoding, which decreases the maxi-
`mum message length to 140 and 70
`characters, respectively.
`Text messages can also be used for
`sending binary data over the air.
`Typically, specific applications on the
`phone handle messages that contain
`binary data—for example, to down-
`load ring tones, switch on and off ani-
`mation, exchange picture messages,
`or change the look and feel of the
`handset’s graphical user interface.
`The system can segment messages
`that exceed the maximum length into
`shorter messages, but then it must use
`part of the payload for a user-defined
`header that specifies the segment
`sequence information.
`SMSCs operate in either a store-
`and-forward or a forward-and-forget
`paradigm. In the store-and-forward
`paradigm, the system resends the mes-
`sage for some period of time until it is
`successfully received. In a forward-
`and-forget paradigm, the system sends
`the message to the end device without
`assurance of receipt or an attempt to
`redeliver in the case of failure.
`The SMS protocol stack comprises
`four layers: the application layer, the
`transfer layer, the relay layer, and the
`link layer. Table 1 provides an exam-
`ple of a transfer protocol data unit.
`
`SMS CONCEPTS AND
`SYSTEM ARCHITECTURE
`To fully understand how the various
`components in the SMS system archi-
`tecture interact, it is worthwhile to first
`discuss a few SMS concepts and the role
`of several independent system entities.
`
`GTL 1017
`IPR of U.S. Patent No. 8,626,118
`
`

`
`Short codes
`A short code is an abbreviated num-
`ber (four, five, or six digits) that is used
`as an “address” for text messages.
`Individual carriers can use short codes
`that are valid only on their network or
`are interoperable across network car-
`riers (known as a common short code).
`For example, a carrier might need to
`send a text message to a subscriber
`concerning changes in policy or phone
`configuration, and it probably would
`send such a message from a short code
`only that carrier uses. On the other
`hand, common short codes can be
`used to send messages to and from
`users on multiple cellular networks.
`In the US, one entity, the CTIA
`(www. usshortcodes.com), adminis-
`ters common short codes. Content
`providers can lease a common short
`code, thereby allowing subscribers to
`text a keyword to the provider’s short
`code, and the provider can respond
`with information specific to the key-
`word used. For example, texting the
`word “movie” to short code 90947
`might result in a text message being
`returned to the sender that contains
`a list of movies showing at a local
`theater.
`Google offers a variety of interactive
`SMS applications through its short
`code 466453 (http://google.com/sms).
`
`Typical SMS Applications
`CONSUMER APPLICATIONS
`• Person-to-person messaging: (chat with friends)
`• Interactive information services: (text to get today’s weather forecast)
`• Entertainment services: (download a ring tone)
`• Location-based services: (restaurant suggestions based on handset location)
`
`CORPORATE APPLICATIONS
`• Notification and alert services: (emergency broadcast messages)
`• Managing contacts, correspondence, and appointments: (SMS
`integration with Microsoft Outlook)
`• Vehicle location: (bus tracking)
`
`CELL OPERATOR APPLICATIONS
`• Subscriber identity module updates—network operators can remotely
`update data stored on a mobile phone’s SIM card: (remotely update cus-
`tomer service profiles or address book entries)
`• WAP push—push a URL of the content to be displayed, and a browser on
`the mobile phone presents the content to the subscriber: (push a media-
`rich advertisement to a user and automatically display it within the mobile
`phone’s browser)
`
`Because short codes also have pre-
`mium billing capabilities, wireless
`subscribers can send text messages to
`short codes to access and pay for a
`variety of mobile content and services.
`For example, if a user sends a text to
`get a daily horoscope, a charge for
`the content will appear on the next
`phone bill.
`
`E-mail gateways
`In the US, most messages sent to
`applications or services are addressed
`to a short code instead of a standard
`phone number. It’s possible to offer a
`service through a cellular modem,
`which is, in effect, a cell phone hooked
`to a computer. However, cellular
`modems are quite slow and not
`
`Table 1.Transfer protocol data unit: 07917283010010F5040BC87238880900F10000993092516195800AE8329BFD4697D9EC37
`
`Octet(s)
`
`Description
`
`07
`91
`72 83 01 00 10 F5
`
`04
`0B
`C8
`72 38 88 09 00 F1
`00
`00
`99 30 92 51 61 95 80
`
`0A
`
`E8329BFD4697D9EC37
`
`Length of the SMSC information (in this case, 7 octets).
`Type-of-address of the SMSC (91 means international format of the phone number).
`Service center number (in decimal semi-octets). The length of the phone number is odd (11), so a trailing F has been
`added to form proper octets. The phone number of this service center is “+27381000015.”
`First octet of this SMS-DELIVER message.
`Address length. Length of the sender number (0B hexidecimal = 11 decimal).
`Type-of-address of the sender number.
`Sender number (decimal semi-octets), with a trailing F (“+27838890001”).
`Protocol identifier (00 = SME-to-SME protocol—implicit).
`Data coding field (00 = 7 bit, 01 = 8 bit, 10 = 16 bit, 11 = reserved).
`Time stamp (semi-octets) in order (YY, MM, DD, HH, MM, SS, TIMEZONE in relation to GMT in units of 15 minutes). So,
`0x99 0x30 0x92 0x51 0x61 0x95 0x80 means 29 Mar 1999 15:16:59 GMT+2.
`User data length: length of message. The data coding field indicated 7-bit data, so the length here is the number of septets
`(10). If the data coding field were set to indicate 8-bit data or Unicode, the length would be the number of octets (9).
`Message “hellohello,” 8-bit octets representing 7-bit data.
`
`More details can be found at www.dreamfabric.com/sms
`
`December 2007
`
`107
`
`

`
`SMS
`
`SMS
`
`SMS
`
`SMPP
`
`SMPP
`
`API
`
`SMS broker
`
`SMPP
`
`Content
`server and
`software
`applications
`
`Mobile users
`
`SMSC
`Service providers
`
`Aggregator
`
`Content provider
`
`Figure 1.SMS system architecture.Rather than communicating directly with the various
`SMSCs, content providers go through a message aggregator.The message aggregator
`uses the SMPP to maintain connections with carrier networks.
`
`intended for production environments
`requiring any significant volume.
`Most carriers provide e-mail-to-SMS
`gateways that receive e-mail messages
`and convert them to SMS messages.
`For example, an e-mail addressed to
`11235551234@mycarrier.com could
`trigger an SMS message for 1123-
`5551234 on mycarrier’s network.
`Some companies offer bulk SMS
`services and deliver their messages
`through e-mail-to-SMS gateways.
`However, not only are these e-mail
`gateways one-way and unreliable, but
`carriers also actively monitor them
`and can block them at any time. Some
`gateways automatically block mes-
`sages originating from an IP address
`when volume reaches a certain
`threshold. This could cause serious
`problems in the event of mass text
`messages being sent for emergency
`notification purposes.
`
`SMS centers
`When a user sends a text message to
`another user, the phone actually sends
`the message to the SMSC, which
`stores the message and then delivers it
`when the recipient is on the network.
`
`This is a store-and-forward operation.
`The SMSC usually has a configurable
`time limit for how long it will store the
`message, and users can usually spec-
`ify a shorter time limit if they want.
`Figure 1 depicts the general system
`architecture for sending and receiving
`SMS messages. Each service provider
`operates one or more SMSCs. Mobile
`users’ SMS messages are sent through a
`wireless link via a cell tower to the
`SMSC. The SMSC access protocols
`enable interactions between two SMSCs
`or interactions between external short-
`message entities (SMEs) and an SMSC.
`SMEs are software applications on net-
`work elements (such as a mobile hand-
`set) or hardware devices that can send
`and receive short messages. The SMS
`Forum has adopted the Short Message
`Peer-to-Peer (SMPP) protocol to enable
`interactions between external SMEs and
`service centers that the different manu-
`facturers maintain and operate.
`
`Message aggregators
`Typically, content providers do not
`communicate directly with the vari-
`ous SMSCs, but instead go through a
`broker, or message aggregator, as
`
`108
`
`Computer
`
`Figure 1 shows. An aggregator is a
`business entity that negotiates agree-
`ments with network providers to act
`as a middleman providing access to a
`cellular network for messaging ser-
`vices to third parties who have no
`direct relationship with the cellular
`network. The message aggregator uses
`the SMPP to maintain connections
`with carrier networks. Aggregators
`typically provide access to their
`servers either through SMPP or using
`custom APIs written in Java, PHP,
`Perl, and so on.
`Most aggregators will also manage
`the rental of the common short code
`for clients who do not want to deal
`directly with the CTIA. Another
`important function of the aggregator
`is to assist with provisioning of the
`short code on the various carriers.
`Before a carrier allows the use of a
`short code on its network, it requires
`a complete description of how the
`code will be used, including how sub-
`scribers will opt in and opt out of sub-
`scription services. The provisioning
`process can take eight weeks or more.
`
`Content providers
`A mobile content provider is an
`entity that provides value-added con-
`tent and applications for mobile
`devices. For example, when a mobile
`phone user sends an interactive text
`message to retrieve information, the
`content provider returns the informa-
`tion (in this case, a text message back
`to the user) through the aggregator.
`The aggregator is responsible for
`transmitting the message to the end
`user. This second transmission actu-
`ally masks two transmissions: first a
`transmission from the aggregator to
`the cellular provider, and then a trans-
`mission from the cellular provider to
`the mobile handset.
`
`BUILDING APPLICATIONS
`We have established the hardware,
`software, and network infrastructure
`necessary to build and deploy ad-
`vanced SMS applications. We have
`registered a short code and established
`a new company, Mobile Education, to
`develop two-way SMS-based applica-
`
`

`
`tions. We have formed this company
`with the expressed intent of develop-
`ing and marketing intellectual prop-
`erty that we are creating in partnership
`with the University of North Carolina
`Wilmington.
`Mobile Education (www.mymobed.
`com) currently hosts the following
`SMS-based applications for UNCW
`students:
`
`• a subscription service for daily
`campus activities and events;
`• an interactive system to request
`and receive real-time shuttle bus
`information;
`• an application that integrates with
`the student Banner system to allow
`students to request and retrieve a
`grade for a particular course;
`• an interactive service to get campus
`activity and event information,
`specifically movie dates and times
`at the campus theater; and
`• a broadcast text-message-based
`alert system for campus-originated
`emergency information.
`
`We have learned some valuable
`lessons while establishing this new
`business.
`
`Vanity code or random code
`The process of obtaining a short
`code is different from country to coun-
`try. In the US, obtaining a short code
`requires choosing between a “vanity”
`and a “random” code. Short codes that
`spell a name, such as Google = 466453
`or Hawks = 42957, are known as van-
`ity short codes. Vanity codes cost
`$1,000 per month. Random short
`codes, which might or might not spell
`a word, generally cost $500 per month.
`Being only five- or six-digit numbers,
`random short codes are still fairly easy
`to remember, so it might or might not
`be worth the extra $500 per month
`cost to get a vanity code.
`You can find out who has registered
`many of the short codes assigned in the
`US via the Common Short Code
`Administration Directory
`(www.
`usshortcodes.com) or the US Common
`Short Code WHOIS Directory (www.
`usshortcodeswhois.com).
`
`Fees and the
`provisioning process
`The fee to lease the common short
`code simply guarantees that no one
`else can use that code. A carrier must
`provision a code before the code can
`be used on its network. The provi-
`sioning process is complicated, expen-
`sive, and takes up to eight weeks.
`During the provisioning process, the
`carriers examine how their users will
`interact with the applications associ-
`ated with the short code. They are par-
`ticularly interested in applications that
`involve users subscribing to receive
`messages on a regular basis. They
`require double opt-in, which means
`that the user requests the subscription
`and then confirms. Users must be able
`to send a message with the keyword
`“stop” to indicate that they do not
`want to receive any more messages.
`
`Maintaining a common
`short code is an expensive,
`long-term commitment
`and should be
`thoroughly researched.
`
`The cost of provisioning a short
`code will generally be between $2,000
`and $4,000, including aggregator and
`carrier setup fees. The monthly fee to
`maintain service with an aggregator is
`generally between $1,000 and $1,500.
`
`Working with aggregators
`There are significant differences
`between aggregators, and you should
`look closely at more than one before
`choosing. Several companies that sell
`aggregator services do not actually
`maintain SMPP connections with car-
`rier SMSCs, but go through another
`aggregator instead.
`The custom APIs that aggregators
`provide differ widely—some require a
`constant socket connection, while oth-
`ers use XML over HTTP and do not
`rely on a constant connection. Some
`aggregators have relatively inexpen-
`sive testing programs and allow you
`to test their API on a demonstration
`
`short code. This means that you can
`send messages that come from the
`demo code, and if a message sent to
`that code starts with a special key-
`word established for you, then the
`message is routed to your server.
`However, some aggregators do not
`allow any testing with their servers
`until you have signed a contract.
`
`Message sending rates
`There are also vast differences in the
`rate at which you can send messages.
`Some plans allow only two messages
`per second, and some claim rates of
`up to 100 per second. Some aggrega-
`tors allow you to send a message to
`users knowing only their phone num-
`ber, while some require that you also
`know their service provider.
`
`Carrier rules and restrictions
`Another important aspect of com-
`mon short codes is that the mobile
`content providers who register them
`must agree to a long list of network
`operator rules and restrictions. For
`example, the following is a statement
`for text message content from a typi-
`cal short code registration agreement:
`
`is not
`The following content
`allowed: adult (swimsuit pictures
`are ok), or any unlawful, harmful,
`threatening, defamatory, obscene,
`harassing, or racially, ethically or
`otherwise objectionable content.
`Services that facilitate illegal activ-
`ity, gambling, promote violence,
`promote discrimination, promote
`illegal activities, or incorporate any
`materials that infringe or assist oth-
`ers to infringe on any copyright,
`trademark, or other intellectual
`property rights are prohibited.
`
`In many cases, network operators
`even provide lists of inappropriate
`words that cannot be used within the
`content that traverses their networks.
`They can decide to shut down your
`short code if you breach the agree-
`ment you signed to gain access
`to their network. These restrictions
`are considerably different from the
`Internet.
`
`December 2007
`
`109
`
`

`
`OOnnee mmoorree rreeaassoonn ttoo bbeeccoommee aann
`IIEEEEEE CCoommppuutteerr SSoocciieettyy mmeemmbbeerr
`
`I E E E C O M P U T E R S O C I E T Y
`I E E E C O M P U T E R S O C I E T Y
`
`e-learning campus
`e-learning campus
`
`Advance your career and improve your knowledge
`Advance your career and improve your knowledge
`with online resources
`with online resources
`
`Further your
`career or just
`increase your
`knowledge
`
`The e-Learning
`campus provides
`easy access to
`online learning
`materials to IEEE
`Computer Society
`members. These
`resources are
`either included in
`your membership
`or offered at a
`special discount
`price to members.
`
`Online Courses
`Over 1,300 technical courses available
`online for Computer Society members.
`
`IEEE Computer Society Digital Library
`The Digital Library provides decades of
`authoritative peer-reviewed research at your
`fingertips: Have online access to 25 society
`magazines and transactions, and more than
`1,700 selected conference proceedings.
`
`Books/Technical Papers
`Members can access over 500 quality online
`books and technical papers anytime they
`want them.
`
`IEEE ReadyNotes are guidebooks and tuto-
`rials that serve as a quick-start reference for
`busy computing professionals. They are
`available as an immediate PDF download.
`
`Certifications
`The CSDP (Certified Software Development
`Professional) is a professional certification
`meant for experienced software
`professionals.
`
`Brainbench exams available free for
`Computer Society members, provide solid
`measurements of skills commonly requested
`by employers. Official Brainbench
`certificates are also available at a discounted
`price.
`
`Visit http://computer.org/elearning
`for more information
`
`Policy issues
`Maintaining a common short code
`requires working very closely with an
`aggregator and being bound by the
`limitations of its policies and software.
`It’s an expensive, long-term commit-
`ment and should be thoroughly
`researched.
`
`T he short message service has
`
`emerged as one of the most pop-
`ular wireless services. SMS is far
`more than just a technology for teenage
`chat. Mobile marketing campaigns are
`already a very profitable business and
`growing rapidly. Next-generation SMS
`applications will incorporate location-
`based capabilities that are now being
`incorporated into mobile handsets.
`This will enable a new set of innova-
`tive services that are targeted and per-
`sonalized, further refining mobile
`advertising models and driving revenue
`growth for carrier operators, aggrega-
`tors, and mobile content providers. ■
`
`Jeff Brown is a professor of mathematics
`and statistics at the University of North
`Carolina Wilmington and cofounder
`of Mobile Education. Contact him at
`brownj@uncw.edu.
`
`Bill Shipman is a graduate student in
`computer science and information sys-
`tems at the University of North Carolina
`Wilmington. Contact him at wjs6797@
`uncw.edu.
`
`Ron Vetter is a professor of computer sci-
`ence at the University of North Carolina
`Wilmington and cofounder of Mobile
`Education. Contact him at vetterr@
`uncw.edu.
`
`Computer welcomes your submis-
`sions to this bimonthly column.
`For additional information, or to
`suggest topics that you would like
`to see explained, contact column
`editor Alf Weaver at weaver@cs.
`virginia.edu.

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket