Optmal Call Routng n VoIP Costas Courcoubets Department of Computer Scence Athens Unversty of Economcs and Busness 47A Evelpdon Str Athens 11363, GR Emal: courcou@aueb.gr Costas Kalogros Department of Computer Scence Athens Unversty of Economcs and Busness 47A Evelpdon Str Athens 11363, GR Emal: ckalog@aueb.gr Rchard Weber Department of Pure Mathematcs and Mathematcal Statstcs Unversty of Cambrdge Wlberforce Road Cambrdge, CB3 0WB, UK Emal: rrw1@cam.ac.uk Abstract We evaluate from a VoIP provder s pont of vew possble strateges for selectng PSTN gateways and/or sgnalng servers (perhaps through ENUM) under blockng uncertanty. Each alternatve can have dfferent prce for a termnatng VoIP call and dfferent blockng probablty. A customer placng a call to the VoIP provder s mpatent and may hang-up f the delay n settng up the call s large. Possble strateges for completng the call nclude routng the call to the gateway whch generates maxmum expected revenue from the call, or smultaneously to a set of gateways chargng dfferent prces possbly, a strategy called forkng. Forkng creates a race between the gateways who are tryng to termnate the call and thus reduces the average call setup delay, but at the expense of ncreasng the average termnaton cost and the overall load of the system. For the above strateges we nvestgate the trade-off between the average proft generated by a call and call setup delay. We obtan under several assumptons the optmal set of gateways to whch to send a call request. We also dscuss the effects of forkng on the overall call blockng probablty of the system and the ncentves for gateways and VoIP provders to deploy t. Our results suggest that f forkng s enabled then t can be advantageous for gateways to ntroduce a small sgnalng charge. I. INTRODUCTION VoIP ncorporates all forms of call setup, voce transmsson and call management usng Internet Protocol (IP) technology. Tradtonally, VoIP provders were concerned about the qualty characterstcs of the voce packets; for example delay and jtter. We argue that call setup phase s more mportant snce call routng choces can affect a) the probablty that a call wll not be blocked due to lack of resources somewhere on the sgnalng path, b) the QoS that packets wll experence, and c) call setup delay (or Post Dal Delay [8]) whch s the tme untl the caller hears a rngtone. Besdes, new networkng protocols mtgate tradtonal qualty problems by makng t easer to assgn hgher prorty to real-tme traffc. The recent trend for convergence of dfferent access network technologes, market deregulaton and emergence of dualmode end-user devces allow the same destnaton to be reached by alternatve paths and nterfaces. Furthermore, new protocols, lke SIP (Sesson Intaton Protocol) and ENUM (telephone NUmber Mappng), gve VoIP provders the ablty to devse advanced call routng polces n order to acheve ther goals of proft maxmzaton, hgh qualty servces, etc. SIP s a very popular sgnalng protocol, mplementng servce abstracton and allowng flexble value chans and busness models. ENUM s a complementary protocol whch descrbes a) a way to convert tradtonal telephone numbers nto SIP addresses for nstance and b) a dstrbuted, DNS-based archtecture for answerng ENUM queres from compatble end-user devces and sgnalng servers. ENUM comes n two flavours; a publc one where end users opt-n and a closed one that s operated by peerng VoIP provders as part of ther nfrastructure. For example, n VoIP calls towards a PSTN or moble destnaton, a provder s routng polcy would specfy how to choose from a large set of avalable telephony gateways. These network devces allow the nteroperaton of Internet and crcut swtched networks for placng and recevng calls. But, a call to the same destnaton may be performed wthout the need for a telephony gateway, f only a) the provder has ssued an ENUM query and b) the destnaton can be found n ENUM. The stuaton s more complcated f we consder the fact that large VoIP provders allow ncomng calls only from peers, and that telephony gateways can support only a lmted number of smultaneous calls. Another example of nterestng routng polces nvolves calls between users n crcut swtched networks. Telephony gateways have the ablty to bypass toll charges (especally for long dstance and nternatonal calls) and thus are attractve for provders. If the call partes are geographcally dstant then two gateways may have to be used; one for each call leg. But agan, gateway operators and telephony provders must have busness relatonshp for a call to be accepted. Furthermore, each alternatve can have dfferent performance n terms of call setup delay and not all users are wllng to wat for whatever tme t wll take. In ths paper for smplcty we refer to the specfc case of VoIP calls beng termnated to the PSTN, but our results apply to the wder set of cases mentoned earler. In our model we have aggregators and gateway operators. A gateway operator s a busness entty that owns gateways. An aggregator s an entty whose customers place VoIP calls, actng as an Internet Telephony Servce Provder (ITSP) or Inter-eXchange Carrer (IXC). Hs role s to fnd a route for an ncomng call that wll establsh the connecton and meet customer expectatons. Ths route may nvolve several gateways or be on net. The reason
2 we use that term (nstead of ITSP) s to capture the fact that ncomng calls to an aggregator can be from retal customers as well as wholesale provders (.e. other aggregators) 1. So, n a smple case, end-users become customers of aggregators for makng VoIP calls, and aggregators sgn contracts wth gateway owners for establshng calls to PSTN. Aggregators try to optmze the offerngs to customers by maxmzng ther average proft whle keepng call setup tmes low (a substantal factor n VoIP call qualty). Smlarly, gateway owners try to maxmze the utlsaton of ther equpment by servng calls that brng revenues. Note that gateway operators must do careful capacty plannng snce hgh capacty gateways are costler and have to rent trunks (.e. n multples of T1/E1). In ths paper we evaluate from an aggregator s pont of vew ts possble strateges for selectng gateways and/or sgnalng servers (perhaps through ENUM) under blockng uncertanty. A customer placng a call to the VoIP provder s mpatent and may hang-up f the delay n settng up the call s large. Hence t may not be optmal to route the call to the cheapest gateway f ts blockng probablty s hgh; for f the call s blocked then routng to another gateway would ncrease the call setup delay and the rsk that the customer hangs up. Possble strateges for routng calls nclude routng to the gateway generatng maxmum expected revenue from the call, or smultaneously to a set of gateways, a strategy called forkng. We note that lttle research work has been done on aggregators routng strateges. Most researchers have focused on qualty of servce metrcs,.e. [6], [9]. Closer to our work s [16], [12], n whch smple routng polces are evaluated wth the am of mnmzng call blockng probablty, and [4] where proposed strateges try to balance network effcency (call rejecton probablty and conversaton QoS), economc effcency (prortze callers wth hgh utlty) and aggregator s welfare maxmzaton. Last two papers above are based on perodc nformaton about state of own gateways learned through TGREP (Telephony Gateway REgstraton Protocol or TRIP-GW), and thus are restrcted to cooperatve settngs (.e. a sngle aggregator that owns all gateways). The reason s that TRIP (Telephony Routng over IP) and other standardzed nter-doman call routng protocols do not advertse dynamc gateway state nformaton across VoIP provders, so routng decsons are made under blockng uncertanty. [12] concludes that more calls are accepted when are drected proportonally to the number of free crcuts of a gateway, rather than all drected to the less utlzed one. The authors of [16] perform smulatons to evaluate the performance of a system composed of two VoIP provders that route calls on each other s gateways only f ther own gateways are known to be blocked. They fnd that when TGREP message propagaton delay ncreases (.e. 125ms) call blockng probablty can ncrease sgnfcantly, snce nfor- 1 By actng as an ntermedary IXC (at a wholesale level), an aggregator can also solve the complex bllng and chargng ssues that arse n such an envronment by offerng a one shop soluton to VoIP customers. Ths s actually a basc reason why IXCs carry bllons of call mnutes each year and allowed VoIP to take off. maton becomes stale and calls do not always follow a backup route. Fnally, [4] proposes that gateways should perform congeston prcng and an aggregator should choose the sngle one to use by consderng ther free capacty and network path characterstcs, as well as caller s wllngness to pay. However, these schemes rely on truthful report of free voce ports and thus are not drectly applcable for compettve markets. Forkng creates a race between the provders who are tryng to termnate the call and thus reduces the average call setup delay and the blockng probablty; but t s at the expense of ncreasng the overall load on the system (for dealng wth congeston ssues n SIP see [15]), and the average termnaton cost, snce an expensve gateway may wn the race. For the above strateges we nvestgate the trade-off between the average proft generated by a call and call setup delay. We obtan under certan assumptons an aggregator s optmal routng strategy n general and dynamc scenaros, snce our model s not specfc to PSTN gateways. Ths strategy s of a very nterestng form: start wth the lowest prce gateways, and then, as tme passes and these turn out to be blocked, add more expensve gateways to the race to ncrease the probablty that the call setup wll be successful before the customer hangsup. We emphasse that the problem of optmal team effort buldng that we solve has a wder applcablty than to VoIP systems. Somewhat smlar types of the problem have been consdered n [3], [10] and [14], amongst others. In these papers t s supposed, for example, that a customer wshes to source an tem and can ask several provders for t. Provders have ndependent nventores and so ether the customer ends up wth surplus tems (ncreasng hs cost), or he can choose the best of the tems suppled. Fnally, we dscuss the effects of forkng on the overall call blockng probablty of the system and the ncentves for gateways and VoIP provders to deploy t. An ndvdual call may proft from forkng snce that gves t a greater probablty of beng connected, but t ncreases the load on the system by reservng a crcut at each gateway durng the sgnalng phase. Ths ncreases the blockng probablty of other ncomng calls. We show, n the context of a specfc example, that the optmum amount of forkng for the overall system of aggregators and gateways s not a Nash equlbrum. It can be turned nto an equlbrum by havng the gateways charge the aggregators a sgnalng cost. The paper s organzed as follows. In Secton II we descrbe our model of aggregators and gateways. In Sectons III and IV we analyze the optmal polcy for routng to a sngle gateway, and to multple gateways, respectvely. In Secton V we consder forkng and ts ncentve problem, and then end wth our conclusons. II. THE MODEL Let us consder a specfc destnaton prefx of the PSTN and let A = {A 1,A 2,,A k } denote the set of aggregators and G = {G 1,G 2,,G n } the set of gateways that receve and termnate calls to the above destnaton number area. PSTN Gateway G j has fnte crcuts and for each successful
3 termnaton of a call charges a termnaton prce p j (whch we take as fxed for smplcty). Dfferent gateways may have dfferent prces due to dfferent geographcal placement and nterconnecton agreements for termnatng VoIP calls as well as dfferent blockng probabltes. Thus, G j earns revenue wth a rate equal to p j tmes the rate at whch t successfully termnates calls. In a broader verson of the model, G would also nclude sgnalng servers that block calls f ther polcy suggests accept ncomng calls only from peers. To model call blockng, we assume that a PSTN gateway wll block a call f t has run out of crcuts due to excessve demand, and ths happens wth probablty b j. Furthermore, we assume that core PSTN network s over-provsoned and thus the only bottleneck ponts for termnatng calls of a gven user are the gateways. For ths to hold we make the assumpton that a destnaton has a neglgble probablty of beng busy each tme a call to ths destnaton s made through the VoIP system. In our model blockng at a gateway can only occur because avalable crcuts are exhausted, not because of protocol message processng overload. An extenson of ths may nclude congeston effects due to protocol processng. In ths case the SIP proxy that handles sgnalng (processes the varous protocol messages) on behalf of the gateway may add extra delays to the processng of the call by the gateway, or even reject new call setup requests f the above load becomes very large. For smplcty, we assume that a gateway (through ts proxy server) can process nfntely fast all protocol messages that t receves. The tme t takes to set up a call s crucal for the revenue model of an aggregator snce ts customers may be mpatent. ITU [1] recommends that average call setup delays for local, natonal and nternatonal calls through PSTN should not exceed 3, 5 and 8 seconds respectvely. 2 A busness customer for example does not lke to wat too long for a call to be setup and may hang up, and f ths occurs frequently, he wll choose another VoIP provder. We model such a customer to have patence of duraton T. He s only charged, an amount p 0, f the call s successfully placed before hs patence expres. In ths case the aggregator obtans a net revenue of r j = p 0 p j f the call was routed through gateway G j. In our dscusson so far we have provded the motvaton for an aggregator to optmze ts strategy n selectng amongst the gateways to whch t wll route ncomng calls so as to maxmze ts total proft, gven the fact that there are delays nvolved n termnatng the call, nexpensve gateways may be more lkely to block, and users placng calls may hang up f these delays become large. Here, we try to answer the followng schedulng problem: Gven an ncomng call from a customer, whch set of 2 Smlarly, by addng the delay of each mesage exchanged durng a GSM call setup gves us on average 3.58 seconds, whle usng SIP n (Terrestral) UMTS may need even more tme due to possble retransmssons and channel erros attrbuted to the wreless medum. [2]. Besdes, there s always the case that more than one gateways may have to be used n order to termnate a sngle call, lke n the case of PSTN-IP-PSTN calls. gateways should an aggregator choose and n what tme sequence should the requests be sent to these gateways n order to maxmze ts expected total reward from the call? The nformaton avalable to the aggregator may nclude for each gateway, n addton to the termnaton charges and the blockng probabltes, the varous delays nvolved (whch may depend on the partcular gateway). We also assume that the aggregator knows from hstorc nformaton the parameter of the dstrbuton of the tme T that a customer wll wat for the destnaton rngng sgnal before hangng up due to mpatence. Instead of answerng ths queston n ts generalty, we consder specfc cases by makng the approprate assumptons. In order to do that we wll nvestgate two broad sets of strateges: (a) tryng one gateway at a tme, and (b) tryng multple gateways for the same call. The latter s possble wth SIP by usng a procedure known as forkng. III. TRYING ONE GATEWAY AT A TIME Ths case occurs f an aggregator hasn t confgured hs proxes to support forkng, and a new gateway wll be tred only f the prevous one reported beng blocked. Let r denote an aggregator s reward f a call s placed through gateway G, and suppose that gateways are ndexed so that average reward decreases as (1 b 1 )r 1 (1 b n )r n. (1) Suppose that tme moves n dscrete steps t =1, 2,...Ths s a smplfed case n whch all gateways take the same tme to report back to the aggregator that the setup of the call s successful or that they are blocked. We wsh to maxmze the expected revenue obtaned by the call gven that the customer who placed t wll hang up after a determnstc tme T. Then the strategy of the aggregator depends on the condtonal blockng probabltes. If the probablty that gateway s blocked at tme s > t gven that t was found blocked at tme t s the same as the steady state probablty b, then one should keep tryng gateway 1. A more sophstcated varaton of the prevous strategy would be to add some delay between redals. When an aggregator sends a call setup request to the gateway t nspects whether t s blocked or not. Snce there are message delays between the aggregator and the gateway, there s a mnmum tme τ between such consecutve nspectons due to the above message delays. Gven the fact that each tme the gateway fnds the gateway blocked t ncreases the call setup tme by at least τ, t may be sensble to delay the next nspecton. By dong that the probablty the gateway s n the blocked state wll decrease and be closer to the steady state probablty. Hence by addng some delay between nspectons, the average tme to fnd the preferred gateway not blocked may decrease. We show the surprsng result that addng such delays s never a good dea, for any value of the mnmum delay between nspectons τ. Ths property s proved n a more general context, concernng the nspecton of an arbtrary state of a reversble contnuous tme Markov chan.
4 Consder any rreducble contnuous-tme Markov process on a dscrete state space. Suppose we nspect such a system at tme 0 and fnd t to be n some state. For example, ths mght be the state n whch all servers are busy. We now wsh to renspect at tmes t, 2t, 3t,..., untl the frst tme W = kt that we fnd the system s not n state. Between our nspecton tmes the Markov process process carres on as usual. The am s to mnmze E[W ], subject to t τ. Mght we wsh to wat for some tme t>τ, so as to ncrease the probablty that the state s not at the next nspecton pont? In general, ths queston s open. We provde a proof for the specal case that the Markov process s reversble. The answer s that t = τ s optmal. For example, we mght model the number of free crcuts n a gateway as a brth death process. Any brth-death process s reversble, and so one should renspect n such a system as fast as possble. Theorem 1 If a contnuous-tme Markov process s reversble then t s optmal to renspect as fast as possble. Thus under the constrant that t τ we should take t = τ. Proof. Let p(t) be the probablty that the process s n state at tme t, gven that t was n state at tme 0. Then f we renspect every t unts of tme we frst fnd t not n state at tme W, where Consder E[W ]=t + p(t)e[w ]= [ d t ] dt 1 p(t) t 1 p(t). = 1 p(t)+tp (t) (1 p(t)) 2. Kngman [11] states that for a reversble Markov chan p(t) s a completely monotone functon,.e., representable as p(t) = e at df (a) for some dstrbuton functon F. Theorem 1 follows as 1 p(t)+tp (t) = [ e at 1 at ]e at df (a) 0 and e at 1 at 0 for all at. IV. TRYING MULTIPLE GATEWAYS SIMULTANEOUSLY Another way to ncrease the probablty of placng a call successfully s to use forkng,.e., try more than one gateway smultaneously. In ths case, assumng that each gateway wth free crcuts s equally lkely to be the one that connects the call, the aggregator wll obtan the average reward amongst those gateways that he tres and whch turn to be unblocked. Note that n the case of forkng, by delayng call requests sent to partcular gateways the aggregator may control better the expected charge and obtan a hgher average reward. Ths s because the frst gateway that receves the call request has a bgger chance to be the wnner n the resultng race. Hence t may be benefcal to delay the calls to gateways wth lower reward. In ths secton we analyze the basc forkng polcy n whch calls are sent to all selected gateways smultaneously, whle n Secton V we show that forkng s advantageous to aggregators. We analyze frst a case of equal gateway response tmes and determnstc T, then a case of dfferent response tmes and exponentally dstrbuted T. Fnally, we provde an optmal control formulaton for a more abstract verson of the dallng problem, an optmal team formaton problem. These results pont to the followng ntutve polcy: an aggregator should frst try the most proftable gateways and f blocked, as tme becomes more crtcal augment the team of competng gateways by ncludng less proftable ones. A. The sngle perod problem Suppose tme s dscrete,.e., gateways take the same tme of τ =1, to report back to the aggregator the outcomes of ther call setup attempts. Consder frst the case n whch the caller hangs up at tme T =1, so that there s only one chance to connect the call. Let I be dstrbuted as a bnomal B(1, 1 b ) random varable. That s, I =0and I =1wth probabltes b and 1 b respectvely. The expected reward obtaned from attemptng to place the call through a set of gateways S s [ g (S) =E S I ] r, (2) S I where we adopt the conventon that E [ 0 0] =0. Ths expected proft s the average of the sum of all rewards from gateways that were nvted and were found non-blocked. It s desred to choose S to maxmze g(s). We shall prove varous results about ths optmzaton problem under one or more of the followng condtons, the second of whch we have met as (1). b 1 b n (3) (1 b 1 )r 1 (1 b n )r n (4) r 1 r n (5) Note that (3) (4) mply (5). A specal case n whch all these hold s (1 b 1 )r 1 = =(1 b n )r n and r 1 r n. Ths case can be motvated by the noton that f there are many aggregators tryng to place calls then they wll tend to send ther traffc to a gateway where (1 b ) r s greatest and the effect of ths wll be to ncrease the blockng probablty b of the cheapest gateways. So n equlbrum we mght suppose that the (1 b ) r are all equal. Theorem 2 Suppose that (3) (5) hold. Then g(s) s maxmzed by S amongst the collecton of sets L = {1}, {1, 2}, {1, 2, 3},...,{1, 2, 3,...,n}. (6) Proof. Consder a set S and, j S wth <j,letc =1 b, R = k S I kr k, N = k S I k, S = S + {} and S j =
5 S + {j}. Then g(s ) g(s j ) [ ] R + r =(b b j )g(s)+c E c j E N +1 ( [ ]) R =(b b j ) g(s) E N +1 [ ] 1 +(c r c j r j )E. N +1 [ ] R + rj N +1 The rght hand sde s nonnegatve, by assumptons (3) (4) and the fact that g(s) =E[R/N] E[R/(N + 1)]. Sots as good to add to S as add j to S. Ths mples that g(s) s maxmzed by some S L. It s nterestng to compare our problem to one of Chade and Smth [5], who am to maxmze the expected maxmum reward (rather than average reward) of the avalable tems amongst a quered set S, mnus a cost that s ncreasng n the sze of S,.e., [ ] l(s) =E max {I r } c( S ). S For example, a student mght have nformaton on unverstes rankngs and acceptance rates, and wsh to choose a set to whch to apply so as to maxmze the expected value of the hghest ranked unversty that accepts hm, mnus a cost of makng the applcatons. Chade and Smth comment that l(s) s a submodular set functon and that maxmzng such a functon s NP-hard n general (see [13]). However, l(s) can be maxmzed by a margnal mprovement algorthm that runs n polynomal tme of O(n 2 ). By contrast, f we do not assume that (3) (5) hold, then g(s) s not maxmzed by a margnal mprovement algorthm, or any other effcent algorthm that we have been able to dscover. We suspect the problem s NP-hard. To llustrate the dffculty, consder {r 1,r 2,r 3 } = {0.97, 0.88, 0.87} and {b 1,b 2,b 3 } = {0.36, 0.07, 0.02}. Then {c 1 r 1,c 2 r 2,c 3 r 3 } = {0.6208, 0.8184, 0.8526}. It turns out that g(s) s maxmzed by S = {1, 3}. Ths s not a set of largest (1 b )r,orof largest r. We now turn to the problem of dentfyng whch of the sets n L s optmal when (3) (5) hold. Let g j = g ({1, 2, 3,...,j}). (7) The greatest g j s partcularly easy to fnd because g j s unmodal, ncreasng up to a maxmum and then decreasng n j. In fact, we show n the followng theorem that the sequence {g j } s quasconcave, whch means g j mn{g j 1,g j+1 }, (8) for all j {2,...,n 1}. Ths mples that the sequence {g j } s unmodal. Theorem 3 Suppose (5) holds. Then {g 1,g 2,...,g n } s a quasconcave sequence. Proof. If {g j } were not quasconcave, we would need g j > g j+1 and g j+2 >g j+1 for some j 1. LetS = {1,...,j}, and as prevously, let R = k S I kr k and N = k S I k. For any l, m, defne Then K l = R + r l N +1, K lm = R + r l + r m N +2 G l = E[K l ], G lm = E[K lm ]. g j >g j+1 = g j >G j+1 g j+2 g j+1 > 0 = b j+1 (G j+2 g j )+c j+1 (G j+1,j+2 G j+1 ) > 0 Combnng these we fnd that we need b j+1 G j+2 + c j+1 G j+1,j+2 >G j+1. The assumpton of (5) that r 1 r n means that K j+1 K j+2 and K j+1 K j+1,j+2. Ths means that the above cannot hold, snce the left hand sde s at most G j+1. Thus the sequence {g j } s quasconcave. B. Forkng wth dfferent gateway response tmes Let us consder the contnuous tme problem n whch once an aggregator sends a call request to a gateway, t takes exponental tme wth parameter λ j for a response of the gateway to reply that call has been connected or that the gateway was found blocked. Agan, reward s obtaned only f the call s connected wthn an tme T that s exponentally dstrbuted wth parameter β, and suppose that I j s dstrbuted as a bnomal B(1, 1 b j ) random varable. In ths case the optmal polcy s statonary. Ths s n contrast wth the nonstatonary polces that are optmal when T s not exponentally dstrbuted, lke n Secton IV-C below. If we are only able to ask each gateway once, then the expected return s [ j S h(s) =E I ] jλ j r j β + j S I. jλ j If we may retry the gateways, and ther blockng probabltes are statonary, then we seek a set S to maxmze f(s), where j S f(s) = λ j [(1 b j ) r j + b j f (S)] β + j S λ. (9) j Note that due to the statonarty of the soluton, a gateway that s found blocked wll be nvted agan, unless the caller has abandoned the call. Solvng (9) we obtan j S f(s) = λ j (1 b j ) r j β + j S λ j (1 b j ) = S α r β + S α, (10) where α j = λ j (1 b j ). We have seen that the maxmzaton of g(s) s a dffcult problem unless condtons (3) (5) hold. However, the maxmzaton of f(s) s easy, as the followng theorem shows.
6 Theorem 4 If (5) holds then the f-maxmzng set must be n L. Proof. Suppose the theorem s not true and that the unquely optmal set s S j = S + {j} whch ncludes j but not, where <j, and thus r r j.letr(s) = k S α kr k and α(s) =β + k S α k. Then f S j s to be unquely optmal we need f(s j ) > max{f(s j ),f(s)}. The rght hand sde s least when r = r j, so we requre r(s)+α j r j α(s)+α j > max { r(s)+α r j + α j r j, r(s) α(s)+α + α j α(s) }. A lttle routne algebra shows that ths s mpossble. The frst nequalty above requres r(s) r j α(s) > 0, whereas the second requres r(s) r j α(s) < 0. By a smlar argument as n Theorem 3 one can prove a result about the quasconcavty of f over ncreasng sets n L. C. An optmal control problem We now consder a model that s more abstract, but whch generalzes Secton IV-B by permttng the tme T at whch the caller hangs to have a more general dstrbuton than exponental wth parameter β. Suppose that the aggregator knows that all the gateways are unblocked and wshes to choose, as a functon of tme, when to ask each gateway to start attemptng the call setup. Once asked, the tme that gateway takes to set up the call s exponentally dstrbuted wth parameter μ. In order that gateways wth greater r should have a greater probablty of beng the one to connect the call, we suppose that the aggregator can sgnal to each gateway that at tme t he should attempt the connecton only at some fracton u (t) of hs maxmum rate μ, where u (t) 1. Ths may be mpractcal, but we shall shortly see that under certan condtons the optmal soluton s a practcal one, n whch u (t) swtches from 0 to 1 at a sngle tme,.e., the tme at whch the aggregator asks gateway to jon others n also tryng to set up the call. Let x(t) be the probablty that no gateway has connected the call by tme t. Then ẋ(t) = μ u (t)x(t). Consder a problem of maxmzng the expected reward obtaned by tme T (the tme at whch a customer gves up, and whch for now we take to be determnstc). T μ r u (t) x(t) dt. 0 Ths smple control problem can be solved by Pontryagn s Maxmum Prncple. The Hamltonan s H = = x(t) μ r u (t)x(t) η(t) μ (r η(t))u (t). μ u (t)x(t) Ths s maxmzed by takng u (t) =0or 1 as r <η(t) or > η(t) respectvely. Also, η(t ) =0(by a transversalty condton and fact that x(t ) s unconstraned) and η(t) = H/ x = (r η(t))u (t)μ. So η(t) s nonnegatve and decreasng n t. Assumng once more that r 1 r n ths mples that the set of gateways that should be attemptng to set up call at tme t, namely S(t) ={ : u (t) =1}, s always of the form {1,...,j(t)}, where j(t) s nondecreasng n t. Suppose now that T has a dstrbuton wth p.d.f. g(t) and c.d.f. G(t). We are seekng to maxmze T μ r u (t) x(t) dt g(t ) dt 0 = 0 0 μ r u (t) x(t)(1 G(t)) dt, where the equalty follows from ntegraton by parts. Thngs are exactly the same as before, but now we have u (t) =0 or u (t) = 1 as r < ξ(t) or r > ξ(t), respectvely, where ξ(t) = η(t)/(1 G(t)). The set S(t) s of the form {1,...,j(t)}, but we no longer have the fact that j(t) s monotoncally nondecreasng. However, j(t) s nondecreasng f the hazard rate of T, namely h(t) = g(t)/(1 G(t)), s nondecreasng (as s most realstc n practce). To see ths, note that η(t) = μ (r (1 G(t)) η(t))u (t). ξ(t) =h(t)ξ(t) μ (r ξ(t))u (t). (11) In the specal case of T that s exponentally dstrbuted wth parameter β, one can check that the soluton s η(t) =θe βt S, where ξ(t) =θ = max μ r S β + S μ. More generally we can argue that ξ(t) must be nonncreasng n t. We do ths for a slghtly dfferent problem. Suppose that for a gven T 0 we are seekng to maxmze T0 0 μ r u (t) x(t)(1 G(t)) dt. Ths s the expected reward we can obtan by tme T 0, where 1 G(T 0 ) > 0. Suppose there s a t for whch ξ(t) > 0. Snce h(t) s nondecreasng, t follows from (11) that for small ɛ we must also have ξ(t + ɛ) > 0. Thus,fξ(t) ever reaches a pont where t s ncreasng then t s ncreasng everywhere followng that pont. However, ths s nconsstent wth ξ(t) > 0 and ξ(t 0 )=0. Havng reached the concluson that ξ(t) s nonncreasng n t, we conclude that S(t) ={1,...,j(t)}, where j(t) s monotone nondecreasng n t.
7 V. IS FORKING DESIRABLE? When aggregators deploy a forkng strategy, each gateway that receves a call setup request must reserve a crcut to the PSTN before requestng the PSTN to termnate the call. Ths crcut cannot be released and used by other calls unless the gateway hears from the PSTN that the destnaton s busy or the call termnates after a successful establshment. Thus forkng mposes a cost on gateways whch s not drectly charged to aggregators. An ndvdual call setup may beneft by forkng, but t creates a negatve externalty to the rest of the system. Ths suggests the queston: Is forkng desrable? How do we avod the neffcent equlbrum resultng from a Tragedy of the commons? In ths secton, we wll try to gve some prelmnary answers for a few smple scenaros. A. The case of one aggregator As n [4] for the case of Probablstc Selecton Based on Utlzaton, and due to the system complexty (we cannot use Erlang B formula) let us suppose there are just two gateways and one aggregator (or a set of aggregators wth common polcy). Call traffc to the aggregator s Posson wth rate λ. The aggregator randomly selects calls to use forkng, resultng narateλ f λ of forked calls (a call setup s sent to both gateways). Non-forked calls occur wth rate λ nf = λ λ f and are sent to one of the two gateways at random wth probablty 1/2. Calls are processed by the gateways as follows. Each call goes through two phases: frst, a sgnalng phase and second, f sgnalng s successful, a conversaton phase. Durng each phase one crcut s reserved from the gateway that s nvolved. We assume that both phases have exponentally dstrbuted duratons, wth parameters μ 1 and μ 2 respectvely. A forked call s not blocked when one of the two gateways has a free crcut. If both gateways have a free crcut then because of the race the servce tme of the above sgnalng phase s the mnmum of two ndependent exponental random varables, each wth parameter μ 1, and so s exponental wth parameter 2μ 1. In our model we assume that when the race ends, the gateway who s the wnner notfes the aggregator who n turn notfes the other gateway to abandon the sgnalng phase. For ths system we show the effect of forkng on the blockng probablty of calls that fork, on calls that do not fork, and on the average call blockng probablty of the system. We observe that as the percentage of forked calls ncreases, the blockng probabltes of calls that fork and of calls that do not fork both ncrease. But snce the forked calls have a much smaller blockng probablty, the overall effect s to decrease the blockng probablty of the average call. In Fgure 1 we dsplay results for a system of 2 gateways wth c =4crcuts per gateway. It shows the effect on the blockng probabltes of the duraton of the sgnalng phase, as we have sold lnes for μ 1 =4lyng above dotted lnes for μ 1 =20. The calculatons have been done by computng the steady-state probabltes of the Markov process. It s represented wth a state-space of (x, y 1,y 2,z 1,z 2 ), where x s the number of forked calls for whch setups are beng attempted by both gateways, y s the number of calls for whch setups are beng attempted only by gateway, and z s number of conversatons n progress through gateway. There are the constrants x + y + z 4. Ths gves a 371 state Markov process. We can make the followng observatons. () The average blockng probablty s mnmzed by maxmzng forkng to 100%. (But ths happens because there are only two gateways; as we shall see shortly, n an example wth 6 gateways, the optmal amount of forkng may be less than 100%.) A forked call affects the system n two ways. On the one hand t produces sgnalng work for both gateways. On the other hand, the tme that t spends n the setup phase s less n each gateway, due to the race. Forkng also gans because forked calls are blocked only f both gateways are blocked, whereas nonforked calls are blocked f one gateway s blocked. E.g., suppose that p 0,p 1,p 2 are the statonary probabltes wth whch 0, 1 or 2 gateways are blocked. Then forked calls are blocked wth probablty p 2, whereas unforked calls are blocked wth probablty p 2 + 1 2 p 1. () Snce forked calls are greedy, they more effectvely use crcuts from the gateways. Non-forked calls block more because they are less flexble. These results are supported by those from a dscrete event smulator for more realstc scenaros, and whch where ommted due to space constrants [7]. 0.20 0.15 0.10 0.05 forked calls unforked calls average calls 0 1 2 3 4 5 6 Fg. 1. Blockng probabltes of forked, unforked and average calls as λ f vares from 0 to 6, wth λ f + λ nf =6,andμ 1 =4, μ 2 =2(sold lnes), and μ 1 =20, μ 2 =2(dashed lnes). B. Incentvzng ratonal aggregators to use the socally optmum amount of forkng Let us consder a smple scenaro n whch there are 6 gateways, each wth just 1 crcut. Such gateways can be home equpment partcpatng n fwdout communty. Ths system can be represented as a Markov process wth 75 states and so t s relatvely easy to fnd out what happens under varous forkng polces. Suppose calls arrve at rate λ =1. If a call setup phase s attempted smultaneously by j gateways then ths phase lasts a tme that s exponentally dstrbuted wth parameter jμ 1. The conversaton phase s equally lkely to begn n each of these j gateways, and lasts a tme that s exponentally dstrbuted wth parameter μ 2.Letb k be the call blockng probablty when all arrvng calls are forked to k randomly chosen gateways. Note that because some gateways
8 to whch a call s forked may be blocked, the setup of a call may actually be attempted by less than k gateways. We fnd, that wth λ =1, μ 1 =4, and μ 2 =2, the smallest blockng probablty s obtaned for k =4. It s nterestng that the mnmum s acheved when all arrvng calls are forked to the same number of gateways, rather than, say, some proporton usng k =3and the remander usng k =4. Suppose that the nput traffc s generated by many aggregators. Then both gateways and aggregators are better off when the throughput s maxmzed. However, there s an obstacle to achevng ths. A tragedy of the commons problem arses because an ndvdual aggregator has no ncentve to restrct hs forkng to k =4. The probabltes that hs call wll be blocked f he forks t to 1, 2, 3, 4, 5, or 6 gateways are 0.1261, 0.0388, 0.0192, 0.0097, 0.0045, and 0.0029, respectvely. Thus, he wll wsh to fork to all 6 gateways. If all aggregators do ths then the blockng probablty ncreases from 0.0097 to 0.0418. One way to ncentvze the aggregators to choose a forkng parameter less than k =6s to requre an aggregator to pay a charge γ 0 to each unblocked gateway to whch he forks a call. So f an aggregator forks hs call to k gateways, and j of these are unblocked, then he makes revenue r jγ 0 f j 1, and0fj =0. Suppose all calls are forked to k gateways. Let m k be the mean number of unblocked gateways that begn attemptng a call setup. Assume that all gateways charge the same amount p per call connected, and the aggregator has a proft per call connected of r = p 0 p. Thus hs revenue per call that he attempts to place s R k =(1 b k )r m k γ 0, where b k s the blockng probablty when all calls are forked to k gateways. For the data of ths example: R 1 =0.8889r 0.8889γ 0 R 2 =0.9776r 1.7556γ 0 R 3 =0.9902r 2.6287γ 0 R 4 =0.9913r 3.5043γ 0 R 5 =0.9868r 4.3833γ 0 R 6 =0.9582r 5.2813γ 0 If we take γ 0 [0.0005, 0.0011 ]r then we nduce an optmal amount of forkng snce R 4 > max{r 1,R 2,R 3,R 5,R 6 }. Suppose r = 10 and γ 0 = 0.007. The revenue per call s then 9.668, whch exceeds the 9.582 that s acheved at the equlbrum of k = 6, nduced by γ 0 = 0. The gateways are also better off snce wth γ 0 = 0.007, m 4 = 3.5043, b 4 = 0.0087, and b 6 = 0.0418, ther revenue s ncreased by (1 b 4 )p + m 4 γ 0 (1 b 6 )p =0.0245 + 0.0031p per arrvng call, relatve to what they would have obtaned wth γ 0 =0. One can check that k =4s the only stable pont n the game that results as each aggregator attempts to optmze hs forkng strategy n response to the forkng strategy adopted by others. In the followng matrx R j s the revenue obtaned by forkng a sngle call to j gateways when all other calls are beng forked to gateways. The greatest entry n each row s shown n bold. Note that, j =(4, 4) s the only equlbrum pont. Furthermore, when gateways have avalable crcuts they always nform the aggregator that they process the call, so they cannot le afterwards about ther state when they realze that the destnaton was busy. Gateways lyng that are blocked do not beneft as long as ther average proft from a successfully termnated call s greater than γ 0. R = 8.827 9.752 9.800 9.750 9.689 9.627 8.717 9.653 9.772 9.744 9.690 9.631 8.701 9.576 9.718 9.725 9.682 9.627 8.700 9.504 9.635 9.668 9.659 9.615 8.705 9.436 9.522 9.546 9.561 9.574 8.741 9.378 9.380 9.328 9.271 9.213 VI. CONCLUSIONS In ths work we formulated a model for routng calls n VoIP. We analyzed the optmal server selecton strateges of the VoIP provders under blockng uncertanty by consderng the tradeoff between call setup delay and termnaton charge when more than a sngle gateway s nvoked to termnate the same call (the case of forkng ), as well as when forkng s not supported by an aggregator. Fnally, we analyzed the consequences of forkng and showed wth an example that a tragedy of the commons problem can arse because ndvdual VoIP provders have the ncentve to fork more than s optmal for the system. Our results suggest that f forkng s enabled then t can be advantageous for gateways to ntroduce a small sgnalng charge. Acknowledgement Ths research project s co-fnanced by E.U.-European Socal Fund (80%) and the Greek Mnstry of Development- GSRT (20%). We lke to acknowledge Ben Roberts for contrbutng n the proof of Theorem 3. REFERENCES [1] ITU-T Recommendaton I.352, Internatonal Telecommuncaton Unon, Tech. Rep., 1993. [2] A Comparson Between GERAN Packet-Swtched Call Setup Usng SIP and GSM Crcut-Swtched Call Setup Usng RIL3-CC, RIL3-MM, RIL3-RR, and DTAP, Nortel Networks, Tech. Rep., 2000. [3] L. d. Boer, G. v. Djkhuzen, and J. Telgen, A Bass for Modellng the Costs of Suppler Selecton: The Economc Tender Quantty, The Journal of the Operatonal Research Socety, vol. 51, no. 10, 2000. [4] M. Caesar, D. Ghosal, and R. Katz, Resource Management for IP Telephony Networks, IWQoS, 2002. [5] H. Chade and L. Smth, Smultaneous Search, Econometrca, vol. 74, no. 5, pp. 1293 1307, 09 2006. [6] R. Cohen and G. Nakbly, A traffc engneerng approach for placement and selecton of network servces, n INFOCOM, 2007, pp. 1793 1801. [7] C. Courcoubets, C. Kalogros, and R. Weber, Optmal Call Routng n VoIP, Tech. Rep., 2009, see http://nes.aueb.gr/users/ckalog.html. [8] T. Eyers and H. Schulzrnne, Predctng Internet Telephony Call Setup Delay, n IPTel 2000. [9] A. Har, V. Hlt, and M. Hofmann, Intellgent Meda Gateway Selecton n a VoIP network, Bell Labs Techncal Journal, pp. 47 58, 2005. [10] S. P. Ketchpel and H. Garca-Molna, Compettve Sourcng for Internet Commerce, n ICDCS 98, 1998. [11] J. Kngman, Markov Transton Probabltes. II: Completely Monotonc Functons. Z. Wahrschenlchketstheor. Verw. Geb., vol. 9, 1967. [12] K. Kumaran and A. Sahoo, Modelng and Performance Analyss of Telephony Gateway REgstraton Protocol, n LCN 2007, pp. 575 582. [13] L. Lovasz, Submodular Functons and Convexty, A. Bachem, M. Grotschel, and B. Korte, Eds. Berln: Sprnger, 1982. [14] O. Madan, Effcent Informaton Gatherng on the Internet, n FOCS 96. Washngton, DC, USA: IEEE Computer Socety, 1996, p. 234. [15] M. Ohta, Overload Protecton n a SIP Sgnalng Network, Internatonal Conference on Internet Survellance and Protecton, p. 11, 2006. [16] M. Schlesener and V. Frost, Performance Evaluaton of Telephony Routng over IP (TRIP), IPOM 2003, pp. 47 53.