Signaling System #7 is currently the nervous system of most telecommunications networks, including CDMA, GSM, TDMA and Analog. Many large wireless carriers and their vendors have decided that future systems will be based on Internet Protocols (IP) instead. This transition will bypass many of the roadblocks in todays networks, but will also introduce new challenges.
This certainly does not mean that all wireless carrier data will be sent over the public internet. For security and performance reasons, the network carrying telecommunications traffic will have to be segregated from the public internet, although gateways will exist to allow applications to cross the boundary (e.g. email to wireless message and internet access from phones).
SS7 was designed as a signaling network, and is used almost exclusively for that purpose. Signaling is just a techie word for the exchange of messages between telecommunications network elements (Signaling Points). Prior to SS7, signaling protocols worked by the exchange of special tones (e.g. MF or R2) over voice trunks. This dramatically limited the amount of data that could be sent, and the complexity of the operations that could be supported.
SS7 started to make inroads in the 1980s because it was a major technological advance. It was a fully digital technology running at the then blazing speed of 64,000 bps (versus no more than 30 bps for tone-based signaling). Messages which had previously been limited to a few digits in length, could now be over 200 bytes long. Signaling messages were no longer transmitted in band (within the voice circuit), so they could be exchanged with network elements that did not have voice trunks, allowing the development of services such as 1-800, the intelligent network (IN) and wireless mobility management.
SS7 was an important enabler for the Mobile Application Parts (MAP) that enabled roaming with cellular systems, notably GSM MAP and ANSI-41 (which supports CDMA, TDMA and analog networks). These protocols coordinated activities between Mobile Switching Centres (MSCs), Home Location Registers (HLRs), Short Message Centres (SMSCs) and other types of signaling points.
SS7 is a true packet-switching protocol, allowing the exchange of messages between any two points on the network without any need to set up an association or have a direct connection. It is also extremely robust. By continually monitoring route status, it can usually find the best route, and when failures occur with messages in transit, many re-routing options are available. The packet switching element within SS7, the STP (Signaling Transfer Point), is always duplicated, with both sides usually running in a load-sharing mode. Links are also usually duplicated (even from non-redundant signaling points). Combined, this provides about 16 routing options between two signaling points separate by only two pairs of STPs. Load sharing ensures that messaging traffic is relatively evenly distributed over similar routes.
SS7 routing is illustrated in the following figure:
Advances in technology have meant that SS7 networks supporting wireless traffic are bursting at the seams. Due to backwards compatibility and coordination considerations moving forwards with SS7 will be difficult.
Some of the major restrictions with SS7 are:
The standard link speed with SS7 is 64 kbps, designed to fit nicely within the basic North American digital T1 trunks (which contain 24 circuits, each with a 56-64 kbps capacity) or the basic international digital E1 trunks (32 circuits running at 64 kbp). The capacity can be increased by implementing up to sixteen SS7 links at a single signaling point.
Capacity can be further expanded by implementing 1.5 Mbps links (i.e. an entire T1). Well, in theory they can. In practice it is not so easy, as we will see.
Application messages on an SS7 network are limited to between 200 and 250 bytes depending on the size of the message headers. This is one of the reasons why wireless short messages have been limited to under 200 bytes in length, even though radio protocols can often handle more.
More recent versions of SS7 can support larger messages in two different ways through message segmentation on any link, or through the transmission of messages up to 3 kilobits in size, but only on high speed (1.5 Mbps) links.
Neither of these methods is easy to implement. Message segmentation requires the use of a new message (XUDT instead of the normal UDT). Even if it is known that the destination signaling point supports this capability, segments may be lost if they encounter an STP that does not support it. And, with the number of routing options in SS7, determining the list of potential intermediate STPs is very difficult. This means that a coordinated network-wide upgrade to the 2000 version of SS7 throughout all of North America would be required to take advantage of segmentation.
1.5 Mbps SS7 links allow the transmission of messages up to 3,904 bytes in an LUDT message. However, this requires that the originating signaling point supports this capability because a message that starts as multiple segments on a 64kbps link cannot be reassembled by STPs because different segments may take different routes. Furthermore, if a signaling point that does not support this capability is encountered, the large message must be segmented. And, if a signaling point is encountered that supports neither segmentation (XUDT) nor long messages (LUDT), then the message cannot be delivered.
Without virtually universal support for XUDT or LUDT, protocols have had to ensure that messages fit within the 250 byte limit that is the lowest common denominator of SS7 signaling.
SS7 is defined to a significant extent by the ITU, and international standards body, but adapted by each nation. Consequently there are significant differences between national SS7 variants, notably with regard to addressing.
The fundamental address in SS7 is the point code, a unique number assigned to a signaling point (including STPs). Well, unique within a national network. Point codes are assigned separately by each network, and vary significantly in size, from 14 bits to 24 bits. Consequently, point code routing can only be used within a single national network. Luckily, Canada and the United States have an integrated network, but this limitation makes signaling more complex to all other countries.
The second address type in SS7 is known as the global title. This enables a telephony address, such as a phone number or calling card number to be used for SS7 routing. The global title may be translated into either an intermediate or final point code (i.e. the point code of the destination signaling point). In the case of international signaling the global title will first be translated into the point code of an international gateway which will perform protocol translation, and then translate the global title into a point code in the destination national network, or use global title routing to forward the message to an STP to perform this function.
The major problem with global titles is the management burden they impose on STPs. Every STP has to have a set of routing tables for each type of global title, these must be customized for the position of an STP in the network and they have to be frequently updated. Errors in the global title tables could cause the loss of messages or even network failure.
Consequently, the number of implemented global titles is much smaller than the number that have been standardized. In reality, instead of using the best global title, it is more common to shoehorn the application into one of the few global titles that has been implemented. GSM MAP, for example, only uses E.164 (phone number) translations, even though some of its signaling would be better served using E.212 (International Mobile Subscriber Identity) translations. ANSI-41 has standardized the use of the proper E.212 global titles, but these have not yet been implemented, meaning that global title is not widely used at all for those systems.
International routing using SS7 can best be accomplished with global titles. This does not mean that global titles are fully compatible between countries. The encoding of global titles is a national issue making international gateways specialized and complex devices. Furthermore, higher level differences also exist. Correct routing to the United States may mean that one global title has to map onto two different global titles, depending upon whether the destination E.164 phone number is subject to number portability or not. ANSI-41 systems have had to develop ad hoc routing methodologies (e.g. routing based on the contents of the ANSI-41 application message) due to the lack of support for compatible global titles.
Internet Protocols took the world by storm in the 1990s. Initially, they were expected to be only an interim measure until international standard protocols were implemented, but their use is now so widespread it is hard to see how they could ever be replaced.
Even though internet protocols and SS7 were developed for different purposes, they do have a lot in common. In both cases, the basic protocol is purely packet based. Connections or associations between end-points must be supported by higher level protocols and both use a numeric address to route messages. These are important similarities, but the differences are far more numerous.
The internet uses a more layered approach than SS7. Above the physical layer (e.g. Ethernet) runs IP which is a pure packet-switching protocol, providing the information that routers need to get a message to a correct destination. IP does not guarantee that a message will reach its destination, so TCP (Transmission Control Protocol) is commonly used as a higher layer to ensure that every message gets delivered exactly once. Above this layer run higher level protocols such as http (HyperText Transfer Protocol) which supports the ubiquitous HTML.
IP appears to solve most of the problems that beset SS7. The major question is whether it introduces any new problems, and to identify whether those are serious.
IP Routing is illustrated (in a very simplified example) in the following figure:
IP was designed to run over virtually any link speed, so providing raw capacity is not an issue. Message sizes are more than double that available with SS7, and fragmentation is built into the basic IP protocol. Consequently, messages that are many times larger than the current SS7 maximum can be transmitted.
IP addressing has some parallels with SS7. The basic IP address is also numeric and a second logical level of addressing, using domain names, is also provided. IP addresses are truly global, however, not limited to one national network like SS7 point codes. Domain names not only include letters as well as digits (and some special characters) giving them more mnemonic value, but they are also interpreted quite different. Domain names are not used for routing, but are simply translated into an IP address, or list of IP addresses, before routing occurs. This means that routers do not have to be configured to interpret them. This reduces the management load, and also means that the domain name infrastructure can be changed independently of the routing fabric, as long as the output is still an IP address. It also makes routers much simpler (and therefore cheaper) than STPs.
But, all is not well with IP addressing. Due to inefficient assignments, the current IPv4 (Version 4) address space is quickly being exhausted. IPv6 will provide a massive increase in the number of networks and individual addresses, but it is not clear that it can be implemented in our lifetime. The problem is that the additional addresses in IPv6 can only be utilized if they are addressable from IPv4, which means that there cannot be more addresses than IPv4 can already address! The best that can be hoped is for a slow migration to IPv6, turning on the additional addresses only after all IPv4 network elements in the world are shut off.
To extend the life of IPv4, many innovative techniques have been developed. IP addresses are now assigned less rigidly, and many organizations implement NAT (Network Address Translation) to allow the assignment of many virtual IP addresses within an organization, while using only a small number of public IP addresses. Mobile devices may need their own IP address to support always on services. It is only clear that the current IPv4 address space can satisfy this demand.
The big problem with the use of IP for telecommunications signaling is the robustness of the network. SS7 is specifically designed to never take no for an answer when it comes to packet delivery. By continually monitoring links, it not only usually knows ahead of time when a link cannot be used for delivery, but it has a very good idea of what the best alternate route can be. Protocols, such as GSM MAP and ANSI-41 do not need to implement retransmissions because if the message does not get through, the SS7 network is unable to deliver it, so an immediate retransmission is very unlikely to be successful.
IP, on the other hand, takes a much more cavalier attitude towards packet delivery. Routers may give up on a packet and discard it, meaning that higher level protocols must implement retransmission. Retransmissions, however, are not satisfactory solutions for telecommunications protocols, because they introduce delays measured in seconds. Solving this by retransmitting more quickly can result in an overloaded network quickly collapsing, as messages still in transit are duplicated over and over again by impatient sending nodes.
The IETF SCTP (Stream Control Transmission Protocol) is a good example of this difficulty. It is an application protocol that attempts to emulate the reliable delivery of SS7. To be able to quickly determine the best route, each network element regularly transmits heartbeat messages to all other network elements they have an association with. This allows SCTP to react reasonably quickly to the failure of a portion of a replicated signaling point, but introduces a number of problems. The heartbeat messages imply that a signaling point knows which other signaling points it will communicate with. In wireless, this list is fairly open-ended, introducing the overhead of establishing, maintaining and shutting down the associations. The network traffic that this generates will grow faster than the number of nodes in the network, possibly exponentially.
The reason why SS7 robustness must be emulated at higher protocol layers is because changes to the lower IP layers would mean that telecommunications signaling could not use off-the-shelf internet equipment, which would significantly reduce the cost advantage of this approach. But, robustness is one thing that cannot be emulated very well. Although the wasted network bandwidth might not be a big issue (at least at first), the additional delays due to retransmission could reduce the rate of call completion. And, that is a very big problem. Furthermore, the reaction of wireless users to a failed call is likely to be an immediate redial. This could quickly cause an overload situation to spin out of control.
Telecommunications is inevitably moving towards the internet. For transmitting data on behalf of users, it is by far the most flexible protocol, particularly when relying on the services of the public internet. As voice loses ground to instant messaging, email and photo exchange in wireless systems, the use of internet protocols will inevitably grow.
For transmitting signaling (and voice) the use of internet protocols introduces some serious problems. Carriers must proceed cautiously to ensure that they can consume the fruits of this new network technology without a nasty hangover.