Telecommunications network with automatic calculation of a polling time -instants table

Abstract: Method for the efficient polling of queues of unknown length, by the generation of a polling table. Using one or more queue characteristic values for the various queues, the polling sequence of the various queues is calculated. Using one or more of said queue characteristic values, the time duration for polling each queue is calculated, taking a margin factor parameter into consideration. Using the polling times per queue obtained in this way and the switchover time, the relative polling time instants are calculated. Finally, using a start time parameter, the absolute polling time instants are calculated and written into the polling table. The polling table can be calculated once at initialisation or else recalculated periodically. The method is in particular applicable when using a mediation (2) to poll call records from subscriber exchanges (1) for the purpose of providing detailed invoices by a "billing centre" (3).

Description: A. BACKGROUND OF THE INVENTION The invention relates to a telecommunication network, comprising a mediation centre and a number of network stations, the mediation centre executing consecutive polling sessions, during which data queues in those network stations, comprising data elements, are polled in accordance to a polling table Such a network is known from [1]. The disclosed network traffic management system (NTMS) provides centralized and integrated operations, administration and maintenance support to a switched telecommunications network. To detect and identify network overload, the NTMS collects data by polling switches. Polling is executed every five-minute period, collecting traffic counts, and every 30-second period, collecting discrete (event) information, so there is made use of a fixed time schedule. For the collection of rather large and unpredictable amounts of data a more adaptive schedule has to applied. A theoretical method to establish such schedule is known from reference [2] . The method presented there encompasses a number of steps in which consecutively using the queue characteristic values for the various queues, such as the instantaneous or average queue size, queue growth, polling time per element and switchover time between two queues to be polled consecutively, the polling frequency per queue is calculated; using the polling frequencies per queue calculated in this way, the size of the polling table and the absolute numbers of polling sessions per polling cycle are calculated for each queue; using the absolute numbers of polling sessions of the various queues, the polling sequence of the various queues is established. These steps result in an efficient polling table which is however limited to indicating the sequence of queues to be polled consecutively. Such a polling sequence table is not feasible in a system for the polling of extremely large numbers of 'call records' of telephone conversations (currently approximately 17 million per day in the Netherlands) for the purposes of 'billing' said call records. For example such a system provides for a number of polling elements ('mediations') which connect with various subscriber exchanges at pre-planned time instants and read out and transfer the call records collected there since the last polling session to a 'billing centre'. Until now, such polling time instant tables have usually been produced 'off the cuff' and in a fairly intuitive way. The efficiency of such tables cannot, in fact, be calculated, whilst the construction and later modifications take rather a lot of time. B. SUMMARY OF THE INVENTION The object of the invention is to provide an improvement in constructing polling time instant tables, in particular for polling call records by 'mediations', using the method which is known per se for the 'automatic' construction of polling sequence tables, and extending this to result in a polling time instants table. According to the present invention, the polling time instants table is calculated entirely automatically, taking the queue characteristic values being the queue growth, the polling time per data element and the switchover time (ci) between two queues to be polled consecutively as a starting point, the time which the call records remain in the various queues being optimised to a minimum. As a result, the queues are not unnecessarily long and the call records can be processed as quickly as possible in the 'billing centre'. Thus the invention according to Claim 1 provides a telecommunication network, comprising a mediation centre and a number of network stations, in which first a polling SEQUENCE table is calculated and this is subsequently converted into a polling TIME INSTANTS table which indicates the optimum absolute polling time instants per queue. The steps according to the invention, being presented in the claims, can be executed consecutively or - where possible - simultaneously. Those steps will be presented in detail in paragraph D. The advantage is that the efficiency can be calculated and optimised. A second advantage is that such a polling table can be recalculated in a relatively short time, so that not only can the polling system be controlled by a static polling table calculated once, but in this case, the polling table can be regularly adapted, in particular to the supply of call records in the queues (exchanges) which varies with time. In the recalculation, use can always be made of the latest queue characteristic values which may for example be logged during the latest but one polling cycle or always just before each new polling cycle. The queue characteristic values may relate to a shorter or longer period, for example always to the last polling session or the last n polling sessions. C. REFERENCES [1] Tsiotras, G.D.; Design and performance of a traffic management system for an intelligent network; IEEE INFOCOM ′88 - The Conference on Computer Communications Proceedings. Seventh Annual Joint Conference of the IEEE Computer and Communcations Societies - Networks: Evolution or Revolution? (Cat. No.88CH2534-6), New Orleans, LA, USA, 27-31 March 1988 [2] Boxma, O.J. et al.; Optimization of polling systems; Report BS-R8932, Centre for Mathematics and Computer Science, P.O.Box 4079, Amsterdam, The Netherlands. D. ILLUSTRATIVE EMBODIMENTS Figure 1 shows diagrammatically a number of telephone exchanges 1 which are linked to one another/up by a telephone network - not drawn - by which subscribers connected to the exchanges can call each other. In each exchange 1, a 'call record' is produced for each conversation (or call), in which amongst other things a note is made of the calling subscriber's number, (A-subscriber), the number of the called subscriber, (B-subscriber) and the start and end time of the conversation. This call record is stored in a queue in order to be read out by a 'mediation' 2 at a certain point in time. Thus a queue, (file), of call records is formed in all exchanges 1. These queues are polled by the mediation 2; that is to say the call records are copied to the mediation 2 and are subsequently deleted from the queue. The mediation 2 selects the various queues to be polled according to a pre-calculated schedule which is stored in a polling time instants table in the mediation 2. The call records read out from the queues of the various subscriber exchanges 1 by the mediation 2 are subsequently passed on to the billing centre 3, where they are processed to form itemised call invoices which are sent out to the subscribers, for example once per month. An example will be given below of the calculation results when calculating an efficient polling table for the polling of call record queues in the various subscriber exchanges 1. Four exchanges, the characteristic values of which are shown in Table 1, are used as a starting point. It is pointed out that in practice a number of call records are 'bundled' to form call record files ('CR files'). See TABLE 1. As a first sub-step the polling frequency per queue is calculated using the queue characteristic values for the various exchanges, the average queue growth (a), the polling time per CR file (b) and the switchover time (c) between two exchanges to be polled consecutively. See TABLE 2. As a second sub-step the size of the polling table and the absolute numbers of polling sessions per polling cycle of each exchange are calculated using the polling frequencies per exchange calculated in this way. See TABLE 3. The third sub-step establishes the polling sequence of the various queues using the absolute numbers of polling sessions of the various queues, See TABLE 4a and TABLE 4b. The three sub-steps above form the first step of the method according to the present invention, which was summarised as follows in the preceding pages: The polling sequence of the various queues is calculated using one or more queue characteristic values for the various queues, in this case the average queue growth, polling time per element and switchover time between two queues. In the illustrative embodiment these three sub-steps are taken from reference 1, to which reference is also made for further back-up. The polling sequence table can, incidentally, also be calculated using another approach. As a second step, the time duration (length) for the polling of each queue is calculated using one or more or these queue characteristic values and taking into consideration a margin factor d, to be allocated as a parameter. This margin factor serves to ensure that the calculated polling table is not allocated too tightly, so that if at a certain time the actual number of call records proves to be larger than the number of call records used in the calculation, the mediation does not come under time pressure leading to the session having to be terminated before all of the call records have been read in, or the following session having to start later than had been planned according to the polling table. For this reason a margin factor is introduced which is used to 'stretch' the calculated minimum lengths of the different polling sessions, (calculated on the basis of the average growth in the numbers of call records), by the factor di. Moreover, under certain circumstances, the decision may be taken to select a margin factor d = 0. Provision must however be made to solve the mediation's 'time pressure' problem. The said lengths of the different polling sessions are calculated from a number of linear equations A * z = p, in which A represents a (mt x mt)-matrix, i.e. in this illustrative embodiment a (9 x 9)-matrix. Furthermore, z is a vector (z1,z2,....zmt), in which zi represents the length (to be calculated) of the polling session i (at exchange Qi). In this illustrative embodiment in which mt = 9, z therefore represents the vector z1,...,z9, in which z3 for example indicates the length of the polling session for exchange Q3, i.e. exchange 4 (see table 4b). Finally, p represents a vector (p1,...,pmt) which, as is the case with matrix A, can be found using the (auxiliary)-matrix H in which it is indicated whether or not a specific polling session occurs in a 'sub-cycle', a sub-cycle being a part of the complete polling cycle which starts at a specific exchange, for example exchange 3, and ends when that exchange reoccurs in the polling table for the first time. The H matrix must therefore be calculated first, in order to calculate vector p. In this illustrative embodiment this is also a (9 x 9)-matrix. The elements in this matrix may have the value 1 or 0, namely Hkl = 1 if exchange Ql does not occur in the exchange array Q(k+1),...,Q(l-1), or Hkl = 0 if exchange Ql does occur therein. The H-matrix is shown in Table 5. The following holds good for matrix A: Akl = - Hlk * {a(Qk) * b(Qk) * {1 + d(Qk)} for k ≠ l, and Akl = 1 - Hlk * {a(Qk) * b(Qk) * {1 + d(Qk)} for k = l. The following holds good for vector p: pk = a(Qk) * b(Qk) * {1 + d(Qk)} * Σ{Hlk * c(Ql)} + b(Qk) The values for a, b, c and d for this illustrative embodiment are shown in table 1. The requested values for z1,...,z9 - the polling session lengths - can be calculated from matrix A and vector p as completed above. See TABLE 5. The second step is to calculate the relative polling time instants using the polling times per queue obtained in this way and the switchover time. See TABLE 6. Finally, the absolute polling time instants can be calculated and written to the polling table using a start time to be allocated as a parameter. See TABLE 7. It is pointed out that the polling table can be calculated once, using estimates or previous measurements of, in particular, the number of expected call records in the various queues, but that the polling table can alternatively be (re-)calculated regularly using new measurements or estimates. Such a recalculation could for example be performed prior to each complete polling cycle, (i.e. the cycle in which the entire polling table is processed). The information required with respect to the numbers of call records to be included in the calculation per queue may be gathered in two different ways: during a particular polling cycle, the mediation 2 may log the numbers of call records per queue and these numbers can be used as a basis for recalculating the polling table for the next polling cycle; prior to each polling cycle, the mediation 2 may perform an information cycle in which each subscriber exchange 1 is interrogated about the number of call records which are in the queue at that instant; these numbers are then used in the calculation of the new polling table. For the sake of completeness, TABLE 8 shows the source code of the computer program by means of which the method according to the invention can be performed. This program was also used to produce the above illustrated embodiment.

Claims: Telecommunication network, comprising a mediation centre and a number of network stations, the mediation centre executing consecutive polling sessions, during which data queues in those network stations, comprising data elements, are polled in accordance to a polling table, CHARACTERISED IN THAT the mediation centre is adapted to calculate automatically an absolute-polling-time-instants table, presenting absolute starting moments of the consecutive polling sessions, comprising the following steps : a polling sequence table, presenting the network stations which will be polled at the consecutive polling sessions, is calculated, using, for the various data queues, the queue growth (ai), the polling time per data element (bi) and the switchover time (ci) between two queues to be polled consecutively; a polling session-lengths table, presenting the session-lengths which are needed for the consecutive polling sessions, is calculated, also using, for the various data queues, the queue growth (ai), the polling time per data element (bi) and the switchover time (ci) between two queues to be polled consecutively, as well as a margin factor (di) for each queue, establishing a first matrix (H) having a length (l) and a width (k) equal to the size of said polling sequence table, which first matrix indicates, by values H{lk} whether the polling sessions are or are not found in a part of the total cycle of polling sessions, said part starting with an occurrence in said polling sessions cycle of a network station and ending with next occurrence of the same network station, and establising a second matrix (A) having the same dimensions as said first matrix and comprising values, calculated from said queue growth (ai), polling time (bi) and switchover time (ci) values, together with said first matrix values (H{lk}), according to the formulae A{kl} = - H{lk} * a{Qk} * b{Qk} * (1 + d{Qk}) if k ≠ l, and A{kl} = 1 - H{lk} * a{Qk} * b{Qk} * (1 + d{Qk}) if k = l, as well as using a vector (p), of which p{k} = a{Qk} * b{Qk} * (1 + d{Qk} * Σ(H{lk} * c{Ql}) + b{Qk}, Q{n} indicating the various network stations being polled, said polling session-length table, indicated by Z, being calculated from Z = A⁻¹ * p, a relative polling time-instants table, presenting relative starting moments of the consecutive polling sessions, is calculated, using said polling session-lengths table, inserting the switchover times (ci) in the session-length values for the consecutive polling sessions; the absolute polling time-instants table, is calculated, using said relative polling time-instants table, as well as an absolute starting moment. Telecommunication network according to Claim 1, CHARACTERISED IN THAT the mediation centre is adapted to calculate the absolute polling time-instants table once, during initialisation using the queue characteristic values which apply at initialisation. Telecommunication network according to Claim 1, CHARACTERISED IN THAT the mediation centre is adapted to recalculate the absolute polling time-instants table periodically using the queue characteristic values which apply at that time. Telecommunication network according to Claim 1, CHARACTERISED IN THAT the mediation centre is adapted to recalculate the absolute polling time-instants table if the queue characteristic values change. Telecommunication network according to Claim 1, CHARACTERISED IN THAT the mediation centre is adapted to recalculate the absolute polling time-instants table if the queue characteristic values change and said change exceeds a certain threshlod value.

Inventors: HARINK JOHANNES HENDRIKUS ANTO, HUITEMA GREGORIUS BONIFATIUS, HARINK, JOHANNES HENDRIKUS ANTONIUS, HUITEMA, GREGORIUS BONIFATIUS
Applicants: NEDERLAND PTT, KONINKLIJKE PTT NEDERLAND N.V.
Application year: 1993
Main classification: H04Q3
IPC codes: H04M15, H04M3