WO2002093834A1 - Unique identifier provisioning - Google Patents

Unique identifier provisioning Download PDF

Info

Publication number
WO2002093834A1
WO2002093834A1 PCT/EP2002/005257 EP0205257W WO02093834A1 WO 2002093834 A1 WO2002093834 A1 WO 2002093834A1 EP 0205257 W EP0205257 W EP 0205257W WO 02093834 A1 WO02093834 A1 WO 02093834A1
Authority
WO
WIPO (PCT)
Prior art keywords
counter
value
identifier
unique identifier
time
Prior art date
Application number
PCT/EP2002/005257
Other languages
French (fr)
Inventor
Frank Dzaak
Stefan Lorenz
Original Assignee
Telefonaktiebolaget Lm Ericson (Publ)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget Lm Ericson (Publ) filed Critical Telefonaktiebolaget Lm Ericson (Publ)
Publication of WO2002093834A1 publication Critical patent/WO2002093834A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/31Distributed metering or calculation of charges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/41Billing record details, i.e. parameters, identifiers, structure of call data record [CDR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/43Billing software details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/48Secure or trusted billing, e.g. trusted elements or encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/53Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP using mediation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/01Details of billing arrangements
    • H04M2215/0156Secure and trusted billing, e.g. trusted elements, encryption, digital signature, codes or double check mechanisms to secure billing calculation and information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/01Details of billing arrangements
    • H04M2215/0164Billing record, e.g. Call Data Record [CDR], Toll Ticket[TT], Automatic Message Accounting [AMA], Call Line Identifier [CLI], details, i.e. parameters, identifiers, structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/01Details of billing arrangements
    • H04M2215/0172Mediation, i.e. device or program to reformat CDRS from one or more switches in order to adapt to one or more billing programs formats
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/22Bandwidth or usage-sensitve billing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/96Distributed calculation of charges, e.g. in different nodes like for mobiles between HLR and VLR, or between the terminal and the billing function

Definitions

  • the invention addresses the field of communication networks. It relates to a method, device and computer program for provisioning of a unique identification number, in particular for the identification of charging data in a communication network.
  • a distributed system consisting of several nodes can make use of a unique sequence of numbers.
  • a centralised number generator can create such a unique number sequence, i.e. a sequence of numbers in ascending order. If the location of the number generator changes in the distributed system, the number generator has to store information about the last number that was generated on a central memory, e.g. a central hard disk, in order to ensure the ascending order and therefore to avoid duplicate numbers.
  • the central memory might have due to a high required signalling traffic an adverse impact on the system performance, in particular if many numbers are to be generated in the distributed system.
  • the method of the provisioning of unique identifiers comprises the steps of receiving a first identifier request, retrieving a current time value and buffering it, resetting a counter such that the reset counter value is buffered and providing a first identifier comprising the buffered time value and the buffered counter value.
  • the method further comprises for at least one further identifier request the steps of receiving the further identifier request, and if a timer update is indicated, retrieving a further current time value and updating the buffered time value, but if no timer update is indicated, increasing the counter by a predetermined step width value such that the buffered counter value is updated.
  • the method further comprises the step of providing the further unique identifier comprising the buffered time value and the buffered counter value.
  • the first identifier request is received as an initial request, i.e. when a number generator that performs the provision of the unique identifiers is started or initialised.
  • a time value is retrieved and buffered.
  • the time value preferably provided by a system-wide synchronised system clock.
  • such a synchronised time value is location-independent within the system.
  • a counter is reset and its reset value is buffered.
  • the unique identifier is assembled from the buffered time value and the buffered counter value. Further identifiers are provided on further requests. Depending whether a timer update is required or appropriate, an updated timer value is retrieved on a corresponding indication. Without such an indication, the counter value is increased and buffered. A further identifier is assembled from the buffered time and counter values.
  • the predetermined step width has advantageously the value '1', but any other values except zero might be used. In particular, this includes negative values, wherein increasing of the counter by a negative value corresponds to a decreasing of the counter value.
  • the time value can represent an absolute time or a relative time value.
  • the time value syntax is flexible, e.g. the European 24 hours format, the American 12 hours format or the Internet time beats format can be used.
  • the reset counter value can be chosen according to individual needs. In particular useful is the reset value '0' in the case of a positive step width, or the maximum counter number in the case of a negative step width.
  • the device comprises an input interface adapted to receive an identifier request, a counter unit adapted to provide a counter value and adapted to increase the counter value by a predetermined step width on demand, said counter unit comprising a reset port, wherein the counter unit is adapted to reset the counter if a signal is received via the reset port.
  • the device comprises a retrieval means, in particular connected to the reset port of the counter, adapted to retrieve a time value, a buffer connected to the input interface, said buffer adapted to provide the unique identifier and comprising a time value buffer part and a counter value buffer part, an output interface connected to the buffer and adapted to transmit the unique identifier, and an assembling unit connected to the retrieval means, to the counter, in particular to the reset port of the counter, and to the buffer, wherein the assembling unit is adapted to control the provisioning of the unique identifier according to predetermined rules.
  • a unique identifier comprises a time value and a counter value.
  • this allows for the avoidance of duplicate identifiers within a
  • P14764WO-KDK May 13 , 2002 dedicated time period (e.g. ⁇ z year).
  • the value of the time period depends on the size (e.g. number of bits) of the time value, or in other words on the size of the time stamp, of the identifier, and the maximum counter value depends on the available counter size as well, this period can be influenced by an appropriate choice of the maximum values, e.g. in terms of bits the lengths, of the time and counter values. Therefore, the provisioning of the unique identifiers can be adapted to individual needs and application scenarios.
  • the advantage to use a counter part for the unique identifier is the easy creation of counting numbers.
  • the combination of time and counter values for the unique identifier does not waste the system resources, because the needed identifier length can be kept significantly shorter.
  • the combination of time and counter values of the invention provides a higher resolution.
  • the inventions allows easily to assign more than 100 unique identifiers per second.
  • system resources are saved, because a system time call is more resource intensive than a counter usage.
  • the invention is applicable for use in distributed systems. It does not require to store information on a media, thus making the inventive solution efficient and usable in systems, where a central disk is not available.
  • P14764WO-KDK May 13, 2002 indication also called timer update trigger.
  • this allows an application using the provided unique identifiers to make within the available counter value address space use of the - preferably ascending - order of the counter value part of the unique identifier.
  • the counter reset if the timer update is indicated by the timer update trigger, such that the reset counter value is buffered. This leads to a most efficient use of the available counter value space as the full address space for the counter values is available for unique identifiers per time value.
  • the timer update indicated if the buffered counter value corresponds to a dedicated threshold.
  • the threshold corresponds to the limit of the counter value.
  • timer update indicated, if a dedicated time period is expired.
  • this can serve as a safeguard measure against a double wrapping of the counter value, in particular if there is a high volume of identifier requests per time unit.
  • a number generator in a further embodiment is the method of provisioning of the unique identifier performed by a number generator, said number generator being located at a first entity in a distributed system comprising a plurality of interconnected entities, wherein the retrieved time values are system-wide synchronised time values, and wherein the method comprises the step of migrating the number generator from the first entity to a second entity of the distributed system.
  • the invention allows for the easy migration of the unique number generation from one network node of a distributed system, e.g. a communications system, to another, which is useful in the case of maintenance or failure of the node hosting the number generator before the migration.
  • a distributed system e.g. a communications system
  • the invention supports the generation of charging data for ongoing billable activities (e.g. mobile calls), for which the charging data are collected by different network nodes (e.g. in the case of handover).
  • ongoing billable activities e.g. mobile calls
  • different network nodes e.g. in the case of handover
  • timer update indicated for the at least next provisioning of the unique identifier after the migration of the number generator is the timer update indicated for the at least next provisioning of the unique identifier after the migration of the number generator.
  • a network entity of a communication system which is identified within the communication system by means of an entity identifier, a communication service and creates a charging data record for said processed communication service.
  • the method further comprises the steps of requesting the identifier, linking the responsively provided unique identifier, the charging data record and the entity identifier in order to form a system-wide unique charging data record, and sending the unique charging data record to a billing centre of the communication system.
  • the invention can preferably be used for charging data handling in a communications network. Due to security reasons, charging data can be stored by a network node, e.g. periodically, during the provision of a billable service, e.g. a call, instead at the end of said service activity only. So created partial charging data records can be assembled together by use of the unique identifiers at the node or a billing centre in a safe and reliable way. The probability to loose in the case of failure valuable data is therefore reduced for the operator of the communications network.
  • the assembling unit adapted to control the provisioning of the unique identifier according to any of the method claims.
  • the identifier request an incoming data packet. This is in particular useful in a distributed system applying a packet based backbone network
  • P14764WO-KDK May 13 , 2002 used for signalling traffic. Consequently, unique identifiers can be requested by simply sending any data packet to the device.
  • the payload of such a data packet has no relevance for the device providing the unique identifier.
  • the buffer adapted to form an outgoing data packet by including the unique identifier into at least one of a header field or a payload field of a data packet, and the output interface is adapted to transmit the data packet that comprises the unique identifier.
  • a received data packet can be 'stamped' simply, fast and efficient with the unique identifier and transmitted further.
  • a network node of a communication network adapted to perform the method according to any of the method claims.
  • In a further embodiment comprises the network node a device according to any of the device claims for the provisioning of the unique identifier.
  • Another embodiment refers to a computer program, loadable into the internal memory of a digital processing unit and comprising software code portions adapted to control the steps according to any of the method claims, when the computer program is executed on the digital processing unit.
  • the invention is realised by software.
  • the computer program is stored on a computer readable medium like a
  • P14764WO-KDK May 13, 2002 CD-ROM, a floppy disc, optical disc or hard disk. Therefore, a good physical portability of the control software is provided, i.e. upgrades can be performed in an easy way.
  • Fig. 1 a method of provisioning of a unique identification number
  • Fig. 2 a counter mechanism
  • Fig. 3 an implementation of the invention into an ASIC
  • Fig.4 a method for use for charging purposes by a network node of a communication network
  • Fig. 5 an example of a communication network using the charging method
  • Fig. 6 an example of a structure of a unique identifier.
  • Fig. 1 illustrates a method for a provisioning of a unique identifier, which can be performed by a unique identifier generator, called also number generator, corresponding to the invention.
  • a unique identifier request is received.
  • a present time value polled is received.
  • a time value can refer to an official time commonly used, to a proprietary system time, or to any other relative time.
  • a counter value which has initially started from a reset value, increased by the value T.
  • a time stamp indicating the polled time value and the increased counter value is the unique identifier provided.
  • identifier In one embodiment is the of assembling and providing of the identifier a unique step, e.g. if the counter value and the time value are buffered in a memory at dedicated memory addresses, from which the identifier can immediately be polled.
  • assembling and the provisioning e.g. the latter step comprising a transmission of the identifier.
  • P14764WO-KDK May 13, 2002
  • a unique number is created by utilizing time information. Used in a communications system, no further information beside the time is required to restart the numbering sequence at node restart or when the location of the generator changes, provided that synchronised clocks in the system provide the time information.
  • the numbers that are generated are split into a time stamp (e.g. seconds or system ticks) and a counter.
  • a time stamp e.g. seconds or system ticks
  • the counter part is initialised with zero. Each time a number is generated, the counter is incremented by one. When the counter wraps around, the time-stamp part is increased by one.
  • P14764WO-KDK May 13 , 2002 number within the unique time period.
  • the time stamp of the serial number is preferably updated frequently during normal operation. The wrapping of the time stamp is thereby coupled with normal wrapping of the number.
  • the time field is preferably updated by checking if the time to be set is later than the time in the time field.
  • Fig. 2 shows a counter mechanism according to the invention. If in step 200 a the timer is increased by one time unit, the counter providing the counter value is reset 210, i.e. is set to a dedicated reset value. Preferably, the reset value is '0'. These tasks are always executed, when the time unit expires 230.
  • Fig. 6 shows an example of the syntax of a unique identifier 600. It comprises a time stamp 610, i.e. a time value, and a counter value 620.
  • Fig. 3 illustrates an implementation of the invention, e.g. in an integrated circuit ASIC 300, that represents a generator for a sequence of unique identifiers.
  • the ASIC 300 comprises an assembling unit 310, which preferably controls the generation of the unique identifiers, that is connected to a buffer 340 and to a counter 320.
  • the assembling unit 310 is furthermore connected to a retrieval means 350.
  • the retrieval means can be an interface to an externally provided time signal, e.g. by means of a timer chip or a time radio signal.
  • the retrieval means e.g. a timer chip, can be included in the ASIC 300.
  • the counter 320 comprises a reset port 330.
  • the reset port 330 is connected with the assembling unit 310, or alternatively with the time retrieval means 350.
  • the buffer e.g. a so-called register consisting of several bits, is connected to an input interface 360 and an output interface 370.
  • the interfaces are packet-based interfaces, e.g. they are adapted to receive or correspondingly to send data packets.
  • the buffer 340 provides the unique identifier by including it into a data packet - either as payload or preferably as signalling information, i.e. as header information - received via the input interface 360, and sends this data packet that comprises now the unique identifier via the output interface 370 to an address indicated in the packet header.
  • Fig. 4 illustrates an application for charging data in a communication system using the unique identifiers provided according to the invention.
  • the described method is executed at a network node of the system, e.g. at a Packet Mobile Switching Centre PMSC.
  • a communications service is set-up 400, e.g. a call
  • time-based charging is started.
  • a unique identifier is polled 410
  • the call-related charging data are collected in a record onto which the unique identifier is assigned 420.
  • the charging data including the unique identifier are sent 430 to a billing centre of the communications system for billing purposes.
  • charging data are collected 420 and sent 430 in dedicated time periods each, i.e. several times during the ongoing call. Whether the call is pending is checked in step 440.
  • the unique identifier can be polled from an integrated circuit as described with reference to Fig. 3, which is included in the network node, or it can be polled from a different instance, e.g. another network node like a billing centre, of the communication network.
  • step 410 is a new unique identifier assigned to each of the collected partial charging data records. Therefore, not only steps 420 and 430 but step 410 as well are repeated after a dedicated time period if it is detected in step 440 that the call is still pending.
  • Fig. 5 shows an example of a distributed system that makes use of the invention. Shown is a mobile communications system having typical network nodes, i.e. that comprises a Home Location Register HLR 505, a Gateway Mobile Switching Centre GMSC 510, a Mobile Switching Centre MSC 515, Base Station Controllers BSC 520, 525, 530, 580, a packet MSC 540, Serving General Packet Radio Service Support Nodes SGSN 550, 570, Radio Network Controllers RNC 560, 665 and a billing centre 500. Not shown in the figure are base stations connected to BSCs 520, 525, 530, 580 or RNCs 560, 565, which provide radio resources for communication with mobile terminals. In general, charging data related to communication services provided to mobile stations can be created by any of the node shown. However, usually charging data are created by the switching nodes, i.e. MSC 515, PMSC 540 and SGSN 550, 570.
  • MSC 515 Mobility Management Entity
  • Unique identifier generators can be located at any of the shown network nodes. However, in the case of maintenance or failure of a node hosting the generator, the unique identifier generator function preferably migrates to another node. A migration can be performed as well when a communication service processing responsibility moves from one processing node to another, e.g. due to a handover. According to the invention is the unity of the identifiers guaranteed even in the case of a migration of the unique identifier generator function .
  • the charging data which can be in particular partial charging data, are uniquely identified by unique identifiers. They can be transferred from the node, which has collected them, to the billing centre 500 for further processing. The transfer can be performed by means of a push mechanism or a poll mechanism.
  • Fig. 6 shows an example of a structure of a unique identifier 600. It comprises a time stamp 610 and a counter value 620.
  • P14764WO-KDK May 13, 2002 according to Fig. 5, in particular in a Packet Personal Digital Cellular PPDC (also called Packet PDC) system, described without reference to the figures.
  • Packet PDC Packet Personal Digital Cellular PPDC
  • 'PCDR' refers to a charging data record, in particular a partial charging data record, 'tmp - directory' means a directory for open charging files and 'ready - directory' a directory for closed and exported charging files.
  • the function "Charging” provides charging information in PCDRs to the operator from which he can produce his billings.
  • Time and volume based charging is supported.
  • time based charging the start time and duration of a connection is measured.
  • volume based charging the transmitted size and number of IP packets are counted, separated in downstream and upstream direction. Volume information can be sampled in relation to the IP address of the Application Servers (Application based charging).
  • Charging requires metric data from the radio stack about the data being transferred to it, which is required for volume based charging. Therefore the radio stack counts the IP traffic going through the stack. Only data that is successfully transferred from the PMSC to the MS contributes to the volume counts.
  • the IP datagram size is calculated by subtracting the IP, TCP and UDP standard header sizes (20 Bytes, 20 Byte and 8 Bytes) from the total DP packet size. Volume counts are separately sampled for the upstream and downstream direction.
  • Metric data from the radio stack can be converted into PCDRs.
  • the PCDRs contain information for time and volume based charging.
  • a PCDR is created when one of the below criteria is fulfilled:
  • Created PCDRs can be stored in an internal buffer and can be sent to a charging handler or billing centre during operation, e. g when a dedicated watermark has been reached.
  • the complete buffer can be sent to the charging handler or billing centre.
  • connectionld is an unique id assigned to PCDRs belonging to the same mobile of an user connection.
  • the billing centre uses this information field to collect all partial PCDRs belonging to this connection.
  • the connectionld has to be unique across PMSCs, because partial PCDRs with the same connectionld are generated at different PMSCs if inter PMSC cell reseselection takes place.
  • the connectionld consists of a PMSC Id, which is unique for each PMSC node that generates it, and an information element called 'connectionsequenceNumber'.
  • the PMSC Id is a network-wide identifier, counting e.g. 16 bits.
  • connectionSequenceNumber consists of a magazine id and a board id and a serial number.
  • the magazine and board id identifies uniquely the processor within one PMSC.
  • the serial number is the unique identifier according to the invention and shall uniquely identify all PCDRs generated on one processor, and is represented as a sequence of numbers in ascending order.
  • P14764WO-KDK May 13, 2002
  • the sequence number is represented by a limited number of digits. Because of this, a wrap around will occur which will break the uniqueness. The time span between wrap around is over half a year and therefore sufficiently long enough for relevant applications (e.g. creating bills and statistic reports).
  • the serial number is split into a time stamp and a counter.
  • the time-stamp of the Id is initialized with the time given in UNIX-seconds (32-bit value).
  • the counter part is initialized with zero. Each time a serial number is generated, the counter is incremented by one.
  • the serial number is represented e.g. by 32 bits.
  • a 24 bit field is reserved for the time stamp and a 8 bit field for the counter.
  • the time field can hold:
  • the counter field holds 8 bit, maximum counter value is 255. It might be assumed that no more than 15 registrations are requested per second, resulting in 15 generation of serial numbers. Therefore the counter wraps around each:
  • serial numbers are generated in ascending order if no wrap around occurs.
  • the ascending order is maintained at restart if the time field is
  • P14764WO-KDK May 13, 2002 initialised by a time later than the one in the latest serial number. Two problems can occur that prevent this: the system clock goes wrong (slower) and the time within 24 bits has wrapped around due to normal operations.
  • the time field is updated by checking if the time to be set is later than the time in the time field.
  • each PCDR shall contain an attribute 'RecordSequenceNumber' that identifies the PCDR uniquely within the node/PMSC where it was created.
  • the RecordSequenceNumber shall contain an identification of the
  • P14764WO-KDK May 13, 2002 processing module/board to distinguish PCDRs generated on different traffic boards.
  • serial number unique per processing module PM
  • the serial number is of 32 bit size, be initialised to 0 (e.g. at restart) and count up for each PCDR generated. This implies that after a certain time it will wrap.
  • the time when the serial number will wrap depends on the actual traffic taking place. It may approximated as follows:
  • the partialOutputNumber is used to differentiate the different partial PCDRs belonging to the same connection. It is e.g. a 16 bits unsigned integer.
  • Each PCDR contains information about the time scope of the PCDR, e.g. a start time and a duration.
  • the start time has to be given in local time.
  • connection id stays the same, RecordSe-qNr. might have a gap; PartOutNr. is consecutively incremented
  • the unique identifier comprises a time stamp (e.g. date and time, wherein the time
  • P14764WO-KDK May 13, 2002 format provides a certain time unit like seconds s as the smallest time unit) and a counter value, which differentiates between different identification numbers having the same time stamp.
  • the counter value assigned to the unique identification number represents the number of time stamps having assigned the same time before the current assignment, said number increased by one.
  • a unique identifier having the steps of receiving a unique identifier request, polling a time value, increasing a counter value by a value 1, and providing a unique identifier comprising a time stamp indicating the polled time value and comprising the increased counter value.
  • any other value can be used as a counter value, as long as its unity per smallest time unit is guarantied (e.g. start value 0 or 1 or 200; ascending or descending order, step width 2 instead of 1 etc.).
  • an integrated circuit comprising means for performing a method for provisioning of a unique identifier having the steps of receiving a unique identifier request, polling a time value, increasing a counter value by a value 1, and providing a unique identifier comprising a time stamp indicating the polled time value and comprising the increased counter value.
  • ASIC integrated circuit
  • the invention to a network element of a communication network comprising the integrated circuit.
  • a communications network comprising at least one network node comprising the integrated circuit.
  • a computer program loadable into the internal memory of a digital processing unit, comprising software code portions adapted to control the steps of the method for provisioning of a unique identifier having the steps of receiving a unique identifier request, polling a time value, increasing a counter value by a value 1, and providing a unique identifier
  • P14764WO-KDK May 13, 2002 comprising a time stamp indicating the polled time value and comprising the increased counter value, when the computer program is executed on the digital processing unit.
  • the invention to the computer program, which is stored on a computer-readable medium.
  • the invention can be used preferably in all communications systems as defined by 3GPP in the release 99 as well as in all future releases thereof.
  • this includes PDC and PPDC as well as UMTS networks, core networks, Wireless Local Area Networks WLAN, GSM networks and the corresponding user equipment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention relates to a method for provisioning of a unique identifier, comprising the steps of receiving a first identifier request, retrieving a current time value and buffering it, resetting a counter such that the reset counter value is buffered, providing a first identifier comprising the buffered time value and the buffered counter value, and for at least one further identifier request the steps of receiving the further identifier request, and if a timer update is indicated, retrieving a further current time value and updating the buffered time value, otherwise if no timer update is indicated, increasing the counter by a predetermined step width value such that the buffered counter value is updated, and the step of providing the further unique identifier comprising the buffered time value and the buffered counter value. The invention relates further to a corresponding device and computer program.

Description

Unique Identifier Provisioning
The invention addresses the field of communication networks. It relates to a method, device and computer program for provisioning of a unique identification number, in particular for the identification of charging data in a communication network.
Technological background of the invention
Already known are number generators creating numbers, called identifiers as well, or sequences of numbers, which are used in computer systems, in particular in distributed systems, for the purpose of unique identification. Usually, a unique number sequence is represented by numbers in ascending order. Due to the limited representation of numbers within a computer system, duplicates are generated after a certain time period. The time period that guarantees unique numbers is referred to as unique time period. The creation of duplicates requires that care needs to be taken that the period of uniqueness is sufficiently long enough for the application, i.e. for the intended purpose the unique number sequence is needed.
A distributed system consisting of several nodes can make use of a unique sequence of numbers. To do so, a centralised number generator can create such a unique number sequence, i.e. a sequence of numbers in ascending order. If the location of the number generator changes in the distributed system, the number generator has to store information about the last number that was generated on a central memory, e.g. a central hard disk, in order to ensure the ascending order and therefore to avoid duplicate numbers. The central memory might have due to a high required signalling traffic an adverse impact on the system performance, in particular if many numbers are to be generated in the distributed system.
It is an object of the underlying invention to provide a method, device and software program for an improved provisioning of a sequence of unique identifiers, that in particular allows to maintain the uniqueness of the sequence when the number generator changes from one node to another within a distributed system.
P14764WO-KDK May 13, 2002 Summary of the invention
This object is solved by the teaching of the independent claims.
The method of the provisioning of unique identifiers comprises the steps of receiving a first identifier request, retrieving a current time value and buffering it, resetting a counter such that the reset counter value is buffered and providing a first identifier comprising the buffered time value and the buffered counter value. The method further comprises for at least one further identifier request the steps of receiving the further identifier request, and if a timer update is indicated, retrieving a further current time value and updating the buffered time value, but if no timer update is indicated, increasing the counter by a predetermined step width value such that the buffered counter value is updated. The method further comprises the step of providing the further unique identifier comprising the buffered time value and the buffered counter value.
Usually, the first identifier request is received as an initial request, i.e. when a number generator that performs the provision of the unique identifiers is started or initialised. At this initial sequence, a time value is retrieved and buffered. In a distributed system is the time value preferably provided by a system-wide synchronised system clock. Advantageously, such a synchronised time value is location-independent within the system.
In the further process, a counter is reset and its reset value is buffered. The unique identifier is assembled from the buffered time value and the buffered counter value. Further identifiers are provided on further requests. Depending whether a timer update is required or appropriate, an updated timer value is retrieved on a corresponding indication. Without such an indication, the counter value is increased and buffered. A further identifier is assembled from the buffered time and counter values.
P14764WO-KDK May 13 , 2002 The predetermined step width has advantageously the value '1', but any other values except zero might be used. In particular, this includes negative values, wherein increasing of the counter by a negative value corresponds to a decreasing of the counter value.
The time value can represent an absolute time or a relative time value. The time value syntax is flexible, e.g. the European 24 hours format, the American 12 hours format or the Internet time beats format can be used.
The reset counter value can be chosen according to individual needs. In particular useful is the reset value '0' in the case of a positive step width, or the maximum counter number in the case of a negative step width.
In another aspect of the invention is a device provided, in particular an integrated circuit, for the provisioning of a sequence of unique identifiers. The device comprises an input interface adapted to receive an identifier request, a counter unit adapted to provide a counter value and adapted to increase the counter value by a predetermined step width on demand, said counter unit comprising a reset port, wherein the counter unit is adapted to reset the counter if a signal is received via the reset port. Furthermore, the device comprises a retrieval means, in particular connected to the reset port of the counter, adapted to retrieve a time value, a buffer connected to the input interface, said buffer adapted to provide the unique identifier and comprising a time value buffer part and a counter value buffer part, an output interface connected to the buffer and adapted to transmit the unique identifier, and an assembling unit connected to the retrieval means, to the counter, in particular to the reset port of the counter, and to the buffer, wherein the assembling unit is adapted to control the provisioning of the unique identifier according to predetermined rules.
Therefore, a unique identifier provided comprises a time value and a counter value. Advantageously, this allows for the avoidance of duplicate identifiers within a
P14764WO-KDK May 13 , 2002 dedicated time period (e.g. ¥z year). As the value of the time period depends on the size (e.g. number of bits) of the time value, or in other words on the size of the time stamp, of the identifier, and the maximum counter value depends on the available counter size as well, this period can be influenced by an appropriate choice of the maximum values, e.g. in terms of bits the lengths, of the time and counter values. Therefore, the provisioning of the unique identifiers can be adapted to individual needs and application scenarios.
The advantage to use a counter part for the unique identifier is the easy creation of counting numbers.
In contrast to the use of an universal unique ID comprising simply numbers in an ascending order, the combination of time and counter values for the unique identifier does not waste the system resources, because the needed identifier length can be kept significantly shorter.
In contrast to the use of a pure time stamp, the combination of time and counter values of the invention provides a higher resolution. E.g., if the smallest time unit is 1 second, the inventions allows easily to assign more than 100 unique identifiers per second. In addition, system resources are saved, because a system time call is more resource intensive than a counter usage.
The invention is applicable for use in distributed systems. It does not require to store information on a media, thus making the inventive solution efficient and usable in systems, where a central disk is not available.
Advantageous embodiments of the invention are emphasized in the dependent claims.
In one embodiment of the inventive method is the counter increased by the predetermined step width, if the timer update is indicated by the timer update
P14764WO-KDK May 13, 2002 indication, also called timer update trigger. Advantageously, this allows an application using the provided unique identifiers to make within the available counter value address space use of the - preferably ascending - order of the counter value part of the unique identifier.
In another embodiment is the counter reset, if the timer update is indicated by the timer update trigger, such that the reset counter value is buffered. This leads to a most efficient use of the available counter value space as the full address space for the counter values is available for unique identifiers per time value.
In a further embodiment is the timer update indicated, if the buffered counter value corresponds to a dedicated threshold. Usually, the threshold corresponds to the limit of the counter value.
In another embodiment is the timer update indicated, if a dedicated time period is expired. Advantageously, this can serve as a safeguard measure against a double wrapping of the counter value, in particular if there is a high volume of identifier requests per time unit.
In a further embodiment is the method of provisioning of the unique identifier performed by a number generator, said number generator being located at a first entity in a distributed system comprising a plurality of interconnected entities, wherein the retrieved time values are system-wide synchronised time values, and wherein the method comprises the step of migrating the number generator from the first entity to a second entity of the distributed system.
Therefore, the invention allows for the easy migration of the unique number generation from one network node of a distributed system, e.g. a communications system, to another, which is useful in the case of maintenance or failure of the node hosting the number generator before the migration.
P 14764WO-KDK May 13 , 2002 In particular, the invention supports the generation of charging data for ongoing billable activities (e.g. mobile calls), for which the charging data are collected by different network nodes (e.g. in the case of handover).
In another embodiment is the timer update indicated for the at least next provisioning of the unique identifier after the migration of the number generator.
In a further embodiment processes a network entity of a communication system, which is identified within the communication system by means of an entity identifier, a communication service and creates a charging data record for said processed communication service. The method further comprises the steps of requesting the identifier, linking the responsively provided unique identifier, the charging data record and the entity identifier in order to form a system-wide unique charging data record, and sending the unique charging data record to a billing centre of the communication system.
The invention can preferably be used for charging data handling in a communications network. Due to security reasons, charging data can be stored by a network node, e.g. periodically, during the provision of a billable service, e.g. a call, instead at the end of said service activity only. So created partial charging data records can be assembled together by use of the unique identifiers at the node or a billing centre in a safe and reliable way. The probability to loose in the case of failure valuable data is therefore reduced for the operator of the communications network.
In another embodiment is the assembling unit adapted to control the provisioning of the unique identifier according to any of the method claims.
In a further embodiment is the identifier request an incoming data packet. This is in particular useful in a distributed system applying a packet based backbone network
P14764WO-KDK May 13 , 2002 used for signalling traffic. Consequently, unique identifiers can be requested by simply sending any data packet to the device. Advantageously, the payload of such a data packet has no relevance for the device providing the unique identifier.
In another embodiment is the buffer adapted to form an outgoing data packet by including the unique identifier into at least one of a header field or a payload field of a data packet, and the output interface is adapted to transmit the data packet that comprises the unique identifier. This is in particular useful in a distributed system applying a packet based backbone network used for signalling traffic.
In a further embodiment is the data packet, into which the unique identifier is included, the incoming data packet. Advantageously, a received data packet can be 'stamped' simply, fast and efficient with the unique identifier and transmitted further.
In another embodiment is a network node of a communication network adapted to perform the method according to any of the method claims.
In a further embodiment comprises the network node a device according to any of the device claims for the provisioning of the unique identifier.
Another embodiment refers to a computer program, loadable into the internal memory of a digital processing unit and comprising software code portions adapted to control the steps according to any of the method claims, when the computer program is executed on the digital processing unit.
In another embodiment is the computer program stored on a computer-readable medium.
In one embodiment the invention is realised by software. In a further preferred embodiment the computer program is stored on a computer readable medium like a
P14764WO-KDK May 13, 2002 CD-ROM, a floppy disc, optical disc or hard disk. Therefore, a good physical portability of the control software is provided, i.e. upgrades can be performed in an easy way.
In the following is the invention explained in detail with reference to the figures, which show:
Fig. 1 : a method of provisioning of a unique identification number, Fig. 2: a counter mechanism, Fig. 3 : an implementation of the invention into an ASIC,
Fig.4: a method for use for charging purposes by a network node of a communication network, Fig. 5: an example of a communication network using the charging method, Fig. 6: an example of a structure of a unique identifier.
Detailed description of embodiments of the invention
Fig. 1 illustrates a method for a provisioning of a unique identifier, which can be performed by a unique identifier generator, called also number generator, corresponding to the invention. In step 100, a unique identifier request is received. In the next step 110 is a present time value polled. Such a time value can refer to an official time commonly used, to a proprietary system time, or to any other relative time. In a further step 120 is a counter value, which has initially started from a reset value, increased by the value T. By assembling in step 130 a time stamp indicating the polled time value and the increased counter value is the unique identifier provided.
In one embodiment is the of assembling and providing of the identifier a unique step, e.g. if the counter value and the time value are buffered in a memory at dedicated memory addresses, from which the identifier can immediately be polled. Alternatively, there are separate steps for the assembling and the provisioning, e.g. the latter step comprising a transmission of the identifier.
P14764WO-KDK May 13, 2002 In other words, a unique number is created by utilizing time information. Used in a communications system, no further information beside the time is required to restart the numbering sequence at node restart or when the location of the generator changes, provided that synchronised clocks in the system provide the time information.
The numbers that are generated are split into a time stamp (e.g. seconds or system ticks) and a counter. When the generator is inialized, it queries the system clock for a time stamp. The counter part is initialised with zero. Each time a number is generated, the counter is incremented by one. When the counter wraps around, the time-stamp part is increased by one.
During normal operation numbers are generated in one embodiment in ascending order if no wrap around occurs. The ascending order is maintained at restart if the time field is initialised by a time alter than the one in the latest serial number. Two problems can occur that prevent this: The systems clock goes wrong (slower) or the time field value has wrapped around due to normal operations. Slower system clock could result in setting the time value to an earlier value at initialisation during restart. This would produce an unexpected wrap around of the identifier within the unique time period. This puts an additional constrained on the time synchronisation and restart time of the number generator. The various clocks need to be synchronised such that the time difference is lower than the restart time of the number generator. The restart time is the time between the last generated number created by the previous instance of the number generator and the first number generated by the new instance of the number generator.
Wrapping of the time within the representation of the time stamp has only a consequence at the following initialisation. A situation can occur that a normal wrap around of the number has happened within the unique time period. An initialisation with this wrapped around time value would result in another wrap around of the
P14764WO-KDK May 13 , 2002 number within the unique time period. To prevent this problem, the time stamp of the serial number is preferably updated frequently during normal operation. The wrapping of the time stamp is thereby coupled with normal wrapping of the number.
To prevent the problem of setting the system clock to an earlier time due to a slow system clock, the time field is preferably updated by checking if the time to be set is later than the time in the time field.
Fig. 2 shows a counter mechanism according to the invention. If in step 200 a the timer is increased by one time unit, the counter providing the counter value is reset 210, i.e. is set to a dedicated reset value. Preferably, the reset value is '0'. These tasks are always executed, when the time unit expires 230.
Fig. 6 shows an example of the syntax of a unique identifier 600. It comprises a time stamp 610, i.e. a time value, and a counter value 620.
Fig. 3 illustrates an implementation of the invention, e.g. in an integrated circuit ASIC 300, that represents a generator for a sequence of unique identifiers. The ASIC 300 comprises an assembling unit 310, which preferably controls the generation of the unique identifiers, that is connected to a buffer 340 and to a counter 320. The assembling unit 310 is furthermore connected to a retrieval means 350. The retrieval means can be an interface to an externally provided time signal, e.g. by means of a timer chip or a time radio signal. Alternatively, the retrieval means, e.g. a timer chip, can be included in the ASIC 300. The counter 320 comprises a reset port 330. The reset port 330 is connected with the assembling unit 310, or alternatively with the time retrieval means 350. The buffer, e.g. a so-called register consisting of several bits, is connected to an input interface 360 and an output interface 370. Preferably, the interfaces are packet-based interfaces, e.g. they are adapted to receive or correspondingly to send data packets.
P14764WO-KDK May 13, 2002 Preferably, the buffer 340 provides the unique identifier by including it into a data packet - either as payload or preferably as signalling information, i.e. as header information - received via the input interface 360, and sends this data packet that comprises now the unique identifier via the output interface 370 to an address indicated in the packet header.
Fig. 4 illustrates an application for charging data in a communication system using the unique identifiers provided according to the invention. Preferably, the described method is executed at a network node of the system, e.g. at a Packet Mobile Switching Centre PMSC.
If a communications service is set-up 400, e.g. a call, time-based charging is started. In order to distinguish charging data of this dedicated call from other charging data that might be collected from other calling parties or from the same calling subscriber, a unique identifier is polled 410, the call-related charging data are collected in a record onto which the unique identifier is assigned 420. Then, the charging data including the unique identifier are sent 430 to a billing centre of the communications system for billing purposes. Preferably, such charging data are collected 420 and sent 430 in dedicated time periods each, i.e. several times during the ongoing call. Whether the call is pending is checked in step 440.
The unique identifier can be polled from an integrated circuit as described with reference to Fig. 3, which is included in the network node, or it can be polled from a different instance, e.g. another network node like a billing centre, of the communication network.
In an alternative embodiment - not shown in the figure - is a new unique identifier assigned to each of the collected partial charging data records. Therefore, not only steps 420 and 430 but step 410 as well are repeated after a dedicated time period if it is detected in step 440 that the call is still pending.
P14764WO-KDK May 13, 2002 Fig. 5 shows an example of a distributed system that makes use of the invention. Shown is a mobile communications system having typical network nodes, i.e. that comprises a Home Location Register HLR 505, a Gateway Mobile Switching Centre GMSC 510, a Mobile Switching Centre MSC 515, Base Station Controllers BSC 520, 525, 530, 580, a packet MSC 540, Serving General Packet Radio Service Support Nodes SGSN 550, 570, Radio Network Controllers RNC 560, 665 and a billing centre 500. Not shown in the figure are base stations connected to BSCs 520, 525, 530, 580 or RNCs 560, 565, which provide radio resources for communication with mobile terminals. In general, charging data related to communication services provided to mobile stations can be created by any of the node shown. However, usually charging data are created by the switching nodes, i.e. MSC 515, PMSC 540 and SGSN 550, 570.
Unique identifier generators can be located at any of the shown network nodes. However, in the case of maintenance or failure of a node hosting the generator, the unique identifier generator function preferably migrates to another node. A migration can be performed as well when a communication service processing responsibility moves from one processing node to another, e.g. due to a handover. According to the invention is the unity of the identifiers guaranteed even in the case of a migration of the unique identifier generator function .
The charging data, which can be in particular partial charging data, are uniquely identified by unique identifiers. They can be transferred from the node, which has collected them, to the billing centre 500 for further processing. The transfer can be performed by means of a push mechanism or a poll mechanism.
Fig. 6 shows an example of a structure of a unique identifier 600. It comprises a time stamp 610 and a counter value 620.
In the following is a further embodiment of the invention, i.e. an application of the invention for charging in a mobile communications system, e.g. in a system
P14764WO-KDK May 13, 2002 according to Fig. 5, in particular in a Packet Personal Digital Cellular PPDC (also called Packet PDC) system, described without reference to the figures.
The term 'PCDR' refers to a charging data record, in particular a partial charging data record, 'tmp - directory' means a directory for open charging files and 'ready - directory' a directory for closed and exported charging files.
The function "Charging" provides charging information in PCDRs to the operator from which he can produce his billings.
Time and volume based charging is supported. For time based charging, the start time and duration of a connection is measured. For volume based charging, the transmitted size and number of IP packets are counted, separated in downstream and upstream direction. Volume information can be sampled in relation to the IP address of the Application Servers (Application based charging).
Charging requires metric data from the radio stack about the data being transferred to it, which is required for volume based charging. Therefore the radio stack counts the IP traffic going through the stack. Only data that is successfully transferred from the PMSC to the MS contributes to the volume counts. The IP datagram size is calculated by subtracting the IP, TCP and UDP standard header sizes (20 Bytes, 20 Byte and 8 Bytes) from the total DP packet size. Volume counts are separately sampled for the upstream and downstream direction.
Metric data from the radio stack can be converted into PCDRs. The PCDRs contain information for time and volume based charging.
A PCDR is created when one of the below criteria is fulfilled:
• configurable thresholds for connection time or transferred data volumes have been exceeded,
• at the end of a connection,
P 14764WO-KDK May 13 , 2002 • connection lost,
• inter PMSC cell reselection.
Created PCDRs can be stored in an internal buffer and can be sent to a charging handler or billing centre during operation, e. g when a dedicated watermark has been reached. When blocking or failover is requested, the complete buffer can be sent to the charging handler or billing centre.
In the following are information elements of PCDRs described. As long as a mobile user is connected to the PPDC-network, information needed as basis for charging is collected and stored in PCDRs and charging files.
In the following is the information element 'Connectionld' described. The connectionld is an unique id assigned to PCDRs belonging to the same mobile of an user connection. The billing centre uses this information field to collect all partial PCDRs belonging to this connection. To support inter-PMSC cell reselection, the connectionld has to be unique across PMSCs, because partial PCDRs with the same connectionld are generated at different PMSCs if inter PMSC cell reseselection takes place. The connectionld consists of a PMSC Id, which is unique for each PMSC node that generates it, and an information element called 'connectionsequenceNumber'. The PMSC Id is a network-wide identifier, counting e.g. 16 bits.
The connectionSequenceNumber consists of a magazine id and a board id and a serial number. The magazine and board id identifies uniquely the processor within one PMSC.
The serial number is the unique identifier according to the invention and shall uniquely identify all PCDRs generated on one processor, and is represented as a sequence of numbers in ascending order.
P14764WO-KDK May 13, 2002 The sequence number is represented by a limited number of digits. Because of this, a wrap around will occur which will break the uniqueness. The time span between wrap around is over half a year and therefore sufficiently long enough for relevant applications (e.g. creating bills and statistic reports). To maintain the ascending order of the serial number at process restart, the serial number is split into a time stamp and a counter. During startup of the processor, the time-stamp of the Id is initialized with the time given in UNIX-seconds (32-bit value). The counter part is initialized with zero. Each time a serial number is generated, the counter is incremented by one.
When the counter wraps around, the number of seconds in the time-stamp part are incremented by one. The serial number is represented e.g. by 32 bits. A 24 bit field is reserved for the time stamp and a 8 bit field for the counter. The time field can hold:
2/4 s = 16,777,216 s ~ 194 d (d=days)
This means that a duplicate of the time field occurs at the earliest after 194 days. Because the time value is within a range of [2^-1 ... 0], the first duplicate can appear before 194 d have elapsed. In consequence, the method ensures that a duplicate of the serial number occurs at the earliest after 194 days.
The counter field holds 8 bit, maximum counter value is 255. It might be assumed that no more than 15 registrations are requested per second, resulting in 15 generation of serial numbers. Therefore the counter wraps around each:
= l7s (s=seconds)
During normal operation serial numbers are generated in ascending order if no wrap around occurs. The ascending order is maintained at restart if the time field is
P14764WO-KDK May 13, 2002 initialised by a time later than the one in the latest serial number. Two problems can occur that prevent this: the system clock goes wrong (slower) and the time within 24 bits has wrapped around due to normal operations.
Slower system clock could result in setting the time value to an earlier value at initialisation during restart. This would produce an unexpected wrap around of the connectionld within the 194 d period. However, because no connectionlds are produced during the restart process, the clock deviation might as big as the restart time. Because the system might require some minutes for restart, a clock deviation up to 60s has usually no effect on the uniqueness.
Wrapping of the time within 24 bit has only a consequence at the following initialisation. A situation can occur that a normal wrap around of the connectionld has happen within 194 d. An initialisation with this wrapped around time value would result in another wrap around of the connectionld within the 194 d period. To prevent this problem, the time value of the serial number is updated frequently during normal operation (~10s intervals). The wrapping of the time value is thereby coupled with normal wrapping of the connectionld.
To prevent the problem of setting the time value to an earlier time due to a slow system clock, the time field is updated by checking if the time to be set is later than the time in the time field.
In the following is the information element 'RecordSequenceNumber' described. To facilitate recognition of duplicates and/or data loss, each PCDR shall contain an attribute 'RecordSequenceNumber' that identifies the PCDR uniquely within the node/PMSC where it was created.
As the PMSC is preferably a multi processor node with separate address spaces for each processor, the RecordSequenceNumber shall contain an identification of the
P14764WO-KDK May 13, 2002 processing module/board to distinguish PCDRs generated on different traffic boards.
Additionally a serial number (unique per processing module PM) is provided to uniquely identify every PCDR generated by the board specified by the PM/board id. The serial number is of 32 bit size, be initialised to 0 (e.g. at restart) and count up for each PCDR generated. This implies that after a certain time it will wrap.
The time when the serial number will wrap depends on the actual traffic taking place. It may approximated as follows:
Maxint* NodesPerNet _. ^ TT7 = TimeToWrap
TotalSessionsPerDay
Given a traffic estimations of 23 million connections per day and 8 nodes per network this yields approximately 736 days until the serial number will wrap (Maxlnt = 23, -1) .
In the following is the information element 'PartialOutputNumber' described. The partialOutputNumber is used to differentiate the different partial PCDRs belonging to the same connection. It is e.g. a 16 bits unsigned integer.
Time and Duration: Each PCDR contains information about the time scope of the PCDR, e.g. a start time and a duration. The start time has to be given in local time.
Handover: connection id stays the same, RecordSe-qNr. might have a gap; PartOutNr. is consecutively incremented
In one embodiment relates the invention to the generation and provisioning of a unique identifier, called in the following unique identification number as well. The unique identifier comprises a time stamp (e.g. date and time, wherein the time
P14764WO-KDK May 13, 2002 format provides a certain time unit like seconds s as the smallest time unit) and a counter value, which differentiates between different identification numbers having the same time stamp. Preferably, the counter value assigned to the unique identification number represents the number of time stamps having assigned the same time before the current assignment, said number increased by one.
In one embodiment relates the invention to a method for provisioning of a unique identifier having the steps of receiving a unique identifier request, polling a time value, increasing a counter value by a value 1, and providing a unique identifier comprising a time stamp indicating the polled time value and comprising the increased counter value.
Alternatively, any other value can be used as a counter value, as long as its unity per smallest time unit is guarantied (e.g. start value 0 or 1 or 200; ascending or descending order, step width 2 instead of 1 etc.).
In one embodiment relates the invention to an integrated circuit (ASIC) comprising means for performing a method for provisioning of a unique identifier having the steps of receiving a unique identifier request, polling a time value, increasing a counter value by a value 1, and providing a unique identifier comprising a time stamp indicating the polled time value and comprising the increased counter value. In an additional embodiment relates the invention to a network element of a communication network comprising the integrated circuit. In a further embodiment relates the invention to a communications network comprising at least one network node comprising the integrated circuit.
In one embodiment relates the invention to a computer program, loadable into the internal memory of a digital processing unit, comprising software code portions adapted to control the steps of the method for provisioning of a unique identifier having the steps of receiving a unique identifier request, polling a time value, increasing a counter value by a value 1, and providing a unique identifier
P14764WO-KDK May 13, 2002 comprising a time stamp indicating the polled time value and comprising the increased counter value, when the computer program is executed on the digital processing unit. In a further embodiment relates the invention to the computer program, which is stored on a computer-readable medium.
Without being limited to, the invention can be used preferably in all communications systems as defined by 3GPP in the release 99 as well as in all future releases thereof. In particular, this includes PDC and PPDC as well as UMTS networks, core networks, Wireless Local Area Networks WLAN, GSM networks and the corresponding user equipment.
P14764WO-KDK May 13, 2002

Claims

Claims
1. Method of provisioning of unique identifiers (600), comprising the steps of
- receiving a first identifier request (100), - retrieving a current time value (110) and buffering it,
- resetting a counter (210) such that the reset counter value is buffered,
- providing (130) a first identifier (600) comprising the buffered time value and the buffered counter value, and for at least one further identifier request (100) - receiving the further identifier request (100),
- if a timer update is indicated (220), retrieving a further current time value and updating (200) the buffered time value,
- if no timer update is indicated, increasing the counter (120) by a predetermined step width value such that the buffered counter value is updated, - and providing (130) the further unique identifier comprising the buffered time value and the buffered counter value.
2. Method according to the claim 1, wherein the counter is increased by the predetermined step width if the timer update is indicated by a timer update trigger.
3. Method according to the claim 1, wherein the counter is reset (210), if the timer update is indicated by a timer update trigger (220), such that the reset counter value is buffered.
4. Method according to claim 1 or 3, wherein the timer update is indicated, if the buffered counter value corresponds to a dedicated threshold.
5. Method according to any of the preceding claims, wherein the timer update is indicated, if a dedicated time period is expired.
6. Method according to any of the preceding claims, wherein the method of provisioning of the unique identifier is performed by a number generator (300), said
P14764WO-KDK May 13, 2002 number generator being located at a first entity in a distributed system comprising a plurality of interconnected entities (500, 505, 510, 515, 520, 525, 530, 540, 550, 560, 565, 570, 580), wherein the retrieved time values are system-wide synchronised time values, and wherein the method comprises the step of migrating the number generator from the first entity to a second entity of the distributed system.
7. Method according to claim 6, wherein the timer update is indicated for the at least next provisioning of the unique identifier after the migration of the number generator.
8. Method according to any preceding claim, wherein a network entity (500, 505, 510, 515, 520, 525, 530, 540, 550, 560, 565, 570, 580) of a communication system, which is identified within the communication system by means of an entity identifier, processes a communication service and creates a charging data record for said processed communication service, comprising the steps of
- requesting the identifier,
- linking the responsively provided unique identifier, the charging data record and the entity identifier in order to form a system-wide unique charging data record, and - sending the unique charging data record to a billing centre of the communication system.
9. Device, in particular an integrated circuit (300), for provisioning of a sequence of unique identifiers, comprising an input interface (360) adapted to receive an identifier request, a counter unit (320) adapted to provide a counter value (620) and adapted to increase the counter value by a predetermined step width on demand, said counter unit (320) comprising a reset port (330), wherein the counter unit (320) is adapted to reset the counter if a signal is received via the reset port (330), a retrieval means (350), in particular connected to the reset port (330) of the counter unit (320), adapted to retrieve a time value (610),
P14764WO-KDK May 13, 2002 a buffer (340) connected to the input interface (360), said buffer (340) adapted to provide the unique identifier (600) and comprising a time value buffer part and a counter value buffer part, an output interface (370) connected to the buffer (340) and adapted to transmit the unique identifier (600), and an assembling unit (310) connected to the retrieval means (350), to the counter
(320), in particular to the reset port (330) of the counter unit (320) , and to the buffer
(340), wherein said assembling unit (310) is adapted to control the provisioning of the unique identifier (600) according to predetermined rules.
10. Device according to the preceding device claim, wherein the assembling unit (310) is adapted to control the provisioning of the unique identifier (600) according to any of the method claims.
11. Device according to any preceding device claim, wherein the identifier request is an incoming data packet.
12. Device according to any preceding device claim, wherein the buffer (340) is adapted to form an outgoing data packet by including the unique identifier (600) into at least one of a header field or a payload field of a data packet, and wherein the output interface (370) is adapted to transmit the data packet that comprises the unique identifier (600).
13. Device according to claim 12, wherein the data packet into which the unique identifier (600) is included is the incoming data packet.
14. Network node of a communication network adapted to perform the method according to any of the method claims.
15. Network node according to claim 14, comprising a device according to any of the claims 9 to 13 for the provisioning of the unique identifier (600).
P14764WO-KDK May 13, 2002
16. Computer program, loadable into an internal memory of a digital processing unit, comprising software code portions adapted to control the steps according to any of the method claims, when the computer program is executed on the digital processing unit.
17. Computer program according to the preceding computer program claim, wherein the computer program is stored on a computer-readable medium.
P14764WO-KDK May 13 , 2002
PCT/EP2002/005257 2001-05-14 2002-05-13 Unique identifier provisioning WO2002093834A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01111659 2001-05-14
EP01111659.7 2001-05-14

Publications (1)

Publication Number Publication Date
WO2002093834A1 true WO2002093834A1 (en) 2002-11-21

Family

ID=8177418

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2002/005257 WO2002093834A1 (en) 2001-05-14 2002-05-13 Unique identifier provisioning

Country Status (1)

Country Link
WO (1) WO2002093834A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100370728C (en) * 2003-03-10 2008-02-20 华为技术有限公司 Method for communication charge by charge identification

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997024007A1 (en) * 1995-12-22 1997-07-03 Ericsson Inc. Identification of mobile calls within a mobile telephone system
WO1999057637A1 (en) * 1998-05-01 1999-11-11 British Telecommunications Public Limited Company Distributed data processing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997024007A1 (en) * 1995-12-22 1997-07-03 Ericsson Inc. Identification of mobile calls within a mobile telephone system
WO1999057637A1 (en) * 1998-05-01 1999-11-11 British Telecommunications Public Limited Company Distributed data processing

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
APACHE: "Module mod_unique_id", APACHE HTTP SERVER VERSION 1.3, 12 December 2000 (2000-12-12), XP002209806, Retrieved from the Internet <URL:http://web.archive.org/web/20001212110500/http://httpd.apache.org/docs/mod/mod_unique_id.html> [retrieved on 20020813] *
INTEL: "The intel Random number generator", INTEL WHITEPAPER, 1999, XP002209807, Retrieved from the Internet <URL:ftp://download.intel.com/design/security/rng/techbrief.pdf> [retrieved on 20020814] *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100370728C (en) * 2003-03-10 2008-02-20 华为技术有限公司 Method for communication charge by charge identification

Similar Documents

Publication Publication Date Title
CN113037513B (en) Charging management method, user plane functional entity and control plane functional entity
EP1153490B1 (en) Header compression in real time services
US8280343B2 (en) System and method for providing contact information of a mobile device to a reverse 911 database
CN1572093B (en) Management of incoming data for a dormant mobile terminal by transferring or discarding buffered incoming data responsive to a connection being established in time
TWI392393B (en) Method and apparatus for performing buffer status reporting
US6904276B1 (en) Apparatus and method for managing call billing records
WO2006033201A1 (en) Node device, packet control device, radio communication device, and transmission control method
JP2006526310A (en) Packet data charging subdivision method and system
EP1193924A2 (en) Radio communications system using timeout control with flexible timeout interval settings
US20030088679A1 (en) Proxy reply method and apparatus
CN1650574A (en) Method and apparatus for providing accounting updates in a packet data communication system
KR100434431B1 (en) System of total billing on wireless network and operate method therefore
RU2473184C2 (en) Method and device for subscriber data base
CN102449955A (en) Method, apparatus and system for controlling behaviors of machine type communication MTC terminals
WO2002093834A1 (en) Unique identifier provisioning
WO2009012707A1 (en) A method, device and system for access event statistics
US20230269574A1 (en) Apparatus and method for providing data measured by user plane function in a wireless communication system
CN1255968C (en) System for radio telecommunication network
US20060217156A1 (en) Base station controller for radio communication network and method of collecting alarm information thereof
KR100764168B1 (en) Method and apparatus for accounting in portable internet system
KR100347417B1 (en) Call traffic statistics data compression transmission method of CDMA mobile communication system
WO2019039987A1 (en) Method for device counting
KR100612672B1 (en) Method for Transmission of Packet Data Using Short Data Burst Indicator in Wireless Internet Service
WO2023065901A1 (en) Device identifier acquisition method and apparatus
KR100601855B1 (en) Method for Transmission of Additional Information in Wireless Data Service

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP