CN1838658A - Method for realizing conversation dispatching in SIP multiprocessor system - Google Patents

Method for realizing conversation dispatching in SIP multiprocessor system Download PDF

Info

Publication number
CN1838658A
CN1838658A CN 200510038559 CN200510038559A CN1838658A CN 1838658 A CN1838658 A CN 1838658A CN 200510038559 CN200510038559 CN 200510038559 CN 200510038559 A CN200510038559 A CN 200510038559A CN 1838658 A CN1838658 A CN 1838658A
Authority
CN
China
Prior art keywords
processing unit
user agent
uap
tabulation
agent
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN 200510038559
Other languages
Chinese (zh)
Other versions
CN100568871C (en
Inventor
胡宪利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CNB2005100385594A priority Critical patent/CN100568871C/en
Publication of CN1838658A publication Critical patent/CN1838658A/en
Application granted granted Critical
Publication of CN100568871C publication Critical patent/CN100568871C/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

The invention provides a method for achieving the conversation dispatching in the SIP multi-processor system in the field of communication, which comprises: the dispatching procession unit SP decodes the SIP message and captures the corresponding conversation mark and maps it to the UAP label of the user proxy processing unit; the captured UAP forms the UAP label of the next jump; SP sends the message to the first UAP processing of the next jump UAP label and notifies the first UAP to jump the other UAP messages; the first UAP receives the SIAP message and checks weather to process the conversation, if not, the SP continuously sends the message to the second UAP processing of the next jump USP label and notifies the second UAP to jump the other UAP messages, until the next jump UAP label message is null.

Description

A kind of method that in the SIP multicomputer system, realizes conversation dispatching
Technical field
The present invention relates to the conversation dispatching technology of communication field, relate in particular to the conversation dispatching technology in the multicomputer system.
Background technology
Development along with the Internet and broadband technology, the voice transfer of IP based network (VOIP) technology has obtained increasing application in enterprise network and public network, wherein the SIP network system is simple owing to Session Initiation Protocol, characteristics such as easy expansion, thus in communication network, more and more used.For the carrier-class communication network, it must need to possess jumbo disposal ability, and how to realize big capacity disposal ability, the good method that the distributed multi-processor treatment technology addresses this problem just.
In the prior art, the method that realizes conversation dispatching in the SIP multicomputer system is that each session and processor corresponding relation are deposited, dispatch distribution processor according to corresponding relation, this mode is the storage resources of consumption systems relatively, dispatching efficiency and reliability neither be very high, and do not consider for the load balancing between the multiprocessor yet, need improved method to solve these problems.
Summary of the invention
The problem to be solved in the present invention is to overcome the low and harmonious poor defective of processor load of resource utilization ratio that prior art exists, and then provide a kind of method that in the SIP multicomputer system, realizes conversation dispatching, the stability of raising system and reliability, and can realize the efficient utilization of system resource.
The present invention is by the following technical solutions:
A kind of method that realizes conversation dispatching in the SIP multicomputer system may further comprise the steps:
Step 1: SP decodes sip message, obtains corresponding session identification, and the session sign is mapped to respectively in each UAP tabulation, and the UAP that is obtained forms next and jumps the UAP tabulation;
Step 2: SP is transmitted to next with sip message and jumps UAP processing in the UAP tabulation, and notifies a UAP with all the other next jumping UAP information;
Step 3: after a UAP receives sip message, check the session of whether handling this sip message correspondence;
Step 4 a: if UAP does not handle, then SP jumps UAP information according to next that obtains, continuation is transmitted to next with this sip message and jumps the 2nd UAP processing in the UAP tabulation, and notifies this 2nd UAP with all the other next jumping UAP information, and it is empty jumping UAP list information up to next.
Further, after UAP handles sip message, need to send response to SP; Give outside UA if need to reply message, then SP transmits a reply message to outside UA.
Further, above-mentioned UAP tabulation forms UAP tabulation pond; In this UAP tabulation pond, current all available UAP are deposited in uppermost UAP tabulation, it is current available UAP tabulation, when state variation takes place in certain UAP, except the UAP at the bottom of pond tabulation was dropped, SP was other each UAP tabulations in the pond, was stored in successively in the UAP tabulation below it to preserve, revise current available UAP tabulation then: when certain UAP enters service state, then SP joins this UAP in the current available UAP tabulation; Withdraw from service state and work as certain UAP, then SP removes this UAP from current available UAP tabulation.
Further, in the UAP of SP tabulation, certain UAP can leave a plurality of positions wherein in.
Further, when certain UAP when upstate becomes down state, SP can substitute this unavailable UAP in the current available UAP tabulation with other available UAP.
Further, when certain UAP when down state becomes upstate, SP can substitute other available UAP of part in the current available UAP tabulation with this UAP.
Further, SP adjusts the load of each UAP by adjusting distribution and the distributed quantity of UAP in the UAP tabulation.
Further, except when outside the preceding available UAP tabulation, the tabulation in other UAP tabulation ponds all has an ageing process, has certain life cycle, when its life cycle arrived, should tabulate removed from UAP tabulation pond.
Further, in the above-mentioned steps one, adopt following method that the session sign is mapped in the UAP tabulation: at first the byte that session identification is formed is carried out computing, obtains a mediant; Then this mediant is carried out modulo operation, mould value size is the UAP list length, thereby obtains a remainder; With this remainder is the position of UAP in the UAP tabulation, then can obtain corresponding UAP.
Compare and prior art, adopt the inventive method to possess following beneficial effect: under the few situation of resource occupation, to provide multiprocessor SIP conversation dispatching efficiently; Realize that load balancing is handled between a plurality of processors; Can increase processor smoothly, the whole SIP service system of auto-update disposal ability; Improve the reliability of SIP service system.
Description of drawings
Fig. 1 uses SIP service system network structure of the present invention;
Fig. 2 is the conversation dispatching flow chart of scheduling processing unit of the present invention;
Fig. 3 is the Message Processing flow chart of user agent's processing unit of the present invention.
Embodiment
Be described in further detail below in conjunction with the enforcement of accompanying drawing technical scheme:
In using SIP multicomputer system of the present invention, two or more serve as UA (user agent's) UAP (UAProcessor, user agent's processing unit) at least in existence; At least one serves as the SP (Scheduler Processor, scheduling processing unit) of SIP conversation message scheduling; At least one LS (Location Service, location-based service unit).SP, UAP and LS form a SIP multicomputer system (or claiming the SIP service system) together, for outside UA provides service.In using SIP service system of the present invention, there is communication link between SP and all UAP, and also has communication link between each UAP, can transmit the session sip message mutually between them.The state whether all UAP of SP management maintenance are available, the UAP that all are available is placed in the tabulation; SP carries out conversation dispatching according to the upstate of UAP.LS then provides location-based service for all UAP.
Fig. 1 is a network structure of using an embodiment of SIP service system of the present invention, in the present embodiment, uses SIP service system network configuration of the present invention and comprises: SP, three UAP (UAP:1, UAPL:2, UAP:3) and a LS; User agent's (or claim terminal) UA1 and UA2 by network insertion on the SP service system; UA1 and UA2 are registered in the SP service system, and the registered address records among the LS.SP can coexist as in the same physical entity with certain UAP, and a SIP service system can have a plurality of SP in actual use.
In the SIP conversation message that the outside UA that SP receives sends over, comprise the session that session that local UAP initiatively initiates and outside UA initiatively initiate.For the session that outside UA initiatively initiates, the SP scheduling assigns a UAP to handle all sip messages of this session; For the session that local UAP initiatively initiates, all sip messages of this session that outside UA sent that SP receives, the local UAP that must hand to this initiation session handles.During below conversation dispatching scheme was described, the session both of these case that the session initiatively initiated at local UAP respectively and outside UA are initiatively initiated was described.
For the session that local UAP initiatively initiates, UAP carries UAP information in session identification: if dynamically produce (as Call-ID etc.) when session identification is each session initiation, and direct adding UAP information in session identification then; If session identification is formed (as From etc.) by fixing information, then require to exist between this fix information and the UAP mapping corresponding relation, session must be by the UAP initiation of mapping corresponding relation correspondence.Wherein, session identification is meant information relevant with session in the sip message, and this information will remain unchanged in the whole session message interaction process, such as attributes such as Call-ID, From.The session that session of initiatively initiating for local UAP and outside UA initiatively initiate can be adopted different session identification types when scheduling.
In the present invention, the SIP session of initiatively initiating for outside UA, the SP employing is mapped to the mode of obtaining a UAP in the available UAP tabulation with the session sign and realizes conversation dispatching, but owing in the running situation that UAP entered/withdrawed from service can take place, for same session, the result of each the sip message mapping in its conversation procedure just may be different like this.Go up processing in order to guarantee that each message can both correctly be mapped to identical UAP in the SIP session, SP will use two or more UAP to tabulate and write down the available UAP information of UAP change generation front and back, after SP received the sip message of certain outside UA transmission, the SIP service system was carried out according to following steps like this:
Step 1: SP decodes sip message, obtains corresponding session identification, and the session sign is mapped to respectively in each UAP tabulation, and the UAP that is obtained forms next and jumps the UAP tabulation.SP can carry out partial decoding of h to sip message under the situation of obtaining session identification and session initiator.Session sign is mapped in the UAP tabulation, can adopts following method: at first the byte that session identification is formed is carried out simple mathematical computing (as addition etc.), obtains a mediant; Then this mediant is carried out modulo operation, mould value size is the UAP list length, thereby obtains a remainder; With this remainder is the position of UAP in the UAP tabulation, then can obtain corresponding UAP.
Step 2: SP is transmitted to next with sip message and jumps UAP processing in the UAP tabulation, and notifies a UAP with all the other next jumping UAP information.Next is jumped UAP list information and can be placed in the Route attribute in the sip message and carry to UAP; Perhaps SP can be increased to its information in the Via attribute in the sip message, and the UAP of other next jumpings can know response message by which SP sends thus.SP can be transmitted to UAP with SP information, next jumping UAP list information and sip message according to self-defining message format.
Step 3: after a UAP receives sip message, check the session of whether handling this sip message correspondence;
Step 4 a: if UAP does not handle, then SP jumps UAP information according to next that obtains, continuation is transmitted to next with this sip message and jumps the 2nd UAP processing in the UAP tabulation, and notifies this 2nd UAP with all the other next jumping UAP information, and it is empty jumping UAP list information up to next.UAP can be transmitted to next jumping UAP C according to self-defining message format with contents such as SP information, next jumping UAP list information and sip messages, and (promptly a UAP is transmitted to the 2nd UAP, by that analogy).
After UAP handles sip message, need to send response to SP; Give outside UA if need to reply message, then SP transmits a reply message to outside UA.
Among the present invention, all UAP tabulations form a UAP tabulation pond; In this UAP tabulation pond, current all available UAP (being referred to as " current available UAP tabulation ") are deposited in uppermost UAP tabulation, have a sequence relation between each tabulation.When state variation takes place in certain UAP, except the tabulation of the UAP at the bottom of the pond is dropped, SP is with other each UAP tabulations in the pond, be stored in successively in the UAP tabulation below it and preserve, revise current available UAP tabulation then: when certain UAP enters service state, then SP joins this UAP in the current available UAP tabulation; Withdraw from service state and work as certain UAP, then SP removes this UAP from current available UAP tabulation.In the UAP of SP tabulation, certain UAP can leave a plurality of positions wherein in.When certain UAP when upstate becomes down state, SP can substitute this UAP in the current available UAP tabulation with other available UAP.When certain UAP when down state becomes upstate, SP can substitute other available UAP of part in the current available UAP tabulation with this UAP.SP reaches the load of adjusting each UAP by adjusting distribution and the distributed quantity of UAP in the UAP tabulation.
Except when outside the preceding available UAP tabulation, the tabulation in other UAP tabulation ponds all has an ageing process, has certain life cycle, when its life cycle arrived, should tabulate removed from UAP tabulation pond.The life cycle of UAP tabulation can configure in advance according to an empirical value, can not keep usually surpassing 1 hour as a conversation, then its life cycle can be set at 1 hour.The file layout of UAP tabulation can adopt various data structures to store, and the simplest is to adopt the array mode to be described.
SP can handle to distribute to UAP and carry out statistical analysis according to the response of UAP, thereby in step 2 next UAP that jumps in the UAP tabulation is adjusted ordering, to reach the optimal scheduling effect.SP can handle distribution to UAP according to receiveing the response of UAP and carry out statistical analysis, when next jumps the UAP that calculates according to certain UAP tabulation (removing current available UAP tabulation) in the UAP tabulation, after in certain time period, reaching 0% scheduling hit, then it is carried out burin-in process, from UAP tabulation pond, remove.
As shown in Figure 2, the conversation dispatching flow process of SP is as follows:
Step 201:SP receives the sip message that outside UA sends over;
Step 202:SP decodes to this sip message;
Step 203:SP judges its whether conversation message, if not words execution in step 204; Otherwise execution in step 205;
Step 204:SP forwards other flow processing to, withdraws from this flow process;
Step 205:SP obtains Call-ID and the session initiator information in the sip message;
Step 206:SP judges whether the session initiator is outside UA, if, execution in step 207; Otherwise execution in step 214;
Step 207:SP converts Call-ID to BYTE type array, and all array members carry out addition, obtains numerical value A;
Step 208:SP obtains first available UAP tabulation;
Step 209:SP is a mould with this UAP list length, and logarithm value A delivery obtains remainder B, is that subscript is obtained the corresponding UAP of UAP tabulation with remainder B, puts into next and jumps the UAP tabulation;
Step 210:SP judges whether to also have next UAP tabulation, if execution in step 211 is arranged, otherwise execution in step 212;
Step 211:SP obtains next available UAP tabulation, repeating step 209;
Step 212:SP removes the duplicate message in next jumping UAP tabulation; Obtain first UAP C wherein, C is removed from next jumping UAP tabulation;
Step 213:SP sends to UAP C with SP address, next jumping UAP tabulation and sip message in the self-defined structure mode and handles execution in step 216;
Step 214:SP obtains UAP C according to the UAP information among the Call-ID;
Step 215:SP sends to UAP C with sip message and handles;
Step 216: flow processing finishes.
As shown in Figure 3, after UAP receives conversation message, enter the handling process of UAP, may further comprise the steps:
Step 301:UAP receives the conversation message that SP transmits;
Step 302:UAP decodes to sip message wherein;
Step 303:UAP judges whether handle session, if not, and execution in step 306; If, execution in step 304;
Step 304:UAP carries out session to be handled;
Step 305:UAP is to SP response process object information, execution in step 310;
Step 306:UAP judges whether next jumps the UAP tabulation is empty, if, execution in step 309;
Step 307:UAP obtains next and jumps first UAP C in the UAP tabulation, and C is removed from next jumping UAP tabulation;
Step 308: SP address, next jumping UAP tabulation and sip message are sent to UAP C in the self-defined structure mode handle; Execution in step 310;
Step 309:UAP responds failure information to SP;
Step 310: flow processing finishes.
In the present embodiment, after UAP handles sip message, handle accordingly according to the sip message kind:
When sip message finds corresponding UAP to handle:
When if sip message is response message (Response), after this UAP disposes, send self-defined message response SP, to inform that this message is with processed;
When if sip message is request message (Request), after this UAP disposes, send sip response message to SP, SP goes out this forwards, response external UA;
When sip message can not find corresponding UAP when handling:
When if sip message is response message (Response), the UAP of final jump sends self-defined message response SP, and is not processed to inform this message;
When if sip message is request message (Request), the UAP of final jump sends SIP failure response message to SP, and SP goes out this forwards, response external UA.
Certainly; the present invention also can have other various embodiments; under the situation that does not deviate from spirit of the present invention and essence thereof; those of ordinary skill in the art work as can make various corresponding changes and distortion according to the present invention, but these corresponding changes and distortion all should belong to the protection range of the appended claim of the present invention.

Claims (9)

1. method that realizes conversation dispatching in the SIP multicomputer system may further comprise the steps:
Step 1: scheduling processing unit is decoded sip message, obtains corresponding session identification, and the session sign is mapped to respectively in each user agent's processing unit tabulation, and the user agent's processing unit that is obtained forms next and jumps the tabulation of user agent's processing unit;
Step 2: scheduling processing unit is transmitted to next with sip message and jumps first user agent's processing unit processes in the tabulation of user agent's processing unit, and notifies this first user agent processing unit with all the other next jumping user agent processing unit information;
Step 3: after this first user agent processing unit is received sip message, check the session of whether handling this sip message correspondence;
Step 4: if this first user agent processing unit is not handled, then scheduling processing unit is jumped user agent's processing unit information according to next that obtains, continuation is transmitted to next with this sip message and jumps second user agent's processing unit processes in the tabulation of user agent's processing unit, and jump user agent's processing unit information with all the other next and notify this second user agent processing unit, jumping user agent's processing unit list information up to next be sky.
2. method according to claim 1 is characterized in that, behind the intact sip message of user agent's processing unit processes, needs to send response to scheduling processing unit; Act on behalf of to external user if need to reply message, then scheduling processing unit transmits a reply message to external user and acts on behalf of.
3. method according to claim 1 is characterized in that, described user agent's processing unit tabulation forms user agent's processing unit tabulation pond; In this user agent's processing unit tabulation pond, current all available user agent's processing units are deposited in uppermost user agent's processing unit tabulation, it is current available subscribers agent processes unit list, when certain user agent's processing unit generation state variation, except the tabulation of the user agent's processing unit at the bottom of the pond is dropped, scheduling processing unit is with other each user agent's processing unit tabulations in the pond, be stored in successively in the user agent's processing unit tabulation below it and preserve, revise current available subscribers agent processes unit list then: when certain user agent's processing unit enters service state, then scheduling processing unit joins this user agent's processing unit in the current available subscribers agent processes unit list; Withdraw from service state and work as certain user agent's processing unit, then scheduling processing unit is removed this user agent's processing unit from current available subscribers agent processes unit list.
4. method according to claim 3 is characterized in that, in the tabulation of user agent's processing unit of scheduling processing unit, user agent's processing unit can leave a plurality of positions wherein in.
5. method according to claim 4, it is characterized in that, when certain user agent's processing unit when upstate becomes down state, scheduling processing unit can substitute this unavailable user agent's processing unit in the current available subscribers agent processes unit list with other available subscribers agent processes unit.
6. method according to claim 4, it is characterized in that, when certain user agent's processing unit when down state becomes upstate, scheduling processing unit can substitute other available subscribers agent processes unit of part in the current available subscribers agent processes unit list with this user agent's processing unit.
7. method according to claim 3 is characterized in that, scheduling processing unit is adjusted the load of each user agent's processing unit by adjusting the distribution and the quantity of user agent's processing unit in the tabulation of user agent's processing unit.
8. method according to claim 3, it is characterized in that, except when outside the preceding available subscribers agent processes unit list, tabulation in other user agent's processing unit tabulation ponds all has an ageing process, has certain life cycle, when its life cycle arrived, should tabulate removed from user agent's processing unit tabulation pond.
9. method according to claim 1 is characterized in that, in the described step 1, adopt following method that the session sign is mapped in the tabulation of user agent's processing unit: at first the byte that session identification is formed is carried out computing, obtains a mediant; Then this mediant is carried out modulo operation, mould value size is user agent's processing unit list length, thereby obtains a remainder; With this remainder is the position of user agent's processing unit in the tabulation of user agent's processing unit, obtains corresponding user agent's processing unit.
CNB2005100385594A 2005-03-24 2005-03-24 A kind of method that in the SIP multicomputer system, realizes conversation dispatching Active CN100568871C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100385594A CN100568871C (en) 2005-03-24 2005-03-24 A kind of method that in the SIP multicomputer system, realizes conversation dispatching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100385594A CN100568871C (en) 2005-03-24 2005-03-24 A kind of method that in the SIP multicomputer system, realizes conversation dispatching

Publications (2)

Publication Number Publication Date
CN1838658A true CN1838658A (en) 2006-09-27
CN100568871C CN100568871C (en) 2009-12-09

Family

ID=37015913

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100385594A Active CN100568871C (en) 2005-03-24 2005-03-24 A kind of method that in the SIP multicomputer system, realizes conversation dispatching

Country Status (1)

Country Link
CN (1) CN100568871C (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989221A (en) * 2018-09-21 2018-12-11 北京东土科技股份有限公司 A kind of transmission method of sip message, device, computer equipment and storage medium
CN116436855A (en) * 2023-06-12 2023-07-14 建信金融科技有限责任公司 Data information processing method, device, electronic equipment and medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989221A (en) * 2018-09-21 2018-12-11 北京东土科技股份有限公司 A kind of transmission method of sip message, device, computer equipment and storage medium
CN108989221B (en) * 2018-09-21 2021-01-01 北京东土科技股份有限公司 SIP message transmission method and device, computer equipment and storage medium
CN116436855A (en) * 2023-06-12 2023-07-14 建信金融科技有限责任公司 Data information processing method, device, electronic equipment and medium
CN116436855B (en) * 2023-06-12 2023-09-12 建信金融科技有限责任公司 Data information processing method, device, electronic equipment and medium

Also Published As

Publication number Publication date
CN100568871C (en) 2009-12-09

Similar Documents

Publication Publication Date Title
CN1158615C (en) Load balancing method and equipment for convective medium server
CN1716877A (en) Method and apparatus for self-configuring routing devices in a network
CN101056275A (en) A setting method for group message receiving mode in the instant communication system
CN101030946A (en) Method and system for realizing data service
CN1543236A (en) System and method for discovering path mtu in ad hoc network
CN101039212A (en) Fast data storage method
CN1934840A (en) Improvements in or relating to session initiation protocol (SIP)
CN1244876C (en) Information sending method and system for instant communication tool
CN101035130A (en) Browser/server structure based information distribution method and system
CN1835511A (en) Sip message and processing method thereof in mobile communication system
CN1933454A (en) Synchronous information interface realizing method based on JAVA information service
CN1812398A (en) Method for realizing DHCP server loading sharing based on DHCP relay
CN1798049A (en) Mobile online game system and method
CN101039203A (en) Access equipment, conference access method and conference service system
CN1917521A (en) Method and system for realizing load balancing, and load balancing equipment
CN1863202A (en) Method for improving load balance apparatus and servicer processing performance
CN1838658A (en) Method for realizing conversation dispatching in SIP multiprocessor system
CN1713621A (en) Realtime communicating method and system for enterprise
CN1157909C (en) Connection handle
CN1918879A (en) Method and arrangement for state memory management
CN1283115C (en) Method and system for improving multimedia message performance process by multimedia message system
CN1798060A (en) Method and device for detecting conflict of IP addresses in networked computers
CN101035070A (en) Method, device and NAT device for notifying the network terminal after aging session
CN1874306A (en) Method and equipment of ageing treatment for header compressed list items of context in Internet protocol
CN116260887A (en) Data transmission method, data transmission device, data reception device, and storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant