Вы находитесь на странице: 1из 47

SS7 Fundamentals

SIGNALLING SYSTEM 7 (SS7) I. NETWORK


Subscriber

Network

II. SS7 NETWORK ARCHITECTURE II (a) SS7 NETWORK NODES STP (S !"a# Tra"$%er Po "t)&
The knots that hold the network together. These nodes serve to provide network access to other Nodes (by connection with ccess !inks". ST#s trans$er messages around the network. ST#s maintain routing tables $or the purposes o$ directing messages to their intended destinations.

%&%

SS7 Fundamentals

SSP (Ser' (e Sw t() "! Po "t)&


The Service Switching #oint is a switch associated node which handles call set%up and has the ability to stop call processing' make (ueries o$ even unknown databases' and per$orm actions appropriate to the response. )n general' the SS7 messages which originate or terminate here are either circuit or call routing related.

SS7 Network Ar() te(t*re

SCP (Ser' (e Co"tro# Po "t)&


)n general' Service *ontrol #oints provide access to databases. These nodes are the residences o$ processes which can access the database e+tract the re(uired data and return it to the node re(uesting the data. The database(s" to which the S*# has access may or may not reside at the

%,%

SS7 Fundamentals

same location as the S*#. The same capabilities that allow the S*# to access databases lend themselves to other uses such as providing access to an )#.

IP (I"te## !e"t Per +)era#)&


The )# is the residence o$ processes which manage resources such as signalling sensors and voice response e(uipment. The resource management capabilities become available to switches on demand' thereby $reeing switch locations $rom the need to e(uip with a myriad o$ such devices' and providing highly e$$icient use o$ both aging and up%to%date technologies.

CRP (C*$to,er Ro*t "! Po "t)&


The *-# provides on%premises control o$ the routing in$ormation re(uested by switches $or translation o$ .// type dialing (not limited to .// numbers". The operator o$ the *-# is a customer who re(uires rapid update and control o$ the translation o$ their own numbers.

MSC (Mo- #e Sw t() "! Ce"ter)&


The 0obile Switching *enter maintains control over its own Transceiver network. #art o$ this control includes tracking subscribers and per$orming hand o$$s. The 0S* also provides the landline connections into the #STN to complete the connection o$ subscriber calls. Finally' the 0S* makes use o$ the SS7 network to convey circuit related in$ormation to the #STN and to communicate with the service providers o$ roamers.

HLR./LR (Ho,e Lo(at o" Re! $ter./ $ tor Lo(at o" Re! $ter)&
database that contains customer in$ormation about local subscribers is maintained by each provider. This is the 1ome !ocation -egister. nother company will access this in$ormation when a roamer appears' and use the data $or an entry into its 2isitor !ocation -egister.

II (-) SS7 NETWORK LINKS

A((e$$ L "k$3 !ink a node (Signalling #oint" to a local ST# pair. 0r 1!e L "k$3 !ink two ST# pairs at the same level (local4local' regional4regional". Cro$$ L "k$3 !ink two ST#s together to $orm an ST# pair.

%5%

SS7 Fundamentals

D a!o"a# L "k$3 !ink a local ST# pair to a higher level ST# pair. E2te"1e1 L "k$3 !ink a node (Signalling #oint" to a remote ST# pair. 3*##4 A$$o( ate1 L "k$3 !ink two associated nodes together.
!inks 0 and C and D connect the STP$ while A and E and 3 link Ser' (e$.

A1'a"(e1 I"te## !e"t Network (AIN) Ar() te(t*re&


The arrival o$ the dvanced )ntelligent Network has little e$$ect on network architecture. The reason is that the purpose o$ the )N is neither the creation o$ new services nor the redesign o$ the SS7 network. )t is' instead' an attempt to standardi6e and de$ine the best ways that new services might be developed and deployed. 7ne node that appeared in the )ntelligent Network assumes a greater role in the dvanced )ntelligent Network. This is the SMS (Service 0anagement System" which provides a human4database inter$ace. *urrently employed in the )ntelligent Network' the S0S utili6es a man%machine inter$ace and command line language $or service building. )N approaches to service building will increase the importance o$ the S0S to the network. The drawing below illustrates )N architecture.

AIN Ar() te(t*re

III. SS7 USER PARTS


8ach o$ the $unctional program modules is termed a user part. The rules (protocol" dictate the se(uence in which things must be done. To show this graphically' a convention has been adopted $or the drawing. )n this drawing' the $unctional modules that deal with a message 9ust about to be transmitted over the links (or one 9ust received $rom the links" are shown at the bottom. 7ther modules are shown stacked above in the se(uence in which their $unctions are per$ormed. The resulting picture is commonly called a stack. typical SS7 stack is shown below.

%:%

SS7 Fundamentals

SS7 Proto(o# Sta(k

TCAP& Transaction Capabilities Application Part SCCP& S !"a## "! Connection Control Part ISDNUP (ISUP)& Integrated Services Digital Network User Part TUP& Telephone User Part MTP& Message Trans$er Part

III (a). MTP Le'e# 5


)t is the #hysical !ayer in the stack. 7ne rule for MTP L1 is that a link must consist of two data channels operating in opposite directions at the same bit rate. In other words, the links must be bidirectional.

III (-). MTP Le'e# 6


This is a busy user part. )t is the last to handle messages being transmitted and the $irst to handle messages being received. )t monitors the links and reports on their status. )t checks messages to ensure their integrity (both incoming and outgoing". )t discards bad messages and re(uests copies o$ discarded messages. )t acknowledges good messages so the transmitting side can get rid o$ super$luous copies. )t places links in service' and restores to service links that have been taken out o$ service. )t tests links be$ore allowing their use. )t provides se(uence numbering $or outgoing messages. nd $inally it reports much o$ the in$ormation it gathers to !evel 5. ) S !"a# U" t De# , tat o" a"1 A# !",e"t % ;ser part $unctions vary with whether the message is being received or sent. This $unction is per$ormed by !evel , when a message is being sent out on a link. The user part attaches an . bit code to the beginning o$ a message package (an 0S;' or 0essage Signal ;nit". This code' termed a $lag' always consists o$ a byte with 6eros at each end and si+ &s in the middle. )n NS) networks a single (lead" $lag is used. )n **)TT networks' $lags are placed at both the lead and trail ends o$ the 0essage Signal ;nit.

%<%

SS7 Fundamentals

t the receiving end' level , reacts to this $lag by resetting all resources used in the reading o$ messages. The result is that the $lag indicates an appropriate position in the 0S; to begin reading the message. =uite commonly' the normal coding o$ other in$ormation in the 0S; would result in the creation o$ imitation $lags. Such imitations would be read by the receiving 0T# and interpreted as $lags. To prevent this' the 0T# on the side sending the message analy6es the entire 0S; to $ind se(uences o$ &s. >hen it locates a se(uence o$ $ive &s' it places a / directly a$ter it in a process known as bit stu$$ing. 7n the receiving side' the $lag alerts the 0T# to the beginning o$ a message. Therea$ter' it simply removes a 6ero a$ter each se(uence o$ $ive ones' and the message is restored to its original $orm. n overly long message is considered misaligned and results in the 0T# changing its method o$ counting Signal ;nit errors. ) S !"a# U" t Error Dete(t o" % >hen sending a message' the 0T# keeps track o$ the numbers o$ bits being transmitted in the 0essage Signal ;nit. That number (less the . bits o$ the lead $lag" is encoded using a check bits algorithm' and placed at the end o$ the 0S; (be$ore the $inal $lag' i$ there is one". t the receiving end' level , counts the number o$ bits seen a$ter the lead $lag and decodes the check bits to determine i$ they are the same. )$ the check bits don?t e(ual the count made by the 0T#' the message is discarded and a copy is re(uested. ) S !"a# U" t Error Corre(t o" % The standards support two methods o$ error correction. The type used depends on whether the transmission is land based or satellite based. )n the case o$ land based transmission' the transmitting side makes a copy o$ every message sent and retains the copy in a retransmit bu$$er. >hen the receiving 0T# recogni6es a corrupted message' it sends a re(uest to the transmit side $or message copies. The transmit side stops transmitting and begins delivery o$ the copies stored in the bu$$er instead. 0essage numbering that is applied to each transmitted message ensures the transmission o$ the correct messages in the correct se(uence. #ositive acknowledgment $rom the receiving 0T# eventually indicates that the receiving side has caught up. t that point the transmitting side stops transmitting copies and returns to its normal @copy and send? procedures. For satellite transmission' the procedure is similar with one ma9or e+ception. limit is set on held copies. 7nce the limit is reached' transmission is stopped and the stored copies are transmitted repetitively until acknowledgments are received. This continues until the number o$ copies which remain unacknowledged reaches some pre%set lower threshold. ') S !"a## "! L "k A# !",e"t % This $unctionality is invoked when a link is initially placed into service' and again when a link is being restored to service $ollowing a link $ailure. The procedure passes through $our states' beginning with an 7ut%7$% lignment state and ending with an error monitoring proving period. The standards provide $or a choice o$ two proving procedures which can be imposed by the node. For either proving procedure' the 0T# sends the simplest $orm o$ message $ormat (the $orm known as Fill )n Signal ;nit' F)S;" while maintaining a count o$ F)S;s in error. For the procedure known as Normal lignment' the proving period lasts $or ,./ seconds and a ma+imum o$ $our errors are allowed. For the procedure known as 8mergency lignment' the proving period lasts $or /.< second and a ma+imum o$ one error is allowed. The time period is dependent on the transmission rate. The values given here are those o$ a standard A:Bbps.

%A%

SS7 Fundamentals

') A# !",e"t Error Rate Mo" tor (AERM) 7 Curing the alignment proving period' the 0T# watches the F)S;s to ensure that each contains an even multiple o$ . bits and is si+ octets long including the lead $lag. The 8-0 is incremented $or each time that this is not so. ' ) S !"a# U" t Error Rate Mo" tor (SUERM) 7 Curing normal transmission' the 0T# watches Signal ;nits to ensure that each is an even multiple o$ . bits and is at least si+ octets long. 7nes density is also checked (imitation $lags" and the check bits are tallied against the actual Signal ;nit length. 8rrors cause the S;8-0 to be incremented. >hen the error count reaches A: the link is removed $rom service and the alignment procedure begins anew. The S;8-0 is an increment4decrement counter designed to determine error rate rather than error count. There$ore' each time a series o$ ,<A valid messages has been monitored' the S;8-0 is decremented. This method o$ determining an error rate is generally known as the leaky bucket techni(ue. ' ) 3#ow Co"tro# 7 !evel , monitors congestion on the links. 1ow the sensing is to be accomplished is not speci$ied in the standards. Denerally' this is a matter o$ detecting message buildup at link associated message (ueues. >hen a threshold is passed' the 0T# sends a Signal ;nit back to the sending side to indicate S)E (Status )ndicator Eusy". The receiving side stops returning acknowledgments (both positive and negative". The receiving side periodically retransmits the @Eusy? status indication and the transmitting side resets the timer $or @8+cessive Celay o$ cknowledgment? (T7". This means the transmit side continues to retain the copies in its retransmission bu$$er. 8ventually' either the receiving side will stop sending @Eusy? or a second timer (T A" on the transmit side will time out and a @link $ailure indication? will be generated.

%7%

SS7 Fundamentals

MTP Le'e# 6 3*"(t o"a# t4

' ) MTP Le'e# 6 3*"(t o"a# t4 % s the monitor o$ both link status and message integrity' the 0T# !evel , is re(uired to report the results o$ its monitoring both to the ad9acent node (in the $orm o$ negative and positive acknowledgments along with re(uests $or retransmissionF and also signal units containing status in$ormation about the links" and to the 0T# !evel 5 (in the $orm o$ status in$ormation necessary $or level 5 to make decisions about tra$$ic diversions". 0T# level , $unctions are illustrated in this drawing. 2) MTP Le'e# 6 T ,er$ % )n general' the user part timers are countdown timers whose settings

%.%

SS7 Fundamentals

Le'e# 6 T ,er$

determine either a $i+ed period o$ time $or an activity (as with alignment proving periods" or a time limitation which is applied to an activity' a$ter which the activity is deemed to have $ailed (as with e+cessive delay o$ acknowledgment". Some o$ these timers have $i+ed values' while $or others' the standard provides $or a range o$ values. Such ranges provide some $le+ibility to network nodes to allow node operating e$$iciency to be optimi6ed. summary o$ the 0T# !evel , timers is shown in the above table.

III ((). MTP Le'e# 8

%G%

SS7 Fundamentals

The $unctions o$ level 5 are divided into two ma9or categories. 7ne o$ these is Message Routing (or Signalling 0essage 1andling". The other is Signalling Network Management. Network 0anagement can be $urther broken down into $our sub%categories. >e?ll start with Tra$$ic 0anagement and e+amine each o$ these sub%categories in turn.

) Me$$a!e Ro*t "!3 0essage Ciscrimination and 0essage Cistribution. ) Network Ma"a!e,e"t3 Tra$$ic 0anagement' !ink 0anagement' -outing 0anagement
and *ongestion (Flow" *ontrol.

9 a) Tra%% ( Ma"a!e,e"t&
;nderstanding the $unctionality o$ level 5 becomes easier i$ you $irst understand the $ollowing three things. First' level , monitors the links and the messages. That monitoring provides the basis $or reporting status. Status reports' in turn' provide the data necessary $or managing the linksF and' this is the 9ob o$ level 5. The second thing to understand is that links are used both individually and collectively in a number o$ ways. For e+ample' a group o$ links e+tending $rom a given signalling point to another can be treated as a # "k$et. )n concept' messages can be sent over any o$ these links because all messages will arrive at the same place. This grouping o$ links together provides choices $or the 0T#. 0essages can be sent on a single link. 7r' messages can be distributed across all the links in the linkset. 7r' messages can be distributed over most' but not all o$ the links in the linkset. )n the latter scenario' the 0T# can take a link out o$ service and still trans$er the messages' because it can simply choose another link in the linkset $or the tra$$ic. Then' when the link removed $or service is restored' tra$$ic can be returned $rom the alternate link to the original link. The drawing below illustrates the linkset concept.

Co"(e+t o% a L "k$et

)n this drawing the links are shown as having been assigned priorities (/ to 5". 0T# level 5 provides a code (known as S !"a## "! L "k Se#e(t o"" which is normally rotated with each message. Normally' each new code assigns the tra$$ic to a di$$erent link in order o$ priority. Thus' messages are distributed evenly across all links in the set. 1owever' the signalling point can also direct (usually through a con$iguration" that only two or three o$ the links be used. s long as those two to three links can handle the tra$$ic' the entire linkset is not used. 1owever' i$ a link $ails (because the tra$$ic is too heavy or due to some physical $ailure" the unused link(s" can be used as alternates to which to trans$er the tra$$ic. Then' when the original link can once again handle the tra$$ic' it returns to service and the tra$$ic is placed on it once more. )n some cases' a higher level user part (the S**#" is asked to provide a service in which the messages are
% &/ %

SS7 Fundamentals

guaranteed to be in se(uence. That guarantee can be made only i$ all messages are delivered on the same (single" link. To accommodate this re(uest' 0T# level 5 stops rotating the Signalling !ink Selection (SLS" $or the duration o$ the service re(uestF and' all messages are delivered in se(uence on a single link. !inks are treated collectively as a part o$ a linkset. !inksets in turn are treated collectively as a part o$ a route set. The route set concept is used by the 0T# to select $rom among the available linksets when sending a message to some distant location. s with voice switches this routing can be best way' lowest cost' etc. From the standpoint o$ signalling nodes' route sets are generally o$ little practical signi$icance. The reason is that o$ten a node will maintain only two linksets' which is su$$icient to give the node access to a mated pair o$ ST#s. 1aving only two routes (which is what a linkset is called when seen as part o$ a route set" available' there is little or no advantage $or the node to be able to select a linkset over which to direct tra$$ic. )n such an instance the node will likely declare (through a con$iguration" that both linksets are part o$ a route set. 1aving provided such data' the re(uirements o$ the 0T# will be satis$ied. n ST#' on the other hand' may have numerous link sets going in many directions. )n this case' the ST# managers will pay a good deal o$ attention to setting up route sets which o$$er the greatest advantage. The drawing below illustrates the route set concept.

Co"(e+t o% a Ro*te Set

The drawing shows routing $rom the perspective o$ the 0essage Trans$er #art at the ST# with the darker shading (&<%&<%//". )t should be obvious that' when a message is to be sent to the signalling point at ,/%,/%,/' linkset H5 (!S5" and linkset H: (!S:" are not likely to be the most desirable linksets $or the ST# to use. There are' o$ course' many more connections in the network than those shown here. message addressed to ,/%,/%,/ would (eventually" arrive there even i$ sent on !S5 and !S:. )t is even possible that there might be reason (such as lower cost" to direct the messages there. 1owever' it seems more likely that the managers o$ this node would use !S& or !S, to send messages in this direction. The routeset might include one or both linksets. #riorities would be assigned to each route (linkset" in the routeset although in this instance it would appear that there would be little to recommend either route in pre$erence to the other. Eack where we started this discussion we said there were three things that needed to be understood about 0T# level 5. The $irst is the nature o$ a linkset. The second is the nature o$ a routeset. The third is to understand that the 0T# level 5 both reports adverse network situations and responds to those situations by redirecting tra$$ic. The (uestion is where is the 0T# that does each o$ theseI service provider?s node (such as an SS# or a *-#" generally has links only to an ST# pair. )t there$ore has little way o$ collecting in$ormation about the network beyond its links. The ST#' on the other hand' maintains links to multiple service provider nodes as well as to other ST#s. )n general' then' the 0T# at the service provider?s node will receive -oute 0anagement messages $rom the ST# and will respond by diverting its outgoing tra$$ic using Tra$$ic and !ink

% && %

SS7 Fundamentals

0anagement $unctionality. )$ the service provider?s node maintains enough links with enough access to the network' it may succeed in getting its messages around network trouble spots. !et?s see how the 0T# at a location which is not an ST# might attempt to do this. :) 3or(e1 Rero*t "! 7 >hen an ST# is unable to route to a speci$ic signalling point in the network' it sends a Tra"$%er Pro) - te1 (T3P) signal to ad9acent nodes. >hen an ST# is unable to route to a speci$ic signalling cluster in the network' it sends a Tra"$%er C#*$ter Pro) - te1 (TCP) signal to ad9acent nodes. The level 5 ;ser #art at the node responds by diverting tra$$ic to another available linkset' then returning tra$$ic to the original linkset when normal routing can be reestablished. ::) Co"tro##e1 Rero*t "! 7 >hen an ST# encounters di$$iculty in routing to a speci$ic signalling point in the network (but' trans$er is possible"' it sends a Tra"$%er Re$tr (te1 (T3R) signal to ad9acent nodes. >hen an ST# encounters di$$iculty in routing to a speci$ic signalling cluster in the network (but' trans$er is possible"' it sends a Tra"$%er C#*$ter Re$tr (te1 (TCR) signal to ad9acent nodes. The level 5 ;ser #art at the node responds by diverting tra$$ic to a more e$$icient linkset' then returning tra$$ic to the original linkset when normal routing can be re%established. :::) MTP Re$tart 7 Ee$ore returning to the network' a node which has been isolated by the unavailability o$ its linksets needs time to determine any network routing changes which have occurred while it was not available. Ee$ore $ull startup it sends a TRW (Tra%% ( Re$tart Wa t" signal which lets ad9acent nodes know not to send tra$$ic even though the links may appear to have resumed service. >hen the restarting node is satis$ied that enough links (usually </J" are available !evel 5 sends TRA (Tra%% ( Re$tart A##owe1". ::::) Ma"a!e,e"t I") - t "! 7 This is a link labeling procedure which does not prevent link usage' but rather' reserves a link $or the purpose o$ sending test messages. link under congestion cannot be inhibited. )$ the link is the only one available $or tra$$ic' it cannot be inhibited. Finally' an inhibition re(uest re(uires positive con$irmation $rom the 0T# at the other end.

9 -) L "k Ma"a!e,e"t&
0T# level 5 directs the activities o$ placing links in and out o$ service. )nstantaneous removal or replacement o$ links would leave no time $or the ad9acent (directly connected by link" nodes to react. The result would be lost' duplicated' or corrupted messages. There$ore the link management $unctionality en$orces an orderly withdrawal and replacement o$ links through a mandatory message e+change.

L "k Ma"a!e,e"t
:) S !"a## "! L "k A(t 'at o" 7 0T# level 5 directs the activation o$ the links (at the re(uest o$ an application"' deactivates links in response to changing link status' and reactivates links removed $rom service once those links can resume service. ::) S !"a## "! L "k C)a"!eo'er 7 >hen tra$$ic must be removed $rom a link taken $rom service and brought to another link' 0T# level 5 controls the process to eliminate lost messages' duplication' or mis se(uencing. )t does so by warning the ad9acent node through a Change Over Order (COO" signal and receives a Change Over Acknowledgment (COA" in response.

% &, %

SS7 Fundamentals

:::) S !"a## "! L "k C)a"!e-a(k 7 Tra$$ic must be returned to a link $rom which it was diverted when that link is success$ully realigned. 0T# level 5 controls the process to eliminate lost messages' duplication' or mis se(uencing. )t does so by warning the ad9acent node through a Change 0ack Declaration (C0D" signal and receives a Change 0ack Acknowledgment (C0A" in response. ::::) S !"a## "! L "k Te$t 7 Signalling Link Test Message (SLTM" and a Signalling Link Test Acknowledgment (SLTA" are (optionally" e+changed immediately a$ter alignment and periodically (5/%G/ sec." while the link is in service. The message data ensures uni$ied agreement about the Signalling !ink *ode used by both ad9acent nodes to identi$y the link

9 () Ro*t "! Ma"a!e,e"t&


)t consists o$ procedures which are really the $lip side o$ the Tra$$ic 0anagement procedures. 0ost o$ these are procedures per$ormed by the 0T# at an ST#. The reason this is so is that it is the ST# which has routing responsibilities in the SS7 network. s a result' it is the ST# which receives most o$ the in$ormation about unavailable signalling points or signalling points e+periencing di$$iculties (such as numerous congested links". :) Tra"$%er7Pro) - te1 . Tra"$%er7C#*$ter7Pro) - te1 7 n ST# sends a Tra"$%er Pro) - te1 (T3P) signal to ad9acent nodes when it is unable to route to a speci$ic signalling point in the networkF n ST# sends a Tra"$%er C#*$ter Pro) - te1 (TCP) signal to ad9acent nodes when it is unable to route to a speci$ic signalling cluster in the network. ::)Tra"$%er7Re$tr (te1 . Tra"$%er7C#*$ter7Re$tr (te1 7 n ST# sends a Tra"$%er Re$tr (te1 (T3R) signal to ad9acent nodes when it encounters di$$iculty in routing to a speci$ic signalling point in the network (but' trans$er is possible"F n ST# sends a Tra"$%er C#*$ter Re$tr (te1 (TCR) signal to ad9acent nodes when it encounters di$$iculty in routing to a speci$ic signalling cluster in the network (but' trans$er is possible". :::) Tra"$%er7A##owe1 . Tra"$%er7C#*$ter7A##owe1 7 These messages (T3A K TCA" are sent by the ST# to the ad9acent nodes when the condition which caused it to send the restricted or prohibited messages has been cleared. ::::) S !"a## "!7Ro*te7Set7Te$t 7 Nodes generally respond to -oute 0anagement 0essages sent by ST#s by invoking local link management signals like Change Over Order (COO". )n addition' the a$$ected node will send a periodic Signalling%Route%Set%Test (SRST" to check the routing status. The typical sending interval is 5/ seconds.

9 1) Co"!e$t o" (3#ow) Co"tro#&


t some point in time you may be reading through the standards and end up with some con$usion about whether $low control is a level , or level 5 $unction. Lou can limit this con$usion by remembering that level , is responsible $or monitoring and reporting the results o$ the

% &5 %

SS7 Fundamentals

monitoring. !evel 5' on the other hand' uses this in$ormation to manage developing problems by causing link' linkset' or route set diversions and also by reporting to the upper levels. )n the case o$ $low control' the 0T# level , must $irst determine whether congestion e+istsF and' i$ it does' to report how bad the congestion is. >hen congestion occurs at the receiving end' 0T# level , sends a congestion indication over the link in (uestion to the 0T# at the transmitting side. The receiving 0T# also stops sending the acknowledgments that would allow the transmitting node to eliminate success$ully transmitted messages $rom its retransmit bu$$er. lso' at the transmitting node' a long timer is started' which' when it e+pires' will provide a link $ailure indication. 7ne o$ the clearest indications o$ congestion is the buildup o$ messages in the transmit and retransmit bu$$ers o$ the sending node. The standards provide $or threshold values to be imposed upon the amount o$ messaging in the transmit and4or retransmit bu$$ers. >hether the event sensing is placed at the transmit bu$$er' the retransmit bu$$er' or both is based on the relative si6es o$ both. Three identical sets o$ event values are set $or three overlapping message levels. 8ach level has a congestion onset value' a congestion abatement value' and a discard onset value. >hen the $irst congestion onset is reached' the 0T# level , will in$orm 0T# level 5. !evel 5 responds by in$orming the user part sending the messages (S**#' )S;#' T;# etc.". )$ the buildup o$ messages continues' it will reach the discard onset threshold. >hen this occurs level three begins to discard messages. message can be assigned a priority. 0essages containing only in$ormation o$ a non% critical nature are assigned the lowest priority. This priority value corresponds to the level o$ congestion indicated when the lowest congestion onset threshold is reached. Eecause this is so' the messages that are discarded when the lowest discard onset threshold is reached are the lowest priority messages. )$ the message buildup $alls below a threshold which has been set lower than that o$ congestion onset' the 0T# will stop reporting congestion. This is called the congestion abatement threshold. )$ the congestion buildup continues despite discard o$ low priority messages' it will eventually reach congestion onset at the ne+t highest level. The 0T# will indicate a higher level o$ congestion. Then' i$ the discard onset threshold is reached' the 0T# will discard the messages o$ the ne+t higher priority. t the same time it will still be discarding low priority messages. This escalation o$ congestion level along with the discard o$ higher priority messages continues $or three priority levels. The standards support the assignment o$ $our priorities. 1owever' only three levels o$ Flow *ontrol message discard are assigned because the highest priority is given to network management messages with the understanding that such messages are not sub9ect to discard. The 9ob o$ level , is to monitor and report (both to level 5 and to the 0T# at the other end o$ the links". The 9ob o$ level 5 is to manage (as with links' link sets and routes" and to report to higher level user parts. *ongestion status' tra$$ic control' route and link management' status indicating and $low control' are there$ore all interrelated. The distinction between level, and level 5 congestion issues is largely a matter o$ whether congestion is detected on incoming messages (ueues or outgoing transmit4retransmit bu$$ers. To be correct' then $low control (level ," procedures are invoked when congestion is detected on the receiving end. *ongestion status procedures are invoked when congestion is detected at the sending end. The drawing below illustrates level 5 congestion concepts. The levels at which to place *7' * and *C are dependent on bu$$er si6es' tra$$ic densities' and other variables which are speci$ic to each side. >here' and at what level to set the thresholds' then' depend on implementation.

% &: %

SS7 Fundamentals

Le'e# 8 Co"!e$t o" Co"(e+t$

Me$$a!e Ro*t "!&

0T# level 5 has two more important $unctions to $ul$ill. These both $all into the category o$ message routing and consist o$ message discrimination and message distribution. !evel 5 must e+amine each message to determine two things. The $irst (uestion to be answered is' )s this message intended $or this S#I The second (uestion is' )$ intended $or this signalling point' $or which user part is it intendedI The answer to the $irst (uestion is obtained by invoking the discrimination $unctionality while the answer to the second invokes the distribution $unctionality. ll messages handed o$$ to level 5 (by either a higher or lower level" are either en route to the application via level : user parts (S**#' )SCN;#' T;#' etc." or they are en route to the ad9acent node via level , and the SS7 signalling links. For most nodes' an incoming message not intended $or that node was probably incorrectly addressed. 0T# level 5 will e+amine the Cestination #oint *ode (DPC" and discard any messages whose DPC does not match the !evel 5 con$iguration. 7nly ST#s have the routing responsibility to take such a message' and a$ter consulting routing data' send the message on its way into the network. No message should arrive at an end point node to which it was not addressed. s $or message distribution' the 0T# relies on a $ield in the message to indicate the user part $or which the message was directed.

Me$$a!e D $(r , "at o" ; D $tr -*t o"

) MTP Le'e# 8 T ,er$ 7 the user part timers are countdown timers whose settings determine either a $i+ed period o$ time $or an activity (as with alignment proving periods" or a time limitation which is applied to an activity' a$ter which the activity is deemed to have $ailed (as with e+cessive delay o$ acknowledgment" Some o$ these timers have $i+ed values' while $or others' the standard provides $or a range o$ values. Such ranges provide some $le+ibility to network nodes to allow node operating e$$iciency to be optimi6ed. $ollowing is a table o$ the 0T# !evel 5 timers3

% &< %

SS7 Fundamentals

Le'e# 8 T ,er$ (a)

Le'e# 8 T ,er$ ((o"t1...)

% &A %

SS7 Fundamentals

Le'e# 8 T ,er$ (-) Note$& Timers TG and T&. are not shown because they are not usedF Timers T,,' T,5' and T,: are started in se(uence by a restarting S#.

III (1). SCCP


The standards were written $or the S**# to support both connection oriented and connectionless services. The concept o$ a connection is not the same $or the SS7 network as it is $or the voice switching network. )n general' the physical connections or links always e+ist in the SS7. The term connection oriented re$ers to a virtual connection rather than a physical one. )n a virtual connection a conversation takes place be$ore the conversation takes place. That is' the two sides $irst agree to establish the connection be$ore they begin the e+change o$ messages $or which the connection is intended. This may seem like overkill. The idea is to make the rules o$ communication more rigid in order to better guarantee the integrity o$ the communication. The phases o$ such a connection resemble those o$ a telephone call. The phone call consists o$ a setup phase $ollowed' by a voice conversation' $ollowed by a release phase. virtual connection consists o$ a connection establishment phase $ollowed by a data trans$er phase' $ollowed by a connection release phase. *onnection oriented services tend to use more resources and create greater overhead. The trade%o$$ $or increased integrity is lower speed. )n other words' even though the data trans$er rates are the same $or connectionless service' less

% &7 %

SS7 Fundamentals

signi$icant data is passed per unit o$ time. Service providers have generally $ound connectionless services to be highly reliable with little tendency toward corruptionF and' have' there$ore opted not to make use o$ connection oriented services. The service types o$$ered by the S**# are shown below along with the $unctions o$ the user part.

) Ser' (e t4+e$& *lass / *onnectionless K *lass & *onnectionless ) E2te"1e1 3*"(t o"$& Speciali6ed -outing Functions K Subsystem 0anagement
) SCCP Ser' (e T4+e$& Eoth services shown here are connectionless. 8ssentially connectionless means that messages are simply delivered to their destination and returned to the point o$ origination without any additional special handling. No virtual connection is established. For (#a$$ < usage' messages are transported without re$erence to other messages. Celivery o$ messages is not guaranteed to be se(uential. 7n the other hand' $or (#a$$ 5' the S**# calls on the services o$ 0T# level 5 to modi$y its normal handling o$ links in link sets. 0T# level 5 normally provides a rotating code value (Signalling !ink Selection or SLS" to share the load in a link set. >hen asked to do so by S**#' the 0T# stops rotating this code. The result is that the SLS stays the same' message a$ter message. 0essages delivered on the same link remain in se(uence. 9 a) SCCP S+e( a# =e1 Ro*t "! 3*"(t o"$& 0any o$ the chie$ bene$its o$ the use o$ the S**# lie in the speciali6ed routing $unctions. The addressing capabilities here are what allow the locating o$ database in$ormation or the invoking o$ $eatures at a switch. To this point we have seen only the addressing capabilities o$ the 0T#. The 0T#' o$ course' is concerned only with trans$erring messages to the other end o$ links. For this reason its addressing is limited to the use o$ the point code o$ the location to which the link goes. The 0T# deals only with the signalling point code o$ its own location in the network (which becomes its 7rigination #oint *ode"' and the signalling point code o$ the node at the other end o$ the link (which becomes its Cestination #oint *ode". Cestination #oint *ode (DPC" is important to the S**# as well. >hen supplied by the originator o$ a (uery it indicates a network location where there is a process to retrieve data $rom a database (or where a service or $eature can be invoked". 1owever' it may be that data can be retrieved $rom more than one database at that location. For this reason' S**# needs to provide addressing which can be used to di$$erentiate between databases or between various $eatures or services that can be invoked at a node. The value used is called a subsystem number. The values provided $or database identi$ication range $rom / to ,<<. s o$ &GGA' some o$ these were assigned to the most common usages. The / value' i$ used' indicates an unknown database. The $irst seven values are assigned $or uses o$ the databases re(uired $or such things as the )SCN4Telephony Numbering #lan (&"' The Cata Numbering #lan (5"' the !and 0obile Numbering #lan (A"' etc. >ith the e+ception o$ some reserved ($or $uture use" values' the remainder can be used. The S**# uses DPC and SSN (subsystem number" to route to the appropriate network location and to the appropriate database which can be accessed at that location. Still another addressing mechanism is available to S**# users. This one is known as Dlobal Title Translation (GTT".

% &. %

SS7 Fundamentals

To understand the need $or such a mechanism' let?s e+amine what happens at an SS# when someone dials an .// number. 7rdinarily' the dialed digits received at the switch would contain an area code' an e+change code' and a line number. The switch could then consult its routing table and determine the ne+t switch through which to route the call. n .// number' on the other hand' does not comply with the North merican Numbering #lan which the switch would normally re$er to in choosing the routing. The telephone being called is connected by voice line to an end o$$ice somewhere. That end o$$ice has an address in the North merican Numbering #lan and the line to the telephone has a line number. There$ore' the telephone has a regular telephone number to which the switch (at the SS#" could route the call. 7$ course' every switch in the country could maintain an .// number database $or the purpose o$ translating the dialed digits o$ an .// number into a normal telephone number. )n this case' possible and practical is not the same thing. )$ it were done this way' every switch in the country would $ind it necessary to update its routing table every day. There is a better way. )$ the switch simply maintains a database which provides it with the Cestination #oint *ode and Subsystem Number o$ a centrali6ed .// database' it can send a (uery there and receive a normal telephone number in return. Now it can handle the call as i$ a normal telephone number were dialed in the $irst place. >ith the rate at which databases proli$erate' it is only a matter o$ time be$ore each switch will be maintaining a database o$ databases that will need $re(uent updating. This is one o$ the problems solved by DTT. ;sing DTT' the SS# need not know where the database is located. )nstead' it makes a re(uest $or a Dlobal Title translation and passes it on to the ST#. The ST# may have the C#* and SSN o$ the database in its own tables. )$ so' it redirects the re(uest and later returns the data to the #oint *ode making the original re(uest. )$ the $irst ST# does not have the necessary address' it will usually have the location o$ another ST# (perhaps at a di$$erent level o$ hierarchy" to which it can pass the Dlobal Title re(uest. >hen an ST# which has access to the data is reached' it can retrieve the data and send it back to the location which was the one that sent the re(uest to its $inal ST# destination. Node by node' the data gets returned to the re(uestor. The originator o$ the re(uest can then make use o$ the data without ever knowing where it came $rom. There are at least two bene$its to be derived $rom Dlobal Title Translations. The $irst is that S#s can have access to data o$ all types without having to maintain ever more cumbersome tables. New data can become universally available very (uickly. The second is that companies can have better control over the data kept within their own networks. The drawing below illustrates Dlobal Title usage.

U$e o% G#o-a# T t#e Tra"$#at o" (GTT)

9 -) SCCP S*-$4$te, Ma"a!e,e"t&

% &G %

SS7 Fundamentals

To understand S**# Subsystem 0anagement' it pays to start with an understanding o$ how reliability is gained in any network. s was mentioned earlier' the development o$ standards is $illed with what i$s. )n the case o$ the S**#' one o$ the pertinent what i$s is' >hat i$ a (uery arrives at the S*# when the database is down $or maintenanceI The answer once again lays in that ma9or ally o$ all networks.....redundancy. The database $ront end can still $ul$ill the re(uest as long as there is a database available containing the same data as the one currently out o$ service. The timing o$ the switch over $rom an out%o$%service database to an in%service database is critical. )$ the (uery is received at the same moment that a database is withdrawn $rom service' it may be too late $or the $ront end process to stop its attempt to get data $rom the now out%o$%service database. !ikewise' a precipitous shut down o$ the database could result in (ueries receiving only partial answers. The obvious answer is to plan a shutdown period in such a way that the database goes out%o$%service only a$ter those who need the data have been in$ormed o$ the impending lack o$ accessibility. !ikewise' those who are normally accessing the data need time to switch to an alternate database. Denerally' when a replicated subsystem needs to leave service' the S**# database is e+amined $or *oncerned #oints. Such a point is a location which has to be in$ormed o$ subsystem status because it is a location normally accessing data $rom the database in (uestion. There are a number o$ ways in which replicated (multiply copied" databases can be implemented. >hichever way is used' the *oncerned #oint will generally have access to the data $rom a redundant source. The withdrawing database will make an e$$ort to ac(uire agreement $or the withdrawal $rom the redundant database by sending an N7Coor1 re>*e$t primitive to the local S**#. The local S**#' in turn' sends a Subsystem%7ut%o$%Service%-e(uest to the S**# at the location o$ the redundant database. t the same time it sets a timer to wait $or permission to be granted. )$ the timer times out be$ore permission is granted' the local S**# sends an N7Coor1 (o"% r,at o" primitive back to the subsystem which indicates denied. t the redundant database' the availability o$ resources (replicated database' tra$$ic handling capabilities' etc." is checked. )$ the resources are su$$icient $or the abandoned (uery4response load to be handled' an N7Coor1 re$+o"$e primitive is sent to the S**# at the location o$ the database which re(uested permission to withdrawF and the re(uest is granted. The S**# broadcasts messages to the Co"(er"e1 Po "t$ $ound in its con$iguration in$ormation. >hen a database is withdrawn $rom service Subsystem%#rohibited is broadcast to its CPs. >hen the same database returns to service' the S**# broadcasts Subsystem% llowed. The same messages should be sent to the mated database to keep the replicate in$ormed o$ the status o$ the database whose load it is now handling. >hen the Subsystem%#rohibited is received at the *#' the local S**# sets a timer. >hen the timer times out a Subsystem % Status % Test is sent to the S**# peer at the 7ut%o$%Service location. The timer is reset when the message is sent and the cycle begins anew. Subsystem%Status%Test is no longer sent a$ter the database returns to service. Subsystem%Status%Test (SST" is a re(uest $or the prohibited database The SST will repeat until an allowed? response is received. This guarantees that resources can be returned to their original state as soon as possible. ) SCCP T ,er$& )n general' S**# timers are used to coordinate Subsystem 0anagement and to coordinate connection establishment and release.

% ,/ %

SS7 Fundamentals

III (e). TCAP


The Transaction *apabilities pplication #art o$$ers its services to user designed applications as well as to 70 # (7perations' 0aintenance and dministration #art" and to )S:&% C ()nterim Standard :&' revision C" and DS0 0 # (Dlobal Systems 0obile". 0any drawings will show 70 #' )S:&%C' and DS0 0 # as separate layers above T* #. ctually' they are constructed within the T* # procedures. n e+amination o$ the messaging used $or each would reveal what appear to be variations on T* #. )t would be accurate to say that the purpose o$ T* # is to allow applications to e+change in$ormation using signalling that is not circuit related. )t would also be accurate to say that T* # is used largely by switching locations to obtain data

% ,& %

SS7 Fundamentals

$rom databases (SS# $rom .// Cb' 0S* $rom 1!-' etc."' or to invoke $eatures at another switch (like utomatic *allback or utomatic -ecall". ;sing the mobile message transports (DS0' )S:&%C" also provides the procedures $or database updating by re$erence to another database. )n the 0obile network' $or e+ample' those who roam out o$ the network maintained by the company they pay $or the service are tracked by the company into whose area they wander by trans$erring data $rom database to database. )n this case the 1ome !ocation -egister (1!-" is accessed by the new company and in$ormation is trans$erred into the new company?s 2isitor !ocation -egister (2!-". ;nlike circuit related messages' T* # messages need not be sent $rom switch to switch $ollowing a developing voice circuit. )nstead' the messages are generally sent to distant locations using the end%to%end message routing provided by the services o$ the S**#. )ndeed' T* # messages end up being attached to S**# messages. The two user parts go together' with S**# providing the speciali6ed routing and T* # providing the appropriate message structuring and parameters to ac(uire and package the data. -emember that T* # uses the services o$ the S**# which in turn uses the services o$ the 0T#. The result is that a T* # message ends up being se(uenced in the message packet as shown in the drawing below. The arrow indicates the direction o$ the message $low' so the portion at the right o$ the drawing will be the $irst part received.

Me$$a!e 3#ow

The T* # message consists o$ two ma9or portions. The $irst is the Transaction #ortion. The Transaction #ortion contains none o$ the data o$ the message. )nstead' it consists largely o$ protocol control. )t begins with an octet (T* # #ackage Type" that identi$ies the type o$ dialog that is to take place. Following the package type' the transaction portion indicates how many octets o$ data are contained in the entire message. )t then deals (in housekeeping terms" with a Transaction )C. The transaction id is a value which is assigned to a complete (uery4response dialog and remains the same $or the duration o$ the dialog. The reason this is necessary is that the application which is the originator o$ the (uery may have numerous (ueries out at one time. Some o$ those (ueries may be brie$' single package transactions. 7thers may be multi%package transactions segmented to $it by the S**#. 8ither way' the originator o$ the re(uest needs to be able to correlate the (uery with the response in$ormation. That correlation is provided by an identi$ying value generated with the (uery and returned with all data associated with the response.

) Tra"$a(t o" Port o" 3 e#1$


a) TCAP Pa(ka!e T4+e % This $ield is $illed in by the signalling point making the re(uest to let the receiver know the nature o$ the re(uest. )t also contains the data necessary to relate this message to other messages which may be part o$ the same continuing transaction. 1ere are the types used.

% ,, %

SS7 Fundamentals

a-i) Unidirectional %

one way message with no reply e+pected.

a-ii) Query With Permission % The signalling point making the re(uest does not e+pect to use the same transaction to send other messages. )t there$ore grants the receiving application permission to release allocated resources a$ter responding. a-iii) Query Without Permission - The signalling point making the re(uest does e+pect to use the same transaction to send other messages. )t there$ore denies the receiving application permission to release allocated resources a$ter responding. a-iv) Response % This is the answer that the receiving application sends to a Query With Permission. The message indicates the termination o$ the transaction. a-v) onversation With Permission % The signalling point receiving the re(uest $or a (uery (with or without permission"' tells the originating signalling point to continue the transaction and grants permission to terminate when the transaction is complete. a-vi) onversation Without Permission % The signalling point receiving the re(uest $or a (uery (with or without permission"' tells the originating signalling point to continue the transaction but denies permission to terminate when the transaction is complete. a-vii) !"ort - >hile the standards intended the bort as a means $or an originating signalling point to end a transaction' it generally becomes use$ul only when protocol errors are received.

Tra"$a(t o" Port o" 3 e#1 3or,at

-) Tota# TCAP Me$$a!e Le"!t) % This value indicates the number o$ octets there are $rom this point in the stream o$ data to the end o$ the T* # message including all components and all parameters. () Tra"$a(t o" ID I1e"t % er % This might better be called Transaction )C )ndicator. )t is not the actual identi$ier' but only an indication that an identi$ier is present and will $ollow. 1) Tra"$a(t o" ID Le"!t) % >ith unidirectional messages' there is no Transaction )C and this value will be 6ero. For messages other than unidirectional' the re(uesting node provides an )C $or the purpose o$ correlating the (uery with the response. Such an )C will be $our octets long. Sometimes a component will be sent to the originating node by the responding node and a reply is
% ,5 %

SS7 Fundamentals

e+pected. )n such instances' the responding node $ills in both the original (re(uesting" Transaction )C and one provided by its own application. The dual )Cs are' obviously' longer than a single )C. e) Tra"$a(t o" ID % This is the actual value assigned to the transaction $or the purpose o$ providing the correlation between (ueries sent and responses received. Denerally' the )C is provided by the originator o$ the message. 1owever' a second )C can be provided by the receiver when it $inds it necessary to send a message back to the originator and anticipates a response. %) Co,+o"e"t Se>*e"(e I1e"t % er 7 This value indicates the se(uence o$ components to $ollow without indicating the actual number o$ components. >hile in the Transaction #ortion' this code is generally considered to be part o$ a header $or the component portion. !) Co,+o"e"t Se>*e"(e Le"!t) 7 This is the $inal $ield be$ore the component portion. )t indicates the length o$ the message beginning with the $irst $ield o$ the component portion and ending with the last parameter o$ the last component.

) Co,+o"e"t Port o" 3 e#1$


The drawing below illustrates the $ields o$ the *omponent #ortions. )nvoke *omponent Fields are shown. The 7peration *ode Fields are replaced by other $ields in di$$erent components.

Co,+o"e"t Port o" 3 e#1 3or,at

a) Co,+o"e"t T4+e I1e"t % er % T* # uses $our component types. Two o$ these make use o$ two subtypes (!ast or Not !ast". The result is that this $ield may contain any one o$ si+ type indications. These are as $ollows3 a-i) #nvoke omponent % This component is used to petition $or a speci$ic operation. These generally take the $orm o$ invoking a $eature at a switch or o$ making a (uery at a database (e.g. .// number translations". There may be more than a single )nvoke in a transaction. )$ it is a $inal (or only" )nvoke' the code generally includes an ! (last". )$ more )nvoke *omponents are to come (in this transaction" the code generally includes an N! (not last". a-ii) Return Response omponent - This component is the one in which the re(uested results are returned. For e+ample' this would be where the re(uesting S# would $ind a telephone number which can be routed' resulting $rom a re(uested .// number translation. s with )nvoke' there may be more than a single -eturn -esult in a transaction. )$ it is a $inal (or only" -eturn -esult'

% ,: %

SS7 Fundamentals

the code generally includes an ! (last". )$ more -eturn -esult components are to come (in this transaction" the code generally includes an N! (not last". a-iii) Return $rror omponent % s the name implies' this component is generally used to report the reasons $or the $ailure o$ an operation. The errors reported have generally to do with errors made by the application. This includes such things as inconsistent use o$ )Cs' une+pected results' or invalid parameters. a-iv) Re%ect omponent % This component is also used $or error reporting. 1owever' in this instance errors are attached to an indication o$ which part o$ the message contained the error. They may be reported as having occurred in the Transaction portion or in any o$ the other three components. -) Co,+o"e"t Le"!t) % This $ield indicates the length (in octets" o$ the component in which it is $ound. The component portion may consist o$ multiple components' each o$ which will have its own length indicator. () Co,+o"e"t ID I1e"t % er % The presence o$ this identi$ier indicates that this component has an )nvoke )C or that another )C is added $or the purpose o$ correlation o$ )nvokes with -eturn -esults. )$ sent by the originator' the value will be used in the -eturn -esponse (or any o$ the other components" returned. Note that this is separate $rom Transaction )Cs because Transactions can involve more than one )nvoke. 1) Co,+o"e"t ID Le"!t) % The length indicated here is that o$ the )C $ield. This is used because the )C $ield length will vary $rom / $or a ;nidirectional message' to : or . depending on whether the )C represents an )nvoke )C only' or a combination o$ an )nvoke )C and a correlation )C. e) Co,+o"e"t ID$ % )n this $ield there may be an (optional" )C assigned to an )nvoke component. This is not a network re(uirement and' when used' is signi$icant only to the sender o$ the )nvoke. >hen an )nvoke )C is sent' a correlation )C becomes mandatory $or the S# returning components to use the correlation value with any component returned which is in response to that )nvoke. %) T)e 3 e#1$ 0etwee" Co,+o"e"t ID$ a"1 Para,eter I1e"t % er$ 7 )n the ne+t section we will discuss the 7peration *ode $ields which were illustrated in the previous drawing. )n the -eturn -esult *omponent' these $ields are missing entirely. )n the -eturn 8rror *omponent' these $ields are replaced by 8rror *ode )denti$ier' 8rror *ode !ength and 8rror *ode Fields. )n the -e9ect *omponent these $ields are replaced by #roblem *ode )denti$ier' #roblem *ode !ength and #roblem *ode Fields. !) O+erat o" Co1e I1e"t % er % This $ield carries an identi$ier $or the National or $or #rivate T* # Networks. )n the ;.S.' NS) and Eellcore standards are implemented in the National network. #rivate networks may use their own coding internally' but any communications with other networks (e.g. the #STN" must be NS) compatible.

% ,< %

SS7 Fundamentals

)) O+erat o" Co1e Le"!t) % This $ield indicates the length o$ the operation code only. For the National T* # network the value is always , (octets". No such limitation applies to #rivate networks. ) O+erat o" Co1e % 7peration codes are not speci$ied in world wide standards. They are' instead' considered to be implementation dependent. Denerally' they are used to speci$y the operation and how it is to be carried out. 0ost o$ten' they are separated into categories such that one portion o$ the code will indicate a $amily o$ operations while another provides speci$ics. ?) Para,eter Set I1e"t % er % This is a single octet $ield which identi$ies the individual types o$ parameters. For e+ample' this might be a timestamp' digits' or a network identi$ier. k) Para,eter Set Le"!t) % The length o$ the #arameters $ield is variable. )ts actual length is indicated by this $ield. #) Para,eter$ % This $ield contains the actual parameter values. For e+ample' i$ the )denti$ier indicated a timestamp' these $ields would contain grouping o$ octets which would give the year (, octets"' the month (, octets"' the day (, octets"' the hour (, octets"' and the minutes (, octets" all in binary. Following this there might also be $ields e+pressing the di$$erence between local time and Dreenwich 0eridian Time. The term #arameter Set used here re$ers to the $act that #arameters are grouped by speci$ic data types. The e+amples here were all o$ the use o$ the timestamp set. 7thers (such as the digits set" contain data grouped by di$$erent data categories. Not all parameters in a set must be used. 7peration codes can indicate which values are to be selected' thereby creating a #arameter Set which is speci$ic to this component.

III (%). ISUP


The )ntegrated Services Cigital Network ;ser #art ()SCN;#" is usually thought o$ as being composed o$ standards re$erring to switch%to%switch circuit related messaging ()S;#"' )S;# is used throughout the #STN (#ublic Switched Telephone Network" to provide the messaging necessary $or the set up and teardown o$ all circuits' both voice and digital. >ireless networks also make use o$ )S;# to establish the necessary switch connections into the #STN. )n the telephone network )S;# messages $ollow the path o$ the voice circuits. That is' )S;# messages are sent $rom each switch to the switch where the ne+t circuit connection is re(uired. )S;# o$$ers two types o$ services' known as 0a$ ( and S*++#e,e"tar4. Easic Services consist o$ those services employed in the process o$ setting up and tearing down a call. Supplementary Services consist o$ those services employed in passing all messages that may be necessary to maintain and4or modi$y the call. )S;# $unctionality can be $urther broken down into three procedural categories. The $irst o$ these is S !"a## "! Pro(e1*re Co"tro# (S#-*" which directly inter$aces with the services o$ the 0T#. The S#-*' in turn' provides support $or C r(* t S*+er' $ o" Co"tro# (*S*" and $or Ca## Pro(e$$ "! Co"tro# (*#*". The application' which deals with the circuit connection re(uirements o$ the switch' and simultaneously with SS7 signalling' is usually re$erred to as a *all *ontrol application. The drawing below illustrates the architecture o$ )S;# procedures.

% ,A %

SS7 Fundamentals

ISUP Pro(e1*re$

) 0a$ ( Ser' (e$ 7 Ca## Set*+&


)S;# protocol is employed in the process o$ setting up and tearing down a call (re$erred to as Easic Services" and in passing all o$ those messages which may be necessary to maintain and4or modi$y the call (re$erred to as Supplementary Services". For our purposes here we will assume analog lines in use between the connected parties and the telephone company. 7ne o$ the easiest ways to understand )S;# messaging is to $ollow a scenario o$ the process involved in making a simple telephone call. t the beginning o$ the process the calling party li$ts the phone o$$ the receiver. This places a current on the subscriber line inter$ace o$ the local e+change. This is C* signalling. The local company acknowledges the presence o$ that current by sending a dial tone to the calling party. 1aving heard the dialtone' the calling party dials the phone' thereby sending the address (telephone number" o$ the called party to the local e+change. The local e+change waits until all digits have been dialed' and then e+amines the digits to see i$ the called party is local (no area code" or whether the call must be routed through a long distance carrier. )$ the call is long distance' the call will be routed to the long distance carrier through a point%o$%presence ( POP" in the !ocal ccess Transport rea (! T " o$ the calling party. The pre$i+ and subscriber number (last $our digits" will be used in the $irst message (IAM" routed to the distant e+change. The call setup is sent using the )S;# protocol through the SS7 network. The ST# is used to route this message' and beyond that' plays no signi$icant role in setting up the voice circuits. 7nce all o$ this in$ormation has been collected' the originating e+change creates an )nitial ddress 0essage (IAM" and sends it to the intermediate tandem. ll the in$ormation necessary $or the tandem e+change to establish a connection is carried in this IAM. The e+change thus addressed may not be the $inal destination o$ the call. )t may be a tandem being used as an intermediate switch to reach the $inal destination. The local e+change decides how to route the call by re$erence to its trunk routing tables. These tables de$ine the voice circuits to use in the establishment o$ an end%to%end circuit with the least number o$ hops. The local e+change uses the circuit in$ormation to create a call setup message which is sent to this $irst voice connection e+change. The tandem e+change acknowledges receipt o$ the IAM by sending an ddress *omplete 0essage (ACM" back to the originating e+change. This indicates that the tandem has reserved a circuit designated $or reservation in the IAM. -eceipt o$ the ACM triggers the originating e+change to send the phone ringing (ringback" tone to the calling party. >hile the intermediate tandem is sending the *0 back to the originating e+change' it can begin setting up the ne+t
% ,7 %

SS7 Fundamentals

circuit between itsel$ and the destination e+change. This is accomplished' once again' through the use o$ an ) 0 sent to the ne+t destination (in this e+ample' the $inal destination". This ) 0 contains the called and calling party addresses that the tandem received $rom the originating e+change. The IAM also speci$ies the signalling method to be used $or this call. For e+ample' i$ the ) 0 speci$ies the use o$ )S;# protocol $rom e"17to7e"1' then the call will be set up using the )S;# protocol. )n the unlikely event that the e+change does not support )S;# to this destination' or that there are no $acilities available that use )S;#' the call will be re9ected and a reason $or the re9ection will be returned to the originating e+change. The ) 0 may speci$y that )S;# is +re%erre1' but not mandatory. )n such a case the call will be set up using )S;# (i$ available" or some other method such as T;# or multi%$re(uency signalling. The IAM may also speci$y that )S;# is re(uired w)ere a'a #a-#e' but that it need not be available all the way. )n such a case' other methods may be employed at intermediate e+changes which cannot provide )S;#. >hen the IAM is received' the destination e+change e+amines the IAM to see i$ it contains an indication o$ $urther in$ormation in subse(uent messages. >hen a determination is made that all in$ormation is present' the e+change checks the line o$ the called party to determine its availability. )$ that line is busy' the destination e+change returns a -8! (release" message to the originator' the originating e+change places a busy tone on the calling party?s line and all voice circuits are released. small time lag in the generation o$ the ringback to the calling party?s phone ensures that ringback is never heard be$ore a busy tone. >hen the destination e+change $inds that the called party?s number is not busy' it sends an address complete message (ACM" back to the intermediate e+change. The intermediate e+change has already acknowledged the originating e+change with an ACM' and' thus' needs only to maintain its part o$ the voice circuit. The destination e+change sends an alerting signal to the called party?s phone and rings the phone. No $urther messaging occurs until the ringing phone is li$ted $rom the cradle. >hen that happens' the destination e+change senses C* loop current on its subscriber inter$ace. The destination e+change then sends an answer message (ANM" back to the intermediate e+change. The $inal leg o$ the voice circuit is immediately cut through when the intermediate e+change receives the ANM. The intermediate e+change now sends an N0 to the originating e+change which begins the cut through o$ the entire voice circuit to its destination and the call is connected. 7nce the call has been connected' no $urther SS7 messaging is necessary until either party goes on hook. >hen the phone is hung up' the e+change local to that phone sends a REL (-elease" to the ne+t e+change. That e+change releases its circuitry and sends a -8! to the ne+t switch and an RLC (release *omplete" to the previous switch to acknowledge that the circuitry has been released. The messages involved in setting up the call (both primitives and SS7 messages" are shown in the ne+t drawing and the messages discussed therea$ter. @ IAM % )nitial ddress 0essage % This is an )S;# message containing all the in$ormation necessary $or a switch to establish the connection. @ ACM % ddress *omplete 0essage % This message serves as the acknowledgment o$ an ) 0. The *0 indicates that the switch sending it has reserved the circuit designated $or reservation in the ) 0. -eceipt o$ the ACM triggers the originating e+change to send the phone ringing (ringback" tone to the calling party.

% ,. %

SS7 Fundamentals

ISUP Nor,a# Ca## S(e"ar o

@ ANM % nswer 0essage % >hen the called party picks up the phone' the destination e+change senses C* loop current on its subscriber inter$ace. s a result' that e+change sends an answer message (ANM" back to the intermediate e+change. 8ach switch in the circuit completes is portion o$ the circuit and returns an N0 to the ne+t switch closer to the calling party. >hen the N0 reaches the originating e+change' the $inal leg o$ the voice circuit is immediately cut through and the call is connected. @ REL M -elease % This message is sent $irst by the e+change sensing that the phone was hung up. 8ach subse(uent e+change sends it own -8! to the ne+t e+change and initiates release o$ the circuitry. @ RLC % -elease *omplete % 8ach e+change receiving an REL sends an RLC message back to acknowledge receipt o$ the -8! and to indicate that circuit release has been initiated.

) ISUP Me$$a!e Str*(t*re$&


*ompared to T* # messages' )S;# messages are really (uite simple. The reason is that )S;# messaging deals with the relatively rigid re(uirements o$ circuit connection and control. This means that the data is easily structured in the $orm o$ parameters and that these parameters can then be put together in a myriad o$ ways to achieve any result necessary. )S;# messages' then' do not re(uire the tight protocol control o$ a T* # message. The drawing shown here illustrates the )S;# message in a message packet. This time' the

% ,G %

SS7 Fundamentals

ISUP Me$$a!e 3or,at

packet is borne along using the services (and the protocol control" o$ only the 0T#.

7a) Hea1er Port o" 3 e#1$&

Hea1er Port o" 3 e#1 3or,at

a7 ) De$t "at o" Po "t Co1e % This $ield indicates the signalling point that is the destination o$ the message. Signalling #oint code resembles telephone numbers to some e+tent. The NS) standard breaks the 6oning o$ a national network into three components. )n order' they are called Network' Network *luster' and Network *luster 0ember. s with telephone numbers' each successive group represents a smaller hierarchical (not necessarily geographical" area with the $inal number representing an individual node. The NS) standards provide that each group is represented by a byte. The **)TT standards provide $or a code o$ three groups (named di$$erently" with the $irst and third group being represented by 5 bitsF and the middle group being represented by a byte. >e?ll take a look at both types when we later e+amine message packets. a7 ) Or ! "at o" Po "t Co1e % This $ield indicates the signalling point that is the originator o$ the message. a7 ) SLS Co1e % The Signalling !ink Selection code is the mechanism by which the links in linksets are assigned tra$$ic. )$ the S!S is rotated (and it normally is" messages are directed to successive links with the result that loads are shared across the links o$ a linkset' or even across the linksets o$ a combined linkset. 1owever' in those instances in which se(uential delivery o$ messages must be guaranteed' the rotation o$ the S!S can be stopped $or the duration o$ the message trans$er and all messages will be delivered on the same link. a7 ') Tr*"k CIC Co1e % The Circuit Identi$ication Code is a two octet $ield used to provide identi$ication o$ the speci$ic trunk circuit used to establish the voice (or data" connection path.
% 5/ %

SS7 Fundamentals

*ircuit )denti$ication *odes are mapped to actual voice4data channels. The mapping results in both sides o$ the circuit agreeing on a common code (the *)*" to identi$y the shared circuitry.

7-) Para,eter$ Port o" 3 e#1$&


-7 ) Me$$a!e T4+e % This $ield indicates one o$ more than si+ty )S;# message types. 8ach 0essage Type is associated with its own sets o$ parameters. This means that some message types make use o$ all three types o$ parameters while others (such as U"e>* ++e1 CIC" use no parameters at all. Still others use only 7ptional #arameters.

Para,eter Port o" 3 e#1 3or,at

-7 ) Ma"1ator4 3 2e1 Para,eter$ % s the name implies' this group consists o$ parameters which are o$ a $i+ed length $or each speci$ic message type. The message type dictates whether these are used' and i$ used' the speci$ic parameters that apply. The message type de$ines the parameter and' there$ore' no indicators o$ length are re(uired. For e+ample the ) 0 ()nitial ddress 0essage" uses Nature o$ connection indicators' Forward call indicators' and *alling #arty?s category in this portion o$ the message. -7 ) Ma"1ator4 /ar a-#e Para,eter$ % These parameters are o$ variable length. There$ore' throughout the variable part there are single octet pointers to show where a parameter begins. There are also length indicators to indicate the length o$ the parameters. The combination o$ pointing to the beginning o$ a parameter and indicating its length makes the parameter readable to the receiving side. 7nce again' the actual parameters used are dependent on message type. -7 ') O+t o"a# Para,eter$ % These parameters are also related to message type' but the sender may decide whether or not they are used. )n many instances' the Fi+ed and 2ariable length types also can be included in the 7ptional grouping. To make these readable' pointers to the beginning o$ the parameter are provided along with length indicators. )n addition' optional parameters are provided with a name $ield.

) ISUP T ,er$&

% 5& %

SS7 Fundamentals

ISUP T ,er$ ( )

% 5, %

SS7 Fundamentals

ISUP T ,er$ ( )

% 55 %

SS7 Fundamentals

ISUP T ,er$ ( )

% 5: %

SS7 Fundamentals

I/. SIGNAL UNIT AND MESSAGE 3ORMAT ) S !"a# U" t 3or,at$&


The SS7 uses only three packets (signal units" in transmission. The ma9ority o$ the $ields are identical in each o$ these units. 7a) Me$$a!e S !"a# U" t (MSU)& The arrow in the below drawing indicates the direction o$ the data $low. This indicates the se(uence in which the unit is assembled by the transmitting 0T# and also the se(uence in which the receiving 0T# sees the data.

Me$$a!e S !"a# U" t 3or,at

a) T)e 3#a! % )n the SS7 protocol the key to making the correct assumptions about the data lies in knowing e+actly what data is being read. That' in turn' lies in knowing e+actly where the data lies within the signal unit. This is so important that the 0T# can take no chances that it might start to read the data at some point other than the actual start o$ the signal unit. To avoid this' a uni(ue eight bit code is placed at the beginning o$ the unit. This code is a byte with 6eros at either end and si+ ones in the middle. There may be considerable data in the remainder o$ the signal unit. )t is very likely that a 6ero $ollowed by si+ ones and a 6ero will occur elsewhere in the signal unit. To ensure that there are no $alse $lags' the sending 0T# reads through the signal unit. 8ach time it reads $ive ones in a row' it inserts a 6ero. This is a procedure known as bit stu$$ing. The 0T# then attaches the $lag and transmits the message. t the receiving end' the 0T# sees the $lag and begins its reading o$ the signal unit. 8very time it sees $ive ones' it removes the $ollowing 6ero. )n this way' the con$usion o$ multiple $lags is eliminated' and the signal unit ends up restored to its original $orm.

% 5< %

SS7 Fundamentals

The original standards (**)TT" provided $or the use o$ a second $lag to be used at the end o$ the signal unit. The later NS) standard saw no value in this' and instead' supports the use o$ a single $lag at the beginning. )n this way a single $lag becomes both the beginning o$ one unit and the ending o$ the previous one. The result is a shorter signal unit and a higher rate (signal units per time period" o$ transmission. -) 0a(kwar1 Se>*e"(e N*,-er % From this point on' we e(uate the term backward with receiving node and the term $orward with transmitting node. )t is the receiving node which makes changes to this value (the ESN". )t does so when it is returning a signal unit to positively acknowledge the receipt o$ a unit or to make a negative acknowledgment o$ a unit. )n the latter case' the 0T# will usually also re(uest that the message be retransmitted. This will become clearer when we e+amine the Forward Se(uence Number. () 0a(kwar1 I"1 (ator 0 t % 7nce again' it is the receiving node that will make changes to this value (the E)E". )t will change this bit to the opposite o$ Forward )ndicator Eit in the same signal unit being used to send a negative acknowledgment back to the transmitting side. The transmitting side reads this changed bit state as a re(uest $or retransmission. 1) 3orwar1 Se>*e"(e N*,-er % This time it is the transmitting node which makes changes to the value. The transmitting 0T# maintains a numbering resource which provides cyclical and se(uential values in the range o$ 6ero to one hundred twenty seven (/ % &,7". )t places the value into this $ield and then simultaneously transmits the signal unit and copies it into a retransmit bu$$er. This provides the receiving side with a value by which to re$er to the signal unit. e) 3orwar1 I"1 (ator 0 t % 7nce again' it is the transmitting node that deals with this value. 7n transmission it ensures that the Forward )ndicator Eit matches the Eackward )ndicator Eit. Error Corre(t o" 7 The standards support two methods o$ correcting errors. )n one (the Pre'e"t 'e C4(# ( Retra"$, $$ o" Error Corre(t o" 0ethod" the messages are retained on the transmitting side until acknowledged. Curing every break in transmission (no messages to be sent" the transmitting side simply retransmits all messages that have not yet been acknowledged. This method is generally used only $or satellite transmission. The other method is the 0a$ ( Error Corre(t o" 0ethod. Now that we have seen the $irst $ive 0essage Signal ;nit (0S;" $ields' we?ll $ollow this method through its se(uence to see what both the transmitting 0T# and the receiving 0T# need to do to ensure the delivery o$ good messages. First the transmitting side uses its numbering resource to provide a value $or the Forward Se(uence Number. Then it transmits the 0S; and sends a copy to its retransmit bu$$er. The receiving 0T#' o$ course' monitors the incoming message. )$ no error occurs' it will send an acknowledgment be$ore it has seen the entire series o$ &,. signal units (/ % &,7" applied by the transmitting side. This needs to be done because the transmitting side will not apply a value to a new message i$ that number matches a value in its retransmit bu$$er. )$ this occurs' the transmit node simply stops transmitting and the 0T# indicates a link $ailure. For the a(k"ow#e1!,e"t' the 0T# uses whichever signal unit it would normally be returning to the transmitting node. Since the 0T# normally reports link status periodically' this would commonly be a !ink Status Signal ;nit (!SS;". To make the

% 5A %

SS7 Fundamentals

acknowledgment' the receiving 0T# takes the Forward Se(uence Number $or the last valid signal unit and copies it to the Eackward Se(uence Number $ield o$ the signal unit it is returning. )t leaves the Eackward )ndicator Eit alone so that the Forward and Eackward )ndicator Eits are returned as received (both the same". >hen the signal unit arrives at the transmitting side' it is recogni6ed as an acknowledgment without re(uest $or retransmission. The transmitting side now simply deletes $rom its retransmit bu$$er all signal units having the value o$ the Eackward Se(uence Number and all prior Se(uence Numbers. >hen the receiving 0T# detects an error' it once again uses the ne+t planned return signal unit and copies the Forward Se(uence Number o$ the last valid signal unit into the Eackward Se(uence number. This time' it toggles ($rom & to / or $rom / to &" the Eackward )ndicator Eit so that it is no longer the same as the Forward )ndicator Eit. >hen this unit is received at the transmitting node' it recogni6es the une(ual Forward and Eackward )ndicator Eits as a re(uest $or retransmission. )t deletes all signal units with a value e(ual to or less than that o$ the Eackward Se(uence Number and begins retransmission o$ all signal units beginning with the one that is one higher than that o$ the Eackward Se(uence Number. Transmission is halted until the retransmission is complete. Thus the 0T# uses the $irst $ive $ields o$ the 0essage $or the error correction. %) Le"!t) I"1 (ator % This $ield may seem a little strange. For one thing' it doesn?t do what it was originally intended to do. The original intention was $or this $ield to indicate the number o$ octets o$ signi$icant data which $ollowed it. That data was located in the Service )n$ormation 7ctet and the Signalling )n$ormation Field. Signalling System H7 allows up to ,7, octets o$ data in the Signalling )n$ormation Field alone. The Signalling )n$ormation Field is where the signi$icant data that represents the actual message is placed. 7$ what use is a length indicator that can only represent values $rom / to A5I The answer is that as a length indicator it is o$ little use' but as an identi$ier o$ Signal ;nit type it is very help$ul. Signalling System H7 uses three types o$ signal units. The least comple+ signal unit is the 3 ## I" S !"a# U" t (F)S;" which contains no message or service data beyond the !ength )ndicator. There$ore' a length indication value o$ / identi$ies the Fill )n Signal ;nit. nother' slightly more comple+ signal unit is the L "k Stat*$ S !"a# U" t (!SS;". )t has a !ink Status Field which can contain one or two octets. There$ore' a length indication value o$ & or , identi$ies the Fill )n Signal ;nit. Finally' the Me$$a!e S !"a# U" t' as we have said' may contain much more data in the $ields $ollowing the !ength )ndicator than can be counted using si+ bits. )n that case' the counter simply goes as $ar as it can. )$ more than A: octets are $ound' the value stays at A5 (/ to A5 range". The Signalling )n$ormation Field will never have less than , octets o$ data. Taken with the Service )n$ormation 7ctet' that means that the length indication will always be more than , i$ the signal unit is an 0S;. !ength )ndicator N < 3 ## I" S !"a# U" t !ength )ndicator N 5 or 6 L "k Stat*$ S !"a# U" t !ength )ndicator O 6 Me$$a!e S !"a# U" t !) S+are % From the drawing you can see that the spare is simply a two bit $ield. )ts only purpose' generally' is to keep the entire signal unit to an even number o$ octets. 8ach $ield which is not an octet (FSN' ESN" has its counterpart which brings the number to eight (F)E' E)E". The spare becomes the counterpart $or the si+ bit !ength )ndicator. This is particularly help$ul at speci$ic

% 57 %

SS7 Fundamentals

times. For e+ample' when the 0T# is aligning (or restoring" a link' it sends Fill )n Signal ;nits and looks $or errors. >ith no signi$icant data' the total data must be evenly divisible by eight. single bit (or ,' 5' :' <' A or 7" lost or gained will change this no%remainder division and the unit can be ad9udged invalid. )) S !"a## "! I"%or,at o" O(tet % The Signalling )n$ormation 7ctet is apportioned into sub% $ields o$ $our bits' two bits and two bits. The drawing below illustrates this $ield.

Ser' (e I"%or,at o" O(tet )7 ) Ser' (e ID % The Service )C $ield provides in$ormation about the type o$ message being sent.

This provides level 5 with the necessary in$ormation $or message distribution. *odes are provided $or the user parts with the e+ception o$ T* #. The reason $or this is that T* # messages are always appended to S**# messages. n S**# code along with a ;N)TC T message type indicates a T* # message. 7ther codes are provided when the message is a signalling network message dealing with management messages or with testing and maintenance messages. )7 ) S*-7Ser' (e 3 e#1 7 This $ield contains bits $or the indication o$ network in which the message sender is deployed. )t also provides a spare $or network dependent usage.

% 5. %

SS7 Fundamentals

P Priority &ield % The standards provide $or two bits to be used as a spare. >hen operating within a national network' these bits are provided $or national use. >e have re$erred to it here as a priority $ield' but that is only one possible use. The two bits o$ the $ield can allow messages to be categori6ed in order o$ importance. The standards allow $or this prioriti6ing to be network dependent. The categories shown in the drawing are simply those in use at some SS#s (Service Switching #oints". *ategories $or other types o$ nodes would o$ course' be di$$erent. )$ message priorities are implemented' they can be used to provide the 0T# with an identi$ication o$ the messages that can be discarded at each congestion level. Thus' at the lowest congestion level' the 0T# can be implemented to discard the least signi$icant messages. t each successively higher level o$ congestion' the 0T# can discard increasingly important messages. The standards' however' do not allow $or the discard o$ network management messages. * Network #ndicator &ield % This indicator is used by signalling message handling $unctions to determine which version o$ the ;ser #arts to employ. >here a node operates signi$icantly within the con$ines o$ a national standard (such as NS)" this indicator will be set $or National. ) S !"a## "! I"%or,at o" 7 )t is the message $ield o$ the 0essage Signal ;nit. )n the ;.S. this $ield never contains less than , octets o$ data' nor does it ever contain more than ,7, octets. This allows the transmission o$ ,A< octets o$ in$ormation along with a label. There may also be additional housekeeping in$ormation. Such in$ormation may be used at level : to link in$ormation blocks together (among other possible uses".

S !"a## "! I"%or,at o" 3 e#1

' Routing (a"el - )n the drawing there are two routing labels depicted. )t should be made clear that both o$ these routing labels will not be $ound in the same 0S;. The attempt made in the

% 5G %

SS7 Fundamentals

drawing is to illustrate an NS) routing label and a **)TT ()T;%TS" routing label. The one to be $ound in an 0S; will depend' o$ course' on which standard is being employed by the node sending the message. For NS) networks the routing label is identi$ied as being the $irst <A bits in the S)F (Signalling )n$ormation Field". NS) provides $or a network location to be identi$ied by a ,: bit code. The $irst eight bits o$ this code is given the name o$ Network )C. Signalling #oint *odes' in general' $ollow the general schema introduced by the telephone numbering scheme known as the North merican Numbering #lan. )n that plan' each succeeding value generally represents a smaller geographical area (area code' e+change" until the last number represents an individual phone line. For the SS7' the distinction is hierarchical rather than geographical. That is the network identi$ier identi$ies a network to which a point code belongs. This can be a code indicating a broad general network' or it can be a reserved code used to indicate that the identity is assigned to a group o$ commonly administered nodes which' together' do not (uali$y $or $ull network status. >ith one o$ these reserved codes used as the network identi$ier' an indication is given that the ne+t value (Network *luster" will be used to identi$y the network to which the node belongs. Thus the code can be used to identi$y smaller networks within a larger network and' $inally' narrow down the addressing (Network *luster 0ember" to address a single signalling point. The only reserved Network *luster 0ember is the empty byte (eight 6eros" which is used to identi$y an ST#. The standards reserve this value $or ST# usage' but they don?t compel its use. >hat that means is that when you see a node with a Network *luster 0ember value o$ 6ero' you know that the node is an ST#. 1owever' when you see a node with a Network *luster 0ember code o$ other than 6ero' there is no guarantee that the node is not an ST#. The remaining $ield is the S !"a## "! L "k Se#e(t o" Co1e. Ci$$erent S**# services re(uire di$$erent handling o$ this code. S**# services break down into $our categories. These services are connectionless or connection oriented' each o$ which is $urther categori6ed as re(uiring or not re(uiring in%se(uence delivery. The 0T# level 5 normally rotates the S!S and each new code will direct the message to a new available link. >hen the S**# re(uires it' the 0T# stops rotating the code and each new message is directed to the same link' thereby guaranteeing in%se(uence delivery. For the NS) routing label' the only thing remaining to be identi$ied is the $ield labeled ;ser Cata. This is the actual message. The letter n represents the total amount o$ data in the S)F. Since the routing label is always <A bits (7 octets"' n%7 represents the si6e o$ the message (total octets in the $ield' less the routing label". The di$$erences in the **)TT ()T;%TS" routing label are relatively minor. The names o$ the signalling point code $ields are changed (Zone instead o$ Network )C' Network instead o$ Network *luster' and Signalling Point #) instead o$ Network *luster 0ember". The )T;%TS standard also elected to allot a di$$erent number o$ bits to two o$ the three portions o$ the code (5% .%5 instead o$ .%.%.". Fewer bits were also allotted to the S!S (: instead o$ <' and the NS) &GGA standard supports . bits $or the S!S". nd' $inally' the computation o$ the message si6e based on the total data in the S)F changes because only $our octets need to be subtracted $rom the total data. 7ne remaining $ield in the 0S; is the C)e(k 0 t$ $ield. This is an algorithm that allows the 0T# to determine whether the number o$ bits transmitted is the same as the number o$ bits received. The last $ield is the trail $lag. The trail $lag is not used in the ;.S. There$ore' in NS) networks the 0S; ends with the *heck Eits.

% :/ %

SS7 Fundamentals

7-) L "k Stat*$ S !"a# U" t (LSSU)& s the name implies' the !ink Status Signal ;nit is used by the 0T# to provide status in$ormation to the signalling points at either end o$ the link. These indications are placed in the one or two octet $ield called the !ink Status $ield. Status indications relate to the current mode under which the 0T# is monitoring the link. -ecall that our earlier discussions about $unctionality mentioned two error rate monitors. The $irst was the 8-0 ( lignment 8rror -ate 0onitor" employed during link alignment. t the beginning o$ the alignment process (while in the Out%o$%alignment state" the 0T# provides a status indication o$ 7. >hen the alignment has proceeded to the proving period' the status o$ N ($or Normal proving period" or the status o$ 8 ($or Emergency proving period" is sent. Ey the way' as long as we are on the sub9ect o$ Normal vs. 8mergency alignment you may have wondered how the selection is made. The node itsel$ does the selection' either as re(uired by the application or by pre%con$iguration. The $ormat o$ the !ink Status Signal ;nit is illustrated below.

LSSU 3 e#1 3or,at

>hen a link is $irst powered up' and be$ore the 7 status indication' the 7S ( Out%o$% Service" status is sent. The same status is sent any time the link can neither receive nor send 0S;s $or any reason other than a #rocessor 7utage. The sending o$ these status indications is somewhat o$ an interactive process on the part o$ the 0T#s at either end o$ the link. For e+ample' i$ the 0T# at one end o$ the link has an N proving status it will send N. )$ the other end sends an 8 status' the side with the Normal status will not change that status. 1owever' it will not cause a delay in the link realignment by per$orming the longer proving period. )t will' instead' per$orm the shorter 8 proving period to be consistent with the realignment being per$ormed by the other side. 8ven as it does so' it still sends N. >hile the 0T# is monitoring normal transmission (using the S;8-0 or Signal ;nit 8rror -ate 0onitor" it will send a status o$ E (link 0usy". That same 0T# stops sending either positive or negative acknowledgments. The 0T# at the other end o$ the link sets a long timer to await the clearance o$ the congestion. )t also resets the e+cessive delay o$ acknowledgment timer every time it receives (periodically during the congestion period" a new indication o$ E. status o$ #7 is sent when the 0T# detects a problem in delivering messages to levels 5 or :. The same 0T# then begins message discard. >hen the opposite 0T# receives #7' it in$orms level 5 and places Fill )n Signal ;nits on the link. 7() 3 ## I" S !"a# U" t (3ISU)& )$ you pull a link out o$ the link port' the 0T# will detect a $ailed link. This is due to the $act that the 0T# continues to monitor Signal ;nits and now has no data with which to deal.

% :& %

SS7 Fundamentals

>hile nodes are communicating' there are many times when no messages are being sent. )$ there were no data to read' the 0T# would have to conclude that it had detected a $ailed link. For this reason' the 0T# cannot allow any time period in which the link carries no data. The transmitting 0T# $ills all such blanks with 3ill In Signal Units. The $ormat o$ the Fill )n Signal ;nit is illustrated below.

3ISU 3 e#1 3or,at

The 0T# can continue to monitor $or valid $lags' octet integrity and package si6e. )t simply $inds no data to send to level 5. 7n the transmitting side' no changes are made. The FSN applied to the last message simply reappears in each F)S; until a new message is sent. There is another time when the F)S; becomes handy. Curing the alignment procedure the 0T# uses the 8-0 to monitor the link. ;ntil the link is placed in an )n Service state' there are no messages being sent. There$ore' the 0T# puts F)S;s on the link and monitors them during the proving period.

ACRONYMS
ACD Automatic all !istributor ACG Automatic ode "apping ACM Address omplete Message AFR Automatic #le$ible %outing AHT A&erage 'andle Time AIN Ad&anced Intelligent (etwork AIOD Automatic Identified )utward alling AMA Automatic Message Accounting AMATPS AMA Teleprocessing *+stem AMP AI( Maintenance Parameter ANI Automatic (umber Identification ANM Answer Message ANSI American (ational *tandards Institute API Application Programming Interface ARP Address %esolution Protocol ASA A&erage *peed of Answer ASN.1 Abstract *+nta$ (otation 1 ASE Application *er&ice ,lement ATB All Trunks -us+ ATP Acceptance Test Procedure AUI Attachment .nit Interface
% :, %

SS7 Fundamentals

AW Admin /orkstation BAF -ellcore AMA #ormat BBG -asic -usiness "roup BCC -ellcore lient ompan+ BCD -inar+ oded !ecimal BCI -ackward all Indicators BCLID -ulk alling Line Identification BCM -asic all Model BER -asic ,ncoding %ules BG -usiness "roup BGID -usiness "roup Identification BRI -asic %ate Interface BSN -ackward *e0uence (umber CAC arrier Access ode CAP ompetiti&e Access Pro&ider CC all ontrol CCA all ontrol Ad1unct CCITT onsultati&e ommittee on International Telephone 2 Telegraph CCS ommon hannel *ignalling CDAR ustomer !ialed Account %ecording CDP ustomi3ed !ialing Plan CDPD ellular !igit al Packet !ata CED all ,ntered !igits CGB ircuit "roup -locking Message CGU ircuit "roup .nblocking Message CIC arrier Identification ode CIDS alling Identit+ !eli&er+ 2 *uppression CLID alling Line I! CLLI ommon Language Location Identification CMC ellular Mobile arrier CMS 4AT2T5*6 all Management *+stem CNAB all (ame !eli&er+ -locking CO entral )ffice COT ontinuit+ Test Message CPC all Processing ontrol CPE ustomer Premises ,0uipment CPG all Progress Message CR onditional %e0uirement CRA ircuit %eser&ation Acknowledgment Message CRM ircuit %eser&ation Message CS-1 apabilit+ *et 1 CSC ircuit *uper&ision ontrol CSU hannel *er&ice .nit CT all T+pe CVR ircuit 7alidation %esponse Message CVT ircuit 7alidation Test Message

% :5 %

SS7 Fundamentals

DACS !igital Access ross- onnect *+stem DCE !ata ircuit ,0uipment DMP !e&ice Management Protocol DN !ialed (umber DNIS !ialed (umber Identification *er&ice DP !ial Pulse DPC !estination Point ode DSVD !igital *imultaneous 7oice and !ata DTE !ata Terminal ,0uipment DTMF !ial Tone Multifre0uenc+ DUP !ata .ser Part DXI !ata ,$change Interface EA ,0ual Access EADAS ,ngineering 2 Administration !ata Ac0uisition *+stem EADASNM ,A!A* (etwork Administration EAEO ,0ual Access ,nd )ffice EAMF ,0ual Access Multifre0uenc+ EBCDIC ,$tended -inar+ oded !ecimal Interchange ode EDP ,&ent !etection Point EIA ,lectronic Industries Association EIR ,0uipment Identification %egister EKTS ,lectronic 8e+ Telephone *er&ice EMS ,&ent Management *er&ice EO ,nd )ffice ESN ,lectronic *erial (umber EXM ,$it Message FCS #rame heck *e0uence FISU #ill-in *ignal .nit FRAD #rame %ela+ Access !e&ice FRL #acilit+ %estriction Le&el FUNI #rame .ser (etwork Interface FSD #eature *pecific !ocument FSN #orward *e0uence (umber FSS #acilit+ *electi&e *er&ice FTE #ull Time ,0ui&alent FTP #ile Transfer Protocol FX #oreign ,$change GN "eneric (ame GRS "roup %eset Message GSC "atewa+ *witching enter GSM "roup *pecial Mobile GTT "lobal Title Translations GTV "lobal Title 7alue GUI "raphical .ser Interface HDLC 'igh Le&el !ata Link ontrol HFC '+brid #iber oa$ial able

% :: %

SS7 Fundamentals

HLR 'ome Location %egister IAM Initial Address Message IC Intere$change arrier ICP Intelligent all Processing ICR Intelligent all %outer IDLC Integrated !igital Loop arrier ISP Intermediate *er&ice Part IDT Integrated !igital Terminal INR Information %e0uest Message IP Intelligent Peripheral or Internet Protocol IPC Interprocess ommunication IPI Intelligent Peripheral Interface ISP Intermediate *er&ice Part ISPC International *ignalling Point ode ISDN Integrated *er&ices !igital (etwork 4.sed with P,6 ISDNUP I*!( .ser Part ISUP I*!( .ser Part 4.sed with ircuit )riented6 IWX Interworking #unction IXC Intere$change arrier LAA Longest A&ailable Agent LAN Local Area (etwork LATA Local Access 2 Transport Area LI Length Indicator LSSU Link *tatus *ignal .nit LSSGR LATA *witching 2 *ignalling "eneric %e0uirements LOCREQ Location %e0uest MAP Mobilit+ Application Part MBG Multi-switch -usiness "roup MCC Mobile ountr+ ode MIN Mobile Identification (umber MGW Mini-"atewa+ Protot+pe MLHG Multi-line 'unt "roup MMI Man-Machine Interface MSC Mobile *witching enter MSISDN Mobile *tation I*!( (umber MSU Message *ignal .nit MUX Multiple$er MTP Message Transfer Part NAA (e$t A&ailable Agent NCA (on- all Associated NCP (etwork ontrol Point NDC (ational !estination ode NIC (etwork Interface ontroller NNI (etwork (ode Interface NPA (umbering Plan Area NSP (etwork *er&ices Part

% :< %

SS7 Fundamentals

ODBC )pen !atabase onnecti&it+ OE )ffice ,0uipment OMAP )perations 2 Maintenance Application Part OPC )rigination Point ode OPI )pen Peripheral Interface OS )perations *+stem OSI )pen *+stems Interface OTGR )perations Technolog+ "eneric %e0uirement PBX Pri&ate -ranch ,$change PCS Personal ommunications *er&ices PG Peripheral "atewa+ PIC Point In all PIM Peripheral Interface Manager PPP Point-to-Point Protocol PRI Primar+ %ate Interface PROFREQ Profile %e0uest PSN Alternati&e to P*T( 4Public *witched Telephone (etwork6 PSTN Public *witched Telephone (etwork REGNOT %egistration (otification RISC %educed Instruction *et omputing ROUTREQ %outing %e0uest SANC *ignalling Area (etwork ode SCCP *ignalling onnection ontrol Part SCP *er&ice ontrol Point SDLC *+nchronous !ata Link ontrol SEP *ignalling ,ndpoint SF *tatus #ield SI *er&ice Indicator SIF *ignalling Information #ield SIO *ignalling Information )ctet SLC *ignalling Link ode SLIP *erial Line Internet Protocol SLS *ignalling Link *election SLP *er&ice Logic Program SMDS *witched Multimegabit !igital *er&ice SMS *er&ice Management *+stem SN *er&ices (ode SNA *+stems (etwork Architecture SNM *ignalling (etwork Management SNMP *imple (etwork Management Protocol SNT *ignalling (etwork Testing SP *ignalling Point SPC *ignalling Point ode SPID *er&ice Pro&ider Identifier SPM *ignalling Point Manager SQL *tructured 9uer+ Language

% :A %

SS7 Fundamentals

SPR *ignalling Point w:* P %ela+ SPRC *ignalling Procedure ontrol SRTC *ub %ate hannel SS7 *ignalling *+stem ; SSF *ub-*er&ice #ield SSN *ub *+stem (umber SSP *er&ice *witching Point STP *ignalling Transfer Point SU *ignal .nits TA Technical Ad&isor+ TC Transaction apabilities TCAP Transaction apabilities Application Part TCM Tra&eling lass Mark TCP IP Transmission ontrol Protocol:Internet Protocol TDM Time !i&ision Multiple$er TDP Trigger !etection Point TLDN Temporar+ Local !irector+ (umber TR Technical %eference TUP Telephone .sers Part UDP .ser !atagram Protocol UDT .nitdata UDTS .nitdata *er&ice VAD 7oice Acti&ated !ialing VANC 7oice Acti&ated (etwork ontrol VLR 7isitor Location %egister VPN 7irtual Pri&ate (etwork VRU 7oice %esponse .nit WAN /ide Area (etwork WATS /ide Area Telephone *er&ice XUDT ,$tended .nitdata XUDTS ,$tended .nitdata *er&ice

% :7 %

Вам также может понравиться